Class TransformBuilder
Contents
[
Hide
]TransformBuilder class
The TransformBuilder is used to build transform matrix by a chain of transformations.
public class TransformBuilder
Constructors
| Name | Description |
|---|---|
| TransformBuilder(ComposeOrder) | Construct a TransformBuilder with initial identity transform matrix and specified compose order |
| TransformBuilder(Matrix4, ComposeOrder) | Construct a TransformBuilder with initial transform matrix and specified compose order |
Properties
| Name | Description |
|---|---|
| ComposeOrder { get; set; } | Gets or sets the chain compose order. |
| Matrix { get; set; } | Gets or sets the current matrix value |
Methods
| Name | Description |
|---|---|
| Append(Matrix4) | Append the new transform matrix to the transform chain. |
| Compose(Matrix4) | Append or prepend the argument to internal matrix. |
| Prepend(Matrix4) | Prepend the new transform matrix to the transform chain. |
| Rearrange(Axis, Axis, Axis) | Rearrange the layout of the axis. |
| Reset() | Reset the transform to identity matrix |
| Rotate(Quaternion) | Chain a rotation by a quaternion |
| RotateDegree(double, Vector3) | Chain a rotation transform in degree |
| RotateDegree(Vector3, RotationOrder) | Append rotation with specified order |
| RotateEulerDegree(double, double, double) | Chain a rotation by Euler angles in degree |
| RotateEulerRadian(Vector3) | Chain a rotation by Euler angles in radian |
| RotateEulerRadian(double, double, double) | Chain a rotation by Euler angles in radian |
| RotateRadian(double, Vector3) | Chain a rotation transform in radian |
| RotateRadian(Vector3, RotationOrder) | Append rotation with specified order |
| Scale(double) | Chain a scaling transform matrix with a component scaled by s |
| Scale(Vector3) | Chain a scale transform |
| Scale(double, double, double) | Chain a scaling transform matrix |
| Translate(Vector3) | Chain a translation transform |
| Translate(double, double, double) | Chain a translation transform |
Examples
The following code shows how to create a matrix by a set of operation
TransformBuilder tb = new TransformBuilder();
tb.Translate(10, 20, 0);
tb.Scale(10, 10, 10);
tb.RotateEulerDegree(90, 0, 0);
Console.WriteLine($"Transform Matrix: {tb.Matrix}");
See Also
- namespace Aspose.ThreeD.Utilities
- assembly Aspose.3D