Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# vtkAssemblyPath Class Reference

`#include <vtkAssemblyPath.h>`

Inheritance diagram for vtkAssemblyPath:

[legend]
Collaboration diagram for vtkAssemblyPath:

[legend]
List of all members.

## Detailed Description

a list of nodes that form an assembly path

Date:
  2002/01/22 15:25:10

Revision:
  1.8

vtkAssemblyPath represents an ordered list of assembly nodes that represent a fully evaluated assembly path. This class is used primarily for picking. Note that the use of this class is to add one or more assembly nodes to form the path. (An assembly node consists of an instance of vtkProp and vtkMatrix4x4, the matrix may be NULL.) As each node is added, the matrices are concatenated to create a final, evaluated matrix.

See also:
  vtkAssemblyNode vtkAssembly vtkActor vtkMatrix4x4 vtkProp vtkAbstractPicker

Created by:
  - Schroeder, Will

CVS contributions (if > 5%):
  - Schroeder, Will (93%)

CVS logs (CVSweb):
  - .`h` (`/Common/vtkAssemblyPath.h)`
  - .`cxx` (`/Common/vtkAssemblyPath.cxx)`

Examples:
  vtkAssemblyPath (Examples)

Definition at line 56 of file vtkAssemblyPath.h.

## Public Types
typedef vtkCollection | Superclass
## Public Methods
virtual const char * | GetClassName ()
virtual int | IsA (const char *type)
void | PrintSelf (ostream &os, vtkIndent indent)
void | AddNode (vtkProp *p, vtkMatrix4x4 *m)
vtkAssemblyNode * | GetNextNode ()
vtkAssemblyNode * | GetFirstNode ()
vtkAssemblyNode * | GetLastNode ()
void | DeleteLastNode ()
void | ShallowCopy (vtkAssemblyPath *path)
virtual unsigned long | GetMTime ()
## Static Public Methods
int | IsTypeOf (const char *type)
vtkAssemblyPath * | SafeDownCast (vtkObject *o)
vtkAssemblyPath * | New ()
## Protected Methods
| vtkAssemblyPath ()
| ~vtkAssemblyPath ()
void | AddNode (vtkAssemblyNode *n)
## Protected Attributes
vtkTransform * | Transform
vtkProp * | TransformedProp

## Member Typedef Documentation

typedef vtkCollection vtkAssemblyPath::Superclass

| Reimplemented from vtkCollection. Definition at line 59 of file vtkAssemblyPath.h.

## Constructor & Destructor Documentation

vtkAssemblyPath::vtkAssemblyPath | ( |  | ) | `[protected]`

vtkAssemblyPath::~vtkAssemblyPath | ( |  | ) | `[protected]`

## Member Function Documentation

virtual const char* vtkAssemblyPath::GetClassName | ( |  | ) | `[virtual]`

| Reimplemented from vtkCollection.

int vtkAssemblyPath::IsTypeOf | ( | const char * | type | ) | `[static]`

| Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkCollection.

virtual int vtkAssemblyPath::IsA | ( | const char * | type | ) | `[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 vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkCollection.

vtkAssemblyPath* vtkAssemblyPath::SafeDownCast | ( | vtkObject * | o | ) | `[static]`

| Reimplemented from vtkCollection.

void vtkAssemblyPath::PrintSelf | ( | ostream & | os,
|  | vtkIndent | indent
| ) | `[virtual]`

| Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes. Reimplemented from vtkCollection.

vtkAssemblyPath* vtkAssemblyPath::New | ( |  | ) | `[static]`

| Instantiate empty path with identify matrix. Reimplemented from vtkCollection.

void vtkAssemblyPath::AddNode | ( | vtkProp * | p,
|  | vtkMatrix4x4 * | m
| ) |

| Convenience method adds a prop and matrix together, creating an assembly node transparently. The matrix pointer m may be NULL. Note: that matrix is the one, if any, associated with the prop.

vtkAssemblyNode* vtkAssemblyPath::GetNextNode | ( |  | ) |

| Get the next assembly node in the list. The node returned contains a pointer to a prop and a 4x4 matrix. The matrix is evaluated based on the preceding assembly hierarchy (i.e., the matrix is not necessarily as the same as the one that was added with AddNode() because of the concatenation of matrices in the assembly hierarchy).

vtkAssemblyNode* vtkAssemblyPath::GetFirstNode | ( |  | ) |

| Get the first assembly node in the list. See the comments for GetNextNode() regarding the contents of the returned node. (Note: This node corresponds to the vtkProp associated with the vtkRenderer.

vtkAssemblyNode* vtkAssemblyPath::GetLastNode | ( |  | ) |

| Get the last assembly node in the list. See the comments for GetNextNode() regarding the contents of the returned node.

void vtkAssemblyPath::DeleteLastNode | ( |  | ) |

| Delete the last assembly node in the list. This is like a stack pop.

void vtkAssemblyPath::ShallowCopy | ( | vtkAssemblyPath * | path | ) |

| Perform a shallow copy (reference counted) on the incoming path.

virtual unsigned long vtkAssemblyPath::GetMTime | ( |  | ) | `[virtual]`

| Override the standard GetMTime() to check for the modified times of the nodes in this path. Reimplemented from vtkObject.

void vtkAssemblyPath::AddNode | ( | vtkAssemblyNode * | n | ) | `[protected]`

## Member Data Documentation

vtkTransform* vtkAssemblyPath::Transform`[protected]`

| Definition at line 101 of file vtkAssemblyPath.h.

vtkProp* vtkAssemblyPath::TransformedProp`[protected]`

| Definition at line 102 of file vtkAssemblyPath.h.

The documentation for this class was generated from the following file:

- Common/vtkAssemblyPath.h