VTK
vtkAngleRepresentation2D.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAngleRepresentation2D.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
31 #ifndef vtkAngleRepresentation2D_h
32 #define vtkAngleRepresentation2D_h
33 
34 #include "vtkInteractionWidgetsModule.h" // For export macro
35 #include "vtkAngleRepresentation.h"
36 
37 class vtkLeaderActor2D;
38 class vtkProperty2D;
39 
40 
41 class VTKINTERACTIONWIDGETS_EXPORT vtkAngleRepresentation2D : public vtkAngleRepresentation
42 {
43 public:
47  static vtkAngleRepresentation2D *New();
48 
50 
54  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
56 
60  double GetAngle() VTK_OVERRIDE;
61 
63 
68  void GetPoint1WorldPosition(double pos[3]) VTK_OVERRIDE;
69  void GetCenterWorldPosition(double pos[3]) VTK_OVERRIDE;
70  void GetPoint2WorldPosition(double pos[3]) VTK_OVERRIDE;
71  void SetPoint1DisplayPosition(double pos[3]) VTK_OVERRIDE;
72  void SetCenterDisplayPosition(double pos[3]) VTK_OVERRIDE;
73  void SetPoint2DisplayPosition(double pos[3]) VTK_OVERRIDE;
74  void GetPoint1DisplayPosition(double pos[3]) VTK_OVERRIDE;
75  void GetCenterDisplayPosition(double pos[3]) VTK_OVERRIDE;
76  void GetPoint2DisplayPosition(double pos[3]) VTK_OVERRIDE;
78 
80 
85  vtkGetObjectMacro(Ray1,vtkLeaderActor2D);
86  vtkGetObjectMacro(Ray2,vtkLeaderActor2D);
87  vtkGetObjectMacro(Arc,vtkLeaderActor2D);
89 
94  void BuildRepresentation() VTK_OVERRIDE;
95 
97 
100  void ReleaseGraphicsResources(vtkWindow *w) VTK_OVERRIDE;
101  int RenderOverlay(vtkViewport *viewport) VTK_OVERRIDE;
103 
104 protected:
106  ~vtkAngleRepresentation2D() VTK_OVERRIDE;
107 
108  // The pieces that make up the angle representations
109  vtkLeaderActor2D *Ray1;
110  vtkLeaderActor2D *Ray2;
111  vtkLeaderActor2D *Arc;
112 
113 private:
114  vtkAngleRepresentation2D(const vtkAngleRepresentation2D&) VTK_DELETE_FUNCTION;
115  void operator=(const vtkAngleRepresentation2D&) VTK_DELETE_FUNCTION;
116 };
117 
118 #endif
abstract specification for Viewports
Definition: vtkViewport.h:44
window superclass for vtkRenderWindow
Definition: vtkWindow.h:34
a simple class to control print indentation
Definition: vtkIndent.h:33
create a leader with optional label and arrows
represent the vtkAngleWidget
void PrintSelf(ostream &os, vtkIndent indent) override
Standard VTK methods.
virtual double GetAngle()=0
This representation and all subclasses must keep an angle (in degrees) consistent with the state of t...
represent the vtkAngleWidget
represent surface properties of a 2D image
Definition: vtkProperty2D.h:37
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...