VTK  9.3.0
vtkAssemblyNode.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
34#ifndef vtkAssemblyNode_h
35#define vtkAssemblyNode_h
36
37#include "vtkObject.h"
38#include "vtkRenderingCoreModule.h" // For export macro
39
40VTK_ABI_NAMESPACE_BEGIN
41class vtkProp;
42class vtkMatrix4x4;
43
44class VTKRENDERINGCORE_EXPORT vtkAssemblyNode : public vtkObject
45{
46public:
51
52 vtkTypeMacro(vtkAssemblyNode, vtkObject);
53 void PrintSelf(ostream& os, vtkIndent indent) override;
54
56
59 virtual void SetViewProp(vtkProp* prop);
60 vtkGetObjectMacro(ViewProp, vtkProp);
62
64
71 void SetMatrix(vtkMatrix4x4* matrix);
72 vtkGetObjectMacro(Matrix, vtkMatrix4x4);
74
80
81protected:
83 ~vtkAssemblyNode() override;
84
85private:
86 vtkProp* ViewProp; // reference to vtkProp
87 vtkMatrix4x4* Matrix; // associated matrix
88
89 void operator=(const vtkAssemblyNode&) = delete;
90 vtkAssemblyNode(const vtkAssemblyNode&) = delete;
91};
92
93VTK_ABI_NAMESPACE_END
94#endif
represent a node in an assembly
void SetMatrix(vtkMatrix4x4 *matrix)
Specify a transformation matrix associated with the prop.
~vtkAssemblyNode() override
static vtkAssemblyNode * New()
Create an assembly node.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkMTimeType GetMTime() override
Override the standard GetMTime() to check for the modified times of the prop and matrix.
virtual void SetViewProp(vtkProp *prop)
Set/Get the prop that this assembly node refers to.
a simple class to control print indentation
Definition vtkIndent.h:29
represent and manipulate 4x4 transformation matrices
abstract base class for most VTK objects
Definition vtkObject.h:49
abstract superclass for all actors, volumes and annotations
Definition vtkProp.h:43
vtkTypeUInt32 vtkMTimeType
Definition vtkType.h:270