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 
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 
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 
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:52
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:50
a 3D cube with face labels
abstract specification for Viewports
Definition: vtkViewport.h:46
represent surface properties of a geometric object
Definition: vtkProperty.h:63
virtual int RenderOpaqueGeometry(vtkViewport *)
Definition: vtkProp.h:198
vtkTransformFilter * TransformFilter
virtual int HasTranslucentPolygonalGeometry()
Definition: vtkProp.h:262
vtkVectorText * XPlusFaceVectorText
abstract specification for renderers
Definition: vtkRenderer.h:63
describes linear transformations via a 4x4 matrix
Definition: vtkTransform.h:59
vtkVectorText * YMinusFaceVectorText
represents an 3D object for placement in a rendered scene
Definition: vtkProp3D.h:42
#define VTKRENDERINGANNOTATION_EXPORT
a list of Props
virtual void ReleaseGraphicsResources(vtkWindow *)
Definition: vtkProp.h:270
window superclass for vtkRenderWindow
Definition: vtkWindow.h:36
vtkVectorText * YPlusFaceVectorText
create a polygonal representation of a cube
Definition: vtkCubeSource.h:35
void ShallowCopy(vtkProp *prop)
a simple class to control print indentation
Definition: vtkIndent.h:38
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:74
vtkVectorText * XMinusFaceVectorText
vtkVectorText * ZPlusFaceVectorText
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *)
Definition: vtkProp.h:200
transform points and associated normals and vectors
virtual double * GetBounds()=0
static vtkObject * New()
vtkFeatureEdges * ExtractTextEdges
unsigned long int GetMTime()
virtual void GetActors(vtkPropCollection *)
Definition: vtkProp.h:62
create polygonal text
Definition: vtkVectorText.h:46