Isis 3 Programmer Reference
ControlNetTool.h
1 #ifndef ControlNetTool_h
2 #define ControlNetTool_h
3 
4 #include "Tool.h"
5 #include "ControlPoint.h"
6 
7 #include <QAction>
8 #include <QCloseEvent>
9 #include <QPalette>
10 #include <QPointer>
11 #include <QString>
12 #include <QStringList>
13 
14 
15 namespace Isis {
16  class ControlMeasure;
17  class ControlNet;
18  class ControlPointEdit;
19  class Cube;
20  class CubeDnView;
21  class CubeViewport;
22  class Directory;
23  class MainWindow;
24  class MdiCubeViewport;
25  class QnetHoldPointDialog;
26  class SerialNumberList;
27  class Stretch;
28  class ToolPad;
29  class UniversalGroundMap;
30 
64  class ControlNetTool : public Tool {
65  Q_OBJECT
66 
67  public:
68  ControlNetTool (Directory *directory, QWidget *parent);
69  virtual ~ControlNetTool ();
70 
71  void setControlNet(ControlNet *controlNet);
72  void paintViewport (MdiCubeViewport *cvp, QPainter *painter);
73 
74  signals:
75  void modifyControlPoint(ControlPoint *controlPoint, QString serialNumber);
76  void deleteControlPoint(ControlPoint *controlPoint);
77  void createControlPoint(double latitude, double longitude, Cube *cube,
78  bool isGroundSource = false);
79 
80  public slots:
81  void loadNetwork();
82 
83  protected:
85 
86  protected slots:
87  void mouseButtonRelease(QPoint p, Qt::MouseButton s);
88 
89  private slots:
90  void paintAllViewports();
91 
92  private:
93  void createActions();
94  void createMenus();
95  void drawAllMeasurements(MdiCubeViewport *vp, QPainter *painter);
96  void drawGroundMeasures (MdiCubeViewport *vp, QPainter *painter, UniversalGroundMap *groundMap);
97 
98  QPointer<MainWindow> m_ControlNetTool;
99  Directory *m_directory;
100  CubeDnView *m_view;
101 
102  QPointer<ControlNet> m_controlNet;
103 
104  QPointer<Workspace> m_workspace;
105  };
106 };
107 
108 #endif
Cube display widget for certain Isis MDI applications.
void mouseButtonRelease(QPoint p, Qt::MouseButton s)
Handle mouse events on CubeViewport.
Universal Ground Map.
ControlNetTool(Directory *directory, QWidget *parent)
ControlNet tool - Handles mouse button actions and drawing control points on viewports in the CubeDnV...
QAction * toolPadAction(ToolPad *pad)
Adds the ControlNet tool action to the tool pad.
ControlNetTool Handles mouse events on CubeDnViews for control point editing for the ipce app...
a control network
Definition: ControlNet.h:271
A single control point.
Definition: ControlPoint.h:369
void setControlNet(ControlNet *controlNet)
Set the active control net to be used for editing.
void drawGroundMeasures(MdiCubeViewport *vp, QPainter *painter, UniversalGroundMap *groundMap)
Draw all Fixed or Constrained points on the ground source viewport.
void paintViewport(MdiCubeViewport *cvp, QPainter *painter)
This will draw the control measures on the given cube viewport.
View that displays cubes in a QView-like way.
Definition: CubeDnView.h:111
void drawAllMeasurements(MdiCubeViewport *vp, QPainter *painter)
Draw all measurments located on the image in this viewPort.
void paintAllViewports()
This method will repaint the Control Points in each viewport.
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
Base class for the Qisis tools.
Definition: Tool.h:81
IO Handler for Isis Cubes.
Definition: Cube.h:170