VTK
|
create hierarchies of vtkProp3Ds (transformable props) More...
#include <vtkAssembly.h>
Public Types | |
typedef vtkProp3D | Superclass |
Public Types inherited from vtkProp3D | |
typedef vtkProp | Superclass |
Public Types inherited from vtkProp | |
typedef vtkObject | Superclass |
Public Types inherited from vtkObject | |
typedef vtkObjectBase | Superclass |
Public Member Functions | |
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) |
Public Member Functions inherited from vtkProp3D | |
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 () |
Public Member Functions inherited from vtkProp | |
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) |
Public Member Functions inherited from vtkObject | |
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) |
Public Member Functions inherited from vtkObjectBase | |
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 () |
Static Public Member Functions | |
static vtkAssembly * | New () |
static int | IsTypeOf (const char *type) |
static vtkAssembly * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkProp3D | |
static int | IsTypeOf (const char *type) |
static vtkProp3D * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkProp | |
static int | IsTypeOf (const char *type) |
static vtkProp * | SafeDownCast (vtkObjectBase *o) |
static vtkInformationIntegerKey * | GeneralTextureUnit () |
static vtkInformationDoubleVectorKey * | GeneralTextureTransform () |
Static Public Member Functions inherited from vtkObject | |
static int | IsTypeOf (const char *type) |
static vtkObject * | SafeDownCast (vtkObjectBase *o) |
static vtkObject * | New () |
static void | BreakOnError () |
static void | SetGlobalWarningDisplay (int val) |
static void | GlobalWarningDisplayOn () |
static void | GlobalWarningDisplayOff () |
static int | GetGlobalWarningDisplay () |
Static Public Member Functions inherited from vtkObjectBase | |
static int | IsTypeOf (const char *name) |
static vtkObjectBase * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkAssembly () | |
~vtkAssembly () | |
virtual void | UpdatePaths () |
Protected Member Functions inherited from vtkProp3D | |
vtkProp3D () | |
~vtkProp3D () | |
Protected Member Functions inherited from vtkProp | |
vtkProp () | |
~vtkProp () | |
Protected Member Functions inherited from vtkObject | |
vtkObject () | |
virtual | ~vtkObject () |
virtual void | RegisterInternal (vtkObjectBase *, int check) |
virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
void | InternalReleaseFocus () |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
vtkProp3DCollection * | Parts |
vtkTimeStamp | PathTime |
Protected Attributes inherited from vtkProp3D | |
vtkLinearTransform * | UserTransform |
vtkMatrix4x4 * | UserMatrix |
vtkMatrix4x4 * | Matrix |
vtkTimeStamp | MatrixMTime |
double | Origin [3] |
double | Position [3] |
double | Orientation [3] |
double | Scale [3] |
double | Center [3] |
vtkTransform * | Transform |
double | Bounds [6] |
vtkProp3D * | CachedProp3D |
int | IsIdentity |
Protected Attributes inherited from vtkProp | |
int | Visibility |
int | Pickable |
int | Dragable |
bool | UseBounds |
double | AllocatedRenderTime |
double | EstimatedRenderTime |
double | SavedEstimatedRenderTime |
double | RenderTimeMultiplier |
int | NumberOfConsumers |
vtkObject ** | Consumers |
vtkAssemblyPaths * | Paths |
vtkInformation * | PropertyKeys |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
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.
Definition at line 74 of file vtkAssembly.h.
typedef vtkProp3D vtkAssembly::Superclass |
Definition at line 79 of file vtkAssembly.h.
|
protected |
|
protected |
|
static |
|
static |
|
virtual |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkProp3D.
|
static |
|
protectedvirtual |
Reimplemented from vtkProp3D.
vtkAssembly* vtkAssembly::NewInstance | ( | ) | const |
|
virtual |
void vtkAssembly::AddPart | ( | vtkProp3D * | ) |
Add a part to the list of parts.
void vtkAssembly::RemovePart | ( | vtkProp3D * | ) |
Remove a part from the list of parts,
|
inline |
Return the parts (direct descendants) of this assembly.
Definition at line 90 of file vtkAssembly.h.
|
virtual |
For some exporters and other other operations we must be able to collect all the actors or volumes. These methods are used in that process.
Reimplemented from vtkProp.
|
virtual |
For some exporters and other other operations we must be able to collect all the actors or volumes. These methods are used in that process.
Reimplemented from vtkProp.
|
virtual |
Render this assembly and all its parts. The rendering process is recursive. Note that a mapper need not be defined. If not defined, then no geometry will be drawn for this assembly. This allows you to create "logical" assemblies; that is, assemblies that only serve to group and transform its parts.
Reimplemented from vtkProp.
|
virtual |
Render this assembly and all its parts. The rendering process is recursive. Note that a mapper need not be defined. If not defined, then no geometry will be drawn for this assembly. This allows you to create "logical" assemblies; that is, assemblies that only serve to group and transform its parts.
Reimplemented from vtkProp.
|
virtual |
Render this assembly and all its parts. The rendering process is recursive. Note that a mapper need not be defined. If not defined, then no geometry will be drawn for this assembly. This allows you to create "logical" assemblies; that is, assemblies that only serve to group and transform its parts.
Reimplemented from vtkProp.
|
virtual |
Does this prop have some translucent polygonal geometry?
Reimplemented from vtkProp.
|
virtual |
Release any graphics resources that are being consumed by this actor. The parameter window could be used to determine which graphic resources to release.
Reimplemented from vtkProp.
|
virtual |
Methods to traverse the parts of an assembly. Each part (starting from the root) will appear properly transformed and with the correct properties (depending upon the ApplyProperty and ApplyTransform ivars). Note that the part appears as an instance of vtkProp. These methods should be contrasted to those that traverse the list of parts using GetParts(). GetParts() returns a list of children of this assembly, not necessarily with the correct transformation or properties. To use the methods below - first invoke InitPathTraversal() followed by repeated calls to GetNextPath(). GetNextPath() returns a NULL pointer when the list is exhausted.
Reimplemented from vtkProp.
|
virtual |
Methods to traverse the parts of an assembly. Each part (starting from the root) will appear properly transformed and with the correct properties (depending upon the ApplyProperty and ApplyTransform ivars). Note that the part appears as an instance of vtkProp. These methods should be contrasted to those that traverse the list of parts using GetParts(). GetParts() returns a list of children of this assembly, not necessarily with the correct transformation or properties. To use the methods below - first invoke InitPathTraversal() followed by repeated calls to GetNextPath(). GetNextPath() returns a NULL pointer when the list is exhausted.
Reimplemented from vtkProp.
|
virtual |
Methods to traverse the parts of an assembly. Each part (starting from the root) will appear properly transformed and with the correct properties (depending upon the ApplyProperty and ApplyTransform ivars). Note that the part appears as an instance of vtkProp. These methods should be contrasted to those that traverse the list of parts using GetParts(). GetParts() returns a list of children of this assembly, not necessarily with the correct transformation or properties. To use the methods below - first invoke InitPathTraversal() followed by repeated calls to GetNextPath(). GetNextPath() returns a NULL pointer when the list is exhausted.
Reimplemented from vtkProp.
|
inline |
Get the bounds for the assembly as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
Definition at line 139 of file vtkAssembly.h.
|
virtual |
Get the bounds for the assembly as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
Implements vtkProp3D.
|
virtual |
Override default GetMTime method to also consider all of the assembly's parts.
Reimplemented from vtkObject.
|
virtual |
|
virtual |
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS Overload the superclass' vtkProp BuildPaths() method. Paths consist of an ordered sequence of actors, with transformations properly concatenated.
Reimplemented from vtkProp.
|
protectedvirtual |
|
protected |
Definition at line 166 of file vtkAssembly.h.
|
protected |
Definition at line 170 of file vtkAssembly.h.