Isis 3.0 Programmer Reference
Back | Home
MosaicControlNetTool.h
1 #ifndef MosaicControlNetTool_h
2 #define MosaicControlNetTool_h
3 
4 #include "MosaicTool.h"
5 
6 class QDialog;
7 class QLabel;
8 class QPushButton;
9 
10 namespace Isis {
11  class ControlNet;
12  class ControlNetGraphicsItem;
13  class ControlPoint;
14 // class ControlPointEdit;
15  class Image;
16  class ImageList;
17 
57  Q_OBJECT
58 
59  public:
77  };
79  static const int NUM_MOVEMENT_COLOR_SOURCE_VALUES = 4;
80 
83 
84  void addToMenu(QMenu *menu);
85 
86  PvlObject toPvl() const;
87  void fromPvl(const PvlObject &obj);
88  QString projectPvlObjectName() const;
89 
92 
93  int maxMovementColorMeasureCount() const;
94  double maxMovementColorResidualMagnitude() const;
95 
96  static QString toString(MovementColorSource);
98 
99  signals:
100  void modifyControlPoint(ControlPoint *controlPoint);
101  void deleteControlPoint(ControlPoint *controlPoint);
102  void createControlPoint(double latitude, double longitude);
103 
104  void controlPointSelected(ControlPoint *);
105  void deleteControlPoint(QString controlPointId);
106 
107  public slots:
108  void displayNewControlPoint(QString pointId);
109  void displayChangedControlPoint(QString pointId);
110  void displayUponControlPointDeletion();
111 
112  protected:
115  void mouseButtonRelease(QPointF, Qt::MouseButton s);
116 
117  private slots:
118  void configMovement();
119  void updateTool();
120  void openControlNet();
121  void displayControlNet();
122  void displayConnectivity();
123  void closeNetwork();
124  void loadNetwork();
125  void randomizeColors();
126 
127  void objectDestroyed(QObject *);
128 
129  private:
130  void createDialog();
131 
132  Image *takeImage(QString sn, ImageList &images);
133 
134  QPushButton *m_loadControlNetButton;
135  QPushButton *m_displayControlNetButton;
136  QPushButton *m_displayConnectivity;
137  QPushButton *m_configMovement;
138  QPushButton *m_closeNetwork;
139  QPushButton *m_randomizeColors;
140  QAction *m_connectivity;
141  ControlNet *m_controlNet;
142  ControlNetGraphicsItem *m_controlNetGraphics;
143  QLabel *m_controlNetFileLabel;
144  QString m_controlNetFile;
145 // ControlPointEdit *m_pointEditor;
146 
153  };
154 };
155 
156 #endif
157 
void closeNetwork()
Close the open network, if one is open.
//TODO: Remove debug printout & comment // 2016-08-25 Tracie Sucharski - Checking Directory pointer f...
void loadNetwork()
Load m_controlNetFile into memory - this will re-load the network if it's already open...
Internalizes a list of images and allows for operations on the entire list.
Definition: ImageList.h:44
void updateTool()
This slot opens and reopens this tool properly.
This widget encompasses the entire mosaic scene.
void objectDestroyed(QObject *)
An object was destroyed, NULL it out.
Show movement arrows colored by measure count.
QAction * getPrimaryAction()
Adds the action to the toolpad.
Base class for the MosaicTools.
Definition: MosaicTool.h:37
double maxMovementColorResidualMagnitude() const
Get the current max.
double m_residualMagnitude
This is the residual magnitude at which we coloring the movement arrows.
MovementColorSource m_movementArrowColorSource
This defines the drawing mode of the apriori to adjusted arrows.
a control network
Definition: ControlNet.h:207
Show movement arrows colored by residual magnitude.
static QString toString(MovementColorSource)
Convert a MovementColorSource to a string for serialization purposes.
Control Network Display on Mosaic Scene.
int maxMovementColorMeasureCount() const
Get the current measure count to become fully colored.
A single control point.
Definition: ControlPoint.h:339
This represents a cube in a project-based GUI interface.
Definition: Image.h:91
MosaicControlNetTool(MosaicSceneWidget *)
MosaicControlNetTool constructor.
static const int NUM_MOVEMENT_COLOR_SOURCE_VALUES
This is the count of possible values of MovementColorSource (useful for loops).
int m_measureCount
This is the measure count at which we start coloring the movement arrows.
void setMovementArrowColorSource(MovementColorSource, int, double)
Define how the movement arrows should be drawn.
void displayControlNet()
The user toggled the cnet visibility - re-sync the graphics item visibility with the action...
Show black movement arrows.
void displayConnectivity()
Displays the connectivity of Control Points.
Contains Pvl Groups and Pvl Objects.
Definition: PvlObject.h:74
MovementColorSource
This enum defines how to draw the movement arrows (arrows from CP A Priori location to adjusted locat...
void configMovement()
Bring up a movement arrow configuration dialog.
QWidget * getToolBarWidget()
This method returns a widget that will be put in a tool bar when the tool is activated.
void openControlNet()
Loads a control net from a file.
MovementColorSource movementArrowColorSource() const
Get the current setting for the movement arrows.
static MovementColorSource fromMovementColorSourceString(QString)
Convert a string back to a MovementColorSource (for serialization purposes).

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the ISIS Support Center
File Modified: 07/12/2023 23:23:56