Isis 3 Programmer Reference
Isis::QnetTool Class Reference

Qnet tool operations. More...

#include <QnetTool.h>

Inheritance diagram for Isis::QnetTool:
Inheritance graph
Collaboration diagram for Isis::QnetTool:
Collaboration graph

Public Types

enum  MeasureColumns {
  FILENAME, CUBESN, SAMPLE, LINE,
  APRIORISAMPLE, APRIORILINE, SAMPLERESIDUAL, LINERESIDUAL,
  RESIDUALMAGNITUDE, SAMPLESHIFT, LINESHIFT, PIXELSHIFT,
  GOODNESSOFFIT, IGNORED, EDITLOCK, TYPE
}
 

Public Slots

void updateList ()
 
void updateNet (QString cNetFileName)
 Updates the Control Network displayed in the Qnet Tool title bar. More...
 
void createPoint (double lat, double lon)
 Create new control point. More...
 
void createFixedPoint (double lat, double lon)
 Create new Fixed control point. More...
 
void modifyPoint (ControlPoint *point)
 Modify control point. More...
 
void deletePoint (ControlPoint *point)
 Delete control point. More...
 
void updatePointInfo (QString pointId)
 Update the current editPoint information in the Point Editor labels. More...
 
void refresh ()
 Refresh all necessary widgets in QnetTool including the PointEditor and CubeViewports. More...
 
void activate (bool)
 Activates the tool. More...
 
virtual void updateTool ()
 Updates the tool. More...
 
void setCubeViewport (MdiCubeViewport *cvp)
 Sets the current viewport to the given cvp. More...
 

Signals

void qnetToolSave ()
 
void qnetToolSaveAs ()
 
void refreshNavList ()
 
void editPointChanged (QString pointId)
 
void netChanged ()
 
void ignorePointChanged ()
 
void ignoreLeftChanged ()
 
void ignoreRightChanged ()
 
void showNavTool ()
 
void newControlNetwork (ControlNet *)
 
void stretchChipViewport (Stretch *, CubeViewport *)
 
void measureChanged ()
 
void clearWarningSignal ()
 
void toolActivated ()
 
void viewportChanged ()
 

Public Member Functions

 QnetTool (QWidget *parent)
 Consructs the Qnet Tool window. More...
 
void paintViewport (MdiCubeViewport *cvp, QPainter *painter)
 Take care of drawing things on a viewPort. More...
 
QString measureColumnToString (MeasureColumns column)
 
ControlNetcontrolNet ()
 
const ControlNetcontrolNet () const
 
SerialNumberListserialNumberList ()
 
const SerialNumberListserialNumberList () const
 
Workspaceworkspace () const
 
void addTo (ViewportMainWindow *mw)
 Adds the tool to the application. More...
 
void addTo (ToolPad *toolpad)
 Adds the tool to the toolpad. More...
 
virtual void addTo (QMenu *menu)
 
virtual void addTo (Workspace *ws)
 Adds the given workspace to the cubeviewport list. More...
 
virtual QString menuName () const
 Anytime a tool is created, you must give it a name for the menu. More...
 
virtual void addToPermanent (QToolBar *toolbar)
 
void addToActive (QToolBar *toolbar)
 
QString toolIconDir () const
 returns the path to the icon directory. More...
 
RubberBandToolrubberBandTool ()
 
void setList (ToolList *currentList)
 

Static Public Attributes

static const int NUMCOLUMNS = 16
 

Protected Types

typedef QVector< MdiCubeViewport * > CubeViewportList
 A list of cubeviewports. More...
 

Protected Slots

void mouseButtonRelease (QPoint p, Qt::MouseButton s)
 Handle mouse events on CubeViewport. More...
 
QWidgetcreateToolBarWidget (QStackedWidget *parent)
 This method creates the widgets for the tool bar. More...
 
virtual void rubberBandComplete ()
 
virtual void screenPixelsChanged ()
 This is called when actions change which pixels from the cube are displayed. More...
 
virtual void mouseEnter ()
 
virtual void mouseMove (QPoint p)
 
virtual void mouseMove (QPoint p, Qt::MouseButton)
 
virtual void mouseLeave ()
 

Protected Member Functions

QActiontoolPadAction (ToolPad *pad)
 Adds the Tie tool action to the tool pad. More...
 
bool eventFilter (QObject *o, QEvent *e)
 Event filter for QnetTool. More...
 
virtual void mouseDoubleClick (QPoint p)
 
virtual void mouseButtonPress (QPoint p, Qt::MouseButton s)
 
virtual void updateMeasure ()
 
virtual void scaleChanged ()
 
virtual void stretchRequested (MdiCubeViewport *, int)
 
void registerTool (MdiCubeViewport *viewport)
 Registers the tool to the viewport. More...
 
MdiCubeViewportcubeViewport () const
 Return the current cubeviewport. More...
 
CubeViewportListcubeViewportList () const
 Return the list of cubeviewports. More...
 
virtual void addConnections (MdiCubeViewport *cvp)
 Anytime a tool is created, you must add the connections for it. More...
 
virtual void removeConnections (MdiCubeViewport *cvp)
 Anytime a tool is created, you must be able to remove it's connections. More...
 
virtual void enableRubberBandTool ()
 Anytime a tool is created, you may use the rubber band tool. More...
 
Workspaceworkspace ()
 

Private Slots

void enterWhatsThisMode ()
 
void paintAllViewports (QString pointId)
 This method will repaint the given Point ID in each viewport Note: The pointId parameter is here even though it's not used because the signal (QnetTool::editPointChanged connected to this slot is also connected to another slot (QnetNavTool::updateEditPoint which needs the point Id. More...
 
void saveNet ()
 Signal to save control net. More...
 
void saveAsNet ()
 Signal to save the control net. More...
 
void addMeasure ()
 Add measure to point. More...
 
void setPointType (int pointType)
 Set the point type. More...
 
void setLockPoint (bool ignore)
 Set point's "EditLock" keyword to the value of the input parameter. More...
 
void setIgnorePoint (bool ignore)
 Set point's "Ignore" keyword to the value of the input parameter. More...
 
void setLockLeftMeasure (bool ignore)
 Set the "EditLock" keyword of the measure shown in the left viewport to the value of the input parameter. More...
 
void setIgnoreLeftMeasure (bool ignore)
 Set the "Ignore" keyword of the measure shown in the left viewport to the value of the input parameter. More...
 
void setLockRightMeasure (bool ignore)
 Set the "EditLock" keyword of the measure shown in the right viewport to the value of the input parameter. More...
 
void setIgnoreRightMeasure (bool ignore)
 Set the "Ignore" keyword of the measure shown in the right viewport to the value of the input parameter. More...
 
void showNavWindow (bool checked)
 Emits a signal to displays the Navigation window. More...
 
void updateSurfacePointInfo ()
 Update the Surface Point Information in the QnetTool window. More...
 
void nextRightMeasure ()
 Selects the next right measure when activated by key shortcut. More...
 
void previousRightMeasure ()
 Selects the previous right measure when activated by key shortcut. More...
 
void selectLeftMeasure (int index)
 Select left measure. More...
 
void selectRightMeasure (int index)
 Select right measure. More...
 
void updateLeftMeasureInfo ()
 
void updateRightMeasureInfo ()
 
void measureSaved ()
 This method is connected with the measureSaved() signal from ControlPointEdit. More...
 
bool checkReference ()
 Change which measure is the reference. More...
 
void updateGroundPosition ()
 
void savePoint ()
 Save edit point to the Control Network. More...
 
void colorizeSaveButton ()
 Turn "Save Point" button text to red. More...
 
void openTemplateFile ()
 prompt user for a registration template file to open. More...
 
void viewTemplateFile ()
 Allows the user to view the template file that is currently set. More...
 
void saveChips ()
 Slot which calls ControlPointEditor slot to save chips. More...
 
void openGround ()
 Open a ground source for selecting fixed points. More...
 
void groundViewportClosed (CubeViewport *)
 Slot called when the ground source cube viewport is closed. More...
 
void openDem ()
 Open a DEM for ground source radii. More...
 
void openReferenceRadius ()
 Open a radius source using the shape model of the reference measure of m_editPoint. More...
 
void showHideTemplateEditor ()
 
void saveTemplateFile ()
 save the file opened in the template editor More...
 
void saveTemplateFileAs ()
 save the contents of template editor to a file chosen by the user More...
 
void setTemplateModified ()
 called when the template file is modified by the template editor More...
 
void writeTemplateFile (QString)
 write the contents of the template editor to the file provided. More...
 

Private Member Functions

void createActions ()
 Creates the menu actions for Qnet Tool. More...
 
void createMenus ()
 Customize dropdown menus below title bar. More...
 
ControlMeasurecreateTemporaryGroundMeasure ()
 Create a temporary measure to hold the ground point info for ground source. More...
 
void createToolBars ()
 
bool findPointLocation ()
 Attempt to find the control point's location on the ground source. More...
 
void loadPoint ()
 Load point into QnetTool. More...
 
void loadGroundMeasure ()
 Load ground measure into right side and add to file combo boxes. More...
 
void loadMeasureTable ()
 Load measure information into the measure table. More...
 
void drawAllMeasurments (MdiCubeViewport *vp, QPainter *painter)
 Draw all measurments which are on this viewPort. More...
 
void drawGroundMeasures (MdiCubeViewport *vp, QPainter *painter)
 Draw all Fixed or Constrained points on the ground source viewport. More...
 
void createQnetTool (QWidget *parent)
 create the main window for editing control points More...
 
QSplitter * createTopSplitter ()
 creates everything above the ControlPointEdit More...
 
QGroupBox * createControlPointGroupBox ()
 
QGroupBox * createLeftMeasureGroupBox ()
 
QGroupBox * createRightMeasureGroupBox ()
 Creates the right measure group box. More...
 
void createTemplateEditorWidget ()
 Creates the Widget which contains the template editor and its toolbar. More...
 
void loadTemplateFile (QString)
 Updates the current template file being used. More...
 
bool okToContinue ()
 Allows user to set a new template file. More...
 
void initDem (QString demFile)
 
double demRadius (double latitude, double longitude)
 Return a radius values from the dem using bilinear interpolation. More...
 
void clearGroundSource ()
 
bool IsMeasureLocked (QString serialNumber)
 Check for implicitly locked measure in m_editPoint. More...
 
void readSettings ()
 This method is called from the constructor so that when the Main window is created, it know's it's size and location. More...
 
void writeSettings () const
 This method is called when the Main window is closed or hidden to write the size and location settings to a config file in the user's home directory. More...
 
QStringList findPointFiles (double lat, double lon)
 
void addViewportConnections ()
 Makes all the connections for the tool. More...
 
void removeViewportConnections ()
 Removes all the connections from the tool. More...
 
void enableToolBar ()
 Enables entire tool bar. More...
 
void disableToolBar ()
 Disables entire tool bar. More...
 

Private Attributes

QPointer< MainWindowm_qnetTool
 
QString m_cnetFileName
 
QPointer< QActionm_createPoint
 
QPointer< QActionm_modifyPoint
 
QPointer< QActionm_deletePoint
 
QPointer< QActionm_openGround
 
QPointer< QActionm_openDem
 
QPointer< QActionm_saveNet
 
QPointer< QToolBartoolBar
 
QPointer< QActionm_saveAsNet
 
QPointer< QActionm_closeQnetTool
 
QPointer< QActionm_saveChips
 
QPointer< QActionm_showHideTemplateEditor
 
QPointer< QActionm_openTemplateFile
 
QPointer< QActionm_saveTemplateFile
 
QPointer< QActionm_saveTemplateFileAs
 
QPointer< QActionm_whatsThis
 
QPointer< QMainWindowm_mw
 
QPointer< ControlPointEditm_pointEditor
 
QPushButton * m_savePoint
 
QPalette m_saveDefaultPalette
 
QTextEdit * m_templateEditor
 
QWidgetm_templateEditorWidget
 
bool m_templateModified
 
QPointer< QLabel > m_templateFileNameLabel
 
QPointer< QLabel > m_groundFileNameLabel
 
QPointer< QLabel > m_radiusFileNameLabel
 
QPointer< QLabel > m_ptIdValue
 
QPointer< QComboBoxm_pointType
 
QPointer< QLabel > m_numMeasures
 
QPointer< QLabel > m_pointAprioriLatitude
 
QPointer< QLabel > m_pointAprioriLongitude
 
QPointer< QLabel > m_pointAprioriRadius
 
QPointer< QLabel > m_pointAprioriLatitudeSigma
 
QPointer< QLabel > m_pointAprioriLongitudeSigma
 
QPointer< QLabel > m_pointAprioriRadiusSigma
 
QPointer< QLabel > m_pointLatitude
 
QPointer< QLabel > m_pointLongitude
 
QPointer< QLabel > m_pointRadius
 
QPointer< QCheckBox > m_lockPoint
 
QPointer< QCheckBox > m_ignorePoint
 
QPointer< QLabel > m_leftReference
 
QPointer< QLabel > m_leftMeasureType
 
QPointer< QLabel > m_leftSampError
 
QPointer< QLabel > m_leftLineError
 
QPointer< QLabel > m_leftSampShift
 
QPointer< QLabel > m_leftLineShift
 
QPointer< QLabel > m_leftGoodness
 
QPointer< QLabel > m_rightGoodness
 
QPointer< QLabel > m_rightReference
 
QPointer< QLabel > m_rightMeasureType
 
QPointer< QLabel > m_rightSampError
 
QPointer< QLabel > m_rightLineError
 
QPointer< QLabel > m_rightSampShift
 
QPointer< QLabel > m_rightLineShift
 
QPointer< QCheckBox > m_lockLeftMeasure
 
QPointer< QCheckBox > m_ignoreLeftMeasure
 
QPointer< QCheckBox > m_lockRightMeasure
 
QPointer< QCheckBox > m_ignoreRightMeasure
 
QPointer< QComboBoxm_leftCombo
 
QPointer< QComboBoxm_rightCombo
 
QPointer< QMainWindowm_measureWindow
 
QPointer< QTableWidget > m_measureTable
 
QPointer< ControlPointm_editPoint
 
QStringList m_pointFiles
 
QString m_leftFile
 
QPointer< ControlMeasurem_leftMeasure
 
QPointer< ControlMeasurem_rightMeasure
 
QScopedPointer< Cubem_leftCube
 
QScopedPointer< Cubem_rightCube
 
QString m_groundFile
 
QScopedPointer< Cubem_groundCube
 
QString m_groundSN
 
QScopedPointer< UniversalGroundMapm_groundGmap
 
bool m_groundOpen
 
ControlPoint::SurfacePointSource::Source m_groundSurfacePointSource
 
ControlPoint::RadiusSource::Source m_groundRadiusSource
 
QString m_groundSourceFile
 
QString m_radiusSourceFile
 
QString m_demFile
 
bool m_demOpen
 
QScopedPointer< Cubem_demCube
 
QString m_lastUsedPointId
 
QPointer< ControlNetm_controlNet
 
SerialNumberListm_serialNumberList
 
QPointer< Workspacem_workspace
 
MdiCubeViewportm_cvp
 current cubeviewport More...
 
bool m_active
 Is the tool acitve? More...
 
QWidgetm_toolBarWidget
 The tool bar on which this tool resides. More...
 
QActionm_toolPadAction
 The tool pad on which this tool resides. More...
 
QString m_toolIconDir
 The pathway to the icon directory. More...
 
ToolListm_toolList
 

Detailed Description

Qnet tool operations.

Author
????-??-?? Unknown
History:
2008-11-24 Jeannie Walldren - Changed name from TieTool. Replace references to PointEdit class with ControlPointEdit. Added "Goodness of Fit" to right and left measure info.
History:
2008-11-26 Jeannie Walldren - Added "Number of Measures" to QnetTool point information. Defined updateNet() so that the QnetTool window's title bar contains the name of the control net file. Created ignoreChanged() signal, modified pointSaved() and createQnetTool() so message box appears if users are saving an "Ignore" point and asks whether they would like to set Ignore=false.
History:
2008-12-09 Tracie Sucharski - Cleaned up some signal/slot connections between QnetTool and QnetNavTool for deleting or adding ControlPoints.
History:
2008-12-09 Tracie Sucharski - Add new public slot refresh to handle the ignorePoints and deletePoints from the QnetNavTool.
History:
2008-12-10 Jeannie Walldren - Added slot methods viewTemplateFile() and setTemplateFile() to allow user to view, edit or choose a new template file. Added "What's this?" descriptions to actions.
History:
2008-12-15 Jeannie Walldren - Some QMessageBox warnings had strings tacked on to the list of errors. These strings were changed to iExceptions and added to the error stack to conform with Isis standards.
History:
2008-12-15 Jeannie Walldren - Created newHoldPoint() method. Replaced references to QnetGroundPointDialog with QnetHoldPointDialog. Disabled ground point check box so user may see whether the point is ground but may not change this. Thus setGroundPoint() and newGroundPoint() methods still exist but are not currently called.
History:
2008-12-30 Jeannie Walldren - Modified to set measures in viewports to Ignore=False if when saving, the user chooses to set a point's Ignore=False. Replaced references to ignoreChanged() with ignorePointChanged(). Added signals ignoreLeftChanged() and ignoreRightChanged().
History:
2008-12-31 Jeannie Walldren - Added question box to pointSaved() method to ask user whether the reference measure should be replaced with the measure in the left viewport. Added documentation.
History:
2009-03-09 Jeannie Walldren - Modified createPoint() method to clear the error stack after displaying a QMessageBox to the user
History:
2009-03-17 Tracie Sucharski - Added the ability to save the registration chips to the Options menu.
History:
2010-01-27 Jeannie Walldren - Fixed bug in setIgnoreLeftMeasure() and setIgnoreRightMeasure() that caused segmentation faults. Added question box to warn user that they are saving changes to an ignored measure.
History:
2010-06-02 Jeannie Walldren - Added cancelHoldPoint() method and connected this slot to QnetHoldPointDialog's holdCancelled() signal.
History:
2010-06-03 Jeannie Walldren - Initialized pointers to null in constructor.
History:
2010-06-08 Jeannie Walldren - Fixed bug in drawAllMeasurments() so that points with ignored measures matching the image shown are drawn as yellow unless the QnetTool is open to this point. Changed QMessageBox types for consistency with other qnet warnings and errors
History:
2010-07-01 Jeannie Walldren - Added createToolBarWidget(), showNavWindow() methods to reopen NavTool (if closed) whenever the Tie tool button on the tool pad is clicked. Modified drawAllMeasurments() to draw points selected in QnetTool last so they lay on top of all other points in the image. Replaced #includes with forward class declarations and moved #include to .cpp file.
History:
2010-07-12 Jeannie Walldren - Fixed bug in deletePoint() method. To prevent a seg fault, set m_controlPoint to NULL and emit editPointChanged with an empty string if the entire point is deleted.
History:
2010-07-12 Jeannie Walldren - Fixed bug in newHoldPoint() method that was causing the Hold Point Dialog to call the reject() command. Updated documentation.
History:
2010-10-28 Tracie Sucharski - Fixed some include problems caused by changes made to the ControlNet,ControlPoint, ControlMeasure header files. Remove findPointFiles method, the code is now in the createPoint method.
History:
2010-11-19 Tracie Sucharski - Renamed pointSaved slot to measureSaved.
History:
2010-11-17 Eric Hyer - Added newControlNetwork SIGNAL
History:
2010-11-22 Eric Hyer - Added stretchChipViewport SIGNAL for forwarding of SIGNAL from StretchTool to ChipViewport
History:
2010-12-08 Eric Hyer - Template filename now shown. Widgets in main window now organized into groupBoxes. Removed Options menu and moved registration menu to main menu bar. Added toolbar for actions also in menu. All actions now have icons.
History:
2010-12-14 Eric Hyer - Template editor is now a widget within the main window. Newly saved template files take effect after saving.
History:
2010-12-17 Eric Hyer - Fixed bug where current template file was not being updated with saveAs. Moved template file display to outside of control point groupbox.
History:
2011-06-08 Tracie Sucharski - Point types renamed: Ground -—> Fixed Tie -—> Free
History:
2011-06-28 Tracie Sucharski - Added methods, "loadMeasureTable" and "measureColumnToString". TODO: If these stay in qnet, they really need cleaning up. This was a quick & dirty band-aid until cneteditor is ready to be folded into qnet.
History:
2011-07-27 Tracie Sucharski - Added method to return the radius from a Dem if one is open.
History:
2011-09-16 Tracie Sucharski - Added method to draw Fixed and Constrained points on the ground source viewport.
History:
2012-01-11 Tracie Sucharski - Add error check for invalid lat, lon when creating new control point.
History:
2012-04-09 Tracie Sucharski - When checking if left measure editLock has changed, use measure->IsEditLocked() instead of this classes IsMeasureLocked().
History:
2012-04-16 Tracie Sucharski - When attempting to un-lock a measure print error if point is locked.
History:
2012-04-26 Tracie Sucharski - Cleaned up private slot,measureSaved. Abstracted out checking for a new reference measure and updating the surface point for a ground point.
History:
2012-05-07 Tracie Sucharski - Removed code in measureSaved to re-load left measure if left and right are the same, this is already handled in ControlPointEdit::saveMeasure.
History:
2012-05-08 Tracie Sucharski - Fixed bug where m_leftFile was not being reset in mouseButtonRelease. Change m_leftFile from a std::string to a QString.
History:
2012-06-12 Tracie Sucharski - Change made to measureSaved on 2012-04-26 caused a bug where if no ground is loaded the checkReference was not being called and reference measure could not be changed and there was no warning printed. Fix: Only call checkReference if there is no explicit reference for the point, otherwise simply set reference to left measure. If ground source is on the left do not print warning about new reference measure.
History:
2012-07-30 Tracie Sucharski - Fixed bug, program would seg fault when left-clicking on a cube when there were no control points. Before calling FindClosest, make sure the control net has points.
History:
2012-09-28 Tracie Sucharski - In ::loadPoint when looking for ground source in the right combo box, use the fileName, not the serial number. The ground source serial number will not be the fileName if the Instrument group is retained in the labels. Fixes #1018
History:
2012-10-04 Tracie Sucharski - If the ground source serial number already exists in the serial number list, print error and clear out ground information. Fixes #1018
History:
2013-05-09 Tracie Sucharski - Check for user selecting all measures for deletion and print warning that point will be deleted. Fixes #1491.
History:
2013-05-09 Tracie Sucharski - For editing (left button) and deleting (right button), Swapped checking for empty network and not allowing mouse clicks on the ground source. First check if there are any points in the network. If not print message and return. Fixes #1493.
History:
2013-05-16 Tracie Sucharski - Fixed some bugs when closing a ground source, opening a new ground source, and printing errors when point does not exist on current ground source. Fixes #1655.
History:
2013-11-07 Tracie Sucharski - Moved error checking on edit locked measures from ::measureSaved to ControlPointEdit::saveMeasure. The error checking now forces the edit lock check box to be unchecked before the measure can be saved. Fixes #1624.
History:
2013-12-05 Tracie Sucharski - Added error check for an ignored reference measure when changing point type to constrained or fixed or when saving constrained or fixed point with an ignored reference measure. Added new method, loadGroundMeasure, so that loadPoint does not need to be called from setPointType. This avoids reloading the point in case the ignored flag has been changed, but measure has not been saved. References #1603.
History:
2015-05-13 Ian Humphrey and Makayla Shepherd - Modified mouseButtonRelease to correctly handle expections thrown when find the closest control point. Updated the message displayed to user to be more informative. Fixes #2210.
History:
2015-05-19 Ian Humphrey and Makayla Shepherd - Added two functions to encapsulate duplicate code. Modified logic for changing a ground point between fixed and constrained (or vice versa) to prevent adding a duplicate ground measure, so no error is encountered. Fixes #2060.
History:
2015-06-05 Makayla Shepherd and Ian Humphrey - Modified checkReference() and measureSaved() so that when the user selects no on the dialog box when changing the reference, the action is properly canceled (as intended). Fixes #2172.
History:
2015-10-07 Ian Humphrey - Updated icons and icons are no longer embedded as per licensing terms. Fixes #1041.
History:
2015-10-29 Ian Humphrey - Added shortcuts for Add Measure (A) and Save Point (P) buttons. Added shortcuts (PageUp/PageDown) for selecting right measures and added slots to handle these shortcuts. Added save control network shortcut. Fixes #2324.
History:
2016-03-17 Makayla Shepherd - Modified addMeasures so that new measures use the Reference Measure in order to keep the behavior consistent. Fixes #2326.
History:
2016-08-28 Kelvin Rodriguez - Removed unused member variables to eliminate warnings in clang. Part of porting to OS X 10.11
History:
2016-10-07 Makayla Shepherd - Modified the Radius Source File label behavior on the Qnet Tool. When there is not a radius source open, a point is selected, and a ground source is opened, the radius source will be the ShapeModel of the reference measure if the ShapeModel is a cube. If the ShapeModel is not a cube, the ABC of the target body will be displayed as the Radius Source on the Qnet Tool. If there is not a radius source open, there is not a point selected, and a ground source is opened, the tool will exhibit the same behavior as before. Fixes #2099.
History:
2017-08-09 Adam Goins - Changed method references of SerialNumberList.Delete() to SerialNumberList.remove()
History:
2018-06-28 Debbie A Cook - Removed all calls to obsolete method SurfacePoint::SetRadii. 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 256 of file QnetTool.h.

Member Typedef Documentation

◆ CubeViewportList

typedef QVector< MdiCubeViewport * > Isis::Tool::CubeViewportList
protectedinherited

A list of cubeviewports.

Definition at line 205 of file Tool.h.

Constructor & Destructor Documentation

◆ QnetTool()

Isis::QnetTool::QnetTool ( QWidget parent)

Consructs the Qnet Tool window.

Parameters
parentPointer to the parent widget for the Qnet tool
History:
2010-06-03 Jeannie Walldren - Initialized pointers to null.

Definition at line 67 of file QnetTool.cpp.

References createQnetTool(), and Isis::IException::Programmer.

Member Function Documentation

◆ activate

◆ addConnections()

virtual void Isis::Tool::addConnections ( MdiCubeViewport cvp)
inlineprotectedvirtualinherited

Anytime a tool is created, you must add the connections for it.

Parameters
cvp

Reimplemented in Isis::WindowTool, and Isis::TrackTool.

Definition at line 239 of file Tool.h.

Referenced by Isis::Tool::addViewportConnections().

◆ addMeasure

void Isis::QnetTool::addMeasure ( )
privateslot

Add measure to point.

History:
2010-07-22 Tracie Sucharski - MeasureType of Estimated is now Reference. This change associated with implementation of binary control networks.
History:
2011-04-06 Tracie Sucharski - If not a fixed point, use the Reference measure to get lat,lon.
History:
2016-03-17 Makayla Shepherd - All new measures added use the Reference Measure to get the lat, lon, in order to make keep behavior consistant. Fixes #2326.

Definition at line 3015 of file QnetTool.cpp.

References colorizeSaveButton(), Isis::SerialNumberList::fileName(), Isis::SerialNumberList::fileNameIndex(), Isis::ControlMeasure::GetCubeSerialNumber(), Isis::Camera::Line(), Isis::Camera::Lines(), loadPoint(), loadTemplateFile(), Isis::ControlMeasure::Manual, Isis::Camera::Sample(), Isis::SerialNumberList::serialNumber(), Isis::SerialNumberList::serialNumberIndex(), Isis::ControlMeasure::SetChooserName(), Isis::ControlMeasure::SetCoordinate(), Isis::ControlMeasure::SetCubeSerialNumber(), Isis::QnetNewMeasureDialog::setFiles(), Isis::Camera::SetImage(), Isis::ControlMeasure::SetType(), Isis::Camera::SetUniversalGround(), Isis::SerialNumberList::size(), Isis::Sensor::UniversalLatitude(), Isis::Sensor::UniversalLongitude(), and Isis::Application::UserName().

Referenced by createQnetTool().

◆ addTo() [1/4]

◆ addTo() [2/4]

void Isis::Tool::addTo ( ToolPad toolpad)
inherited

Adds the tool to the toolpad.

Parameters
toolpad

Definition at line 98 of file Tool.cpp.

References Isis::Tool::activate(), Isis::ToolPad::addAction(), Isis::Tool::m_toolPadAction, and Isis::Tool::toolPadAction().

◆ addTo() [3/4]

◆ addTo() [4/4]

void Isis::Tool::addTo ( Workspace ws)
virtualinherited

Adds the given workspace to the cubeviewport list.

Parameters
ws

Reimplemented in Isis::WindowTool, Isis::SpecialPixelTool, Isis::FileTool, and Isis::EditTool.

Definition at line 45 of file Tool.cpp.

References Isis::Tool::registerTool(), and Isis::Tool::setCubeViewport().

◆ addToActive()

void Isis::Tool::addToActive ( QToolBar toolbar)
inherited

◆ addToPermanent()

virtual void Isis::Tool::addToPermanent ( QToolBar toolbar)
inlinevirtualinherited

◆ addViewportConnections()

◆ checkReference

bool Isis::QnetTool::checkReference ( )
privateslot

Change which measure is the reference.

Author
2012-04-26 Tracie Sucharski - moved funcitonality from measureSaved
Returns
bool If false reset reference ChipViewport to original value.
History:
2012-06-12 Tracie Sucharski - Moved check for ground loaded on left from the measureSaved method.
History:
2015-06-01 Makayla Shepherd and Ian Humphrey - Modified to return a boolean value to indicate if the user wants to update the reference or not and modified the case when the user clicks no to reload the left and right ChipViewports to reset back to the previous locations.

Definition at line 864 of file QnetTool.cpp.

References Isis::SerialNumberList::fileName(), Isis::ControlMeasure::GetCubeSerialNumber(), Isis::FileName::name(), selectLeftMeasure(), and selectRightMeasure().

Referenced by measureSaved().

◆ colorizeSaveButton

void Isis::QnetTool::colorizeSaveButton ( )
privateslot

Turn "Save Point" button text to red.

Author
2011-06-14 Tracie Sucharski

Definition at line 4066 of file QnetTool.cpp.

Referenced by addMeasure(), createFixedPoint(), createPoint(), createQnetTool(), deletePoint(), measureSaved(), setIgnorePoint(), setLockPoint(), and setPointType().

◆ createActions()

void Isis::QnetTool::createActions ( )
private

Creates the menu actions for Qnet Tool.

Author
???
History:
Ian Humphrey - Added CTRL+S shortcut for saving control network. References #2324.

Definition at line 505 of file QnetTool.cpp.

References openDem(), openGround(), openTemplateFile(), saveAsNet(), saveChips(), saveNet(), saveTemplateFile(), saveTemplateFileAs(), and Isis::Tool::toolIconDir().

Referenced by createQnetTool().

◆ createControlPointGroupBox()

QGroupBox * Isis::QnetTool::createControlPointGroupBox ( )
private
Returns
The groupbox labeled "Control Point"

Definition at line 265 of file QnetTool.cpp.

References Isis::ControlPoint::PointTypeToString(), setIgnorePoint(), setLockPoint(), and setPointType().

Referenced by createTopSplitter().

◆ createFixedPoint

◆ createLeftMeasureGroupBox()

QGroupBox * Isis::QnetTool::createLeftMeasureGroupBox ( )
private
Returns
The groupbox labeled "Left Measure"

Definition at line 331 of file QnetTool.cpp.

References selectLeftMeasure(), setIgnoreLeftMeasure(), and setLockLeftMeasure().

Referenced by createTopSplitter().

◆ createMenus()

void Isis::QnetTool::createMenus ( )
private

Customize dropdown menus below title bar.

History:
2008-11-18 Jeannie Walldren - Added "Close" action to the file menu on the qnet tool window.
History:
2008-12-10 Jeannie Walldren - Added "What's this?" function to qnet tool actions.

Definition at line 626 of file QnetTool.cpp.

Referenced by createQnetTool().

◆ createPoint

void Isis::QnetTool::createPoint ( double  lat,
double  lon 
)
slot

Create new control point.

Parameters
latLatitude value of control point to be created.
lonLongitude value of control point to be created.
History:
2008-11-20 Jeannie Walldren - Added message box if pointID value entered already exists for another ControlPoint. Previously this resulted in a PROGRAMMER ERROR from ControlPoint. Now, the user will be alerted in a message box and prompted to enter a new value for pointID.
History:
2008-12-03 Tracie Sucharski - Add error message and cancel create new point if the point falls on a single image.
History:
2008-12-15 Jeannie Walldren - Throw and catch error before creating QMessageBox
History:
2009-03-09 Jeannie Walldren - Clear error message stack after it is displayed to user in message box.
History:
2009-04-20 Tracie Sucharski - Set camera for each measure.
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"
History:
2010-07-21 Tracie Sucharski - Modified for new keywords associated with implementation of binary control networks.
History:
2010-11-19 Tracie Sucharski - Changed m_controlPoint to m_editPoint which is a copy rather than a pointer directly to the network.
History:
2010-12-15 Tracie Sucharski - Remove netChanged, the point is not changed in the net unless "Save Point" is selected.
History:
2011-03-31 Tracie Sucharski - Remove check for point only existing on a single image. This will be shown on new point dialog and user can always hit "Cancel".
History:
2011-04-08 Tracie Sucharski - Added check for NULL pointer before deleting m_editPOint if parent is NULL.
History:
2011-07-19 Tracie Sucharski - Remove call to SetAprioriSurfacePoint, this should only be done for constrained or fixed points.
History:
2012-05-08 Tracie Sucharski - m_leftFile changed from std::string to QString.

Definition at line 1671 of file QnetTool.cpp.

References Isis::ControlPoint::Add(), colorizeSaveButton(), Isis::SerialNumberList::fileName(), Isis::SerialNumberList::fileNameIndex(), Isis::ControlPoint::GetId(), Isis::Camera::Line(), loadPoint(), loadTemplateFile(), Isis::ControlMeasure::Manual, Isis::Camera::Sample(), Isis::SerialNumberList::serialNumber(), Isis::ControlMeasure::SetCamera(), Isis::ControlMeasure::SetChooserName(), Isis::ControlPoint::SetChooserName(), Isis::ControlMeasure::SetCoordinate(), Isis::ControlMeasure::SetCubeSerialNumber(), Isis::NewControlPointDialog::setFiles(), Isis::ControlMeasure::SetType(), Isis::Camera::SetUniversalGround(), Isis::SerialNumberList::size(), and Isis::Application::UserName().

Referenced by mouseButtonRelease().

◆ createQnetTool()

void Isis::QnetTool::createQnetTool ( QWidget parent)
private

create the main window for editing control points

Parameters
parentPointer to parent QWidget
History:
2008-11-24 Jeannie Walldren - Added "Goodness of Fit" to right and left measure info.
History:
2008-11-26 Jeannie Walldren - Added "Number of Measures" to QnetTool point information. Moved setWindowTitle() command to updateNet() method. Added connection between Ignore checkbox toggle() slot and ignoreChanged() signal
History:
2008-12-29 Jeannie Walldren - Disabled ground point check box and commented out connection between check box and setGroundPoint() method.
History:
2008-12-30 Jeannie Walldren - Added connections to toggle measures' Ignore check boxes if ignoreLeftChanged() and ignoreRightChanged() are emitted. Replaced reference to ignoreChanged() with ignorePointChanged().
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"
History:
2015-10-29 Ian Humphrey - Added shortcuts for the addMeasure (A) and savePoint (P) button. References #2324.

Definition at line 131 of file QnetTool.cpp.

References addMeasure(), colorizeSaveButton(), createActions(), createMenus(), createTopSplitter(), measureSaved(), paintAllViewports(), readSettings(), and savePoint().

Referenced by QnetTool().

◆ createRightMeasureGroupBox()

QGroupBox * Isis::QnetTool::createRightMeasureGroupBox ( )
private

Creates the right measure group box.

Returns
The groupbox labeled "Right Measure"
History:
2015-10-29 Ian Humphrey - Added shortcuts (PageUp/PageDown) for selecting previous or next measure in right measures box. References #2324.

Definition at line 403 of file QnetTool.cpp.

References nextRightMeasure(), previousRightMeasure(), selectRightMeasure(), setIgnoreRightMeasure(), and setLockRightMeasure().

Referenced by createTopSplitter().

◆ createTemplateEditorWidget()

void Isis::QnetTool::createTemplateEditorWidget ( )
private

Creates the Widget which contains the template editor and its toolbar.

Definition at line 475 of file QnetTool.cpp.

References setTemplateModified().

Referenced by createTopSplitter().

◆ createTemporaryGroundMeasure()

ControlMeasure * Isis::QnetTool::createTemporaryGroundMeasure ( )
private

Create a temporary measure to hold the ground point info for ground source.

Returns
ControlMeasure* the created ground measure
History:
2015-05-19 Ian Humphrey and Makayla Shepherd - Original version adapted from loadPoint() to encapsulate duplicated code in loadGroundMeasure().

Definition at line 2207 of file QnetTool.cpp.

References Isis::ControlMeasure::Candidate, Isis::ControlMeasure::SetCoordinate(), Isis::ControlMeasure::SetCubeSerialNumber(), and Isis::ControlMeasure::SetType().

Referenced by loadGroundMeasure(), and loadPoint().

◆ createToolBarWidget

QWidget * Isis::QnetTool::createToolBarWidget ( QStackedWidget *  parent)
protectedslot

This method creates the widgets for the tool bar.

A "Show Nav Tool" button is created so that the navigation tool may be reopened if it has been closed.

Parameters
parentThe parent QStackedWidget
Returns
QWidget*
Todo:
Find a way to enable Show Nav Button even when there are no images open in the main window.
History:
2010-07-01 Jeannie Walldren - Original version.

Definition at line 3607 of file QnetTool.cpp.

References showNavWindow().

◆ createTopSplitter()

QSplitter * Isis::QnetTool::createTopSplitter ( )
private

◆ cubeViewport()

MdiCubeViewport* Isis::Tool::cubeViewport ( ) const
inlineprotectedinherited

Return the current cubeviewport.

Returns
CubeViewport*

Definition at line 197 of file Tool.h.

References Isis::Tool::m_cvp.

Referenced by Isis::TrackTool::addConnections(), Isis::WindowTool::addConnections(), Isis::StretchTool::advancedStretchChanged(), Isis::FindTool::centerLinkedViewports(), Isis::StretchTool::changeStretch(), Isis::BandTool::changeView(), Isis::BandTool::copyLinkedViewports(), Isis::StretchTool::deleteFromCube(), Isis::FileTool::discard(), Isis::Tool::enableToolBar(), Isis::FileTool::exportToList(), Isis::FileTool::exportView(), Isis::StatisticsTool::getStatistics(), Isis::FindTool::handleRecordClicked(), Isis::EditTool::LineToPoints(), Isis::StretchTool::loadStretchFromCube(), Isis::TrackTool::locateCursor(), Isis::SunShadowTool::mouseButtonPress(), Isis::EditTool::mouseButtonRelease(), Isis::ControlNetTool::mouseButtonRelease(), Isis::FeatureNomenclatureTool::mouseButtonRelease(), Isis::FindTool::mouseButtonRelease(), Isis::MatchTool::mouseButtonRelease(), mouseButtonRelease(), Isis::RubberBandTool::mouseButtonRelease(), Isis::StretchTool::mouseButtonRelease(), Isis::AdvancedTrackTool::mouseLeave(), Isis::SunShadowTool::mouseMove(), Isis::TrackTool::mouseMove(), Isis::RubberBandTool::mouseMove(), Isis::ScatterPlotTool::mouseMove(), Isis::FindTool::paintViewport(), Isis::RubberBandTool::paintViewport(), Isis::SunShadowTool::paintViewport(), Isis::FileTool::print(), Isis::SunShadowTool::recalculateShadowHeight(), Isis::EditTool::redoEdit(), Isis::FindTool::refresh(), Isis::HistogramTool::refreshPlot(), Isis::SpatialPlotTool::refreshPlot(), Isis::SpectralPlotTool::refreshPlot(), Isis::TrackTool::removeConnections(), Isis::WindowTool::removeConnections(), Isis::RubberBandTool::repaint(), Isis::WindowTool::resizeWindows(), Isis::EditTool::rubberBandComplete(), Isis::HistogramTool::rubberBandComplete(), Isis::MeasureTool::rubberBandComplete(), Isis::StretchTool::rubberBandComplete(), Isis::ZoomTool::rubberBandComplete(), Isis::FileTool::save(), Isis::FileTool::saveAs(), Isis::FileTool::saveAsCubeByOption(), Isis::FileTool::saveAsReducedCube(), Isis::FileTool::saveInfo(), Isis::StretchTool::saveStretchToCube(), Isis::BandTool::setBandBin(), Isis::BandTool::setList(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::showAdvancedDialog(), Isis::ScatterPlotTool::showNewScatterPlotConfig(), Isis::StretchTool::stretchChanged(), Isis::StretchTool::stretchGlobal(), Isis::StretchTool::stretchGlobalAllBands(), Isis::StretchTool::stretchRegional(), Isis::EditTool::undoEdit(), Isis::StretchTool::updateAdvStretchDialogforAll(), Isis::StretchTool::updateHistograms(), Isis::TrackTool::updateLabels(), Isis::MeasureTool::updateMeasure(), Isis::AdvancedTrackTool::updateRow(), Isis::AbstractPlotTool::updateTool(), Isis::BandTool::updateTool(), Isis::BlinkTool::updateTool(), Isis::EditTool::updateTool(), Isis::FileTool::updateTool(), Isis::FindTool::updateTool(), Isis::SpecialPixelTool::updateTool(), Isis::StretchTool::updateTool(), Isis::SunShadowTool::updateTool(), Isis::WindowTool::updateTool(), Isis::ZoomTool::updateTool(), Isis::AbstractPlotTool::viewportsToPlot(), Isis::EditTool::writeToCube(), Isis::ZoomTool::zoomBy(), Isis::ZoomTool::zoomFit(), Isis::ZoomTool::zoomFitHeight(), Isis::ZoomTool::zoomFitWidth(), and Isis::ZoomTool::zoomManual().

◆ cubeViewportList()

Tool::CubeViewportList * Isis::Tool::cubeViewportList ( ) const
protectedinherited

Return the list of cubeviewports.

Returns
CubeViewportList*

Definition at line 390 of file Tool.cpp.

References Isis::Workspace::cubeViewportList().

Referenced by Isis::BlinkTool::advance(), Isis::SpecialPixelTool::apply(), Isis::FindTool::centerLinkedViewports(), Isis::WindowTool::changeCursor(), Isis::FileTool::closeAll(), Isis::BandTool::copyAllViewports(), Isis::BandTool::copyLinkedViewports(), Isis::MatchTool::createPoint(), Isis::BlinkTool::eventFilter(), Isis::FeatureNomenclatureTool::featuresIdentified(), Isis::FeatureNomenclatureTool::findMissingNomenclature(), Isis::FeatureNomenclatureTool::findNomenclatureStateChanged(), Isis::FindTool::handleLinkClicked(), Isis::WindowTool::linkWindows(), Isis::RubberBandTool::mouseButtonRelease(), Isis::RubberBandTool::mouseMove(), openGround(), Isis::ControlNetTool::paintAllViewports(), Isis::MatchTool::paintAllViewports(), Isis::StereoTool::paintAllViewports(), paintAllViewports(), Isis::FindTool::refresh(), Isis::ScatterPlotTool::repaintViewports(), Isis::AbstractPlotTool::repaintViewports(), Isis::WindowTool::resizeWindows(), Isis::BlinkTool::reverse(), Isis::ZoomTool::rubberBandComplete(), Isis::MatchTool::serialNumberList(), Isis::ControlNetTool::setControlNet(), Isis::FeatureNomenclatureTool::setFontColor(), Isis::FeatureNomenclatureTool::setFontSize(), Isis::FeatureNomenclatureTool::setShowApprovedOnly(), Isis::StretchTool::setStretchAllViewports(), Isis::FeatureNomenclatureTool::setVectorType(), Isis::StretchTool::stretchGlobalAllViewports(), Isis::BlinkTool::toggleLink(), Isis::WindowTool::unlinkWindows(), Isis::MeasureTool::updateMeasure(), Isis::AdvancedTrackTool::updateRow(), Isis::BlinkTool::updateTool(), Isis::FindTool::updateTool(), Isis::WindowTool::updateTool(), Isis::AbstractPlotTool::viewportsToPlot(), Isis::ZoomTool::zoomBy(), Isis::ZoomTool::zoomFit(), Isis::ZoomTool::zoomFitHeight(), Isis::ZoomTool::zoomFitWidth(), and Isis::ZoomTool::zoomManual().

◆ deletePoint

void Isis::QnetTool::deletePoint ( ControlPoint point)
slot

Delete control point.

Parameters
pointPointer to control point (net memory) to be deleted.
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"
History:
2010-07-12 Jeannie Walldren - Fixed bug by setting control point to NULL if removed from the control net and check for NULL points before emitting editPointChanged
History:
2011-04-04 Tracie Sucharski - Move code that was after the exec block within, so that if the Cancel button is selected, nothing else happens.
History:
2011-07-15 Tracie Sucharski - Print info about deleting editLock points and reference measures.
History:
2013-05-09 Tracie Sucharski - Check for user selecting all measures for deletion and print warning that point will be deleted.

Definition at line 1960 of file QnetTool.cpp.

References colorizeSaveButton(), Isis::SerialNumberList::fileName(), Isis::ControlMeasure::GetCubeSerialNumber(), loadPoint(), loadTemplateFile(), and Isis::ControlPoint::PointLocked.

Referenced by mouseButtonRelease().

◆ demRadius()

double Isis::QnetTool::demRadius ( double  latitude,
double  longitude 
)
private

◆ disableToolBar()

void Isis::Tool::disableToolBar ( )
privateinherited

Disables entire tool bar.

Definition at line 285 of file Tool.cpp.

References Isis::Tool::m_toolBarWidget.

Referenced by Isis::Tool::activate(), and Isis::Tool::addToActive().

◆ drawAllMeasurments()

void Isis::QnetTool::drawAllMeasurments ( MdiCubeViewport vp,
QPainter *  painter 
)
private

Draw all measurments which are on this viewPort.

Parameters
vpViewport whose measurements will be drawn
painter
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"
History:
2010-06-08 Jeannie Walldren - Fixed bug that was causing ignored measures not be drawn as yellow unless QnetTool was open
History:
2010-07-01 Jeannie Walldren - Modified to draw points selected in QnetTool last so they lay on top of all other points in the image.
History:
2011-04-15 Tracie Sucharski - Fixed bug which was causing all measures to be drawn on all cubes. Also removed loop through measures, instead just get measure for given serial number.
History:
2011-10-20 Tracie Sucharski - Add check for a control network that does not yet have any control points.
History:
2011-11-09 Tracie Sucharski - If there are no measures for this cube, return.

Definition at line 3171 of file QnetTool.cpp.

References Isis::SerialNumber::Compose(), Isis::CubeViewport::cube(), Isis::CubeViewport::cubeToViewport(), drawGroundMeasures(), Isis::ControlPoint::Free, Isis::ControlPoint::GetType(), and Isis::SerialNumberList::hasSerialNumber().

Referenced by paintViewport().

◆ drawGroundMeasures()

void Isis::QnetTool::drawGroundMeasures ( MdiCubeViewport vp,
QPainter *  painter 
)
private

Draw all Fixed or Constrained points on the ground source viewport.

Parameters
vpViewport whose measurements will be drawn
painter
Author
2011-09-16 Tracie Sucharski

Definition at line 3249 of file QnetTool.cpp.

References Isis::CubeViewport::cubeToViewport(), Isis::ControlPoint::Free, Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLongitude(), and Isis::ControlPoint::GetType().

Referenced by drawAllMeasurments().

◆ enableRubberBandTool()

void Isis::Tool::enableRubberBandTool ( )
protectedvirtualinherited

Anytime a tool is created, you may use the rubber band tool.

Enable the use of the rubberband tool.

Reimplemented in Isis::ZoomTool, Isis::StereoTool, Isis::SpectralPlotTool, Isis::SpatialPlotTool, Isis::RubberBandTool, Isis::MeasureTool, and Isis::HistogramTool.

Definition at line 339 of file Tool.cpp.

References Isis::RubberBandTool::disable().

Referenced by Isis::Tool::addViewportConnections().

◆ enableToolBar()

void Isis::Tool::enableToolBar ( )
privateinherited

Enables entire tool bar.

Definition at line 297 of file Tool.cpp.

References Isis::Tool::cubeViewport(), Isis::Tool::m_toolBarWidget, and Isis::Tool::updateTool().

Referenced by Isis::Tool::activate(), and Isis::Tool::setCubeViewport().

◆ eventFilter()

bool Isis::QnetTool::eventFilter ( QObject o,
QEvent *  e 
)
protected

Event filter for QnetTool.

Determines whether to update left or right measure info.

Parameters
oPointer to QObject
ePointer to QEvent
Returns
bool Indicates whether the event type is "Leave".

Definition at line 3097 of file QnetTool.cpp.

References updateLeftMeasureInfo(), and updateRightMeasureInfo().

◆ findPointLocation()

bool Isis::QnetTool::findPointLocation ( )
private

Attempt to find the control point's location on the ground source.

Returns
bool true if the location is found on the ground source
History:
2015-05-19 Ian Humphrey and Makayla Shepherd - Orignal version adapted from loadPoint() to encapsulate duplicated code in loadGroundMeasure().

Definition at line 2161 of file QnetTool.cpp.

References Isis::Angle::degrees(), Isis::ControlMeasure::GetCubeSerialNumber(), Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLongitude(), Isis::SerialNumberList::serialNumberIndex(), Isis::Camera::SetImage(), Isis::Sensor::UniversalLatitude(), and Isis::Sensor::UniversalLongitude().

Referenced by loadGroundMeasure(), and loadPoint().

◆ groundViewportClosed

void Isis::QnetTool::groundViewportClosed ( CubeViewport )
privateslot

Slot called when the ground source cube viewport is closed.

Author
2013-05-15 Tracie Sucharski

Definition at line 3955 of file QnetTool.cpp.

Referenced by openGround().

◆ IsMeasureLocked()

bool Isis::QnetTool::IsMeasureLocked ( QString  serialNumber)
private

Check for implicitly locked measure in m_editPoint.

If point is Locked, and this measure is the reference, it is implicity Locked. Because measure is a copy, the ControlPoint::IsEditLocked() which checks for implicit Lock on Reference measures does not work because there is not a parent point.

Parameters
[in]serialNumber(QString) Serial number of measure to be checked
Author
2011-07-06 Tracie Sucharski

Definition at line 4089 of file QnetTool.cpp.

Referenced by loadMeasureTable(), updateLeftMeasureInfo(), and updateRightMeasureInfo().

◆ loadGroundMeasure()

void Isis::QnetTool::loadGroundMeasure ( )
private

Load ground measure into right side and add to file combo boxes.

Author
2013-12-06 Tracie Sucharski
History:
2013-12-06 Tracie Sucharski - Original version.
History:
2015-05-19 Ian Humphrey and Makayla Shepherd - moved duplicated code to findPointLocation() and createTemporaryGroundMeasure().

Definition at line 1185 of file QnetTool.cpp.

References createTemporaryGroundMeasure(), Isis::SerialNumberList::fileName(), findPointLocation(), Isis::ControlMeasure::GetCubeSerialNumber(), loadMeasureTable(), Isis::FileName::name(), selectRightMeasure(), and updateSurfacePointInfo().

Referenced by setPointType().

◆ loadMeasureTable()

void Isis::QnetTool::loadMeasureTable ( )
private

◆ loadPoint()

void Isis::QnetTool::loadPoint ( )
private

Load point into QnetTool.

History:
2008-11-26 Jeannie Walldren - Added "Number of Measures" to QnetTool point information.
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"
History:
2010-10-29 Tracie Sucharski - Changed pointfiles to QStringList
History:
2011-04-20 Tracie Sucharski - Was not setting EditLock check box
History:
2011-07-18 Tracie Sucharski - Fixed bug with loading ground measure-use AprioriSurface point, not lat,lon of reference measure unless there is no apriori surface point.
History:
2012-05-08 Tracie Sucharski - m_leftFile changed from std::string to QString.
History:
2012-09-28 Tracie Sucharski - When looking for ground source in right combo, use fileName, not the serial number. The ground source serial number will not be the fileName if the Instrument group is retained in the labels. Fixes #1018
History:
2015-05-19 Ian Humphrey and Makayla Shepherd - moved duplicated code to findPointLocation() and createTemporaryGroundMeasure().
History:
2016-10-07 Makayla Shepherd - Added radius source handling if there is a ground source and there is not a radius source already open.

Definition at line 2244 of file QnetTool.cpp.

References createTemporaryGroundMeasure(), Isis::SerialNumberList::fileName(), findPointLocation(), Isis::ControlPoint::Free, Isis::ControlMeasure::GetCubeSerialNumber(), loadMeasureTable(), Isis::FileName::name(), openReferenceRadius(), selectLeftMeasure(), selectRightMeasure(), and updateSurfacePointInfo().

Referenced by addMeasure(), createFixedPoint(), createPoint(), deletePoint(), modifyPoint(), openGround(), and setPointType().

◆ loadTemplateFile()

void Isis::QnetTool::loadTemplateFile ( QString  fn)
private

Updates the current template file being used.

Parameters
fnThe file path of the new template file

Definition at line 3348 of file QnetTool.cpp.

Referenced by addMeasure(), createPoint(), deletePoint(), modifyPoint(), and openTemplateFile().

◆ measureSaved

void Isis::QnetTool::measureSaved ( )
privateslot

This method is connected with the measureSaved() signal from ControlPointEdit.

History:
2008-11-26 Jeannie Walldren - Added message box to warn the user that they are saving an "Ignore" point and ask whether they would like to set Ignore=false. This emits an ignoreChanged() signal so the "Ignore" box in the window is unchecked.
History:
2008-12-30 Jeannie Walldren - Modified to set measures in viewports to Ignore=False if when saving, the user chooses to set a point's Ignore=False. Replaced reference to ignoreChanged() with ignorePointChanged().
History:
2008-12-31 Jeannie Walldren - Added question box to ask user whether the current reference measure should be replaced with the measure in the left viewport.
History:
2010-01-27 Jeannie Walldren - Added question box to warn the user that they are saving an "Ignore" measure and ask whether they would like to set Ignore=False. This emits an ignoreRightChanged() signal so the "Ignore" box in the window is unchecked. Modified Ignore Point message for clarity.
History:
2010-11-19 Tracie Sucharski - Renamed from pointSaved.
History:
2011-03-03 Tracie Sucharski - Do not save left measure unless the ignore flag was changed, that is the only change allowed on the left measure.
History:
2011-04-20 Tracie Sucharski - If left measure equals right measure, copy right into left. Also if EditLock true and user does not want to change, then do not save measure. Remove signals EditPointChanged and netChanged, since these should only happen when the point is saved.
History:
2011-07-01 Tracie Sucharski - Fixed bug where the edit measure EditLocked=True, but the original measure was False, and we woouldn't allow the measure to be saved.
History:
2011-07-25 Tracie Sucharski - Removed editPointChanged signal since the editPoint is not changed. This helped with qnet windows blinking due to refresh.
History:
2011-09-22 Tracie Sucharski - When checking ignore status on right measure, check both original and edit measure.
History:
2012-04-09 Tracie Sucharski - When checking if left measure editLock has changed, use measure->IsEditLocked() instead of this classes IsMeasureLocked() because it checks the m_editPoint measure instead of the measure loaded into the point editor.
History:
2012-04-26 Tracie Sucharski - cleaned up, moved reference checking and updating ground surface point to new methods.
History:
2012-05-07 Tracie Sucharski - Removed code to re-load left measure if left and right are the same, this is already handled in ControlPointEdit::saveMeasure.
History:
2012-06-12 Tracie Sucharski - Change made on 2012-04-26 caused a bug where if no ground is loaded the checkReference was not being called and reference measure could not be changed and there was no warning printed.
History:
2013-12-05 Tracie Sucharski - If saving measure on fixed or constrained point and reference measure is ignored, print warning and return.
History:
2015-06-05 Makayla Shepherd and Ian Humphery - Modified to return out of the method when checkReference returns false.

Definition at line 724 of file QnetTool.cpp.

References checkReference(), colorizeSaveButton(), Isis::ControlPoint::Free, Isis::ControlMeasure::IsEditLocked(), loadMeasureTable(), updateLeftMeasureInfo(), updateRightMeasureInfo(), and Isis::Application::UserName().

Referenced by createQnetTool().

◆ menuName()

virtual QString Isis::Tool::menuName ( ) const
inlinevirtualinherited

◆ modifyPoint

void Isis::QnetTool::modifyPoint ( ControlPoint point)
slot

Modify control point.

Parameters
pointPointer to control point to be modified.
History:
2009-09-15 Tracie Sucharski - Add error check for points with no measures.

Definition at line 2109 of file QnetTool.cpp.

References loadPoint(), and loadTemplateFile().

Referenced by mouseButtonRelease().

◆ mouseButtonPress()

void Isis::Tool::mouseButtonPress ( QPoint  p,
Qt::MouseButton  s 
)
protectedvirtualinherited
Parameters
p
s

Definition at line 367 of file Tool.cpp.

Referenced by Isis::Tool::addViewportConnections(), and Isis::Tool::removeViewportConnections().

◆ mouseButtonRelease

void Isis::QnetTool::mouseButtonRelease ( QPoint  p,
Qt::MouseButton  s 
)
protectedslot

Handle mouse events on CubeViewport.

Parameters
p[in](QPoint) Point under cursor in cubeviewport
s[in](Qt::MouseButton) Which mouse button was pressed
History:
2007-06-12 Tracie Sucharski - Swapped left and right mouse button actions.
History:
2009-06-08 Tracie Sucharski - Add error checking for editing or deleting points when no point exists.
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"
History:
2010-11-19 Tracie Sucharski - Make a copy of the point to be edited or added. Do not add to control network until user selects "Save Point To Control Network".
History:
2012-01-11 Tracie Sucharski - Add error check for invalid lat, lon when creating new control point.
History:
2012-05-08 Tracie Sucharski - Clear m_leftFile, only set if creating new point. Change m_leftFile from a std::string to a QString.
History:
2013-05-09 Tracie Sucharski - For editing (left button) and deleting (right button), Swapped checking for empty network and not allowing mouse clicks on the ground source. First check if there are any points in the network. If not print message and return.
History:
2013-12-17 Tracie Sucharski - Check for valid serial number at beginning. This prevents seg fault if user opens a new cube list but clicks on a cube that was open from a previous list.
History:
2015-05-13 Ian Humphrey and Makayla Shepherd - Add try/catch when trying to find closest control point. Since FindClosest() can throw exceptions, we need to handle them within this connected slot to avoid undefined behavior.

Definition at line 1519 of file QnetTool.cpp.

References createFixedPoint(), createPoint(), Isis::CubeViewport::cube(), Isis::Tool::cubeViewport(), deletePoint(), Isis::Cube::fileName(), modifyPoint(), Isis::SerialNumberList::serialNumber(), Isis::UniversalGroundMap::SetImage(), Isis::IException::toString(), Isis::CubeViewport::universalGroundMap(), Isis::UniversalGroundMap::UniversalLatitude(), Isis::UniversalGroundMap::UniversalLongitude(), and Isis::CubeViewport::viewportToCube().

◆ mouseDoubleClick()

void Isis::Tool::mouseDoubleClick ( QPoint  p)
protectedvirtualinherited
Parameters
p

Definition at line 358 of file Tool.cpp.

Referenced by Isis::Tool::addViewportConnections(), and Isis::Tool::removeViewportConnections().

◆ mouseMove

void Isis::Tool::mouseMove ( QPoint  p)
protectedvirtualslotinherited
Parameters
p

Definition at line 352 of file Tool.cpp.

Referenced by Isis::Tool::addViewportConnections(), and Isis::Tool::removeViewportConnections().

◆ nextRightMeasure

void Isis::QnetTool::nextRightMeasure ( )
privateslot

Selects the next right measure when activated by key shortcut.

This slot is intended to handle selecting the next right measure when the attached shortcut (PageDown) is activated. This slot checks if the next index is in bounds.

History:
2015-10-29 Ian Humphrey - Created slot. References #2324.

Definition at line 2724 of file QnetTool.cpp.

References selectRightMeasure().

Referenced by createRightMeasureGroupBox().

◆ okToContinue()

bool Isis::QnetTool::okToContinue ( )
private

Allows user to set a new template file.

Author
2008-12-10 Jeannie Walldren
History:
2008-12-10 Jeannie Walldren - Original Version

void QnetTool::setTemplateFile() { m_pointEditor->setTemplateFile(); }

Definition at line 3301 of file QnetTool.cpp.

References saveTemplateFileAs().

Referenced by openTemplateFile().

◆ openDem

void Isis::QnetTool::openDem ( )
privateslot

Open a DEM for ground source radii.

Author
2011-01-18 Tracie Sucharski

Definition at line 3830 of file QnetTool.cpp.

Referenced by createActions().

◆ openGround

void Isis::QnetTool::openGround ( )
privateslot

Open a ground source for selecting fixed points.

This file could be a DEM, a shaded version of a DEM or a level1 image with corrected pointing or some other type of basemap.

Author
2009-07-20 Tracie Sucharski
History:
2011-06-03 Tracie Sucharski - Make sure edit point valid before loading.
History:
2012-10-04 Tracie Sucharski - If the ground source serial number already exists in the serial number list, print error and clear out ground information.
History:
2012-10-05 Tracie Sucharski - Re-factored most of this method, attempting to clean up logic, error checking and recovery.
History:
2016-09-26 Makayla Shepherd - Changed the logic for determining the radius source when there is not a radius source already open.

Definition at line 3648 of file QnetTool.cpp.

References Isis::SerialNumberList::add(), Isis::SerialNumber::Compose(), Isis::CameraFactory::Create(), Isis::ProjectionFactory::CreateFromCube(), Isis::CubeViewport::cube(), Isis::Tool::cubeViewportList(), Isis::Cube::fileName(), Isis::ControlPoint::Free, groundViewportClosed(), Isis::SerialNumberList::hasSerialNumber(), loadPoint(), Isis::FileName::name(), openReferenceRadius(), and Isis::IException::toString().

Referenced by createActions().

◆ openReferenceRadius

void Isis::QnetTool::openReferenceRadius ( )
privateslot

Open a radius source using the shape model of the reference measure of m_editPoint.

Author
2016-10-07 Makayla Shepherd - Changed radius source handling and moved it from OpenGround.

Definition at line 3858 of file QnetTool.cpp.

References Isis::SerialNumberList::fileName(), and Isis::Spice::radii().

Referenced by loadPoint(), and openGround().

◆ openTemplateFile

void Isis::QnetTool::openTemplateFile ( )
privateslot

prompt user for a registration template file to open.

Once the file is selected, loadTemplateFile is called to update the current template file being used.

Definition at line 3325 of file QnetTool.cpp.

References loadTemplateFile(), and okToContinue().

Referenced by createActions().

◆ paintAllViewports

void Isis::QnetTool::paintAllViewports ( QString  pointId)
privateslot

This method will repaint the given Point ID in each viewport Note: The pointId parameter is here even though it's not used because the signal (QnetTool::editPointChanged connected to this slot is also connected to another slot (QnetNavTool::updateEditPoint which needs the point Id.

TODO: Clean this up, use 2 different signals?

Parameters
pointId
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"

Definition at line 3137 of file QnetTool.cpp.

References Isis::Tool::cubeViewportList().

Referenced by createQnetTool(), and refresh().

◆ paintViewport()

void Isis::QnetTool::paintViewport ( MdiCubeViewport vp,
QPainter *  painter 
)
virtual

Take care of drawing things on a viewPort.

This is overiding the parents paintViewport member.

Parameters
vpPointer to Viewport to be painted
painter

Reimplemented from Isis::Tool.

Definition at line 3118 of file QnetTool.cpp.

References drawAllMeasurments().

◆ previousRightMeasure

void Isis::QnetTool::previousRightMeasure ( )
privateslot

Selects the previous right measure when activated by key shortcut.

This slot is intended to handle selecting the previous right measure when the attached shortcut (PageUp) is activated. This slot checks if the previous index is in bounds.

History:
2015-10-29 Ian Humphrey - Created slot. References #2324.

Definition at line 2743 of file QnetTool.cpp.

References selectRightMeasure().

Referenced by createRightMeasureGroupBox().

◆ readSettings()

void Isis::QnetTool::readSettings ( )
private

This method is called from the constructor so that when the Main window is created, it know's it's size and location.

Definition at line 4112 of file QnetTool.cpp.

References Isis::FileName::expanded().

Referenced by createQnetTool().

◆ refresh

void Isis::QnetTool::refresh ( )
slot

Refresh all necessary widgets in QnetTool including the PointEditor and CubeViewports.

Author
2008-12-09 Tracie Sucharski
History:
2010-12-15 Tracie Sucharski - Before setting m_editPoint to NULL, release memory. TODO: Why is the first if statement being done???
History:
2011-10-20 Tracie Sucharski - If no control points exist in the network, emit proper signal and make sure editor and measure table are hidden.

Definition at line 3555 of file QnetTool.cpp.

References paintAllViewports().

◆ registerTool()

void Isis::Tool::registerTool ( MdiCubeViewport viewport)
protectedinherited

Registers the tool to the viewport.

Parameters
viewport

Definition at line 327 of file Tool.cpp.

References Isis::Tool::m_cvp, and Isis::MdiCubeViewport::registerTool().

Referenced by Isis::Tool::addTo().

◆ removeConnections()

virtual void Isis::Tool::removeConnections ( MdiCubeViewport cvp)
inlineprotectedvirtualinherited

Anytime a tool is created, you must be able to remove it's connections.

Parameters
cvp

Reimplemented in Isis::WindowTool, Isis::TrackTool, and Isis::MeasureTool.

Definition at line 247 of file Tool.h.

Referenced by Isis::Tool::removeViewportConnections().

◆ removeViewportConnections()

void Isis::Tool::removeViewportConnections ( )
privateinherited

◆ saveAsNet

void Isis::QnetTool::saveAsNet ( )
privateslot

Signal to save the control net.

Definition at line 1420 of file QnetTool.cpp.

Referenced by createActions().

◆ saveChips

void Isis::QnetTool::saveChips ( )
privateslot

Slot which calls ControlPointEditor slot to save chips.

Author
2009-03-17 Tracie Sucharski

Definition at line 3488 of file QnetTool.cpp.

Referenced by createActions().

◆ saveNet

void Isis::QnetTool::saveNet ( )
privateslot

Signal to save control net.

Author
2011-10-31 Tracie Sucharski

Definition at line 1404 of file QnetTool.cpp.

Referenced by createActions().

◆ savePoint

void Isis::QnetTool::savePoint ( )
privateslot

Save edit point to the Control Network.

Up to this point the point is simply a copy and does not exist in the network.

Author
2010-11-19 Tracie Sucharski
History:
2011-04-20 Tracie Sucharski - If EditLock set, prompt for changing and do not save point if editLock not changed.
History:
2011-07-05 Tracie Sucharski - Move point EditLock error checking to individual point parameter setting methods, ie. SetPointType, SetIgnorePoint.

Definition at line 1060 of file QnetTool.cpp.

References Isis::ControlPoint::Delete(), Isis::ControlPoint::Free, Isis::ControlPoint::GetId(), Isis::ControlPoint::GetType(), and Isis::ControlPoint::HasSerialNumber().

Referenced by createQnetTool().

◆ saveTemplateFile

void Isis::QnetTool::saveTemplateFile ( )
privateslot

save the file opened in the template editor

Definition at line 3378 of file QnetTool.cpp.

References writeTemplateFile().

Referenced by createActions().

◆ saveTemplateFileAs

void Isis::QnetTool::saveTemplateFileAs ( )
privateslot

save the contents of template editor to a file chosen by the user

Definition at line 3390 of file QnetTool.cpp.

References writeTemplateFile().

Referenced by createActions(), and okToContinue().

◆ screenPixelsChanged

virtual void Isis::Tool::screenPixelsChanged ( )
inlineprotectedvirtualslotinherited

This is called when actions change which pixels from the cube are displayed.

Definition at line 148 of file Tool.h.

Referenced by Isis::Tool::addViewportConnections(), Isis::Tool::removeViewportConnections(), and Isis::FeatureNomenclatureTool::viewportDone().

◆ selectLeftMeasure

void Isis::QnetTool::selectLeftMeasure ( int  index)
privateslot

Select left measure.

Parameters
indexIndex of file from the point files vector
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"
History:
2011-07-06 Tracie Sucharski - If point is Locked, and measure is reference, lock the measure.

Definition at line 2765 of file QnetTool.cpp.

References Isis::SerialNumberList::serialNumber(), and updateLeftMeasureInfo().

Referenced by checkReference(), createLeftMeasureGroupBox(), and loadPoint().

◆ selectRightMeasure

void Isis::QnetTool::selectRightMeasure ( int  index)
privateslot

Select right measure.

Parameters
indexIndex of file from the point files vector
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"

Definition at line 2800 of file QnetTool.cpp.

References Isis::SerialNumberList::serialNumber(), and updateRightMeasureInfo().

Referenced by checkReference(), createRightMeasureGroupBox(), loadGroundMeasure(), loadPoint(), nextRightMeasure(), and previousRightMeasure().

◆ setCubeViewport

void Isis::Tool::setCubeViewport ( MdiCubeViewport cvp)
slotinherited

◆ setIgnoreLeftMeasure

void Isis::QnetTool::setIgnoreLeftMeasure ( bool  ignore)
privateslot

Set the "Ignore" keyword of the measure shown in the left viewport to the value of the input parameter.

Parameters
ignoreBoolean value that determines the Ignore value for the left measure.
History:
2010-01-27 Jeannie Walldren - Fixed bug that resulted in segfault. Moved the check whether m_rightMeasure is null before the check whether m_rightMeasure equals m_leftMeasure.
History:
2010-12-15 Tracie Sucharski - Remove netChanged, the point is not changed in the net unless "Save Point" is selected.
History:
2011-06-27 Tracie Sucharski - emit signal indicating a measure parameter has changed.

Definition at line 1313 of file QnetTool.cpp.

Referenced by createLeftMeasureGroupBox().

◆ setIgnorePoint

void Isis::QnetTool::setIgnorePoint ( bool  ignore)
privateslot

Set point's "Ignore" keyword to the value of the input parameter.

Parameters
ignoreBoolean value that determines the Ignore value for this point.
History:
2010-12-15 Tracie Sucharski - Remove netChanged, the point is not changed in the net unless "Save Point" is selected.

Definition at line 1239 of file QnetTool.cpp.

References colorizeSaveButton(), and Isis::ControlPoint::PointLocked.

Referenced by createControlPointGroupBox().

◆ setIgnoreRightMeasure

void Isis::QnetTool::setIgnoreRightMeasure ( bool  ignore)
privateslot

Set the "Ignore" keyword of the measure shown in the right viewport to the value of the input parameter.

Parameters
ignoreBoolean value that determines the Ignore value for the right measure.
History:
2010-01-27 Jeannie Walldren - Fixed bug that resulted in segfault. Moved the check whether m_leftMeasure is null before the check whether m_rightMeasure equals m_leftMeasure.
History:
2010-12-15 Tracie Sucharski - Remove netChanged, the point is not changed in the net unless "Save Point" is selected.
History:
2011-06-27 Tracie Sucharski - emit signal indicating a measure parameter has changed.

Definition at line 1383 of file QnetTool.cpp.

Referenced by createRightMeasureGroupBox().

◆ setLockLeftMeasure

void Isis::QnetTool::setLockLeftMeasure ( bool  lock)
privateslot

Set the "EditLock" keyword of the measure shown in the left viewport to the value of the input parameter.

Parameters
ignoreBoolean value that determines the EditLock value for the left measure.
Author
2011-03-07 Tracie Sucharski
History:
2011-06-27 Tracie Sucharski - emit signal indicating a measure parameter has changed.
History:
2012-04-16 Tracie Sucharski - When attempting to un-lock a measure print error if point is locked.

Definition at line 1272 of file QnetTool.cpp.

Referenced by createLeftMeasureGroupBox().

◆ setLockPoint

void Isis::QnetTool::setLockPoint ( bool  lock)
privateslot

Set point's "EditLock" keyword to the value of the input parameter.

Parameters
ignoreBoolean value that determines the EditLock value for this point.
Author
2011-03-07 Tracie Sucharski

Definition at line 1220 of file QnetTool.cpp.

References colorizeSaveButton().

Referenced by createControlPointGroupBox().

◆ setLockRightMeasure

void Isis::QnetTool::setLockRightMeasure ( bool  lock)
privateslot

Set the "EditLock" keyword of the measure shown in the right viewport to the value of the input parameter.

Parameters
ignoreBoolean value that determines the EditLock value for the right measure.
Author
2011-03-07 Tracie Sucharski
History:
2011-06-27 Tracie Sucharski - emit signal indicating a measure parameter has changed.
History:
2012-04-16 Tracie Sucharski - When attempting to un-lock a measure print error if point is locked.

Definition at line 1343 of file QnetTool.cpp.

Referenced by createRightMeasureGroupBox().

◆ setPointType

void Isis::QnetTool::setPointType ( int  pointType)
privateslot

Set the point type.

Parameters
pointTypeint Index from point type combo box
Author
2011-07-05 Tracie Sucharski
History:
2013-12-06 Tracie Sucharski - If changing point type to constrained or fixed make sure reference measure is not ignored.
History:
2015-05-19 Ian Humphrey and Makayla Shepherd - When changing a ground point between fixed and constrained and vice versa, the ground measure will not be reloaded (otherwise m_editPoint->Add() will throw an exception within a connected slot).

Definition at line 1119 of file QnetTool.cpp.

References colorizeSaveButton(), Isis::ControlPoint::Free, loadGroundMeasure(), loadPoint(), and Isis::ControlPoint::PointLocked.

Referenced by createControlPointGroupBox().

◆ setTemplateModified

void Isis::QnetTool::setTemplateModified ( )
privateslot

called when the template file is modified by the template editor

Definition at line 3371 of file QnetTool.cpp.

Referenced by createTemplateEditorWidget().

◆ showNavWindow

void Isis::QnetTool::showNavWindow ( bool  checked)
privateslot

Emits a signal to displays the Navigation window.

This signal is connected to QnetNavTool.

History:
2010-07-01 Jeannie Walldren - Original version

Definition at line 3590 of file QnetTool.cpp.

Referenced by createToolBarWidget(), and toolPadAction().

◆ toolIconDir()

QString Isis::Tool::toolIconDir ( ) const
inlineinherited

◆ toolPadAction()

QAction * Isis::QnetTool::toolPadAction ( ToolPad pad)
protectedvirtual

Adds the Tie tool action to the tool pad.

When the Tie tool is selected, the Navigation Tool will automatically open.

Parameters
padTool pad
Returns
QAction* Pointer to Tie tool action
History:
2010-07-01 Jeannie Walldren - Added connection between qnet's TieTool button and the showNavWindow() method

Reimplemented from Isis::Tool.

Definition at line 1474 of file QnetTool.cpp.

References showNavWindow(), and Isis::Tool::toolIconDir().

◆ updateLeftMeasureInfo

void Isis::QnetTool::updateLeftMeasureInfo ( )
privateslot
History:
2008-11-24 Jeannie Walldren - Added "Goodness of Fit" to left measure info.
History:
2010-07-22 Tracie Sucharski - Updated new measure types associated with implementation of binary control networks.
History:
2010-12-27 Tracie Sucharski - Write textual Null instead of the numeric Null for sample & line residuals.
History:
2011-04-20 Tracie Sucharski - Set EditLock check box correctly
History:
2011-05-20 Tracie Sucharski - Added Reference output
History:
2011-07-19 Tracie Sucharski - Did some re-arranging and added sample/line shifts.

Definition at line 2843 of file QnetTool.cpp.

References Isis::ControlMeasure::Candidate, Isis::ControlMeasureLogData::GoodnessOfFit, IsMeasureLocked(), Isis::ControlMeasure::Manual, Isis::Null, Isis::ControlMeasure::RegisteredPixel, and Isis::ControlMeasure::RegisteredSubPixel.

Referenced by eventFilter(), measureSaved(), and selectLeftMeasure().

◆ updateNet

void Isis::QnetTool::updateNet ( QString  cNetFileName)
slot

Updates the Control Network displayed in the Qnet Tool title bar.

This slot is connected to QnetFileTool's controlNetworkUpdated(QString cNetFileName) signal.

Parameters
cNetFileNameFileName of the most recently selected control network.
See also
QnetFileTool
History:
Tracie Sucharski - Original version
History:
2008-11-26 Jeannie Walldren - Added cNetFileName input parameter in order to show the file path in the window's title bar.
History:
2011-10-31 Tracie Sucharski - Save filename for implementation of Save option.

Definition at line 1453 of file QnetTool.cpp.

◆ updatePointInfo

void Isis::QnetTool::updatePointInfo ( QString  pointId)
slot

Update the current editPoint information in the Point Editor labels.

Author
2011-05-05 Tracie Sucharski

@TODO Instead of a single method, should slots be separate for each updated point parameter, ie. ignore, editLock, apriori, etc. This is not robust, if other point attributes are changed outside of QnetTool, this method will need to be updated. *** THIS METHOD SHOULD GO AWAY WHEN CONTROLpOINTEDITOR IS INCLUDED IN QNET ***

Definition at line 3515 of file QnetTool.cpp.

References updateSurfacePointInfo().

◆ updateRightMeasureInfo

void Isis::QnetTool::updateRightMeasureInfo ( )
privateslot
History:
2008-11-24 Jeannie Walldren - Added "Goodness of Fit" to right measure info.
History:
2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"
History:
2010-07-22 Tracie Sucharski - Updated new measure types associated with implementation of binary control networks.
History:
2010-12-27 Tracie Sucharski - Write textual Null instead of the numeric Null for sample & line residuals.
History:
2011-04-20 Tracie Sucharski - Set EditLock check box correctly
History:
2011-05-20 Tracie Sucharski - Added Reference output
History:
2011-07-19 Tracie Sucharski - Did some re-arranging and added sample/line shifts.

Definition at line 2931 of file QnetTool.cpp.

References Isis::ControlMeasure::Candidate, Isis::ControlMeasureLogData::GoodnessOfFit, IsMeasureLocked(), Isis::ControlMeasure::Manual, Isis::Null, Isis::ControlMeasure::RegisteredPixel, and Isis::ControlMeasure::RegisteredSubPixel.

Referenced by eventFilter(), measureSaved(), and selectRightMeasure().

◆ updateSurfacePointInfo

void Isis::QnetTool::updateSurfacePointInfo ( )
privateslot

Update the Surface Point Information in the QnetTool window.

Author
2011-03-01 Tracie Sucharski
History:
2011-05-12 Tracie Sucharski - Type printing Apriori Values
History:
2011-05-24 Tracie Sucharski - Set target radii on apriori surface point, so that sigmas can be converted to meters.

Definition at line 2615 of file QnetTool.cpp.

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

Referenced by loadGroundMeasure(), loadPoint(), and updatePointInfo().

◆ updateTool

◆ viewTemplateFile

void Isis::QnetTool::viewTemplateFile ( )
privateslot

Allows the user to view the template file that is currently set.

Author
2008-12-10 Jeannie Walldren
History:
2008-12-10 Jeannie Walldren - Original Version
History:
2008-12-10 Jeannie Walldren - Added "" namespace to PvlEditDialog reference and changed registrationDialog from pointer to object
History:
2008-12-15 Jeannie Walldren - Added QMessageBox warning in case Template File cannot be read.

Definition at line 3462 of file QnetTool.cpp.

References Isis::PvlContainer::fileName(), and Isis::IException::toString().

◆ writeSettings()

void Isis::QnetTool::writeSettings ( ) const
private

This method is called when the Main window is closed or hidden to write the size and location settings to a config file in the user's home directory.

Definition at line 4128 of file QnetTool.cpp.

References Isis::FileName::expanded().

◆ writeTemplateFile

void Isis::QnetTool::writeTemplateFile ( QString  fn)
privateslot

write the contents of the template editor to the file provided.

Parameters
fnThe filename to write to

Definition at line 3408 of file QnetTool.cpp.

References Isis::IException::toString().

Referenced by saveTemplateFile(), and saveTemplateFileAs().

Member Data Documentation

◆ m_active

bool Isis::Tool::m_active
privateinherited

Is the tool acitve?

Definition at line 264 of file Tool.h.

Referenced by Isis::Tool::activate(), Isis::Tool::setCubeViewport(), and Isis::Tool::Tool().

◆ m_cvp

◆ m_toolBarWidget

QWidget* Isis::Tool::m_toolBarWidget
privateinherited

The tool bar on which this tool resides.

Definition at line 265 of file Tool.h.

Referenced by Isis::Tool::addToActive(), Isis::Tool::disableToolBar(), Isis::Tool::enableToolBar(), and Isis::Tool::Tool().

◆ m_toolIconDir

QString Isis::Tool::m_toolIconDir
privateinherited

The pathway to the icon directory.

Definition at line 267 of file Tool.h.

Referenced by Isis::Tool::Tool(), and Isis::Tool::toolIconDir().

◆ m_toolPadAction

QAction* Isis::Tool::m_toolPadAction
privateinherited

The tool pad on which this tool resides.

Definition at line 266 of file Tool.h.

Referenced by Isis::Tool::activate(), Isis::Tool::addTo(), Isis::Tool::addViewportConnections(), and Isis::Tool::Tool().


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