VTK
vtkAnnotatedCubeActor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAnnotatedCubeActor.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 =========================================================================*/
44 #ifndef __vtkAnnotatedCubeActor_h
45 #define __vtkAnnotatedCubeActor_h
46 
47 #include "vtkRenderingAnnotationModule.h" // For export macro
48 #include "vtkProp3D.h"
49 
50 class vtkActor;
51 class vtkAppendPolyData;
52 class vtkAssembly;
53 class vtkCubeSource;
54 class vtkFeatureEdges;
55 class vtkPropCollection;
56 class vtkProperty;
57 class vtkRenderer;
58 class vtkTransform;
59 class vtkTransformFilter;
60 class vtkVectorText;
61 
62 class VTKRENDERINGANNOTATION_EXPORT vtkAnnotatedCubeActor : public vtkProp3D
63 {
64 public:
65  static vtkAnnotatedCubeActor *New();
67  void PrintSelf(ostream& os, vtkIndent indent);
68 
72  virtual void GetActors(vtkPropCollection *);
73 
75 
76  virtual int RenderOpaqueGeometry(vtkViewport *viewport);
77  virtual int RenderTranslucentPolygonalGeometry(vtkViewport *viewport);
79 
81  virtual int HasTranslucentPolygonalGeometry();
82 
84  void ShallowCopy(vtkProp *prop);
85 
90 
92 
95  void GetBounds(double bounds[6]);
96  double *GetBounds();
98 
100  unsigned long int GetMTime();
101 
103 
104  void SetFaceTextScale(double);
105  vtkGetMacro(FaceTextScale, double);
107 
109 
110  vtkProperty *GetXPlusFaceProperty();
111  vtkProperty *GetXMinusFaceProperty();
112  vtkProperty *GetYPlusFaceProperty();
113  vtkProperty *GetYMinusFaceProperty();
114  vtkProperty *GetZPlusFaceProperty();
115  vtkProperty *GetZMinusFaceProperty();
117 
119  vtkProperty *GetCubeProperty();
120 
122  vtkProperty *GetTextEdgesProperty();
123 
125 
126  vtkSetStringMacro( XPlusFaceText );
127  vtkGetStringMacro( XPlusFaceText );
128  vtkSetStringMacro( XMinusFaceText );
129  vtkGetStringMacro( XMinusFaceText );
130  vtkSetStringMacro( YPlusFaceText );
131  vtkGetStringMacro( YPlusFaceText );
132  vtkSetStringMacro( YMinusFaceText );
133  vtkGetStringMacro( YMinusFaceText );
134  vtkSetStringMacro( ZPlusFaceText );
135  vtkGetStringMacro( ZPlusFaceText );
136  vtkSetStringMacro( ZMinusFaceText );
137  vtkGetStringMacro( ZMinusFaceText );
139 
141 
142  void SetTextEdgesVisibility(int);
143  int GetTextEdgesVisibility();
145 
147 
148  void SetCubeVisibility(int);
149  int GetCubeVisibility();
151 
153 
154  void SetFaceTextVisibility(int);
155  int GetFaceTextVisibility();
157 
159 
160  vtkSetMacro(XFaceTextRotation,double);
161  vtkGetMacro(XFaceTextRotation,double);
162  vtkSetMacro(YFaceTextRotation,double);
163  vtkGetMacro(YFaceTextRotation,double);
164  vtkSetMacro(ZFaceTextRotation,double);
165  vtkGetMacro(ZFaceTextRotation,double);
167 
169 
170  vtkAssembly *GetAssembly()
171  { return this->Assembly; }
173 
174 protected:
177 
180 
184 
185  void UpdateProps();
186 
193 
195 
199 
206 
213 
216 
218 
219 private:
220  vtkAnnotatedCubeActor(const vtkAnnotatedCubeActor&); // Not implemented.
221  void operator=(const vtkAnnotatedCubeActor&); // Not implemented.
222 };
223 
224 #endif
225