Isis 3 Programmer Reference
Isis::ControlPointEdit Class Reference

Point Editor Widget. More...

#include <ControlPointEdit.h>

Inheritance diagram for Isis::ControlPointEdit:
Inheritance graph
Collaboration diagram for Isis::ControlPointEdit:
Collaboration graph

Public Slots

void setLeftMeasure (ControlMeasure *leftMeasure, Cube *leftCube, QString pointId)
 Set the measure displayed in the left ChipViewport.
 
void setRightMeasure (ControlMeasure *rightMeasure, Cube *rightCube, QString pointId)
 Set the measure displayed in the right ChipViewport.
 
void colorizeSaveButton ()
 Turn "Save Measure" button text to red.
 
void refreshChips ()
 
void saveChips ()
 Slot to save registration chips to files and fire off qview.
 

Signals

void updateLeftView (double sample, double line)
 
void updateRightView (double sample, double line)
 
void measureSaved ()
 
void newControlNetwork (ControlNet *)
 
void stretchChipViewport (Stretch *, CubeViewport *)
 

Public Member Functions

 ControlPointEdit (ControlNet *cnet, QWidget *parent=0, bool allowLeftMouse=false, bool useGeometry=true)
 Constructs a ControlPointEdit widget.
 
QString templateFileName ()
 
bool setTemplateFile (QString)
 Allows user to choose a new template file by opening a window from which to select a filename.
 
void allowLeftMouse (bool allowMouse)
 Set the option that allows mouse movements in the left ChipViewport.
 

Private Slots

void setNoGeom ()
 Slot to turn off geom.
 
void setGeom ()
 Turn geom on.
 
void setRotate ()
 ‍**
 
void setCircle (bool)
 Turn circle widgets on/off.
 
void setZoomLink (bool)
 Turn linking of zoom on or off.
 
void findPoint ()
 Find point from left ChipViewport in the right ChipViewport.
 
void registerPoint ()
 Sub-pixel register point in right chipViewport with point in left.
 
void saveMeasure ()
 Save control measure under the crosshair in right ChipViewport.
 
void updateLeftPositionLabel (double zoomFactor)
 Update sample/line, lat/lon and zoom factor of left measure.
 
void updateRightGeom ()
 Slot to update the geomed right ChipViewport for zoom operations.
 
void updateRightPositionLabel (double zoomFactor)
 Update sample/line, lat/lon and zoom factor of right measure.
 
void blinkStart ()
 Slot to start blink function.
 
void blinkStop ()
 Slot to stop blink function.
 
void changeBlinkTime (double interval)
 Set blink rate.
 
void updateBlink ()
 Slot to cause the blink to happen coinciding with the timer.
 

Private Member Functions

void createPointEditor (QWidget *parent)
 Design the PointEdit widget.
 

Private Attributes

bool p_allowLeftMouse
 
bool p_useGeometry
 
QString p_templateFileName
 
QLabel * p_leftZoomFactor
 
QLabel * p_rightZoomFactor
 
QLabel * p_leftSampLinePosition
 
QLabel * p_rightSampLinePosition
 
QLabel * p_leftLatLonPosition
 
QLabel * p_rightLatLonPosition
 
QRadioButton * p_nogeom
 
QRadioButton * p_geom
 
QToolButton * p_rightZoomIn
 
QToolButton * p_rightZoomOut
 
QToolButton * p_rightZoom1
 
bool p_timerOn
 
QTimer * p_timer
 
std::vector< ChipViewport * > p_blinkList
 
unsigned char p_blinkIndex
 
QDial * p_dial
 
QLCDNumber * p_dialNumber
 
QDoubleSpinBox * p_blinkTimeBox
 
bool p_circle
 
QScrollBar * p_slider
 
QPushButton * p_autoReg
 
QWidgetp_autoRegExtension
 
QLabel * p_oldPosition
 
QLabel * p_goodFit
 
bool p_autoRegShown
 
bool p_autoRegAttempted
 
QPushButton * p_saveMeasure
 
QPalette p_saveDefaultPalette
 
ChipViewportp_leftView
 
ChipViewportp_rightView
 
Cubep_leftCube
 
Cubep_rightCube
 
ControlMeasurep_leftMeasure
 
ControlMeasurep_rightMeasure
 
Chipp_leftChip
 
Chipp_rightChip
 
UniversalGroundMapp_leftGroundMap
 
UniversalGroundMapp_rightGroundMap
 
AutoRegp_autoRegFact
 
QString p_pointId
 
int p_rotation
 
bool p_geomIt
 
bool p_linkZoom
 

Detailed Description

Point Editor Widget.

Author
2008-09-09 Tracie Sucharski
History

2008-11-19 Tracie Sucharski - Addition option to constructor to allow mouse events on leftChipViewport.

2008-11-24 Tracie Sucharski - Changed class name from PointEdit

2008-12-02 Jeannie Walldren - Modified createPointEditor() to allow the leftChipViewport to refresh even if allowLeftMouse = false.

2008-12-10 Jeannie Walldren - Added a private variable for the template filename. Set the default value of this variable to the previously hard-coded template filename. Added setTemplateFile() method derived from previously unused and commented out method called openTemplateFile().

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.

2008-12-30 Jeannie Walldren - Modified savePoint() method to update user (chooser) name and date when point is saved

2009-03-17 Tracie Sucharski - Add slot to set a boolean to indicate whether the registration chips should be saved.

2010-06-08 Jeannie Walldren - Added warning box in registerPoint() if unable to load left or right chip

2010-06-26 Eric Hyer - now uses MdiCubeViewport instead of CubeViewport. Fixed multiple include problems.

2010-11-17 Eric Hyer - now forwards new ControlNets to the ChipViewports

2010-11-19 Tracie Sucharski - Renamed the "Save Point" button to "Save Measure" along with signals and slots. Add a new "Save Point" button which actually saves the edit point to the network.

2010-11-22 Eric Hyer - Forwarded SIGNAL from StretchTool to ChipViewports

2010-12-01 Eric Hyer - Added checkboxes for stretch locking

2010-12-08 Eric Hyer - Relocated stretch locking checkboxes

2010-12-14 Eric Hyer - setTemplateFile now takes the filename as a parameter (no more open dialog!)

2011-05-04 Jai Rideout - updated saveChips() to reference new AutoReg API for accessing chips used in registration.

2011-06-14 Tracie Sucharski - Added slot to colorize the Save Measure button. If user moved the tack point, the button text will be changed to red. If they push the save button, button will go back to black.

2011-06-15 Tracie Sucharski - Changed signal mouseClick to userMovedTackPoint. TODO: Could not use tackPointChanged signal because that signal is emitted whenever the measure is loaded not just when the user initiates the move. This should be cleaned up.

2012-04-17 Tracie Sucharski - If geom is turned on update the right measure in setLeftMeasure.

2012-05-01 Tracie Sucharski - Fix intereface between No Geom, geom and rotate. Make sure resets are done properly when switching beween the options.

2012-05-07 Tracie Sucharski - Change made on 2012-04-17 introduced bug when loading a different control point, so in setLeftMeasure, only update the right chip if we're not loading a different control point.

2012-06-28 Tracie Sucharski - Add parameter to constructor to indicate whether to use cube geometry. This allow cubes with no camera or SPICE information to be used.

2012-07-20 Tracie Sucharski - Change the Save Measure button text and tootip depending on whether movement is allowed on the left chip.

2012-07-26 Tracie Sucharski - Added ability to link zooming between left and right viewports. Added 2 methods, zoomFactor() which returns a zoom factor and zoom(double zoomFactor).

2013-04-30 Tracie Sucharski - Fixed bug introduced by linking zooms between left and right viewports. Zoom factors were being passed into the Chip::Load method as the second argument which should be the rotation value.

2013-11-07 Tracie Sucharski - Moved error checking on edit locked measures from QnetTool::measureSaved to saveMeasure. The error checking now forces the edit lock check box to be unchecked before the measure can be saved. Fixes #1624.

2013-12-30 Kimberly Oyama and Stuart Sides - In saveChips(), added single quotes around the file names in case there are spaces or other special characters in them. Fixes #1551.

2015-01-13 Ian Humphrey - Modified setTemplateFile() so opening a template file will undo registration if a point is already registered. Modified saveMeasure() to handle exception thrown by ControlMeasure::SetLogData(). Fixes #2041.

2015-10-29 Ian Humphrey - Added shortcuts for Register (R), Save Measure (M), Undo Registration (U), and Find (F). Fixes #2324.

2017-04-25 Marjorie Hahn - Moved AutoRegFactory creation from the constructor to ControlPointEdit::registerPoint() so that AutoRegFactory is not created until it is needed. Fixes #4590.

Todo
Re-think design of the change made on 2012-07-26. The linking was put into updateLeftPositionLabel because it was the fastest solution, but should this be put somewhere else.

Definition at line 155 of file ControlPointEdit.h.

Constructor & Destructor Documentation

◆ ControlPointEdit()

Isis::ControlPointEdit::ControlPointEdit ( ControlNet * cnet,
QWidget * parent = 0,
bool allowLeftMouse = false,
bool useGeometry = true )

Constructs a ControlPointEdit widget.

Parameters
parentInput Parent of widget
allowLeftMouseInput Allow/Disallow mouse events on Left ChipViewport
Author
Tracie Sucharski
History

2008-15-2008 Jeannie Walldren - Added error string to iException::Message before creating QMessageBox

2017-04-21 Marjorie Hahn - Moved p_autoRegFact creation from constructor to registerPoint() method.

Definition at line 64 of file ControlPointEdit.cpp.

References allowLeftMouse(), and createPointEditor().

◆ ~ControlPointEdit()

Isis::ControlPointEdit::~ControlPointEdit ( )

Definition at line 86 of file ControlPointEdit.cpp.

Member Function Documentation

◆ allowLeftMouse()

void Isis::ControlPointEdit::allowLeftMouse ( bool allowMouse)

Set the option that allows mouse movements in the left ChipViewport.

Author
Tracie Sucharski

Definition at line 1554 of file ControlPointEdit.cpp.

Referenced by ControlPointEdit().

◆ blinkStart

void Isis::ControlPointEdit::blinkStart ( )
privateslot

Slot to start blink function.

Definition at line 1441 of file ControlPointEdit.cpp.

References updateBlink().

Referenced by createPointEditor().

◆ blinkStop

void Isis::ControlPointEdit::blinkStop ( )
privateslot

Slot to stop blink function.

Definition at line 1458 of file ControlPointEdit.cpp.

Referenced by createPointEditor().

◆ changeBlinkTime

void Isis::ControlPointEdit::changeBlinkTime ( double interval)
privateslot

Set blink rate.

Parameters
intervalInput Blink rate in seconds
Author
Tracie Sucharski

Definition at line 1475 of file ControlPointEdit.cpp.

Referenced by createPointEditor().

◆ colorizeSaveButton

void Isis::ControlPointEdit::colorizeSaveButton ( )
slot

Turn "Save Measure" button text to red.

Author
2011-06-14 Tracie Sucharski

Definition at line 867 of file ControlPointEdit.cpp.

Referenced by createPointEditor(), findPoint(), and registerPoint().

◆ createPointEditor()

void Isis::ControlPointEdit::createPointEditor ( QWidget * parent)
private

Design the PointEdit widget.

Author
Tracie Sucharski
History

2008-11-19 Tracie Sucharski - Added left pan buttons, but default to hidden.

2008-12-02 Jeannie Walldren - Allow connection between updateLeftView and refreshView for all objects. Previously this was only done if allowLeftMouse = true.

2008-12-02 Tracie Sucharski - Another bug fix due to change on 2008-11-19, The leftView tackPointChanged connection needs to always be made whether mouse button events are allowed or not.

2008-12-10 Jeannie Walldren - Set the default value of the new private variable, p_templateFileName, to the previously hard-coded template filename.

2015-10-29 Ian Humphrey - Added shortcuts for Find (F), Register (R), Undo Registration (U), and Save Measure (M) buttons. Fixes #2324.

Definition at line 118 of file ControlPointEdit.cpp.

References blinkStart(), blinkStop(), changeBlinkTime(), colorizeSaveButton(), Isis::FileName::expanded(), findPoint(), registerPoint(), saveMeasure(), setCircle(), setGeom(), setNoGeom(), setRotate(), setZoomLink(), updateLeftPositionLabel(), updateRightGeom(), updateRightPositionLabel(), and Isis::VIEWSIZE.

Referenced by ControlPointEdit().

◆ findPoint

void Isis::ControlPointEdit::findPoint ( )
privateslot

Find point from left ChipViewport in the right ChipViewport.

Author
tsucharski (6/27/2011)
History
2011-06-27 Tracie Sucharski - If measure moves to different samp/line than saved measure, change save button to red.

Definition at line 886 of file ControlPointEdit.cpp.

References colorizeSaveButton(), Isis::UniversalGroundMap::Line(), Isis::UniversalGroundMap::Sample(), Isis::UniversalGroundMap::SetImage(), Isis::UniversalGroundMap::SetUniversalGround(), Isis::ChipViewport::tackLine(), Isis::ChipViewport::tackSample(), Isis::UniversalGroundMap::UniversalLatitude(), and Isis::UniversalGroundMap::UniversalLongitude().

Referenced by createPointEditor().

◆ refreshChips

void Isis::ControlPointEdit::refreshChips ( )
slot

Definition at line 1576 of file ControlPointEdit.cpp.

◆ registerPoint

void Isis::ControlPointEdit::registerPoint ( )
privateslot

Sub-pixel register point in right chipViewport with point in left.

History

2008-15-2008 Jeannie Walldren - Throw and catch error before creating QMessageBox

2009-03-23 Tracie Sucharski - Added private p_autoRegAttempted for the SaveChips method.

2010-02-16 Tracie Sucharski- If autoreg fails, print registration stats.

2010-02-18 Tracie Sucharski - Registration stats wasn't the correct info to print. Instead, check registrationStatus and print separate errors for each possibility.

2010-02-22 Tracie Sucharski - Added more info for registration failures.

2010-06-08 Jeannie Walldren - Catch error and warn user if unable to load pattern (left) or search (right) chip

2010-10-12 Tracie Sucharski - Clean up try/catch blocks.

2011-06-27 Tracie Sucharski - If un-doing registration, change save button back to black. If registration successful, change save button to red.

2011-10-21 Tracie Sucharski - Add try/catch around registration to catch errors thrown from autoreg class.

2017-04-21 Marjorie Hahn - Added auto registration factory creation.

Definition at line 941 of file ControlPointEdit.cpp.

References Isis::AutoReg::AdaptiveAlgorithmFailed, colorizeSaveButton(), Isis::AutoRegFactory::Create(), Isis::AutoReg::CubeLine(), Isis::AutoReg::CubeSample(), Isis::AutoReg::Distance(), Isis::AutoReg::DistanceTolerance(), Isis::AutoReg::FitChipNoData, Isis::AutoReg::FitChipToleranceNotMet, Isis::AutoReg::GoodnessOfFit(), Isis::IException::Io, Isis::Chip::Load(), Isis::AutoReg::MinimumZScore(), Isis::AutoReg::PatternChip(), Isis::AutoReg::PatternChipNotEnoughValidData, Isis::AutoReg::PatternValidPercent(), Isis::AutoReg::PatternZScoreNotMet, Isis::AutoReg::Register(), Isis::AutoReg::SearchChip(), Isis::AutoReg::Success(), Isis::AutoReg::SurfaceModelDistanceInvalid, Isis::AutoReg::SurfaceModelNotEnoughValidData, Isis::AutoReg::SurfaceModelSolutionInvalid, Isis::Chip::TackCube(), Isis::AutoReg::Tolerance(), and Isis::AutoReg::ZScores().

Referenced by createPointEditor(), and setTemplateFile().

◆ saveChips

void Isis::ControlPointEdit::saveChips ( )
slot

Slot to save registration chips to files and fire off qview.

Author
2009-03-18 Tracie Sucharski
History
2009-03-23 Tracie Sucharski - Use p_autoRegAttempted to see if chips exist.

Definition at line 1590 of file ControlPointEdit.cpp.

References Isis::AutoReg::FitChip(), Isis::AutoReg::RegistrationPatternChip(), Isis::AutoReg::RegistrationSearchChip(), Isis::ProgramLauncher::RunSystemCommand(), Isis::toString(), and Isis::Chip::Write().

Referenced by Isis::MatchTool::saveChips().

◆ saveMeasure

void Isis::ControlPointEdit::saveMeasure ( )
privateslot

Save control measure under the crosshair in right ChipViewport.

History

2008-12-30 Jeannie Walldren - Modified to update user (chooser) name and date when point is saved

2010-11-19 Tracie Sucharski - Renamed from savePoint.

2011-03-04 Tracie Sucharski - If auto reg info is shown, save the GoodnessOfFit value to the right ControlMeasure log entry. Changed the way the left viewport is updated if the left and right measure are the same. Simply copy the right measure into the left and re-load the left measure. If measure currently has type of subPixelRegistered, but the new position has not be sub-pixel registered, change measure type and get rid of goodness of fit.

2011-06-14 Tracie Sucharski - Change Save Measure button text back to black.

2011-07-19 Tracie Sucharski - Updated for new functionality of registration pixel shift. ControlMeasure will now calculate based on aprioriSample/Line and current coordinate. If autoreg has been calculated, save coordinate to apriori before updating to subpixel registered coordinate.

2013-11-07 Tracie Sucharski - Moved error checking on edit locked measures from QnetTool::measureSaved to saveMeasure. The error checking now forces the edit lock check box to be unchecked before the measure can be saved.

2015-01-09 Ian Humphrey - Modified to prevent segmentation fault that arises when registering, opening a template file, and saving the measure. This was caused by not handling the exception thrown by ControlMeasure::SetLogData(), which produces undefined behavior within the Qt signal-slot connection mechanism.

Definition at line 1119 of file ControlPointEdit.cpp.

References Isis::ControlMeasure::DeleteLogData(), Isis::ControlMeasure::GetCubeSerialNumber(), Isis::AutoReg::GoodnessOfFit(), Isis::ControlMeasureLogData::GoodnessOfFit, Isis::ControlMeasure::IsEditLocked(), Isis::ControlMeasure::Manual, Isis::ControlMeasureLogData::MaximumPixelZScore, Isis::ControlMeasureLogData::MinimumPixelZScore, Isis::ControlMeasure::RegisteredSubPixel, Isis::ControlMeasure::SetChooserName(), Isis::ControlMeasure::SetCoordinate(), Isis::ControlMeasure::SetDateTime(), setLeftMeasure(), Isis::ControlMeasure::SetLogData(), Isis::ControlMeasure::SetType(), Isis::ChipViewport::tackLine(), Isis::ChipViewport::tackSample(), Isis::Application::UserName(), and Isis::AutoReg::ZScores().

Referenced by createPointEditor().

◆ setCircle

void Isis::ControlPointEdit::setCircle ( bool checked)
privateslot

Turn circle widgets on/off.

Parameters
checkedInput Turn cirle on or off
Author
2008-09-09 Tracie Sucharski

Definition at line 1399 of file ControlPointEdit.cpp.

References Isis::ChipViewport::setCircle().

Referenced by createPointEditor().

◆ setGeom

void Isis::ControlPointEdit::setGeom ( )
privateslot

Turn geom on.

History

2007-06-15 Tracie Sucharski - Grey out zoom buttons

2008-15-2008 Jeannie Walldren - Added error string to iException::Message before creating QMessageBox

Definition at line 1316 of file ControlPointEdit.cpp.

References Isis::ChipViewport::geomChip(), and Isis::IException::User.

Referenced by createPointEditor().

◆ setLeftMeasure

void Isis::ControlPointEdit::setLeftMeasure ( ControlMeasure * leftMeasure,
Cube * leftCube,
QString pointId )
slot

Set the measure displayed in the left ChipViewport.

Parameters
leftMeasureInput Measure displayed in left ChipViewport
leftCubeInput Cube of measure displayed in left ChipViewport
Author
Tracie Sucharski
History

2008-11-19 Tracie Sucharski - If left cube changes, get new universalGroundMap.

2012-04-17 Tracie Sucharski - If geom is turned on update the right measure.

2012-05-07 Tracie Sucharski - Last change introduced bug when loading a different control point, so only update the right chip if we're not loading a different control point.

2013-04-30 Tracie Sucharski - Fixed bug introduced by linking zooms between left and right viewports. Zoom factors were being passed into the Chip::Load method as the second argument which should be the rotation value.

Definition at line 663 of file ControlPointEdit.cpp.

References Isis::Chip::Load(), Isis::ChipViewport::setChip(), Isis::Chip::TackCube(), and updateRightGeom().

Referenced by Isis::StereoTool::loadPoint(), Isis::MatchTool::measureSaved(), saveMeasure(), and Isis::MatchTool::selectLeftMeasure().

◆ setNoGeom

void Isis::ControlPointEdit::setNoGeom ( )
privateslot

Slot to turn off geom.

History
2012-05-01 Tracie Sucharski - Reset zoom buttons and rotate dial, then reload chip

Definition at line 1363 of file ControlPointEdit.cpp.

References Isis::ChipViewport::nogeomChip().

Referenced by createPointEditor().

◆ setRightMeasure

void Isis::ControlPointEdit::setRightMeasure ( ControlMeasure * rightMeasure,
Cube * rightCube,
QString pointId )
slot

Set the measure displayed in the right ChipViewport.

Parameters
rightMeasureInput Measure displayed in right ChipViewport
rightCubeInput Cube of measure displayed in right ChipViewport
Author
Tracie Sucharski
History

2008-11-19 Tracie Sucharski - If right cube changes, get new universalGroundMap.

2008-15-2008 Jeannie Walldren - Added error string to iException::Message before creating QMessageBox

2009-09-14 Tracie Sucharski - Call geomChip to make sure left chip is initialized in the ChipViewport. This was done for the changes made to the Chip class and the ChipViewport class where the Cube info is no longer stored.

2013-04-30 Tracie Sucharski - Fixed bug introduced by linking zooms between left and right viewports. Zoom factors were being passed into the Chip::Load method as the second argument which should be the rotation value.

Definition at line 724 of file ControlPointEdit.cpp.

References Isis::Chip::Load(), Isis::ChipViewport::setChip(), Isis::Chip::TackCube(), updateRightGeom(), and Isis::IException::User.

Referenced by Isis::StereoTool::loadPoint(), and Isis::MatchTool::selectRightMeasure().

◆ setRotate

void Isis::ControlPointEdit::setRotate ( )
privateslot

‍**

Slot to enable the rotate dial

History
2012-05-01 Tracie Sucharski - Reset zoom buttons and reload chip

Definition at line 1278 of file ControlPointEdit.cpp.

References Isis::ChipViewport::nogeomChip().

Referenced by createPointEditor().

◆ setTemplateFile()

bool Isis::ControlPointEdit::setTemplateFile ( QString fn)

Allows user to choose a new template file by opening a window from which to select a filename.

This file is then registered and set as the new template.

Author
Tracie Sucharski
History

2008-12-10 Jeannie Walldren - Changed name from openTemplateFile() and added functionality to set new template filename to the private variable, p_templateFileName

2008-12-15 Jeannie Walldren - Modified code to only allow the template file to be modified if registration is successfull, otherwise the original template file is kept.

2014-12-11 Ian Humphrey - Modified code so opening a template file will undo registration if a point is already registered.

Definition at line 1506 of file ControlPointEdit.cpp.

References Isis::AutoRegFactory::Create(), Isis::IException::Io, and registerPoint().

Referenced by Isis::MatchTool::openTemplateFile(), Isis::StereoTool::setTemplateFile(), and Isis::MatchTool::writeTemplateFile().

◆ setZoomLink

void Isis::ControlPointEdit::setZoomLink ( bool checked)
privateslot

Turn linking of zoom on or off.

Parameters
checkedInput Turn zoom linking on or off
Author
2012-07-26 Tracie Sucharski

Definition at line 1429 of file ControlPointEdit.cpp.

References Isis::ChipViewport::zoom(), and Isis::ChipViewport::zoomFactor().

Referenced by createPointEditor().

◆ templateFileName()

QString Isis::ControlPointEdit::templateFileName ( )
inline

Definition at line 162 of file ControlPointEdit.h.

◆ updateBlink

void Isis::ControlPointEdit::updateBlink ( )
privateslot

Slot to cause the blink to happen coinciding with the timer.

Definition at line 1481 of file ControlPointEdit.cpp.

References Isis::ChipViewport::loadView().

Referenced by blinkStart().

◆ updateLeftPositionLabel

void Isis::ControlPointEdit::updateLeftPositionLabel ( double zoomFactor)
privateslot

Update sample/line, lat/lon and zoom factor of left measure.

Parameters
zoomFactorInput zoom factor
Author
Tracie Sucharski
History
2012-07-26 Tracie Sucharski - Added ability to link zooming between left and right viewports. TODO: Re-think design, should this be put somewhere else. This was the fastest solution for now.

Definition at line 792 of file ControlPointEdit.cpp.

References Isis::UniversalGroundMap::SetImage(), Isis::ChipViewport::tackLine(), Isis::ChipViewport::tackSample(), Isis::UniversalGroundMap::UniversalLatitude(), Isis::UniversalGroundMap::UniversalLongitude(), Isis::ChipViewport::zoom(), and Isis::ChipViewport::zoomFactor().

Referenced by createPointEditor().

◆ updateRightGeom

void Isis::ControlPointEdit::updateRightGeom ( )
privateslot

Slot to update the geomed right ChipViewport for zoom operations.

History
2008-15-2008 Jeannie Walldren - Added error string to iException::Message before creating QMessageBox

Definition at line 1227 of file ControlPointEdit.cpp.

References Isis::ChipViewport::geomChip(), and Isis::IException::User.

Referenced by createPointEditor(), setLeftMeasure(), and setRightMeasure().

◆ updateRightPositionLabel

void Isis::ControlPointEdit::updateRightPositionLabel ( double zoomFactor)
privateslot

Update sample/line, lat/lon and zoom factor of right measure.

Parameters
zoomFactorInput zoom factor
Author
Tracie Sucharski

Definition at line 827 of file ControlPointEdit.cpp.

References Isis::UniversalGroundMap::SetImage(), Isis::ChipViewport::tackLine(), Isis::ChipViewport::tackSample(), Isis::UniversalGroundMap::UniversalLatitude(), and Isis::UniversalGroundMap::UniversalLongitude().

Referenced by createPointEditor().

Member Data Documentation

◆ p_allowLeftMouse

bool Isis::ControlPointEdit::p_allowLeftMouse
private

Definition at line 209 of file ControlPointEdit.h.

◆ p_autoReg

QPushButton* Isis::ControlPointEdit::p_autoReg
private

Definition at line 238 of file ControlPointEdit.h.

◆ p_autoRegAttempted

bool Isis::ControlPointEdit::p_autoRegAttempted
private

Definition at line 243 of file ControlPointEdit.h.

◆ p_autoRegExtension

QWidget* Isis::ControlPointEdit::p_autoRegExtension
private

Definition at line 239 of file ControlPointEdit.h.

◆ p_autoRegFact

AutoReg* Isis::ControlPointEdit::p_autoRegFact
private

Definition at line 260 of file ControlPointEdit.h.

◆ p_autoRegShown

bool Isis::ControlPointEdit::p_autoRegShown
private

Definition at line 242 of file ControlPointEdit.h.

◆ p_blinkIndex

unsigned char Isis::ControlPointEdit::p_blinkIndex
private

Definition at line 229 of file ControlPointEdit.h.

◆ p_blinkList

std::vector<ChipViewport *> Isis::ControlPointEdit::p_blinkList
private

Definition at line 228 of file ControlPointEdit.h.

◆ p_blinkTimeBox

QDoubleSpinBox* Isis::ControlPointEdit::p_blinkTimeBox
private

Definition at line 233 of file ControlPointEdit.h.

◆ p_circle

bool Isis::ControlPointEdit::p_circle
private

Definition at line 235 of file ControlPointEdit.h.

◆ p_dial

QDial* Isis::ControlPointEdit::p_dial
private

Definition at line 231 of file ControlPointEdit.h.

◆ p_dialNumber

QLCDNumber* Isis::ControlPointEdit::p_dialNumber
private

Definition at line 232 of file ControlPointEdit.h.

◆ p_geom

QRadioButton* Isis::ControlPointEdit::p_geom
private

Definition at line 220 of file ControlPointEdit.h.

◆ p_geomIt

bool Isis::ControlPointEdit::p_geomIt
private

Definition at line 264 of file ControlPointEdit.h.

◆ p_goodFit

QLabel* Isis::ControlPointEdit::p_goodFit
private

Definition at line 241 of file ControlPointEdit.h.

◆ p_leftChip

Chip* Isis::ControlPointEdit::p_leftChip
private

Definition at line 255 of file ControlPointEdit.h.

◆ p_leftCube

Cube* Isis::ControlPointEdit::p_leftCube
private

Definition at line 251 of file ControlPointEdit.h.

◆ p_leftGroundMap

UniversalGroundMap* Isis::ControlPointEdit::p_leftGroundMap
private

Definition at line 257 of file ControlPointEdit.h.

◆ p_leftLatLonPosition

QLabel* Isis::ControlPointEdit::p_leftLatLonPosition
private

Definition at line 217 of file ControlPointEdit.h.

◆ p_leftMeasure

ControlMeasure* Isis::ControlPointEdit::p_leftMeasure
private

Definition at line 253 of file ControlPointEdit.h.

◆ p_leftSampLinePosition

QLabel* Isis::ControlPointEdit::p_leftSampLinePosition
private

Definition at line 215 of file ControlPointEdit.h.

◆ p_leftView

ChipViewport* Isis::ControlPointEdit::p_leftView
private

Definition at line 248 of file ControlPointEdit.h.

◆ p_leftZoomFactor

QLabel* Isis::ControlPointEdit::p_leftZoomFactor
private

Definition at line 213 of file ControlPointEdit.h.

◆ p_linkZoom

bool Isis::ControlPointEdit::p_linkZoom
private

Definition at line 265 of file ControlPointEdit.h.

◆ p_nogeom

QRadioButton* Isis::ControlPointEdit::p_nogeom
private

Definition at line 219 of file ControlPointEdit.h.

◆ p_oldPosition

QLabel* Isis::ControlPointEdit::p_oldPosition
private

Definition at line 240 of file ControlPointEdit.h.

◆ p_pointId

QString Isis::ControlPointEdit::p_pointId
private

Definition at line 261 of file ControlPointEdit.h.

◆ p_rightChip

Chip* Isis::ControlPointEdit::p_rightChip
private

Definition at line 256 of file ControlPointEdit.h.

◆ p_rightCube

Cube* Isis::ControlPointEdit::p_rightCube
private

Definition at line 252 of file ControlPointEdit.h.

◆ p_rightGroundMap

UniversalGroundMap* Isis::ControlPointEdit::p_rightGroundMap
private

Definition at line 258 of file ControlPointEdit.h.

◆ p_rightLatLonPosition

QLabel* Isis::ControlPointEdit::p_rightLatLonPosition
private

Definition at line 218 of file ControlPointEdit.h.

◆ p_rightMeasure

ControlMeasure* Isis::ControlPointEdit::p_rightMeasure
private

Definition at line 254 of file ControlPointEdit.h.

◆ p_rightSampLinePosition

QLabel* Isis::ControlPointEdit::p_rightSampLinePosition
private

Definition at line 216 of file ControlPointEdit.h.

◆ p_rightView

ChipViewport* Isis::ControlPointEdit::p_rightView
private

Definition at line 249 of file ControlPointEdit.h.

◆ p_rightZoom1

QToolButton* Isis::ControlPointEdit::p_rightZoom1
private

Definition at line 223 of file ControlPointEdit.h.

◆ p_rightZoomFactor

QLabel* Isis::ControlPointEdit::p_rightZoomFactor
private

Definition at line 214 of file ControlPointEdit.h.

◆ p_rightZoomIn

QToolButton* Isis::ControlPointEdit::p_rightZoomIn
private

Definition at line 221 of file ControlPointEdit.h.

◆ p_rightZoomOut

QToolButton* Isis::ControlPointEdit::p_rightZoomOut
private

Definition at line 222 of file ControlPointEdit.h.

◆ p_rotation

int Isis::ControlPointEdit::p_rotation
private

Definition at line 263 of file ControlPointEdit.h.

◆ p_saveDefaultPalette

QPalette Isis::ControlPointEdit::p_saveDefaultPalette
private

Definition at line 246 of file ControlPointEdit.h.

◆ p_saveMeasure

QPushButton* Isis::ControlPointEdit::p_saveMeasure
private

Definition at line 245 of file ControlPointEdit.h.

◆ p_slider

QScrollBar* Isis::ControlPointEdit::p_slider
private

Definition at line 236 of file ControlPointEdit.h.

◆ p_templateFileName

QString Isis::ControlPointEdit::p_templateFileName
private

Definition at line 212 of file ControlPointEdit.h.

◆ p_timer

QTimer* Isis::ControlPointEdit::p_timer
private

Definition at line 227 of file ControlPointEdit.h.

◆ p_timerOn

bool Isis::ControlPointEdit::p_timerOn
private

Definition at line 226 of file ControlPointEdit.h.

◆ p_useGeometry

bool Isis::ControlPointEdit::p_useGeometry
private

Definition at line 210 of file ControlPointEdit.h.


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