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 
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 
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:49
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:49
a 3D cube with face labels
abstract specification for Viewports
Definition: vtkViewport.h:45
represent surface properties of a geometric object
Definition: vtkProperty.h:61
virtual int RenderOpaqueGeometry(vtkViewport *)
Definition: vtkProp.h:171
vtkTransformFilter * TransformFilter
virtual int HasTranslucentPolygonalGeometry()
Definition: vtkProp.h:230
vtkVectorText * XPlusFaceVectorText
abstract specification for renderers
Definition: vtkRenderer.h:69
describes linear transformations via a 4x4 matrix
Definition: vtkTransform.h:58
vtkVectorText * YMinusFaceVectorText
represents an 3D object for placement in a rendered scene
Definition: vtkProp3D.h:41
a list of Props
virtual void ReleaseGraphicsResources(vtkWindow *)
Definition: vtkProp.h:236
window superclass for vtkRenderWindow
Definition: vtkWindow.h:35
vtkVectorText * YPlusFaceVectorText
create a polygonal representation of a cube
Definition: vtkCubeSource.h:34
void ShallowCopy(vtkProp *prop)
a simple class to control print indentation
Definition: vtkIndent.h:37
void PrintSelf(ostream &os, vtkIndent indent)
extract boundary, non-manifold, and/or sharp edges from polygonal data
appends one or more polygonal datasets together
vtkVectorText * ZMinusFaceVectorText
vtkAppendPolyData * AppendTextEdges
create hierarchies of vtkProp3Ds (transformable props)
Definition: vtkAssembly.h:73
vtkVectorText * XMinusFaceVectorText
vtkVectorText * ZPlusFaceVectorText
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *)
Definition: vtkProp.h:172
transform points and associated normals and vectors
virtual double * GetBounds()=0
static vtkObject * New()
#define VTK_HYBRID_EXPORT
vtkFeatureEdges * ExtractTextEdges
unsigned long int GetMTime()
virtual void GetActors(vtkPropCollection *)
Definition: vtkProp.h:59
create polygonal text
Definition: vtkVectorText.h:45