VTK
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
dox
Rendering
vtkAssembly.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkAssembly.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
=========================================================================*/
62
#ifndef __vtkAssembly_h
63
#define __vtkAssembly_h
64
65
#include "
vtkProp3D.h
"
66
67
class
vtkAssemblyPaths
;
68
class
vtkProp3DCollection
;
69
class
vtkMapper
;
70
class
vtkProperty
;
71
class
vtkActor
;
72
73
class
VTK_RENDERING_EXPORT
vtkAssembly
:
public
vtkProp3D
74
{
75
public
:
76
static
vtkAssembly
*
New
();
77
78
vtkTypeMacro(
vtkAssembly
,
vtkProp3D
);
79
void
PrintSelf
(ostream& os,
vtkIndent
indent);
80
82
void
AddPart(
vtkProp3D
*);
83
85
void
RemovePart(
vtkProp3D
*);
86
88
vtkProp3DCollection
*GetParts();
89
91
94
void
GetActors
(
vtkPropCollection
*);
95
void
GetVolumes
(
vtkPropCollection
*);
97
99
104
int
RenderOpaqueGeometry
(
vtkViewport
*ren);
105
virtual
int
RenderTranslucentPolygonalGeometry
(
vtkViewport
*ren);
106
virtual
int
RenderVolumetricGeometry
(
vtkViewport
*ren);
108
110
virtual
int
HasTranslucentPolygonalGeometry
();
111
115
void
ReleaseGraphicsResources
(
vtkWindow
*);
116
118
128
void
InitPathTraversal
();
129
vtkAssemblyPath
*
GetNextPath
();
130
int
GetNumberOfPaths
();
132
134
135
void
GetBounds
(
double
bounds[6]) {this->
vtkProp3D::GetBounds
( bounds );};
136
double
*
GetBounds
();
138
141
unsigned
long
int
GetMTime
();
142
144
void
ShallowCopy
(
vtkProp
*prop);
145
146
//BTX
148
152
void
BuildPaths
(
vtkAssemblyPaths
*paths,
vtkAssemblyPath
*path);
153
//ETX
155
156
protected
:
157
vtkAssembly
();
158
~
vtkAssembly
();
159
160
// Keep a list of direct descendants of the assembly hierarchy
161
vtkProp3DCollection
*
Parts
;
162
163
// Support the BuildPaths() method. Caches last paths built for
164
// performance.
165
vtkTimeStamp
PathTime
;
166
virtual
void
UpdatePaths();
//apply transformations and properties recursively
167
168
private
:
169
vtkAssembly
(
const
vtkAssembly
&);
// Not implemented.
170
void
operator=(
const
vtkAssembly
&);
// Not implemented.
171
};
172
174
inline
vtkProp3DCollection
*
vtkAssembly::GetParts
() {
return
this->
Parts
;}
175
176
#endif
177
178
179
180
Generated on Wed May 30 2012 13:22:21 for VTK by
1.8.1