public class TransformBuilder
extends java.lang.Object
TransformBuilder is used to build transform matrix by a chain of transformations.| Constructor and Description |
|---|
TransformBuilder()
Construct a
TransformBuilder with initial identity transform matrix and specified compose order |
TransformBuilder(ComposeOrder order)
Construct a
TransformBuilder with initial identity transform matrix and specified compose order |
TransformBuilder(Matrix4 initial,
ComposeOrder order)
Construct a
TransformBuilder with initial transform matrix and specified compose order |
| Modifier and Type | Method and Description |
|---|---|
TransformBuilder |
append(Matrix4 m)
Append the new transform matrix to the transform chain.
|
void |
compose(Matrix4 m)
Append or prepend the argument to internal matrix.
|
ComposeOrder |
getComposeOrder()
Gets the chain compose order.
|
Matrix4 |
getMatrix()
Gets the current matrix value
|
TransformBuilder |
prepend(Matrix4 m)
Prepend the new transform matrix to the transform chain.
|
TransformBuilder |
rearrange(Axis newX,
Axis newY,
Axis newZ)
Rearrange the layout of the axis.
|
void |
reset()
Reset the transform to identity matrix
|
TransformBuilder |
rotate(Quaternion q)
Chain a rotation by a quaternion
|
TransformBuilder |
rotateDegree(double angle,
Vector3 axis)
Chain a rotation transform in degree
|
TransformBuilder |
rotateEulerDegree(double degX,
double degY,
double degZ)
Chain a rotation by Euler angles in degree
|
TransformBuilder |
rotateEulerRadian(double x,
double y,
double z)
Chain a rotation by Euler angles in radian
|
TransformBuilder |
rotateEulerRadian(Vector3 r)
Chain a rotation by Euler angles in radian
|
TransformBuilder |
rotateRadian(double angle,
Vector3 axis)
Chain a rotation transform in radian
|
TransformBuilder |
scale(double s)
Chain a scaling transform matrix with a component scaled by s
|
TransformBuilder |
scale(double x,
double y,
double z)
Chain a scaling transform matrix
|
TransformBuilder |
scale(Vector3 s)
Chain a scale transform
|
void |
setComposeOrder(ComposeOrder value)
Sets the chain compose order.
|
void |
setMatrix(Matrix4 value)
Sets the current matrix value
|
TransformBuilder |
translate(double tx,
double ty,
double tz)
Chain a translation transform
|
TransformBuilder |
translate(Vector3 v)
Chain a translation transform
|
public TransformBuilder(Matrix4 initial, ComposeOrder order)
TransformBuilder with initial transform matrix and specified compose orderinitial - order - public TransformBuilder(ComposeOrder order)
TransformBuilder with initial identity transform matrix and specified compose orderorder - public TransformBuilder()
TransformBuilder with initial identity transform matrix and specified compose orderpublic Matrix4 getMatrix()
public void setMatrix(Matrix4 value)
value - New valuepublic ComposeOrder getComposeOrder()
public void setComposeOrder(ComposeOrder value)
value - New valuepublic void compose(Matrix4 m)
m - public TransformBuilder append(Matrix4 m)
m - public TransformBuilder prepend(Matrix4 m)
m - public TransformBuilder rearrange(Axis newX, Axis newY, Axis newZ)
newX - The new x component sourcenewY - The new y component sourcenewZ - The new z component sourcepublic TransformBuilder scale(double s)
s - public TransformBuilder scale(double x, double y, double z)
x - y - z - public TransformBuilder scale(Vector3 s)
s - public TransformBuilder rotateDegree(double angle, Vector3 axis)
angle - The angle to rotate in degreeaxis - The axis to rotatepublic TransformBuilder rotateRadian(double angle, Vector3 axis)
angle - The angle to rotate in radianaxis - The axis to rotatepublic TransformBuilder rotate(Quaternion q)
q - public TransformBuilder rotateEulerDegree(double degX, double degY, double degZ)
degX - degY - degZ - public TransformBuilder rotateEulerRadian(double x, double y, double z)
x - y - z - public TransformBuilder rotateEulerRadian(Vector3 r)
r - public TransformBuilder translate(double tx, double ty, double tz)
tx - ty - tz - public TransformBuilder translate(Vector3 v)
v - public void reset()