Loading [MathJax]/jax/output/NativeMML/config.js
Isis Developer Reference
ControlNetTool.h
Go to the documentation of this file.
1 #ifndef ControlNetTool_h
2 #define ControlNetTool_h
3 
10 /* SPDX-License-Identifier: CC0-1.0 */
11 
12 #include "Tool.h"
13 #include "ControlPoint.h"
14 
15 #include <QAction>
16 #include <QCloseEvent>
17 #include <QPalette>
18 #include <QPointer>
19 #include <QString>
20 #include <QStringList>
21 
22 
23 namespace Isis {
24  class ControlMeasure;
25  class ControlNet;
26  class ControlPointEdit;
27  class Cube;
28  class CubeDnView;
29  class CubeViewport;
30  class Directory;
31  class MainWindow;
32  class MdiCubeViewport;
33  class QnetHoldPointDialog;
34  class SerialNumberList;
35  class Stretch;
36  class ToolPad;
37  class UniversalGroundMap;
38 
72  class ControlNetTool : public Tool {
73  Q_OBJECT
74 
75  public:
76  ControlNetTool (Directory *directory, QWidget *parent);
77  virtual ~ControlNetTool ();
78 
79  void setControlNet(ControlNet *controlNet);
80  void paintViewport (MdiCubeViewport *cvp, QPainter *painter);
81 
82  signals:
83  void modifyControlPoint(ControlPoint *controlPoint, QString serialNumber);
84  void deleteControlPoint(ControlPoint *controlPoint);
85  void createControlPoint(double latitude, double longitude, Cube *cube,
86  bool isGroundSource = false);
87 
88  public slots:
89  void loadNetwork();
90 
91  protected:
93 
94  protected slots:
95  void mouseButtonRelease(QPoint p, Qt::MouseButton s);
96 
97  private slots:
98  void paintAllViewports();
99 
100  private:
101  void createActions();
102  void createMenus();
103  void drawAllMeasurements(MdiCubeViewport *vp, QPainter *painter);
104  void drawGroundMeasures (MdiCubeViewport *vp, QPainter *painter, UniversalGroundMap *groundMap);
105 
106  QPointer<MainWindow> m_ControlNetTool;
107  Directory *m_directory;
108  CubeDnView *m_view;
109 
110  QPointer<ControlNet> m_controlNet;
111 
112  QPointer<Workspace> m_workspace;
113  };
114 };
115 
116 #endif
Isis::Project::shapes
static QStringList shapes(QStringList)
Isis::ControlNetTool::modifyControlPoint
void modifyControlPoint(ControlPoint *controlPoint, QString serialNumber)
Isis::MdiCubeViewport
Cube display widget for certain Isis MDI applications.
Definition: MdiCubeViewport.h:39
QWidget
Isis::Cube::fileName
virtual QString fileName() const
Returns the opened cube's filename.
Definition: Cube.cpp:1563
Isis::ControlNetTool::deleteControlPoint
void deleteControlPoint(ControlPoint *controlPoint)
Isis::UniversalGroundMap
Universal Ground Map.
Definition: UniversalGroundMap.h:69
MdiCubeViewport.h
Isis::UniversalGroundMap::UniversalLatitude
double UniversalLatitude() const
Returns the universal latitude of the camera model or projection.
Definition: UniversalGroundMap.cpp:247
Isis::CubeDnView
View that displays cubes in a QView-like way.
Definition: CubeDnView.h:97
Isis::Directory
Definition: Directory.h:271
QList
This is free and unencumbered software released into the public domain.
Definition: BoxcarCachingAlgorithm.h:13
ViewportMainWindow.h
Project.h
Isis::Tool::cubeViewportList
CubeViewportList * cubeViewportList() const
Return the list of cubeviewports.
Definition: Tool.cpp:390
Isis::Tool
Base class for the Qisis tools.
Definition: Tool.h:67
Isis::CubeDnView::viewportContainsShape
bool viewportContainsShape(MdiCubeViewport *viewport)
Definition: CubeDnView.cpp:365
ControlPointEditView.h
Directory.h
Isis::Tool::toolIconDir
QString toolIconDir() const
returns the path to the icon directory.
Definition: Tool.h:113
ControlPointEditWidget.h
Isis::SerialNumber::Compose
static QString Compose(Pvl &label, bool def2filename=false)
Compose a SerialNumber from a PVL.
Definition: SerialNumber.cpp:38
Isis::ControlPointEditView::controlPointEditWidget
ControlPointEditWidget * controlPointEditWidget()
Returns the ControlPointEditWidget.
Definition: ControlPointEditView.cpp:65
Isis::Project::activeControl
Control * activeControl()
Return the Active Control (control network)
Definition: Project.cpp:1903
Tool.h
Isis::ControlNetTool::setControlNet
void setControlNet(ControlNet *controlNet)
Set the active control net to be used for editing.
Definition: ControlNetTool.cpp:113
Isis::Directory::project
Project * project() const
Gets the Project for this directory.
Definition: Directory.cpp:1311
ToolPad.h
Isis::CubeViewport::universalGroundMap
UniversalGroundMap * universalGroundMap() const
Definition: CubeViewport.h:353
Shape.h
ControlList.h
Isis::ControlNetTool::~ControlNetTool
virtual ~ControlNetTool()
Definition: ControlNetTool.cpp:65
ShapeList.h
Isis::ControlPoint
A single control point.
Definition: ControlPoint.h:354
ControlNet.h
Isis::Control::controlNet
ControlNet * controlNet()
Open and return a pointer to the ControlNet for this Control.
Definition: Control.cpp:150
Isis::Tool::workspace
Workspace * workspace()
Definition: Tool.cpp:344
CubeDnView.h
Application.h
Isis::ControlNetTool::loadNetwork
void loadNetwork()
Definition: ControlNetTool.cpp:123
Workspace.h
ControlPoint.h
Isis::ControlNet
a control network
Definition: ControlNet.h:257
Isis::Cube
IO Handler for Isis Cubes.
Definition: Cube.h:167
Isis::ControlNetTool::mouseButtonRelease
void mouseButtonRelease(QPoint p, Qt::MouseButton s)
Handle mouse events on CubeViewport.
Definition: ControlNetTool.cpp:139
Isis::IException
Isis exception class.
Definition: IException.h:91
UniversalGroundMap.h
Isis::ControlNetTool::ControlNetTool
ControlNetTool(Directory *directory, QWidget *parent)
ControlNet tool - Handles mouse button actions and drawing control points on viewports in the CubeDnV...
Definition: ControlNetTool.cpp:58
Isis::ControlNetTool
ControlNetTool Handles mouse events on CubeDnViews for control point editing for the ipce app.
Definition: ControlNetTool.h:72
Isis::Project::controls
QList< ControlList * > controls()
Return controls in project.
Definition: Project.cpp:2038
Isis::ToolPad
Definition: ToolPad.h:14
IException.h
std
Namespace for the standard library.
Isis::ControlPoint::Free
@ Free
A Free point is a Control Point that identifies common measurements between two or more cubes.
Definition: ControlPoint.h:384
Isis::Directory::controlPointEditView
ControlPointEditView * controlPointEditView()
Gets the ControlPointEditWidget associated with the Directory.
Definition: Directory.cpp:1439
Isis::ControlPointEditWidget::editPoint
ControlPoint * editPoint()
Definition: ControlPointEditWidget.cpp:121
Isis::UniversalGroundMap::SetImage
bool SetImage(double sample, double line)
Returns whether the sample/line postion was set successfully in the camera model or projection.
Definition: UniversalGroundMap.cpp:233
Isis::CubeViewport::viewportToCube
void viewportToCube(int x, int y, double &sample, double &line) const
Turns a viewport into a cube.
Definition: CubeViewport.cpp:815
Isis::ControlNetTool::createControlPoint
void createControlPoint(double latitude, double longitude, Cube *cube, bool isGroundSource=false)
ControlNetTool.h
SerialNumber.h
QAction
Isis::CubeViewport::cube
Cube * cube() const
Definition: CubeViewport.h:338
Isis::ControlNetTool::paintViewport
void paintViewport(MdiCubeViewport *cvp, QPainter *painter)
This will draw the control measures on the given cube viewport.
Definition: ControlNetTool.cpp:233
Isis::Tool::cubeViewport
MdiCubeViewport * cubeViewport() const
Return the current cubeviewport.
Definition: Tool.h:197
Isis::UniversalGroundMap::UniversalLongitude
double UniversalLongitude() const
Returns the universal longitude of the camera model or projection.
Definition: UniversalGroundMap.cpp:270
ControlMeasure.h
Isis::ControlNetTool::toolPadAction
QAction * toolPadAction(ToolPad *pad)
Adds the ControlNet tool action to the tool pad.
Definition: ControlNetTool.cpp:83
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16

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 USGS Astrogeology Discussion Board
To report a bug, or suggest a feature go to: ISIS Github
File Modified: 03/21/2022 06:50:41