39 #include "vtkRenderingCoreModule.h"
64 "): setting Position to (" << x <<
"," << y <<
"," <<
66 if ((this->Position[0] != x)||
67 (this->Position[1] != y)||
68 (this->Position[2] != z))
70 this->Position[0] = x;
71 this->Position[1] = y;
72 this->Position[2] = z;
80 { this->SetPosition(pos[0], pos[1], pos[2]); }
81 vtkGetVectorMacro(Position,
double, 3);
83 void AddPosition(
double deltaX,
double deltaY,
double deltaZ);
90 virtual void SetOrigin(
double x,
double y,
double z)
93 "): setting Origin to (" << x <<
"," << y <<
"," <<
95 if ((this->Origin[0] != x)||
96 (this->Origin[1] != y)||
97 (this->Origin[2] != z))
103 this->IsIdentity = 0;
107 { this->SetOrigin(pos[0], pos[1], pos[2]); }
108 vtkGetVectorMacro(Origin,
double, 3);
116 virtual void SetScale(
double x,
double y,
double z)
118 vtkDebugMacro(<< this->
GetClassName() <<
" (" <<
this <<
119 "): setting Scale to (" << x <<
"," << y <<
"," <<
121 if (this->Scale[0] != x ||
122 this->Scale[1] != y ||
123 this->Scale[2] != z )
129 this->IsIdentity = 0;
134 vtkGetVectorMacro(Scale,
double, 3);
141 { this->SetScale(s, s, s); }
335 this->ComputeMatrix();
344 vtkGetMacro(IsIdentity,
int);
357 double Orientation[3];
366 void operator=(
const vtkProp3D&) VTK_DELETE_FUNCTION;
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
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.
void SetOrientation(double x, double y, double z)
Sets the orientation of the Prop3D.
void SetScale(double s)
Method to set the scale isotropically.
virtual void SetScale(double scale[3])
void RotateX(double)
Rotate the Prop3D in degrees about the X axis using the right hand rule.
double * GetOrientation()
Returns the orientation of the Prop3D as s vector of X,Y and Z rotation.
double GetLength()
Get the length of the diagonal of the bounding box.
double * GetOrientationWXYZ()
Returns the WXYZ orientation of the Prop3D.
void AddPosition(double deltaX, double deltaY, double deltaZ)
void AddPosition(double deltaPosition[3])
vtkMatrix4x4 * GetMatrix()
Get a pointer to an internal vtkMatrix4x4.
void RotateWXYZ(double w, double x, double y, double z)
Rotate the Prop3D in degrees about an arbitrary axis specified by the last three arguments.
vtkMatrix4x4 * UserMatrix
vtkMTimeType GetMTime()
Get the vtkProp3D's mtime.
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 * GetYRange()
Get the Prop3D's y range in world coordinates.
void ShallowCopy(vtkProp *prop)
Shallow copy of this vtkProp3D.
void PokeMatrix(vtkMatrix4x4 *matrix)
This method modifies the vtkProp3D so that its transformation state is set to the matrix specified.
void RotateY(double)
Rotate the Prop3D in degrees about the Y axis using the right hand rule.
void SetUserMatrix(vtkMatrix4x4 *matrix)
The UserMatrix can be used in place of UserTransform.
void AddOrientation(double orentation[3])
Add to the current orientation.
double * GetZRange()
Get the Prop3D's z range in world coordinates.
double * GetCenter()
Get the center of the bounding box in world coordinates.
void InitPathTraversal()
Overload vtkProp's method for setting up assembly paths.
virtual double * GetBounds()=0
Get the bounds for this Prop as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
void SetUserTransform(vtkLinearTransform *transform)
In addition to the instance variables such as position and orientation, you can add an additional tra...
virtual void GetMatrix(double m[16])
void GetBounds(double bounds[6])
Return a reference to the Prop3D's composite transform.
void AddOrientation(double x, double y, double z)
Add to the current orientation.
double * GetXRange()
Get the Prop3D's x range in world coordinates.
virtual void GetMatrix(vtkMatrix4x4 *m)
Return a reference to the Prop3D's 4x4 composite matrix.
void SetOrientation(double orientation[3])
Sets the orientation of the Prop3D.
vtkMatrix4x4 * GetUserMatrix()
vtkLinearTransform * UserTransform
virtual void ComputeMatrix()
Generate the matrix based on ivars.
void GetOrientation(double orentation[3])
vtkMTimeType GetUserTransformMatrixMTime()
Get the modified time of the user matrix or user transform.
virtual void SetOrigin(const double pos[3])
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void RotateZ(double)
Rotate the Prop3D in degrees about the Z axis using the right hand rule.
abstract superclass for all actors, volumes and annotations
abstract specification for renderers
record modification and/or execution time
vtkTypeUInt64 vtkMTimeType