Isis 3 Programmer Reference
Isis::QnetSetAprioriDialog Class Reference

#include <QnetSetAprioriDialog.h>

Inheritance diagram for Isis::QnetSetAprioriDialog:
Inheritance graph
Collaboration diagram for Isis::QnetSetAprioriDialog:
Collaboration graph

Public Slots

void setVisiblity ()
 Shows the dialog box. More...
 
virtual void reject ()
 This is called when the user selects the X button on the top right or they hit ESC. More...
 

Signals

void pointChanged (QString pointId)
 
void netChanged ()
 
void aprioriDialogClosed ()
 

Public Member Functions

 QnetSetAprioriDialog (QnetTool *qnetTool, QWidget *parent=0)
 
void setPoints (QList< QListWidgetItem * > selectedPoints)
 Set control points in the dialog. More...
 

Private Types

enum  Source { USER, AVERAGE, REFERENCE }
 

Private Slots

void fillCurrentAprioriLineEdits ()
 Populates the apriori lat/lon/radius line edits with the current values. More...
 
void fillReferenceAprioriLineEdits ()
 Populates the apriori lat/lon/radius line edits with the reference measure values. More...
 
void fillAverageAprioriLineEdits ()
 Populates the apriori lat/lon/radius line edits with the average measure values. More...
 
void fillSigmaLineEdits ()
 Populates the sigma lat/lon/radius line edits with the current values. More...
 
void clearLineEdits ()
 Clears the line edits. More...
 
void resetInfoLabels ()
 Resets and populates the information stack labels. More...
 
void setApriori ()
 Slot to set apriori on selected Points from Navigator list box. More...
 
void closeEvent ()
 Disconnect all of the slots on a close event. More...
 

Private Member Functions

void createSetAprioriDialog (QWidget *parent)
 Creates the dialog box for the set apriori tool. More...
 
void setInfoStack (QList< QListWidgetItem * > selectedPoints)
 Switches what information is visible based on how many points are selected. More...
 
void checkPointInfoDisable (QList< QListWidgetItem * > selectedPoints)
 Enables/Disables features based on if there are multiple points selected or not. More...
 

Private Attributes

QDialogm_aprioriDialog
 
QGridLayout * m_aprioriGridLayout
 
QPushButton * m_okButton
 
QPushButton * m_cancelButton
 
QPushButton * m_applyButton
 
QStackedWidget * m_pointInfoStack
 
QGroupBox * m_singlePointInfoGroup
 
QLabel * m_pointIDLabel
 
QLabel * m_pointTypeLabel
 
QLabel * m_pointMeasureNumber
 
QLabel * m_editLockedBoolLabel
 
QLabel * m_ignoredBoolLabel
 
QGroupBox * m_multiplePointsInfoGroup
 
QLabel * m_pointsCount
 
QLabel * m_pointsMeasuresCount
 
QLabel * m_constrainedPointsCount
 
QLabel * m_fixedPointsCount
 
QLabel * m_freePointsCount
 
QLabel * m_pointsEditLockedCount
 
QLabel * m_pointsIgnoredCount
 
QGroupBox * m_pointGroup
 
QLabel * m_aprioriLatLabel
 
QLabel * m_aprioriLonLabel
 
QLabel * m_aprioriRadiusLabel
 
QLineEdit * m_latLineEdit
 
QLineEdit * m_lonLineEdit
 
QLineEdit * m_radiusLineEdit
 
QPushButton * m_currentAprioriButton
 
QPushButton * m_referenceAprioriButton
 
QPushButton * m_averageAprioriButton
 
QGroupBox * m_sigmaGroup
 
QLabel * m_sigmaWarningLabel
 
QPushButton * m_currentSigmaButton
 
QLabel * m_latSigmaLabel
 
QLabel * m_lonSigmaLabel
 
QLabel * m_radiusSigmaLabel
 
QLineEdit * m_latSigmaLineEdit
 
QLineEdit * m_lonSigmaLineEdit
 
QLineEdit * m_radiusSigmaLineEdit
 
QList< QListWidgetItem * > m_points
 
QnetToolm_qnetTool
 
Source m_aprioriSource
 
int m_multiPointsMeasureCount
 
int m_multiPointsConstraintedCount
 
int m_multiPointsFixedCount
 
int m_multiPointsFreeCount
 
int m_multiPointsEditLockedCount
 
int m_multiPointsIgnoredCount
 

Detailed Description

Author
????-??-?? Unknown
History:
2016-08-09 Makayla Shepherd - Complete redesign of the user interface. Fixes #2325, #2383.
History:
2016-10-14 Makayla Shepherd - Fixed an issue that caused the apriori sigmas to be set to NULL. You can now set the apriori sigmas. Fixes #4457.
History:
2016-11-18 Makayla Shepherd - Corrected the deletion of this dialog. The incorrect deletion caused an error message to pop up when selecting multiple Free or Fixed points after closing the Set Apriori dialog. Fixes #4490.
History:
2018-06-28 Debbie A. Cook - Removed calls to SurfacePoint::SetRadii which is now obsolete. Fixes #5457.
History:
2018-07-06 Jesse Mapel - Removed calls to ControlNet::GetTargetRadii because it is both no longer needed and no longer available. Fixes #5457.

Definition at line 42 of file QnetSetAprioriDialog.h.

Member Function Documentation

◆ checkPointInfoDisable()

void Isis::QnetSetAprioriDialog::checkPointInfoDisable ( QList< QListWidgetItem * >  selectedPoints)
private

Enables/Disables features based on if there are multiple points selected or not.

If multiple points are selected it also counts how many are EditLocked, Ignored, the number of each type of point, and the total number of measures.

Author
2016-02-05 Makayla Shepherd

Definition at line 682 of file QnetSetAprioriDialog.cpp.

References Isis::ControlPoint::GetPointTypeString().

Referenced by setPoints().

◆ clearLineEdits

void Isis::QnetSetAprioriDialog::clearLineEdits ( )
privateslot

Clears the line edits.

Author
????-??-?? Unknown
History:
2016-02-05 Makayla Shepherd - Modified to work with new UI

Definition at line 770 of file QnetSetAprioriDialog.cpp.

Referenced by setPoints().

◆ closeEvent

void Isis::QnetSetAprioriDialog::closeEvent ( )
privateslot

Disconnect all of the slots on a close event.

Author
2016-11-18 Makayla Shepherd

Definition at line 278 of file QnetSetAprioriDialog.cpp.

References fillAverageAprioriLineEdits(), fillCurrentAprioriLineEdits(), fillReferenceAprioriLineEdits(), fillSigmaLineEdits(), and setApriori().

Referenced by reject().

◆ createSetAprioriDialog()

void Isis::QnetSetAprioriDialog::createSetAprioriDialog ( QWidget parent)
private

Creates the dialog box for the set apriori tool.

Parameters
parentThe parent widget for the set apriori dialog
Author
2016-02-05 Makayla Shepherd

Definition at line 122 of file QnetSetAprioriDialog.cpp.

References setVisiblity().

◆ fillAverageAprioriLineEdits

void Isis::QnetSetAprioriDialog::fillAverageAprioriLineEdits ( )
privateslot

Populates the apriori lat/lon/radius line edits with the average measure values.

This only works on single points and is disabled for multiple points. The calculations were moved from setApriori.

the code used to compute the average of the measures is copied from ControlPoint::ComputeApriori

There is a known issue with this code that if something goes wrong and the average cannot be computed then the lat, lon, radius is set to null. In that case, clear the line edits and display an error message.

Author
2016-02-05 Makayla Shepherd

Definition at line 465 of file QnetSetAprioriDialog.cpp.

References Isis::Sensor::Coordinate(), Isis::Angle::degrees(), Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLocalRadius(), Isis::SurfacePoint::GetLongitude(), Isis::ControlPoint::GetMeasure(), Isis::ControlPoint::GetPointTypeString(), Isis::ControlPoint::IsCoord1Constrained(), Isis::ControlPoint::IsCoord2Constrained(), Isis::ControlPoint::IsCoord3Constrained(), Isis::Displacement::Kilometers, Isis::Displacement::Meters, Isis::Displacement::meters(), Isis::Distance::meters(), Isis::Null, Isis::ControlPoint::NumberOfConstrainedCoordinates(), Isis::IException::Programmer, Isis::Camera::SetImage(), Isis::SurfacePoint::SetRectangular(), and Isis::IException::User.

Referenced by closeEvent().

◆ fillCurrentAprioriLineEdits

void Isis::QnetSetAprioriDialog::fillCurrentAprioriLineEdits ( )
privateslot

Populates the apriori lat/lon/radius line edits with the current values.

If there are no current values, the line edits are empty. This only works on single points and is disabled for multiple points.

Author
2016-02-05 Makayla Shepherd

Definition at line 345 of file QnetSetAprioriDialog.cpp.

References Isis::Angle::degrees(), Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLocalRadius(), Isis::SurfacePoint::GetLongitude(), Isis::Distance::meters(), and Isis::Null.

Referenced by closeEvent(), and setPoints().

◆ fillReferenceAprioriLineEdits

void Isis::QnetSetAprioriDialog::fillReferenceAprioriLineEdits ( )
privateslot

Populates the apriori lat/lon/radius line edits with the reference measure values.

This only works on single points and is disabled for multiple points. The calculations were moved from setApriori.

Author
2016-02-05 Makayla Shepherd

Definition at line 393 of file QnetSetAprioriDialog.cpp.

References Isis::ControlNet::Camera(), Isis::Angle::degrees(), Isis::ControlMeasure::GetCubeSerialNumber(), Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLocalRadius(), Isis::SurfacePoint::GetLongitude(), Isis::ControlPoint::GetRefMeasure(), Isis::Sensor::GetSurfacePoint(), Isis::Distance::meters(), Isis::Null, Isis::SerialNumberList::serialNumberIndex(), and Isis::Camera::SetImage().

Referenced by closeEvent().

◆ fillSigmaLineEdits

void Isis::QnetSetAprioriDialog::fillSigmaLineEdits ( )
privateslot

Populates the sigma lat/lon/radius line edits with the current values.

If there are no current sigma values, the line edits are empty. This only works on single points and is disabled for multiple points.

Author
2016-02-05 Makayla Shepherd

Definition at line 627 of file QnetSetAprioriDialog.cpp.

References Isis::SurfacePoint::GetLatSigmaDistance(), Isis::SurfacePoint::GetLonSigmaDistance(), Isis::Distance::meters(), and Isis::Null.

Referenced by closeEvent(), and setPoints().

◆ reject

void Isis::QnetSetAprioriDialog::reject ( )
virtualslot

This is called when the user selects the X button on the top right or they hit ESC.

Disconnect all slots on close event.

Author
2016-11-18 Makayla Shepherd

Definition at line 267 of file QnetSetAprioriDialog.cpp.

References closeEvent().

◆ resetInfoLabels

void Isis::QnetSetAprioriDialog::resetInfoLabels ( )
privateslot

Resets and populates the information stack labels.

Author
2016-02-05 Makayla Shepherd

Definition at line 786 of file QnetSetAprioriDialog.cpp.

References Isis::ControlPoint::GetPointTypeString().

Referenced by setPoints().

◆ setApriori

void Isis::QnetSetAprioriDialog::setApriori ( )
privateslot

Slot to set apriori on selected Points from Navigator list box.

Author
2011-03-24 Tracie Sucharski
History:
2011-04-04 Tracie Sucharski - Grey out userEntered if more than a single point is selected. Grey out lat,lon,radius edits if UserEntered is not selected.
History:
2011-04-13 Tracie Sucharski - If single point selected, fill in LineEdit's with current controlPoint values.
History:
2011-04-19 Tracie Sucharski - Redesign using modeless dialog.
History:
2011-04-26 Tracie Sucharski - Move from QnetNavTool to QnetSetAprioriDialog.
History:
2016-02-05 Makayla Shepherd - Redesigned to work with the new UI. This method only takes the values in the line edits and uses them to set the Apriori values. The calculations for reference and average values are made and populated in the fill methods.
History:
2016-10-14 Makayla Shepherd - Fixed an issue that caused the apriori sigmas to be set to NULL. You can now set the apriori sigmas.
History:
2016-11-16 Makayla Shepherd - Fixed the sigma setting for Fixed and Free points.

Definition at line 859 of file QnetSetAprioriDialog.cpp.

References Isis::Angle::Degrees, Isis::Distance::Meters, Isis::Null, Isis::ControlPoint::SetAprioriSurfacePoint(), Isis::ControlPoint::SetAprioriSurfacePointSource(), Isis::SurfacePoint::SetSphericalSigmasDistance(), and Isis::IException::toString().

Referenced by closeEvent().

◆ setInfoStack()

void Isis::QnetSetAprioriDialog::setInfoStack ( QList< QListWidgetItem * >  selectedPoints)
private

Switches what information is visible based on how many points are selected.

Defaults to single point information.

Author
2016-02-05 Makayla Shepherd

Definition at line 664 of file QnetSetAprioriDialog.cpp.

Referenced by setPoints().

◆ setPoints()

void Isis::QnetSetAprioriDialog::setPoints ( QList< QListWidgetItem * >  selectedPoints)

Set control points in the dialog.

Parameters
selectedPointsQList<QListWidgetItem *> ControlPoints listed
History:
2011-10-03 Tracie Sucharski - Do not enable user Entered Button, this will only be enabled if the group box is enabled.
History:
2016-02-05 Makayla Shepherd - Redesigned to work with new UI

Definition at line 321 of file QnetSetAprioriDialog.cpp.

References checkPointInfoDisable(), clearLineEdits(), fillCurrentAprioriLineEdits(), fillSigmaLineEdits(), resetInfoLabels(), and setInfoStack().

◆ setVisiblity

void Isis::QnetSetAprioriDialog::setVisiblity ( )
slot

Shows the dialog box.

Author
2016-02-05 Makayla Shepherd

Definition at line 304 of file QnetSetAprioriDialog.cpp.

Referenced by createSetAprioriDialog().


The documentation for this class was generated from the following files: