VTK  9.3.1
vtkDistanceRepresentation2D.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
25 #ifndef vtkDistanceRepresentation2D_h
26 #define vtkDistanceRepresentation2D_h
27 
29 #include "vtkInteractionWidgetsModule.h" // For export macro
30 
31 VTK_ABI_NAMESPACE_BEGIN
32 class vtkAxisActor2D;
33 class vtkProperty2D;
34 
35 class VTKINTERACTIONWIDGETS_EXPORT vtkDistanceRepresentation2D : public vtkDistanceRepresentation
36 {
37 public:
42 
44 
48  void PrintSelf(ostream& os, vtkIndent indent) override;
50 
54  double GetDistance() override { return this->Distance; }
55 
57 
62  double* GetPoint1WorldPosition() override;
63  double* GetPoint2WorldPosition() override;
64  void GetPoint1WorldPosition(double pos[3]) override;
65  void GetPoint2WorldPosition(double pos[3]) override;
66  void SetPoint1WorldPosition(double pos[3]) override;
67  void SetPoint2WorldPosition(double pos[3]) override;
69 
70  void SetPoint1DisplayPosition(double pos[3]) override;
71  void SetPoint2DisplayPosition(double pos[3]) override;
72  void GetPoint1DisplayPosition(double pos[3]) override;
73  void GetPoint2DisplayPosition(double pos[3]) override;
74 
76 
81  vtkAxisActor2D* GetAxis();
82  vtkProperty2D* GetAxisProperty();
84 
88  void BuildRepresentation() override;
89 
91 
94  void ReleaseGraphicsResources(vtkWindow* w) override;
95  int RenderOverlay(vtkViewport* viewport) override;
96  int RenderOpaqueGeometry(vtkViewport* viewport) override;
98 
99 protected:
101  ~vtkDistanceRepresentation2D() override;
102 
103  // Add a line to the mix
106 
107  // The distance between the two points
108  double Distance;
109 
110 private:
112  void operator=(const vtkDistanceRepresentation2D&) = delete;
113 };
114 
115 VTK_ABI_NAMESPACE_END
116 #endif
virtual void SetPoint1WorldPosition(double pos[3])=0
Methods to Set/Get the coordinates of the two points defining this representation.
virtual void SetPoint1DisplayPosition(double pos[3])=0
Methods to Set/Get the coordinates of the two points defining this representation.
abstract specification for Viewports
Definition: vtkViewport.h:44
represent the vtkDistanceWidget
void PrintSelf(ostream &os, vtkIndent indent) override
Standard VTK methods.
Create an axis with tick marks and labels.
virtual void GetPoint1DisplayPosition(double pos[3])=0
Methods to Set/Get the coordinates of the two points defining this representation.
virtual void GetPoint2DisplayPosition(double pos[3])=0
Methods to Set/Get the coordinates of the two points defining this representation.
window superclass for vtkRenderWindow
Definition: vtkWindow.h:27
virtual double * GetPoint1WorldPosition()=0
Methods to Set/Get the coordinates of the two points defining this representation.
a simple class to control print indentation
Definition: vtkIndent.h:28
void ReleaseGraphicsResources(vtkWindow *) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Release any graphics resources that are being...
virtual void SetPoint2DisplayPosition(double pos[3])=0
Methods to Set/Get the coordinates of the two points defining this representation.
int RenderOpaqueGeometry(vtkViewport *vtkNotUsed(viewport)) override
double GetDistance() override
Satisfy the superclasses API.
int RenderOverlay(vtkViewport *vtkNotUsed(viewport)) override
virtual double * GetPoint2WorldPosition()=0
Methods to Set/Get the coordinates of the two points defining this representation.
void BuildRepresentation() override
These are methods that satisfy vtkWidgetRepresentation's API.
represent surface properties of a 2D image
Definition: vtkProperty2D.h:29
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent the vtkDistanceWidget
virtual void SetPoint2WorldPosition(double pos[3])=0
Methods to Set/Get the coordinates of the two points defining this representation.