VTK
vtkAngleRepresentation3D.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAngleRepresentation3D.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 =========================================================================*/
33 #ifndef __vtkAngleRepresentation3D_h
34 #define __vtkAngleRepresentation3D_h
35 
36 #include "vtkAngleRepresentation.h"
37 
38 class vtkActor;
39 class vtkProperty;
40 class vtkPolyDataMapper;
41 class vtkLineSource;
42 class vtkArcSource;
43 class vtkFollower;
44 class vtkVectorText;
45 class vtkPolyDataMapper;
46 class vtkTextProperty;
47 
49 {
50 public:
52  static vtkAngleRepresentation3D *New();
53 
55 
57  void PrintSelf(ostream& os, vtkIndent indent);
59 
61  virtual double GetAngle();
62 
64 
67  virtual void GetPoint1WorldPosition(double pos[3]);
68  virtual void GetCenterWorldPosition(double pos[3]);
69  virtual void GetPoint2WorldPosition(double pos[3]);
70  virtual void SetPoint1WorldPosition(double pos[3]);
71  virtual void SetPoint1DisplayPosition(double pos[3]);
72  virtual void SetCenterWorldPosition(double pos[3]);
73  virtual void SetCenterDisplayPosition(double pos[3]);
74  virtual void SetPoint2WorldPosition(double pos[3]);
75  virtual void SetPoint2DisplayPosition(double pos[3]);
76  virtual void GetPoint1DisplayPosition(double pos[3]);
77  virtual void GetCenterDisplayPosition(double pos[3]);
78  virtual void GetPoint2DisplayPosition(double pos[3]);
80 
82 
85  vtkGetObjectMacro(Ray1,vtkActor);
86  vtkGetObjectMacro(Ray2,vtkActor);
87  vtkGetObjectMacro(Arc,vtkActor);
88  vtkGetObjectMacro(TextActor,vtkFollower);
90 
92 
93  virtual void SetTextActorScale( double scale[3] );
94  virtual double * GetTextActorScale();
96 
98  void BuildRepresentation();
99 
101 
102  virtual void ReleaseGraphicsResources(vtkWindow *w);
103  virtual int RenderOpaqueGeometry(vtkViewport*);
105  virtual int HasTranslucentPolygonalGeometry();
107 
108 protected:
111 
112  // The pieces that make up the angle representations
125  double Angle;
127  double TextPosition[3];
128 
129 private:
130  vtkAngleRepresentation3D(const vtkAngleRepresentation3D&); //Not implemented
131  void operator=(const vtkAngleRepresentation3D&); //Not implemented
132 };
133 
134 #endif