Web Analytics Made Easy - Statcounter
Skip to content

Class SBDTypeOrthorhombicSymmetryTransform#

ClassList > SBDTypeOrthorhombicSymmetryTransform

This class describes orthorhombic symmetry transforms. More...

  • #include <SBDTypeOrthorhombicSymmetryTransform.hpp>

Inherits the following classes: SBDTypeSymmetryTransform

Public Attributes inherited from SBDTypeSymmetryTransform#

See SBDTypeSymmetryTransform

Type Name
int R
int STBF
int T
short int index
SBDTypeSymmetryTransform * inverse
int inverseId
short int lower
bool orthorhombic
short int upper

Public Attributes inherited from SBDTypeSpatialTransform#

See SBDTypeSpatialTransform

Type Name
SBMatrix33 * orientation
The pointer to the orientation of the spatial transform.
SBPosition3 * position
The pointer to the position of the spatial transform.
SBVector3 * scale
The pointer to the scale of the spatial transform.

Public Static Attributes inherited from SBDTypeSpatialTransform#

See SBDTypeSpatialTransform

Type Name
const SBDTypeSpatialTransform identity
The identity spatial transform.
const SBDTypeSpatialTransform zero
The zero spatial transform.

Public Functions#

Type Name
SBDTypeOrthorhombicSymmetryTransform ()
Constructs a new SBDTypeOrthorhombicSymmetryTransform object.
virtual void init ()
Initializes the orthorhombic symmetry transform based on the orientation matrix.
virtual bool isSerializable () const
Returns true __
virtual void serialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER) const
Serializes.
virtual void unserialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER)
Unserializes.

Public Functions inherited from SBDTypeSymmetryTransform#

See SBDTypeSymmetryTransform

Type Name
SBDTypeSymmetryTransform ()
Constructs a SBDTypeSymmetryTransform with default values.
void assignR (const int _R)
Assigns the rotation matrix of the symmetry transform.
void assignT (const int _T, const int & _STBF)
Assigns the translation vector and space‑time basis factor.
void assignT (const int _T)
Assigns the translation vector of the symmetry transform.
bool checkInverse (const SBDTypeSymmetryTransform & t) const
Checks whether another symmetry transform is the inverse of this one.
virtual void init ()
virtual bool isSerializable () const
Returns true __
virtual void serialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER) const
Serializes.
virtual void unserialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER)
Unserializes.

Public Functions inherited from SBDTypeSpatialTransform#

See SBDTypeSpatialTransform

Type Name
SBDTypeSpatialTransform ()
Constructs an identity transform.
SBDTypeSpatialTransform (const SBDTypeSpatialTransform & transform)
Copy constructor.
SBDTypeSpatialTransform (SBDTypeSpatialTransform && transform)
Move constructor.
SBDTypeSpatialTransform (const SBPosition3 & position)
Constructs a transform from a position vector, the orientation matrix is set to identity.
SBDTypeSpatialTransform (const SBMatrix33 & orientation)
Constructs a transform from an orientation matrix, the position vector is set to zero.
SBDTypeSpatialTransform (const SBMatrix33 & orientation, const SBPosition3 & position)
Constructs a transform from an orientation matrix and aposition vector.
SBDTypeSpatialTransform (const SBMatrix33 & orientation, const SBPosition3 & position, const SBVector3 & scale)
Constructs a transform from an orientation matrix, aposition vector and ascale .
void computeOpenGLMatrix (float mat) const
Stores the OpenGL matrix corresponding to this transform in mat .
void computeOpenGLMatrix (double mat) const
Stores the OpenGL matrix corresponding to this transform in mat .
SBVector3 getE1 () const
Returns the first column of the orientation matrix.
SBVector3 getE2 () const
Returns the second column of the orientation matrix.
SBVector3 getE3 () const
Returns the third column of the orientation matrix.
SBPosition3 getE4 () const
Returns the position vector.
SBVector3 getE5 () const
Returns the scale vector.
void inverse (SBDTypeSpatialTransform & inverse) const
Stores the inverse of this transform in inverse .
SBDTypeSpatialTransform inverse () const
Returns the inverse of this transform.
void inverseTransformAcceleration (const SBAcceleration6 & motionA, SBAcceleration6 & motionB) const
Transforms the spatial acceleration accelerationA into the spatial accelerationaccelerationB by applying the__inverse of this transform.
void inverseTransformVelocity (const SBVelocity6 & motionA, SBVelocity6 & motionB) const
Transforms the spatial velocity velocityA into the spatial velocityvelocityB by applying the__inverse of this transform.
virtual bool isSerializable () const
Returns true __
bool operator!= (const SBDTypeSpatialTransform & transform) const
Returns true if and only if this transform is not equal totransform .
SBPosition3 operator* (const SBPosition3 & position) const
Returns the result of the transformation of position position by this transform.
SBVelocity6 operator* (const SBVelocity6 & velocity) const
Returns the result of the transformation of spatial velocity velocity by this transform.
SBAcceleration6 operator* (const SBAcceleration6 & acceleration) const
Returns the result of the transformation of spatial acceleration acceleration by this transform.
SBForce6 operator* (const SBForce6 & force) const
Returns the result of the transformation of spatial force force by this transform.
SBDTypeSpatialTransform operator* (const SBDTypeSpatialTransform & transform) const
Returns the product of this transform with the transform transform .
SBDTypeSpatialTransform & operator= (const SBDTypeSpatialTransform & transform)
Copy assignment.
SBDTypeSpatialTransform & operator= (SBDTypeSpatialTransform && transform)
Move assignment.
bool operator== (const SBDTypeSpatialTransform & transform) const
Returns true if and only if this transform is equal totransform .
void print (std::ostream & os) const
Prints the spatial transform.
void print () const
Prints the spatial transform.
void rightMultiply3D (const SBDTypeSpatialTransform & leftMember, SBDTypeSpatialTransform & result) const
Stores in result the product ofleftMember and this transform.
void rightMultiplyInverse3D (const SBDTypeSpatialTransform & leftMember, SBDTypeSpatialTransform & result) const
Stores in result the product ofleftMember and the inverse of this transform.
virtual void serialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER) const
Serializes the spatial transform.
void setE1 (const SBVector3 & v)
Sets the first column of the orientation matrix to v .
void setE2 (const SBVector3 & v)
Sets the second column of the orientation matrix to v .
void setE3 (const SBVector3 & v)
Sets the third column of the orientation matrix to v .
void setE4 (const SBPosition3 & p)
Sets the position vector to p .
void setE5 (const SBVector3 & p)
Sets the scale vector to p .
void setIdentity ()
Sets this transform to identity.
void transformAcceleration (const SBAcceleration6 & accelerationA, SBAcceleration6 & accelerationB) const
Transforms the spatial acceleration accelerationA into the spatial accelerationaccelerationB .
void transformForce (const SBForce6 & forceA, SBForce6 & forceB) const
Transforms the spatial force forceA into the spatial forceforceB .
void transformInertia (const SBInertia66 & IA, SBInertia66 & IB) const
Transforms the inertia IA by this spatial transform and stores the result inIB .
void transformInertiaLeft (const SBInertia66 & I, SBInertia66 & result) const
Left-multiplies the inertia I by this spatial transform and stores the result inresult .
void transformInertiaRight (const SBInertia66 & I, SBInertia66 & result) const
Right-multiplies the inertia I by this spatial transform and stores the result inresult .
void transformInverseInertia (const SBInverseInertia66 & phiA, SBInverseInertia66 & phiB) const
Transforms the inverse inertia phiA into the inverse inertiaphiB .
void transformInverseInertiaLeft (const SBInverseInertia66 & phi, SBInverseInertia66 & result) const
Left-multiplies the inverse inertia phi by this spatial transform and stores the result inresult .
void transformInverseInertiaRight (const SBInverseInertia66 & phi, SBInverseInertia66 & result) const
Right-multiplies the inverse inertia phi by this spatial transform and stores the result inresult .
void transformInverseInertiaTransposeRight (const SBInverseInertia66 & phi, SBInverseInertia66 & result) const
Right-multiplies the transpose of the inverse inertia phi by this spatial transform and stores the result inresult .
void transformPoint (const SBPosition3 & p, SBPosition3 & result) const
Transforms the point p into the pointresult .
void transformVelocity (const SBVelocity6 & velocityA, SBVelocity6 & velocityB) const
Transforms the spatial velocity velocityA into the spatial velocityvelocityB .
virtual void unserialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER)
Unserializes the spatial transform.
~SBDTypeSpatialTransform ()
Destroys the spatial transform.

Public Static Functions inherited from SBDTypeSpatialTransform#

See SBDTypeSpatialTransform

Type Name
SBDTypeSpatialTransform fromAlignment (const SBVector< SBPosition3 > & fromPositionVector, const SBVector< SBPosition3 > & toPositionVector, SBQuantity::length & preRMSD, SBQuantity::length & postRMSD)
Returns the transform that transforms the positions in fromPositionVector into the positions intoPositionVector as best as possible.
const SBDTypeSpatialTransform & getIdentity ()
Returns the identity spatial transform.
const SBDTypeSpatialTransform & getZero ()
Returns the zero spatial transform.

Detailed Description#

Short name: SBOrthorhombicSymmetryTransform

Public Functions Documentation#

function SBDTypeOrthorhombicSymmetryTransform#

Constructs a new SBDTypeOrthorhombicSymmetryTransform object.

SBDTypeOrthorhombicSymmetryTransform::SBDTypeOrthorhombicSymmetryTransform () 

Initializes the orthorhombic symmetry transform instance.


function init#

Initializes the orthorhombic symmetry transform based on the orientation matrix.

virtual void SBDTypeOrthorhombicSymmetryTransform::init () 

Configures the transform's internal representation using the orientation matrix values.

Implements SBDTypeSymmetryTransform::init


function isSerializable#

Returns true __

virtual bool SBDTypeOrthorhombicSymmetryTransform::isSerializable () const

Checks whether this type is serializable.

Returns true indicating that objects of this type support serialization.

Returns:

true if the type can be serialized; otherwise false.

Implements SBDTypeSymmetryTransform::isSerializable


function serialize#

Serializes.

virtual void SBDTypeOrthorhombicSymmetryTransform::serialize (
    SBCSerializer * serializer,
    const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER
) const

Serializes the object state to a serializer.

Writes the object's data to the provided serializer, using the specified SDK version number.

Parameters:

  • serializer Pointer to the serializer used for writing the object's state.
  • sdkVersionNumber The SDK version number used for serialization compatibility.

Implements SBDTypeSymmetryTransform::serialize


function unserialize#

Unserializes.

virtual void SBDTypeOrthorhombicSymmetryTransform::unserialize (
    SBCSerializer * serializer,
    const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER
) 

Deserializes the object state from a serializer.

Reads the object's data from the provided serializer, using the specified SDK version number.

Parameters:

  • serializer Pointer to the serializer used for reading the object's state.
  • sdkVersionNumber The SDK version number used for deserialization compatibility.

Implements SBDTypeSymmetryTransform::unserialize