ddt  1.0.0
ddtOverlayRendering.hpp
Go to the documentation of this file.
1 
20 #ifndef DDT_DATAVISUALISATION_DDTGRAPHCIS_OVERLAYRENDERING_HPP
21 #define DDT_DATAVISUALISATION_DDTGRAPHCIS_OVERLAYRENDERING_HPP
22 
23 #include <QApplication>
24 #include <QGraphicsItem>
25 #include <QGraphicsScene>
26 #include <QGraphicsView>
27 #include <QtMath>
28 
33 
38  public:
42  explicit DdtOverlayRendering();
43 
47  virtual ~DdtOverlayRendering();
48 
52  virtual void RedrawOverlay(QGraphicsScene* scene,
53  const QString timestamp = "");
54 
66  const DdtGraphicalElementProperties& element_properties, const double x1,
67  const double y1, const double x2, const double y2,
68  const QString draw_mode, const QString text = "");
69 
74  void RemoveGraphicalElements(const QString selection);
75 
83  bool SelectGraphicalElements(const double x1, const double y1,
84  const QGraphicsView* const view);
85 
92 
97  void SetCurrentScale(const float scale);
98 
104 
110 
116 
121  QStringList GetListOfElementIDs() const;
122 
127  void SetEditable(const bool editable);
128 
136  bool LoadOverlayFile(const QString overlay_file,
137  const std::string image_widget_name, QString& error_msg);
138 
142  void HideStaticOverlay() const;
143 
147  void ShowStaticOverlay() const;
148 
153  void ShowOverlayByObject(const QString object_name) const;
154 
159  void HideOverlayByObject(const QString object_name) const;
160 
165  void ShowOverlayByElement(const QString element_name) const;
166 
171  void HideOverlayByElement(const QString element_name) const;
172 
177  void SetTransformation(QTransform const& transform);
178 
179  protected:
184 
189 
193  QList<DdtGraphicalElement*> selected_elements;
194 
199 
200  private:
204  void Init();
205 
209  int FindTextItem(QList<QGraphicsItem*> graphics_item_list, const double x1,
210  const double y1) const;
211 
212  void RedrawUserOverlay(QGraphicsScene* const scene, const QString timestamp);
213 
214  void RedrawFileBasedOverlay(QGraphicsScene* const scene);
215 };
216 
217 #endif // DDT_DATAVISUALISATION_DDTGRAPHCIS_OVERLAYRENDERING_HPP
218 
Definition: ddtFileBasedOverlay.hpp:38
Definition: ddtGraphicalElementProperties.hpp:29
Definition: ddtGraphicalOverlay.hpp:30
Definition: ddtOverlayRendering.hpp:37
float current_scale
Definition: ddtOverlayRendering.hpp:198
void RemoveGraphicalElements(const QString selection)
Definition: ddtOverlayRendering.cpp:329
void SetCurrentScale(const float scale)
Definition: ddtOverlayRendering.cpp:154
void SetTransformation(QTransform const &transform)
Definition: ddtOverlayRendering.cpp:406
virtual ~DdtOverlayRendering()
Definition: ddtOverlayRendering.cpp:25
DdtFileBasedOverlay * file_based_overlay
Definition: ddtOverlayRendering.hpp:188
void HideOverlayByElement(const QString element_name) const
Definition: ddtOverlayRendering.cpp:401
DdtOverlayRendering()
Definition: ddtOverlayRendering.cpp:23
DdtGraphicalOverlay * GetGraphicalOverlay()
Definition: ddtOverlayRendering.cpp:43
QList< DdtGraphicalElement * > selected_elements
Definition: ddtOverlayRendering.hpp:193
void UnselectGraphicalElements()
Definition: ddtOverlayRendering.cpp:293
void ChangeElementOverlayProperties(const DdtGraphicalElementProperties &properties)
Definition: ddtOverlayRendering.cpp:140
bool LoadOverlayFile(const QString overlay_file, const std::string image_widget_name, QString &error_msg)
Definition: ddtOverlayRendering.cpp:363
virtual void RedrawOverlay(QGraphicsScene *scene, const QString timestamp="")
Definition: ddtOverlayRendering.cpp:53
bool SelectGraphicalElements(const double x1, const double y1, const QGraphicsView *const view)
Definition: ddtOverlayRendering.cpp:237
void AddGraphicalElement(const DdtGraphicalElementProperties &element_properties, const double x1, const double y1, const double x2, const double y2, const QString draw_mode, const QString text="")
Definition: ddtOverlayRendering.cpp:159
void ShowStaticOverlay() const
Definition: ddtOverlayRendering.cpp:384
QStringList GetListOfElementIDs() const
Definition: ddtOverlayRendering.cpp:48
void SetEditable(const bool editable)
Definition: ddtOverlayRendering.cpp:223
void ShowOverlayByObject(const QString object_name) const
Definition: ddtOverlayRendering.cpp:388
const DdtGraphicalElementProperties & GetLastSelectedElementProperties()
Definition: ddtOverlayRendering.cpp:146
void HideStaticOverlay() const
Definition: ddtOverlayRendering.cpp:380
DdtGraphicalOverlay * graphics_overlay
Definition: ddtOverlayRendering.hpp:183
void HideOverlayByObject(const QString object_name) const
Definition: ddtOverlayRendering.cpp:392
void ShowOverlayByElement(const QString element_name) const
Definition: ddtOverlayRendering.cpp:396
DDT Widgets. Class for CPL Image Graphics Items. Class derived from QGraphicsItem....
DDT Graphics. Class for the DDT File Based Overlays. This class is used to load a json overlay file w...
DDT Graphics. Class for common properties of graphical elements like line width, colour etc....
DDT Graphics. Class for the DDT Graphical Overlays. This class can be used to build a set of overlay ...