29#include "vtkRenderingCoreModule.h"
32VTK_ABI_NAMESPACE_BEGIN
55 vtkDebugMacro(<< this->
GetClassName() <<
" (" <<
this <<
"): setting Position to (" << x <<
","
56 << y <<
"," << z <<
")");
57 if ((this->Position[0] != x) || (this->Position[1] != y) || (this->Position[2] != z))
59 this->Position[0] = x;
60 this->Position[1] = y;
61 this->Position[2] = z;
69 vtkGetVectorMacro(Position,
double, 3);
71 void AddPosition(
double deltaX,
double deltaY,
double deltaZ);
78 virtual void SetOrigin(
double x,
double y,
double z)
80 vtkDebugMacro(<< this->
GetClassName() <<
" (" <<
this <<
"): setting Origin to (" << x <<
","
81 << y <<
"," << z <<
")");
82 if ((this->Origin[0] != x) || (this->Origin[1] != y) || (this->Origin[2] != z))
92 vtkGetVectorMacro(Origin,
double, 3);
100 virtual void SetScale(
double x,
double y,
double z)
102 vtkDebugMacro(<< this->
GetClassName() <<
" (" <<
this <<
"): setting Scale to (" << x <<
","
103 << y <<
"," << z <<
")");
104 if (this->Scale[0] != x || this->Scale[1] != y || this->Scale[2] != z)
110 this->IsIdentity = 0;
114 vtkGetVectorMacro(Scale,
double, 3);
215 void RotateX(
double);
224 void RotateY(
double);
233 void RotateZ(
double);
241 void RotateWXYZ(
double w,
double x,
double y,
double z);
248 void SetOrientation(
double x,
double y,
double z);
255 void SetOrientation(
double orientation[3]);
265 void GetOrientation(
double orentation[3]);
279 void AddOrientation(
double x,
double y,
double z);
287 void AddOrientation(
double orentation[3]);
305 void InitPathTraversal() override;
321 virtual
void ComputeMatrix();
330 this->ComputeMatrix();
379 vtkSetMacro(CoordinateSystemDevice,
int);
380 vtkGetMacro(CoordinateSystemDevice,
int);
393 double Orientation[3];
408 void operator=(
const vtkProp3D&) =
delete;
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
Allocate and hold a VTK object.
const char * GetClassName() const
Return the class name as a string.
virtual void Modified()
Update the modification time for this object.
represents an 3D object for placement in a rendered scene
virtual void SetPosition(double x, double y, double z)
Set/Get/Add the position of the Prop3D in world coordinates.
virtual void GetMatrix(double result[16])
Return a reference to the Prop3D's 4x4 composite matrix.
vtkWeakPointer< vtkRenderer > CoordinateSystemRenderer
void SetCoordinateSystem(CoordinateSystems val)
Specify the coordinate system that this prop is relative to.
virtual void GetMatrix(vtkMatrix4x4 *result)
Return a reference to the Prop3D's 4x4 composite matrix.
void SetScale(double s)
Method to set the scale isotropically.
virtual void SetScale(double scale[3])
Set/Get the scale of the actor.
vtkNew< vtkMatrix4x4 > TempMatrix4x4
void AddPosition(double deltaX, double deltaY, double deltaZ)
vtkRenderer * GetCoordinateSystemRenderer()
Specify the Renderer that the prop3d is relative to when the coordinate system is set to PHYSICAL or ...
void AddPosition(double deltaPosition[3])
const char * GetCoordinateSystemAsString()
Specify the coordinate system that this prop is relative to.
vtkMatrix4x4 * UserMatrix
vtkMatrix4x4 * GetUserMatrix()
The UserMatrix can be used in place of UserTransform.
virtual void SetPosition(double pos[3])
virtual void SetOrigin(double x, double y, double z)
Set/Get the origin of the Prop3D.
virtual void SetScale(double x, double y, double z)
Set/Get the scale of the actor.
double * GetBounds() override=0
Return a reference to the Prop3D's composite transform.
virtual void GetModelToWorldMatrix(vtkMatrix4x4 *result)
Return a reference to the Prop3D's Model to World matrix.
void SetCoordinateSystemToWorld()
Specify the coordinate system that this prop is relative to.
void SetCoordinateSystemRenderer(vtkRenderer *ren)
Specify the Renderer that the prop3d is relative to when the coordinate system is set to PHYSICAL or ...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int CoordinateSystemDevice
void SetUserMatrix(vtkMatrix4x4 *matrix)
The UserMatrix can be used in place of UserTransform.
void SetUserTransform(vtkLinearTransform *transform)
In addition to the instance variables such as position and orientation, you can add an additional tra...
void SetCoordinateSystemToDevice()
Specify the coordinate system that this prop is relative to.
void SetCoordinateSystemToPhysical()
Specify the coordinate system that this prop is relative to.
CoordinateSystems
Specify the coordinate system that this prop is relative to.
void GetBounds(double bounds[6])
Return a reference to the Prop3D's composite transform.
void ShallowCopy(vtkProp *prop) override
Shallow copy of this vtkProp3D.
vtkLinearTransform * UserTransform
virtual void SetOrigin(const double pos[3])
Set/Get the origin of the Prop3D.
virtual void SetPropertiesFromModelToWorldMatrix(vtkMatrix4x4 *modelToWorld)
Set the position, scale, orientation from a provided model to world matrix.
abstract superclass for all actors, volumes and annotations
abstract specification for renderers
record modification and/or execution time
a weak reference to a vtkObject.
vtkTypeUInt32 vtkMTimeType
#define VTK_SIZEHINT(...)