Isis 3.0
Back | Home
ControlPointEdit.h
Go to the documentation of this file.
1 #ifndef ControlPointEdit_h
2 #define ControlPointEdit_h
3 
4 // This is the only include allowed in this file!
5 #include <QWidget>
6 
7 
8 class QCheckBox;
9 class QDial;
10 class QDoubleSpinBox;
11 class QHBoxLayout;
12 class QLabel;
13 class QLCDNumber;
14 class QPalette;
15 class QPushButton;
16 class QRadioButton;
17 class QScrollBar;
18 class QString;
19 class QTimer;
20 class QToolButton;
21 class QVBoxLayout;
22 
23 namespace Isis {
24  class AutoReg;
25  class Chip;
26  class ChipViewport;
27  class ControlMeasure;
28  class ControlNet;
29  class Cube;
30  class CubeViewport;
31  class Stretch;
32  class Tool;
33  class UniversalGroundMap;
34 
144  class ControlPointEdit : public QWidget {
145  Q_OBJECT
146 
147  public:
148  ControlPointEdit(ControlNet * cnet, QWidget *parent = 0,
149  bool allowLeftMouse = false, bool useGeometry = true);
151  QString templateFileName() {
152  return p_templateFileName;
153  };
154  bool setTemplateFile(QString);
155  void allowLeftMouse(bool allowMouse);
156 
157  signals:
158  void updateLeftView(double sample, double line);
159  void updateRightView(double sample, double line);
160  void measureSaved();
163 
164  public slots:
165  void setLeftMeasure(ControlMeasure *leftMeasure,
166  Cube *leftCube, QString pointId);
167  void setRightMeasure(ControlMeasure *rightMeasure,
168  Cube *rightCube, QString pointId);
169  void colorizeSaveButton();
170  void refreshChips();
171  void saveChips();
172 
173  protected slots:
174 
175  private slots:
176 
177  void setNoGeom();
178  void setGeom();
179  void setRotate();
180  void setCircle(bool);
181  void setZoomLink(bool);
182 
183  void findPoint();
184  void registerPoint();
185  void saveMeasure();
186  void updateLeftPositionLabel(double zoomFactor);
187  void updateRightGeom();
188  void updateRightPositionLabel(double zoomFactor);
189 
190  void blinkStart();
191  void blinkStop();
192  void changeBlinkTime(double interval);
193  void updateBlink();
194 
195  private:
196  void createPointEditor(QWidget *parent);
197 
198  bool p_allowLeftMouse;
199  bool p_useGeometry;
200 
201  QString p_templateFileName;
202  QLabel *p_leftZoomFactor;
203  QLabel *p_rightZoomFactor;
204  QLabel *p_leftSampLinePosition;
205  QLabel *p_rightSampLinePosition;
206  QLabel *p_leftLatLonPosition;
207  QLabel *p_rightLatLonPosition;
208  QRadioButton *p_nogeom;
209  QRadioButton *p_geom;
210  QToolButton *p_rightZoomIn;
211  QToolButton *p_rightZoomOut;
212  QToolButton *p_rightZoom1;
213 
214 
215  bool p_timerOn;
216  QTimer *p_timer;
217  std::vector<ChipViewport *> p_blinkList;
218  unsigned char p_blinkIndex;
219 
220  QDial *p_dial;
221  QLCDNumber *p_dialNumber;
222  QDoubleSpinBox *p_blinkTimeBox;
223 
224  bool p_circle;
225  QScrollBar *p_slider;
226 
227  QPushButton *p_autoReg;
228  QWidget *p_autoRegExtension;
229  QLabel *p_oldPosition;
230  QLabel *p_goodFit;
231  bool p_autoRegShown;
232  bool p_autoRegAttempted;
233 
234  QPushButton *p_saveMeasure;
235  QPalette p_saveDefaultPalette;
236 
237  ChipViewport *p_leftView;
238  ChipViewport *p_rightView;
239 
240  Cube *p_leftCube;
241  Cube *p_rightCube;
242  ControlMeasure *p_leftMeasure;
243  ControlMeasure *p_rightMeasure;
244  Chip *p_leftChip;
245  Chip *p_rightChip;
246  UniversalGroundMap *p_leftGroundMap;
247  UniversalGroundMap *p_rightGroundMap;
248 
249  AutoReg *p_autoRegFact;
250  QString p_pointId;
251 
252  int p_rotation;
253  bool p_geomIt;
254  bool p_linkZoom;
255  };
256 };
257 
258 #endif
void allowLeftMouse(bool allowMouse)
Set the option that allows mouse movements in the left ChipViewport.
Definition: ControlPointEdit.cpp:1559
void refreshChips()
Definition: ControlPointEdit.cpp:1582
void stretchChipViewport(Stretch *, CubeViewport *)
Definition: moc_ControlPointEdit.cpp:305
Universal Ground Map.
Definition: UniversalGroundMap.h:83
A small chip of data used for pattern matching.
Definition: Chip.h:101
void updateLeftView(double sample, double line)
Definition: moc_ControlPointEdit.cpp:278
void saveChips()
Slot to save registration chips to files and fire off qview.
Definition: ControlPointEdit.cpp:1597
Widget to display Isis cubes for qt apps.
Definition: CubeViewport.h:121
~ControlPointEdit()
Definition: ControlPointEdit.cpp:90
void colorizeSaveButton()
Turn &quot;Save Measure&quot; button text to red.
Definition: ControlPointEdit.cpp:874
void newControlNetwork(ControlNet *)
Definition: moc_ControlPointEdit.cpp:298
void setRightMeasure(ControlMeasure *rightMeasure, Cube *rightCube, QString pointId)
Set the measure displayed in the right ChipViewport.
Definition: ControlPointEdit.cpp:731
ControlPointEdit(ControlNet *cnet, QWidget *parent=0, bool allowLeftMouse=false, bool useGeometry=true)
Constructs a ControlPointEdit widget.
Definition: ControlPointEdit.cpp:54
a control network
Definition: ControlNet.h:207
bool setTemplateFile(QString)
Allows user to choose a new template file by opening a window from which to select a filename...
Definition: ControlPointEdit.cpp:1511
QString templateFileName()
Definition: ControlPointEdit.h:151
Pixel value mapper.
Definition: Stretch.h:72
void updateRightView(double sample, double line)
Definition: moc_ControlPointEdit.cpp:285
Auto Registration class.
Definition: AutoReg.h:177
Viewport for Isis Chips.
Definition: ChipViewport.h:85
a control measurement
Definition: ControlMeasure.h:171
Point Editor Widget.
Definition: ControlPointEdit.h:144
void measureSaved()
Definition: moc_ControlPointEdit.cpp:292
void setLeftMeasure(ControlMeasure *leftMeasure, Cube *leftCube, QString pointId)
Set the measure displayed in the left ChipViewport.
Definition: ControlPointEdit.cpp:670
IO Handler for Isis Cubes.
Definition: Cube.h:158

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:16:46