  | 
  
    Isis Developer Reference
    
   | 
 
 
 
 
Go to the documentation of this file.    1 #ifndef ControlPointEditWidget_h 
    2 #define ControlPointEditWidget_h 
   18 #include <QCloseEvent> 
   25 #include <QStringList> 
   49   class ControlMeasureEditWidget;
 
   55   class MdiCubeViewport;
 
   56   class SerialNumberList;
 
   59   class UniversalGroundMap;
 
  152                               bool isGroundSource = 
false);
 
  170       void setPointType (
int pointType);
 
  171       void setLockPoint (
bool ignore);
 
  172       void setIgnorePoint (
bool ignore);
 
  173       void setLockLeftMeasure (
bool ignore);
 
  174       void setIgnoreLeftMeasure (
bool ignore);
 
  175       void setLockRightMeasure (
bool ignore);
 
  176       void setIgnoreRightMeasure (
bool ignore);
 
  178       void selectLeftMeasure (
int index);
 
  179       void selectRightMeasure (
int index);
 
  180       void nextRightMeasure();
 
  181       void previousRightMeasure();
 
  182       void updateLeftMeasureInfo ();
 
  183       void updateRightMeasureInfo ();
 
  186       void checkReference();
 
  188       void updateGroundPosition();
 
  189       void updateSurfacePointInfo ();
 
  190       void openReferenceRadius();
 
  191       void groundSourceFileSelectionChanged(
int index);
 
  195       void colorizeAllSaveButtons(QString color);
 
  196       void colorizeSavePointButton();
 
  198       void openTemplateFile();
 
  199       void viewTemplateFile();
 
  201       void showHideTemplateEditor();
 
  202       void saveTemplateFile();
 
  203       void saveTemplateFileAs();
 
  204       void setTemplateFile(QString);
 
  205       void setTemplateModified();
 
  206       void writeTemplateFile(QString);
 
  207       void resetTemplateComboBox(QString fileName);
 
  208       void clearEditPoint();
 
  211       void createActions();
 
  213       void loadPoint(QString serialNumber = 
"");
 
  214       void loadGroundMeasure();
 
  215       void createPointEditor(
QWidget *parent, 
bool addMeasures);
 
  216       QSplitter * createTopSplitter();
 
  217       QGroupBox * createControlPointGroupBox();
 
  218       QGroupBox * createLeftMeasureGroupBox();
 
  219       QGroupBox * createRightMeasureGroupBox();
 
  220       void createTemplateEditorWidget();
 
  221       void loadTemplateFile(QString);
 
  223       bool IsMeasureLocked(QString serialNumber);
 
  226       void setShapesForPoint(
double latitude=
Null, 
double longitude=
Null);
 
  228       bool setGroundSourceInfo();
 
  230       void changeGroundLocationsInNet();
 
  231       void clearGroundSource();
 
  233       void initDem(QString demFile);
 
  234       double demRadius(
double latitude, 
double longitude);
 
  238       QPointer<QWidget> m_parent; 
 
  240       bool m_addMeasuresButton;   
 
  242       QString m_cnetFileName; 
 
  243       QPointer<QLabel> m_cnetFileNameLabel; 
 
  246       QPointer<QAction> m_closePointEditor; 
 
  248       QPointer<QAction> m_saveChips; 
 
  249       QPointer<QAction> m_showHideTemplateEditor;
 
  251       QPointer<QAction> m_openTemplateFile; 
 
  252       QPointer<QAction> m_saveTemplateFile; 
 
  253       QPointer<QAction> m_saveTemplateFileAs; 
 
  257       QPointer<ControlMeasureEditWidget> m_measureEditor;
 
  259       QPointer<QPushButton> m_reloadPoint; 
 
  260       QPointer<QPushButton> m_savePoint; 
 
  261       QPalette m_saveDefaultPalette; 
 
  263       QPointer<QPushButton> m_saveNet; 
 
  265       QPointer<QTextEdit> m_templateEditor; 
 
  266       QPointer<QWidget> m_templateEditorWidget; 
 
  267       bool m_templateModified; 
 
  269       QPointer<QComboBox> m_templateComboBox; 
 
  270       QPointer<QComboBox> m_groundSourceCombo; 
 
  271       QPointer<QComboBox> m_radiusSourceCombo; 
 
  272       QPointer<QLabel> m_ptIdValue; 
 
  273       QPointer<QComboBox> m_pointTypeCombo; 
 
  274       QPointer<QLabel> m_numMeasures;
 
  275       QPointer<QLabel> m_aprioriLatitude;
 
  276       QPointer<QLabel> m_aprioriLongitude;
 
  277       QPointer<QLabel> m_aprioriRadius;
 
  279       QPointer<QCheckBox> m_lockPoint; 
 
  280       QPointer<QCheckBox> m_ignorePoint; 
 
  281       QPointer<QLabel> m_leftReference; 
 
  282       QPointer<QLabel> m_leftMeasureType; 
 
  283       QPointer<QLabel> m_rightReference; 
 
  284       QPointer<QLabel> m_rightMeasureType; 
 
  285       QPointer<QCheckBox> m_lockLeftMeasure; 
 
  286       QPointer<QCheckBox> m_ignoreLeftMeasure; 
 
  287       QPointer<QCheckBox> m_lockRightMeasure; 
 
  288       QPointer<QCheckBox> m_ignoreRightMeasure; 
 
  290       QPointer<QComboBox> m_leftCombo; 
 
  291       QPointer<QComboBox> m_rightCombo; 
 
  292       QPointer<QStandardItemModel> m_model;
 
  294       QPointer<QMainWindow> m_measureWindow; 
 
  295       QPointer<QTableWidget> m_measureTable; 
 
  297       QPointer<ControlPoint> m_editPoint;   
 
  299       QPointer<ControlNet> m_controlNet;    
 
  300       QPointer<Control> m_control;          
 
  302       QPointer<ControlPoint> m_newPoint; 
 
  303       QString m_lastUsedPointId; 
 
  308       QPointer<ControlMeasure> m_leftMeasure; 
 
  309       QPointer<ControlMeasure> m_rightMeasure; 
 
  310       QScopedPointer<Cube> m_leftCube; 
 
  311       QScopedPointer<Cube> m_rightCube; 
 
  314       int m_numberProjectShapesWithPoint; 
 
  317       QString m_groundFilename; 
 
  320       QScopedPointer<UniversalGroundMap> m_groundGmap;
 
  322       bool m_changeAllGroundLocation; 
 
  323       bool m_changeGroundLocationInNet; 
 
  325       QString m_newGroundDir; 
 
  330       QString m_radiusFilename;
 
  334       QScopedPointer<Cube> m_demCube;
 
 
 
static QStringList shapes(QStringList)
 
@ Degrees
Degrees are generally considered more human readable, 0-360 is one circle, however most math does not...
Definition: Angle.h:56
 
void setGroundSource(QStringList groundFiles, int numberShapesWithPoint)
Definition: NewControlPointDialog.cpp:212
 
static QString templateRoot(QString projectRoot)
Appends the root directory name 'templates' to the project .
Definition: Project.cpp:2125
 
@ RegisteredPixel
Registered to whole pixel (e.g.,pointreg)
Definition: ControlMeasure.h:212
 
@ BiLinearType
Definition: Interpolator.h:43
 
@ RegisteredSubPixel
Registered to sub-pixel (e.g., pointreg)
Definition: ControlMeasure.h:214
 
static QString PointTypeToString(PointType type)
Obtain a string representation of a given PointType.
Definition: ControlPoint.cpp:1333
 
Definition: Directory.h:271
 
@ MeasureLocked
Definition: ControlMeasure.h:219
 
ControlPoint::SurfacePointSource::Source surfacePointSource()
Definition: Shape.cpp:209
 
This is free and unencumbered software released into the public domain.
Definition: BoxcarCachingAlgorithm.h:13
 
Status SetCubeSerialNumber(QString newSerialNumber)
Set cube serial number.
Definition: ControlMeasure.cpp:187
 
Status SetChooserName(QString name)
Set the point's chooser name.
Definition: ControlPoint.cpp:487
 
int size() const
How many serial number / filename combos are in the list.
Definition: SerialNumberList.cpp:384
 
QString name() const
Returns the name of the file excluding the path and the attributes in the file name.
Definition: FileName.cpp:162
 
@ PointLocked
This is returned when the operation requires Edit Lock to be false but it is currently true.
Definition: ControlPoint.h:408
 
int serialNumberIndex(const QString &sn)
Return a list index given a serial number.
Definition: SerialNumberList.cpp:490
 
File name manipulation and expansion.
Definition: FileName.h:100
 
virtual double Sample() const
Returns the current sample number.
Definition: Camera.cpp:2690
 
Status SetAprioriSample(double aprioriSample)
Definition: ControlMeasure.cpp:144
 
Pixel value mapper.
Definition: Stretch.h:58
 
ControlPoint::RadiusSource::Source radiusSource()
Definition: Shape.cpp:214
 
Source
Definition: ControlPoint.h:451
 
static QString Compose(Pvl &label, bool def2filename=false)
Compose a SerialNumber from a PVL.
Definition: SerialNumber.cpp:38
 
Definition: TemplateList.h:35
 
static QString shapeDataRoot(QString projectRoot)
Appends the root directory name 'shapes' to the project .
Definition: Project.cpp:2087
 
PointType
These are the valid 'types' of point.
Definition: ControlPoint.h:364
 
Control * activeControl()
Return the Active Control (control network)
Definition: Project.cpp:1903
 
Project * project() const
Gets the Project for this directory.
Definition: Directory.cpp:1311
 
QList< TemplateList * > regTemplates()
Return registration template FileNames.
Definition: Project.cpp:2166
 
QString GetId() const
Return the Id of the control point.
Definition: ControlPoint.cpp:1306
 
This represents an ISIS control net in a project-based GUI interface.
Definition: Control.h:66
 
@ Candidate
(e.g., autoseed, interest) AKA predicted, unmeasured, unverified
Definition: ControlMeasure.h:208
 
QString groundSource() const
Definition: NewControlPointDialog.cpp:194
 
Cube * cube()
Get the Cube * associated with this display property.
Definition: Shape.cpp:324
 
QStringList selectedFiles() const
Definition: NewControlPointDialog.cpp:178
 
Status SetAprioriSurfacePointSourceFile(QString sourceFile)
This updates the filename of where the apriori surface point came from.
Definition: ControlPoint.cpp:839
 
Serial Number list generator.
Definition: SerialNumberList.h:64
 
QString serialNumber(const QString &filename)
Return a serial number given a filename.
Definition: SerialNumberList.cpp:426
 
void remove(const QString &sn)
Remove the specified serial number from the list.
Definition: SerialNumberList.cpp:88
 
QString fileName() const
Get the file name of the cube that this shape represents.
Definition: Shape.cpp:376
 
FileName externalCubeFileName() const
If this is an external cube label file, this will give you the cube dn file that this label reference...
Definition: Cube.cpp:1535
 
@ Ellipsoid
Definition: ControlPoint.h:455
 
QString GetCubeSerialNumber() const
Return the serial number of the cube containing the coordinate.
Definition: ControlMeasure.cpp:557
 
A single control point.
Definition: ControlPoint.h:354
 
@ Meters
The distance is being specified in meters.
Definition: Distance.h:43
 
QString expanded() const
Returns a QString of the full file name including the file path, excluding the attributes.
Definition: FileName.cpp:196
 
ControlNet * controlNet()
Open and return a pointer to the ControlNet for this Control.
Definition: Control.cpp:150
 
Status SetType(PointType newType)
Updates the control point's type.
Definition: ControlPoint.cpp:709
 
@ DEM
Definition: ControlPoint.h:456
 
static const int PointTypeCount
Definition: ControlPoint.h:386
 
@ None
Definition: ControlPoint.h:452
 
Status SetCamera(Isis::Camera *camera)
Set pointer to camera associated with a measure.
Definition: ControlMeasure.cpp:169
 
int fileNameIndex(const QString &filename)
Return a list index given a filename.
Definition: SerialNumberList.cpp:517
 
@ Manual
Hand Measured (e.g., qnet)
Definition: ControlMeasure.h:210
 
@ None
Definition: ControlPoint.h:441
 
Status SetChooserName()
Set chooser name to a user who last changed the coordinate.
Definition: ControlMeasure.cpp:196
 
virtual bool SetUniversalGround(const double latitude, const double longitude)
Sets the lat/lon values to get the sample/line values.
Definition: Camera.cpp:380
 
void add(const QString &filename, bool def2filename=false)
Adds a new filename / serial number pair to the SerialNumberList.
Definition: SerialNumberList.cpp:121
 
This represents a shape in a project-based GUI interface.
Definition: Shape.h:68
 
QString pointId() const
Definition: NewControlPointDialog.cpp:161
 
a control network
Definition: ControlNet.h:257
 
Definition: NewControlPointDialog.h:49
 
IO Handler for Isis Cubes.
Definition: Cube.h:167
 
Widget to display Isis cubes for qt apps.
Definition: CubeViewport.h:122
 
int pointType() const
Definition: NewControlPointDialog.cpp:166
 
Source
Definition: ControlPoint.h:440
 
ControlNet * Parent()
Definition: ControlPoint.h:466
 
const double Null
Value for an Isis Null pixel.
Definition: SpecialPixel.h:95
 
Namespace for the standard library.
 
QString type() const
Get the type of template in this TemplateList.
Definition: TemplateList.cpp:91
 
void setFiles(QStringList pointFiles)
Definition: NewControlPointDialog.cpp:252
 
@ Free
A Free point is a Control Point that identifies common measurements between two or more cubes.
Definition: ControlPoint.h:384
 
This is free and unencumbered software released into the public domain.
Definition: CubeIoHandler.h:22
 
Status SetType(MeasureType type)
Set how the coordinate was obtained.
Definition: ControlMeasure.cpp:420
 
Status SetAprioriSurfacePointSource(SurfacePointSource::Source source)
This updates the source of the surface point.
Definition: ControlPoint.cpp:821
 
Status
This is a return status for many of the mutating (setter) method calls.
Definition: ControlPoint.h:393
 
QString fileName(const QString &sn)
Return a filename given a serial number.
Definition: SerialNumberList.cpp:399
 
virtual double Line() const
Returns the current line number.
Definition: Camera.cpp:2710
 
void setRadiusSource(QStringList radiusFiles)
Definition: NewControlPointDialog.cpp:235
 
static QString UserName()
Returns the user name.
Definition: Application.cpp:816
 
Status SetAprioriLine(double aprioriLine)
Definition: ControlMeasure.cpp:134
 
void Add(ControlMeasure *measure)
Add a measurement to the control point, taking ownership of the measure in the process.
Definition: ControlPoint.cpp:223
 
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
 
Status SetCoordinate(double sample, double line)
Set the coordinate of the measurement.
Definition: ControlMeasure.cpp:219
 
a control measurement
Definition: ControlMeasure.h:175
 
QString fileName() const
Access the name of the control network file associated with this Control.
Definition: Control.cpp:272