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 "vtkProp3D.h"
48 
49 class vtkActor;
50 class vtkAppendPolyData;
51 class vtkAssembly;
52 class vtkCubeSource;
53 class vtkFeatureEdges;
54 class vtkPropCollection;
55 class vtkProperty;
56 class vtkRenderer;
57 class vtkTransform;
58 class vtkTransformFilter;
59 class vtkVectorText;
60 
62 {
63 public:
64  static vtkAnnotatedCubeActor *New();
66  void PrintSelf(ostream& os, vtkIndent indent);
67 
71  virtual void GetActors(vtkPropCollection *);
72 
74 
75  virtual int RenderOpaqueGeometry(vtkViewport *viewport);
76  virtual int RenderTranslucentPolygonalGeometry(vtkViewport *viewport);
78 
80  virtual int HasTranslucentPolygonalGeometry();
81 
83  void ShallowCopy(vtkProp *prop);
84 
89 
91 
94  void GetBounds(double bounds[6]);
95  double *GetBounds();
97 
99  unsigned long int GetMTime();
100 
102 
103  void SetFaceTextScale(double);
104  vtkGetMacro(FaceTextScale, double);
106 
108 
109  vtkProperty *GetXPlusFaceProperty();
110  vtkProperty *GetXMinusFaceProperty();
111  vtkProperty *GetYPlusFaceProperty();
112  vtkProperty *GetYMinusFaceProperty();
113  vtkProperty *GetZPlusFaceProperty();
114  vtkProperty *GetZMinusFaceProperty();
116 
118  vtkProperty *GetCubeProperty();
119 
121  vtkProperty *GetTextEdgesProperty();
122 
124 
125  vtkSetStringMacro( XPlusFaceText );
126  vtkGetStringMacro( XPlusFaceText );
127  vtkSetStringMacro( XMinusFaceText );
128  vtkGetStringMacro( XMinusFaceText );
129  vtkSetStringMacro( YPlusFaceText );
130  vtkGetStringMacro( YPlusFaceText );
131  vtkSetStringMacro( YMinusFaceText );
132  vtkGetStringMacro( YMinusFaceText );
133  vtkSetStringMacro( ZPlusFaceText );
134  vtkGetStringMacro( ZPlusFaceText );
135  vtkSetStringMacro( ZMinusFaceText );
136  vtkGetStringMacro( ZMinusFaceText );
138 
140 
141  void SetTextEdgesVisibility(int);
142  int GetTextEdgesVisibility();
144 
146 
147  void SetCubeVisibility(int);
148  int GetCubeVisibility();
150 
152 
153  void SetFaceTextVisibility(int);
154  int GetFaceTextVisibility();
156 
158 
159  vtkSetMacro(XFaceTextRotation,double);
160  vtkGetMacro(XFaceTextRotation,double);
161  vtkSetMacro(YFaceTextRotation,double);
162  vtkGetMacro(YFaceTextRotation,double);
163  vtkSetMacro(ZFaceTextRotation,double);
164  vtkGetMacro(ZFaceTextRotation,double);
166 
168 
169  vtkAssembly *GetAssembly()
170  { return this->Assembly; }
172 
173 protected:
176 
179 
183 
184  void UpdateProps();
185 
192 
194 
198 
205 
212 
215 
217 
218 private:
219  vtkAnnotatedCubeActor(const vtkAnnotatedCubeActor&); // Not implemented.
220  void operator=(const vtkAnnotatedCubeActor&); // Not implemented.
221 };
222 
223 #endif
224