SrtTransform Structure |
Namespace: DigitalRune.Animation.Character
The SrtTransform type exposes the following members.
Name | Description | |
---|---|---|
SrtTransform(Matrix33F) |
Initializes a new instance of the SrtTransform struct with the given rotation.
| |
SrtTransform(QuaternionF) |
Initializes a new instance of the SrtTransform struct with the given rotation.
| |
SrtTransform(Matrix33F, Vector3F) |
Initializes a new instance of the SrtTransform struct with the given rotation
and translation.
| |
SrtTransform(QuaternionF, Vector3F) |
Initializes a new instance of the SrtTransform struct with the given rotation
and translation.
| |
SrtTransform(Vector3F, Matrix33F, Vector3F) |
Initializes a new instance of the SrtTransform struct with the given scale,
rotation and translation.
| |
SrtTransform(Vector3F, QuaternionF, Vector3F) |
Initializes a new instance of the SrtTransform struct with the given scale,
rotation and translation.
|
Name | Description | |
---|---|---|
AreNumericallyEqual |
Determines whether two SRT transforms are equal (within a numerical tolerance).
| |
Equals(Object) |
Indicates whether this instance and a specified object are equal.
(Overrides ValueTypeEquals(Object).) | |
Equals(SrtTransform) |
Indicates whether the current object is equal to another object of the same type.
| |
FromMatrix(Matrix) |
Creates an SrtTransform from a matrix that contains a scale, a rotation and
a translation. (Only available in the XNA-compatible build.)
| |
FromMatrix(Matrix44F) |
Creates an SrtTransform from a matrix that contains a scale, a rotation, and a
translation.
| |
FromPose |
Creates an SrtTransform from a Pose.
| |
GetHashCode |
Returns the hash code for this instance.
(Overrides ValueTypeGetHashCode.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
Interpolate(SrtTransform, SrtTransform, Single) |
Interpolates two SRT transforms.
| |
Interpolate(SrtTransform, SrtTransform, Single, SrtTransform) |
Interpolates two SRT transforms.
| |
Invert |
Inverts the SRT transform.
| |
IsValid |
Determines whether the specified matrix is a valid SRT matrix.
| |
Multiply(SrtTransform, SrtTransform) |
Multiplies two SRT transforms.
| |
Multiply(SrtTransform, Vector4F) |
Multiplies an SrtTransform with a vector.
| |
Multiply(SrtTransform, SrtTransform, SrtTransform) |
Multiplies two SRT transforms.
| |
Multiply(SrtTransform, SrtTransform, Matrix44F) |
Multiplies two SRT transforms.
| |
Multiply(SrtTransform, SrtTransform, Matrix) |
Multiplies two SRT transforms. (Only available in the XNA-compatible build.)
| |
ToLocalDirection |
Converts a direction vector from parent space to local space.
| |
ToLocalPosition |
Converts a position vector from parent space to local space.
| |
ToMatrix44F |
Converts this SRT transform to a 4x4 transformation matrix.
| |
ToParentDirection |
Converts a direction vector from local space to parent space.
| |
ToParentPosition |
Converts a position vector from local space to parent space.
| |
ToPose | ||
ToString |
Returns the string representation of this SRT transform.
(Overrides ValueTypeToString.) | |
ToString(IFormatProvider) |
Returns the string representation of this SRT transform using the specified culture-specific format
information.
| |
ToXna |
Converts an SRT transform to a 4x4 transformation matrix (XNA Framework).
(Only available in the XNA-compatible build.)
|
Name | Description | |
---|---|---|
Equality |
Compares two SrtTransforms to determine whether they are the same.
| |
(SrtTransform to Pose) | ||
(Pose to SrtTransform) |
Converts a Pose to an SRT transform.
| |
(SrtTransform to Matrix44F) |
Converts an SRT transform to a 4x4 transformation matrix.
| |
(SrtTransform to Matrix) |
Converts a SRT transform to a 4x4 transformation matrix (XNA Framework).
(Only available in the XNA-compatible build.)
| |
Inequality |
Compares two SrtTransforms to determine whether they are the different.
| |
Multiply(SrtTransform, SrtTransform) |
Multiplies two SRT transforms.
| |
Multiply(SrtTransform, Vector4F) |
Multiplies an SrtTransform with a vector.
|
Name | Description | |
---|---|---|
Identity |
An SRT transform with no scale, rotation and translation.
| |
Rotation |
The rotation.
| |
Scale |
The scale.
| |
Translation |
The translation.
|
Name | Description | |
---|---|---|
HasRotation |
Gets a value indicating whether the rotation is not the default rotation.
(Using a numerical tolerant comparison, see Numeric.)
| |
HasScale |
Gets a value indicating whether the scale is not (1, 1, 1).
(Using a numerical tolerant comparison, see Numeric.)
| |
HasTranslation |
Gets a value indicating whether the translation is not 0.
(Using a numerical tolerant comparison, see Numeric.)
| |
Inverse |
Gets the inverse of this SRT transform.
|
This type represents an affine transformation consisting of a scaling followed by a rotation followed by a translation. Shearing (skewing) is not supported, thus this transformation cannot be used to describe general affine transformations. The SrtTransform is very similar to the Pose type, but it adds a scale factor.
Non-uniform scalings require special attention: When multiplying two SRT matrices, the result can contain a shearing if a non-uniform scaling and a rotation is used. SRT transformations do not support shearing. It is recommended to use this type either only with uniform scalings, or with non-uniform scalings without rotations. It is allowed to set non-uniform scaling and a rotation, but multiplying this transform with other transforms may not give the expected results.
Important: Newly created SrtTransforms should be initialized with Identity. The default constructor of the struct initializes the scale vector and the rotation quaternion elements with 0 and therefore does not create a valid SRT transformation.
// Do not use: SrtTransform srt = new SrtTransform(); // Not a valid SrtTransform! // Initialize with identity instead: SrtTransform srt = SrtTransform.Identity;