|
virtual int | IsA (const char *type) |
|
vtkAssembly * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) |
|
void | AddPart (vtkProp3D *) |
|
void | RemovePart (vtkProp3D *) |
|
virtual int | HasTranslucentPolygonalGeometry () |
|
void | ReleaseGraphicsResources (vtkWindow *) |
|
unsigned long int | GetMTime () |
|
void | ShallowCopy (vtkProp *prop) |
|
|
vtkProp3DCollection * | GetParts () |
|
|
void | GetActors (vtkPropCollection *) |
|
void | GetVolumes (vtkPropCollection *) |
|
|
int | RenderOpaqueGeometry (vtkViewport *ren) |
|
virtual int | RenderTranslucentPolygonalGeometry (vtkViewport *ren) |
|
virtual int | RenderVolumetricGeometry (vtkViewport *ren) |
|
|
void | InitPathTraversal () |
|
vtkAssemblyPath * | GetNextPath () |
|
int | GetNumberOfPaths () |
|
|
void | GetBounds (double bounds[6]) |
|
double * | GetBounds () |
|
|
void | BuildPaths (vtkAssemblyPaths *paths, vtkAssemblyPath *path) |
|
vtkProp3D * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) |
|
void | ShallowCopy (vtkProp *prop) |
|
virtual void | SetPosition (double pos[3]) |
|
virtual double * | GetPosition () |
|
virtual void | GetPosition (double data[3]) |
|
void | AddPosition (double deltaPosition[3]) |
|
void | AddPosition (double deltaX, double deltaY, double deltaZ) |
|
double * | GetCenter () |
|
double * | GetXRange () |
|
double * | GetYRange () |
|
double * | GetZRange () |
|
double | GetLength () |
|
void | RotateX (double) |
|
void | RotateY (double) |
|
void | RotateZ (double) |
|
void | RotateWXYZ (double w, double x, double y, double z) |
|
void | SetOrientation (double x, double y, double z) |
|
void | SetOrientation (double orientation[3]) |
|
double * | GetOrientationWXYZ () |
|
void | AddOrientation (double x, double y, double z) |
|
void | AddOrientation (double orentation[3]) |
|
void | PokeMatrix (vtkMatrix4x4 *matrix) |
|
void | InitPathTraversal () |
|
unsigned long int | GetMTime () |
|
unsigned long int | GetUserTransformMatrixMTime () |
|
virtual void | ComputeMatrix () |
|
virtual void | SetPosition (double x, double y, double z) |
|
virtual void | SetOrigin (double x, double y, double z) |
|
virtual void | SetOrigin (const double pos[3]) |
|
virtual double * | GetOrigin () |
|
virtual void | GetOrigin (double data[3]) |
|
virtual void | SetScale (double x, double y, double z) |
|
virtual void | SetScale (double scale[3]) |
|
virtual double * | GetScale () |
|
virtual void | GetScale (double data[3]) |
|
void | SetScale (double s) |
|
void | SetUserTransform (vtkLinearTransform *transform) |
|
virtual vtkLinearTransform * | GetUserTransform () |
|
void | SetUserMatrix (vtkMatrix4x4 *matrix) |
|
vtkMatrix4x4 * | GetUserMatrix () |
|
virtual void | GetMatrix (vtkMatrix4x4 *m) |
|
virtual void | GetMatrix (double m[16]) |
|
void | GetBounds (double bounds[6]) |
|
double * | GetOrientation () |
|
void | GetOrientation (double orentation[3]) |
|
vtkMatrix4x4 * | GetMatrix () |
|
virtual int | GetIsIdentity () |
|
vtkProp * | NewInstance () const |
|
virtual void | Pick () |
|
virtual bool | HasKeys (vtkInformation *requiredKeys) |
|
virtual void | GetActors2D (vtkPropCollection *) |
|
virtual void | SetVisibility (int) |
|
virtual int | GetVisibility () |
|
virtual void | VisibilityOn () |
|
virtual void | VisibilityOff () |
|
virtual void | SetPickable (int) |
|
virtual int | GetPickable () |
|
virtual void | PickableOn () |
|
virtual void | PickableOff () |
|
virtual void | SetDragable (int) |
|
virtual int | GetDragable () |
|
virtual void | DragableOn () |
|
virtual void | DragableOff () |
|
virtual unsigned long | GetRedrawMTime () |
|
virtual void | SetUseBounds (bool) |
|
virtual bool | GetUseBounds () |
|
virtual void | UseBoundsOn () |
|
virtual void | UseBoundsOff () |
|
virtual void | PokeMatrix (vtkMatrix4x4 *vtkNotUsed(matrix)) |
|
virtual vtkInformation * | GetPropertyKeys () |
|
virtual void | SetPropertyKeys (vtkInformation *keys) |
|
virtual int | RenderOverlay (vtkViewport *) |
|
virtual bool | RenderFilteredOpaqueGeometry (vtkViewport *v, vtkInformation *requiredKeys) |
|
virtual bool | RenderFilteredTranslucentPolygonalGeometry (vtkViewport *v, vtkInformation *requiredKeys) |
|
virtual bool | RenderFilteredVolumetricGeometry (vtkViewport *v, vtkInformation *requiredKeys) |
|
virtual bool | RenderFilteredOverlay (vtkViewport *v, vtkInformation *requiredKeys) |
|
virtual double | GetEstimatedRenderTime (vtkViewport *) |
|
virtual double | GetEstimatedRenderTime () |
|
virtual void | SetEstimatedRenderTime (double t) |
|
virtual void | RestoreEstimatedRenderTime () |
|
virtual void | AddEstimatedRenderTime (double t, vtkViewport *vtkNotUsed(vp)) |
|
virtual void | SetAllocatedRenderTime (double t, vtkViewport *vtkNotUsed(v)) |
|
virtual double | GetAllocatedRenderTime () |
|
void | SetRenderTimeMultiplier (double t) |
|
virtual double | GetRenderTimeMultiplier () |
|
virtual bool | GetSupportsSelection () |
|
virtual int | GetNumberOfConsumers () |
|
void | AddConsumer (vtkObject *c) |
|
void | RemoveConsumer (vtkObject *c) |
|
vtkObject * | GetConsumer (int i) |
|
int | IsConsumer (vtkObject *c) |
|
vtkObject * | NewInstance () const |
|
virtual void | DebugOn () |
|
virtual void | DebugOff () |
|
bool | GetDebug () |
|
void | SetDebug (bool debugFlag) |
|
virtual void | Modified () |
|
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
|
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
|
vtkCommand * | GetCommand (unsigned long tag) |
|
void | RemoveObserver (vtkCommand *) |
|
void | RemoveObservers (unsigned long event, vtkCommand *) |
|
void | RemoveObservers (const char *event, vtkCommand *) |
|
int | HasObserver (unsigned long event, vtkCommand *) |
|
int | HasObserver (const char *event, vtkCommand *) |
|
void | RemoveObserver (unsigned long tag) |
|
void | RemoveObservers (unsigned long event) |
|
void | RemoveObservers (const char *event) |
|
void | RemoveAllObservers () |
|
int | HasObserver (unsigned long event) |
|
int | HasObserver (const char *event) |
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
|
int | InvokeEvent (unsigned long event, void *callData) |
|
int | InvokeEvent (const char *event, void *callData) |
|
int | InvokeEvent (unsigned long event) |
|
int | InvokeEvent (const char *event) |
|
const char * | GetClassName () const |
|
virtual void | Delete () |
|
virtual void | FastDelete () |
|
void | Print (ostream &os) |
|
virtual void | Register (vtkObjectBase *o) |
|
virtual void | UnRegister (vtkObjectBase *o) |
|
void | SetReferenceCount (int) |
|
void | PrintRevisions (ostream &) |
|
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
|
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
|
int | GetReferenceCount () |
|
create hierarchies of vtkProp3Ds (transformable props)
vtkAssembly is an object that groups vtkProp3Ds, its subclasses, and other assemblies into a tree-like hierarchy. The vtkProp3Ds and assemblies can then be transformed together by transforming just the root assembly of the hierarchy.
A vtkAssembly object can be used in place of an vtkProp3D since it is a subclass of vtkProp3D. The difference is that vtkAssembly maintains a list of vtkProp3D instances (its "parts") that form the assembly. Then, any operation that transforms (i.e., scales, rotates, translates) the parent assembly will transform all its parts. Note that this process is recursive: you can create groups consisting of assemblies and/or vtkProp3Ds to arbitrary depth.
To add an assembly to the renderer's list of props, you only need to add the root of the assembly. During rendering, the parts of the assembly are rendered during a hierarchical traversal process.
- Warning
- Collections of assemblies are slower to render than an equivalent list of actors. This is because to support arbitrary nesting of assemblies, the state of the assemblies (i.e., transformation matrices) must be propagated through the assembly hierarchy.
-
Assemblies can consist of hierarchies of assemblies, where one actor or assembly used in one hierarchy is also used in other hierarchies. However, make that there are no cycles (e.g., parent->child->parent), this will cause program failure.
-
If you wish to create assemblies without any transformation (using the assembly strictly as a grouping mechanism), then you may wish to consider using vtkPropAssembly.
- See also
- vtkActor vtkTransform vtkMapper vtkPolyDataMapper vtkPropAssembly
- Examples:
- vtkAssembly (Examples)
- Tests:
- vtkAssembly (Tests)
Definition at line 74 of file vtkAssembly.h.