![]() |
MAGE
v0.171.0
Matthias Advanced Game Engine
|
#include <sqt_transform.hpp>
Public Member Functions | |
S1QTTransform3D (F32x3 translation={ 0.0f, 0.0f, 0.0f }, F32x4 rotation={ 1.0f, 0.0f, 0.0f, 0.0f }, F32 scale=1.0f) noexcept | |
S1QTTransform3D (FXMVECTOR translation, FXMVECTOR rotation, F32 scale) noexcept | |
S1QTTransform3D (const S1QTTransform3D &transform) noexcept=default | |
S1QTTransform3D (S1QTTransform3D &&transform) noexcept=default | |
~S1QTTransform3D ()=default | |
S1QTTransform3D & | operator= (const S1QTTransform3D &transform) noexcept=default |
S1QTTransform3D & | operator= (S1QTTransform3D &&transform) noexcept=default |
void | SetTranslationX (F32 x) noexcept |
void | SetTranslationY (F32 y) noexcept |
void | SetTranslationZ (F32 z) noexcept |
void | SetTranslation (F32 x, F32 y, F32 z) noexcept |
void | SetTranslation (F32x3 translation) noexcept |
void XM_CALLCONV | SetTranslation (FXMVECTOR translation) noexcept |
void | AddTranslationX (F32 x) noexcept |
void | AddTranslationY (F32 y) noexcept |
void | AddTranslationZ (F32 z) noexcept |
void | AddTranslation (F32 x, F32 y, F32 z) noexcept |
void | AddTranslation (const F32x3 &translation) noexcept |
void XM_CALLCONV | AddTranslation (FXMVECTOR translation) noexcept |
F32 | GetTranslationX () const noexcept |
F32 | GetTranslationY () const noexcept |
F32 | GetTranslationZ () const noexcept |
const F32x3 | GetTranslationView () const noexcept |
const XMVECTOR XM_CALLCONV | GetTranslation () const noexcept |
const XMMATRIX XM_CALLCONV | GetObjectToParentTranslationMatrix () const noexcept |
const XMMATRIX XM_CALLCONV | GetParentToObjectTranslationMatrix () const noexcept |
void | SetRotation (const F32x4 &rotation) noexcept |
void XM_CALLCONV | SetRotation (FXMVECTOR rotation) noexcept |
void XM_CALLCONV | SetRotationAroundDirection (FXMVECTOR direction, F32 angle) noexcept |
const F32x4 | GetRotationView () const noexcept |
const XMVECTOR XM_CALLCONV | GetRotation () const noexcept |
const XMMATRIX XM_CALLCONV | GetObjectToParentRotationMatrix () const noexcept |
const XMMATRIX XM_CALLCONV | GetParentToObjectRotationMatrix () const noexcept |
void | SetScale (F32 scale) noexcept |
void | AddScale (F32 scale) noexcept |
const F32 | GetScale () const noexcept |
const XMMATRIX XM_CALLCONV | GetObjectToParentScaleMatrix () const noexcept |
const XMMATRIX XM_CALLCONV | GetParentToObjectScaleMatrix () const noexcept |
const XMVECTOR XM_CALLCONV | GetObjectOrigin () const noexcept |
const XMVECTOR XM_CALLCONV | GetObjectAxisX () const noexcept |
const XMVECTOR XM_CALLCONV | GetObjectAxisY () const noexcept |
const XMVECTOR XM_CALLCONV | GetObjectAxisZ () const noexcept |
const XMVECTOR XM_CALLCONV | GetParentOrigin () const noexcept |
const XMVECTOR XM_CALLCONV | GetParentAxisX () const noexcept |
const XMVECTOR XM_CALLCONV | GetParentAxisY () const noexcept |
const XMVECTOR XM_CALLCONV | GetParentAxisZ () const noexcept |
const XMMATRIX XM_CALLCONV | GetObjectToParentMatrix () const noexcept |
const XMMATRIX XM_CALLCONV | GetParentToObjectMatrix () const noexcept |
const XMVECTOR XM_CALLCONV | TransformObjectToParent (FXMVECTOR vector) const noexcept |
const XMVECTOR XM_CALLCONV | TransformObjectToParentPoint (FXMVECTOR point) const noexcept |
const XMVECTOR XM_CALLCONV | TransformObjectToParentDirection (FXMVECTOR direction) const noexcept |
const XMVECTOR XM_CALLCONV | TransformParentToObject (FXMVECTOR vector) const noexcept |
const XMVECTOR XM_CALLCONV | TransformParentToObjectPoint (FXMVECTOR point) const noexcept |
const XMVECTOR XM_CALLCONV | TransformParentToObjectDirection (FXMVECTOR direction) const noexcept |
Private Attributes | |
F32x3 | m_translation |
F32 | m_scale |
F32x4 | m_rotation |
A class of 3D transforms supporting uniform scaling, rotation using quaternions, and translation.
|
explicitnoexcept |
Constructs a transform from the given translation, rotation and scale component.
[in] | translation | The translation component. |
[in] | rotation | The rotation component. |
[in] | scale | The scale component. |
|
explicitnoexcept |
Constructs a transform from the given translation, rotation and scale component.
[in] | translation | The translation component. |
[in] | rotation | The rotation component. |
[in] | scale | The scale component. |
|
defaultnoexcept |
Constructs a transform from the given transform.
[in] | transform | A reference to the transform to copy. |
|
defaultnoexcept |
Constructs a transform by moving the given transform.
[in] | transform | A reference to the transform to move. |
|
default |
Destructs this transform.
|
noexcept |
Adds the given scale component to the scale component of this transform.
[in] | scale | The scale component to add. |
Adds the given translation component to the translation component of this transform.
[in] | x | The x-value of the translation component to add. |
[in] | y | The y-value of the translation component to add. |
[in] | z | The z-value of the translation component to add. |
|
noexcept |
Adds the given translation component to the translation component of this transform.
[in] | translation | A reference to the translation component to add. |
|
noexcept |
Adds the given translation component to the translation component of this transform.
[in] | translation | The translation component to add. |
|
noexcept |
Adds the given x-value to the translation component of this transform.
[in] | x | The x-value of the translation component to add. |
|
noexcept |
Adds the given y-value to the translation component of this transform.
[in] | y | The y-value of the translation component to add. |
|
noexcept |
Adds the given z-value to the translation component of this transform.
[in] | z | The z-value of the translation component to add. |
|
noexcept |
Returns the direction of the local x-axis of this transform expressed in object space coordinates.
|
noexcept |
Returns the direction of the local y-axis of this transform expressed in object space coordinates.
|
noexcept |
Returns the direction of the local z-axis of this transform expressed in object space coordinates.
|
noexcept |
Returns the position of the local origin of this transform expressed in object space coordinates.
|
noexcept |
Returns the object-to-parent matrix of this transform.
|
noexcept |
Returns the object-to-parent rotation matrix of this transform.
|
noexcept |
Returns the object-to-parent scale matrix of this transform.
|
noexcept |
Returns the object-to-parent translation matrix of this transform.
|
noexcept |
Returns the direction of the local x-axis of this transform expressed in parent space coordinates.
|
noexcept |
Returns the direction of the local y-axis of this transform expressed in parent space coordinates.
|
noexcept |
Returns the direction of the local z-axis of this transform expressed in parent space coordinates.
|
noexcept |
Returns the position of the local origin of this transform expressed in parent space coordinates.
|
noexcept |
Returns the parent-to-object matrix of this transform.
|
noexcept |
Returns the parent-to-object rotation matrix of this transform.
|
noexcept |
Returns the parent-to-object scale matrix of this transform.
|
noexcept |
Returns the parent-to-object translation matrix of this transform.
|
noexcept |
Returns the rotation component of this transform.
|
noexcept |
Returns the rotation component of this transform.
|
noexcept |
Returns the scale component of this transform.
|
noexcept |
Returns the translation component of this transform.
|
noexcept |
Returns the translation component of this transform.
|
noexcept |
Returns the x-value of the translation component of this transform.
|
noexcept |
Returns the y-value of the translation component of this transform.
|
noexcept |
Returns the z-value of the translation component of this transform.
|
defaultnoexcept |
Copies the given transform to this transform.
[in] | transform | A reference to the transform to copy. |
|
defaultnoexcept |
Moves the given transform to this transform.
[in] | transform | A reference to the transform to move. |
|
noexcept |
Sets the rotation component of this transform to the given rotation component.
[in] | rotation | A reference to the rotation component. |
|
noexcept |
Sets the rotation component of this transform to the given rotation component.
[in] | rotation | The rotation component. |
|
noexcept |
Sets the rotation component of this transform to a rotation of the given angle around the given direction.
[in] | direction | The unit-length direction. |
[in] | angle | The angle. |
|
noexcept |
Sets the scale component of this transform to the given scale component.
[in] | scale | The scale component. |
Sets the translation component of this transform to the given translation component.
[in] | x | The x-value of the translation component. |
[in] | y | The y-value of the translation component. |
[in] | z | The z-value of the translation component. |
|
noexcept |
Sets the translation component of this transform to the given translation component.
[in] | translation | The translation component. |
|
noexcept |
Sets the translation component of this transform to the given translation component.
[in] | translation | The translation component. |
|
noexcept |
Sets the x-value of the translation component of this transform to the given value.
[in] | x | The x-value of the translation component. |
|
noexcept |
Sets the y-value of the translation component of this transform to the given value.
[in] | y | The y-value of the translation component. |
|
noexcept |
Sets the z-value of the translation component of this transform to the given value.
[in] | z | The z-value of the translation component. |
|
noexcept |
Transforms the given vector expressed in object space coordinates to parent space coordinates.
[in] | vector | The vector expressed in object space coordinates. |
|
noexcept |
Transforms the given direction expressed in object space coordinates to parent space coordinates.
[in] | direction | The direction expressed in object space coordinates. |
|
noexcept |
Transforms the given point expressed in object space coordinates to parent space coordinates.
[in] | point | The point expressed in object space coordinates. |
|
noexcept |
Transforms the given vector expressed in parent space coordinates to object space coordinates.
[in] | vector | The vector expressed in parent space coordinates. |
|
noexcept |
Transforms the given direction expressed in parent space coordinates to object space coordinates.
[in] | direction | The direction expressed in parent space coordinates. |
|
noexcept |
Transforms the given point expressed in parent space coordinates to object space coordinates.
[in] | point | The point expressed in parent space coordinates. |
|
private |
The rotation component (unit quaternion) of this transform.
|
private |
The scale component of this transform.
|
private |
The translation component of this transform.