Kanzi 3.9.10
SRTValue3D Class Reference

A structure that describes the scale, rotation and translation transformation in 3D space. More...

Public Member Functions

 SRTValue3D ()
 Default constructor.
 
 SRTValue3D (Vector3 scale, Quaternion rotation, Vector3 translation)
 Constructor with the supplied scale, rotation as a quaternion, and translation.
 
 SRTValue3D (Vector3 scale, Vector3 eulerAnglesInRadians, Vector3 translation)
 Constructor with the supplied scale, rotation angle, and translation.
 
synchronized void delete ()
 
boolean equals (Object obj)
 Indicates whether some other object is "equal to" this one.
 
Quaternion getRotation ()
 Returns the rotation as a quaternion.
 
Vector3 getScale ()
 Returns the scale.
 
float getScaleX ()
 Returns the scale along the x-axis.
 
float getScaleY ()
 Returns the scale along the y-axis.
 
float getScaleZ ()
 Returns the scale along the z-axis.
 
Vector3 getTranslation ()
 Returns the translation.
 
float getTranslationX ()
 Returns the translation along the x-axis.
 
float getTranslationY ()
 Returns the translation along the y-axis.
 
float getTranslationZ ()
 Returns the translation along the z-axis.
 
int hashCode ()
 Returns a hash code value for the object.
 
void rotate (Quaternion rotation)
 Applies a rotation to the current rotation.
 
SRTValue3D rotated (Quaternion rotation)
 Rotates the SRT object.
 
void scale (Vector3 factor)
 Multiplies the current scale with the provided scaling factor.
 
SRTValue3D scaled (Vector3 scale)
 Scales the SRT object.
 
void setRotation (Quaternion value)
 Sets the rotation.
 
void setRotation (Vector3 eulerAnglesInRadians)
 Sets the rotation.
 
void setScale (Vector3 value)
 Sets the scale.
 
void setScaleX (float value)
 Sets the scale along the x-axis.
 
void setScaleY (float value)
 Sets the scale along the y-axis.
 
void setScaleZ (float value)
 Sets the scale along the z-axis.
 
void setTranslation (Vector3 value)
 Sets the translation.
 
void setTranslationX (float value)
 Sets the translation along the x-axis.
 
void setTranslationY (float value)
 Sets the translation along the y-axis.
 
void setTranslationZ (float value)
 Sets the translation along the z-axis.
 
Matrix4x4 toMatrix ()
 Converts the SRT representation to Matrix4x4 transform.
 
void translate (Vector3 translation)
 Adds the provided translation to the current translation.
 
SRTValue3D translated (Vector3 translation)
 Translates the SRT object.
 

Static Public Member Functions

static SRTValue3D create (Matrix4x4 matrix)
 Attempts to create a SRT object from a given transformation 4x4 matrix.
 
static SRTValue3D createScale (Vector3 scale)
 Creates a scale SRT.
 
static SRTValue3D createTranslation (Vector3 translation)
 Creates a translation SRT.
 
static SRTValue3D createUniformScale (float scale)
 Creates a uniform scale SRT.
 

Protected Member Functions

void finalize ()
 Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
 

Protected Attributes

transient boolean swigCMemOwn
 Does this object own its native object.
 

Detailed Description

A structure that describes the scale, rotation and translation transformation in 3D space.


Rotation is stored as quaternion, with the angle in radians.

Constructor & Destructor Documentation

◆ SRTValue3D() [1/2]

SRTValue3D ( Vector3 scale,
Vector3 eulerAnglesInRadians,
Vector3 translation )

Constructor with the supplied scale, rotation angle, and translation.


Parameters
scaleThe scale.
eulerAnglesInRadiansThe rotation in Euler angles (radians).
translationThe translation.

◆ SRTValue3D() [2/2]

SRTValue3D ( Vector3 scale,
Quaternion rotation,
Vector3 translation )

Constructor with the supplied scale, rotation as a quaternion, and translation.


Parameters
scaleThe scale.
rotationThe rotation.
translationThe translation.

Member Function Documentation

◆ create()

static SRTValue3D create ( Matrix4x4 matrix)
static

Attempts to create a SRT object from a given transformation 4x4 matrix.

Note: A matrix is decomposable into SRT if its column vectors are orthogonal to each other.

Parameters
matrixThe transformation 4x4 matrix.
Returns
A SRTValue3D object if the matrix is decomposable, null otherwise.

◆ createScale()

static SRTValue3D createScale ( Vector3 scale)
static

Creates a scale SRT.


Parameters
scaleThe scale.
Returns
An SRT object with scale.

◆ createTranslation()

static SRTValue3D createTranslation ( Vector3 translation)
static

Creates a translation SRT.


Parameters
translationThe translation.
Returns
An SRT object with translation.

◆ createUniformScale()

static SRTValue3D createUniformScale ( float scale)
static

Creates a uniform scale SRT.


Parameters
scaleThe scale.
Returns
An SRT object with scale.

◆ equals()

boolean equals ( Object obj)

Indicates whether some other object is "equal to" this one.

Parameters
objThe reference object with which to compare.
Returns
True if this object is the same as the obj argument, otherwise false.

◆ finalize()

void finalize ( )
protected

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

Finalization is deprecated and subject to removal in future.

◆ getRotation()

Quaternion getRotation ( )

Returns the rotation as a quaternion.


Returns
The rotation.

◆ getScale()

Vector3 getScale ( )

Returns the scale.


Returns
The scale.

◆ getScaleX()

float getScaleX ( )

Returns the scale along the x-axis.


Returns
The x component of the scale.

◆ getScaleY()

float getScaleY ( )

Returns the scale along the y-axis.


Returns
The y component of the scale.

◆ getScaleZ()

float getScaleZ ( )

Returns the scale along the z-axis.


Returns
The z component of the scale.

◆ getTranslation()

Vector3 getTranslation ( )

Returns the translation.


Returns
The translation.

◆ getTranslationX()

float getTranslationX ( )

Returns the translation along the x-axis.


Returns
The x component of the translation.

◆ getTranslationY()

float getTranslationY ( )

Returns the translation along the y-axis.


Returns
The y component of the translation.

◆ getTranslationZ()

float getTranslationZ ( )

Returns the translation along the z-axis.


Returns
The z component of the translation.

◆ hashCode()

int hashCode ( )

Returns a hash code value for the object.

Returns
A hash code value for this object.

◆ rotate()

void rotate ( Quaternion rotation)

Applies a rotation to the current rotation.


Parameters
rotationRotation quaternion.

◆ rotated()

SRTValue3D rotated ( Quaternion rotation)

Rotates the SRT object.


Parameters
rotationThe rotation.
Returns
A new SRT object with the rotation applied.

◆ scale()

void scale ( Vector3 factor)

Multiplies the current scale with the provided scaling factor.


Parameters
factorThe scaling factor.

◆ scaled()

SRTValue3D scaled ( Vector3 scale)

Scales the SRT object.


Parameters
scaleThe scaling factor.
Returns
A new SRT object with the scale applied.

◆ setRotation() [1/2]

void setRotation ( Quaternion value)

Sets the rotation.


Parameters
valueRotation as a quaternion.

◆ setRotation() [2/2]

void setRotation ( Vector3 eulerAnglesInRadians)

Sets the rotation.


Parameters
eulerAnglesInRadiansRotation angle as Euler angle in radians.

◆ setScale()

void setScale ( Vector3 value)

Sets the scale.


Parameters
valueThe scale.

◆ setScaleX()

void setScaleX ( float value)

Sets the scale along the x-axis.


Parameters
valueThe x component of the scale.

◆ setScaleY()

void setScaleY ( float value)

Sets the scale along the y-axis.


Parameters
valueThe y component of the scale.

◆ setScaleZ()

void setScaleZ ( float value)

Sets the scale along the z-axis.


Parameters
valueThe z component of the scale.

◆ setTranslation()

void setTranslation ( Vector3 value)

Sets the translation.


Parameters
valueThe translation.

◆ setTranslationX()

void setTranslationX ( float value)

Sets the translation along the x-axis.


Parameters
valueThe x component of the translation.

◆ setTranslationY()

void setTranslationY ( float value)

Sets the translation along the y-axis.


Parameters
valueThe y component of the translation.

◆ setTranslationZ()

void setTranslationZ ( float value)

Sets the translation along the z-axis.


Parameters
valueThe z component of the translation.

◆ toMatrix()

Matrix4x4 toMatrix ( )

Converts the SRT representation to Matrix4x4 transform.


Returns
A matrix representation of the SRT object.

◆ translate()

void translate ( Vector3 translation)

Adds the provided translation to the current translation.


Parameters
translationThe translation term.

◆ translated()

SRTValue3D translated ( Vector3 translation)

Translates the SRT object.


Parameters
translationThe translation term.
Returns
A new SRT object with the translation applied.