public final class R2TransformOT extends Object implements R2TransformOTType
A transform represented by an orientation, followed by a translation.
The transform does not allow independent scaling on each axis and will therefore produce matrices that are guaranteed to be orthogonal.
| Modifier and Type | Method and Description |
|---|---|
static R2TransformOT |
newTransform()
Construct a transform using the default values: The identity quaternion
(0, 0, 0, 1) for orientation and the translation (0, 0,
0). |
static R2TransformOT |
newTransformWithNotifier(Runnable in_changed)
Construct a transform using the default values: The identity quaternion
(0, 0, 0, 1) for orientation and the translation (0, 0,
0). |
static R2TransformOT |
newTransformWithValues(com.io7m.jtensors.Quaternion4FType in_orientation,
com.io7m.jtensors.parameterized.PVector3FType<R2SpaceWorldType> in_translation)
Construct a transform using the given initial values.
|
com.io7m.jtensors.Quaternion4FType |
orientation() |
com.io7m.jtensors.QuaternionReadable4FType |
orientationReadable() |
R2WatchableType<R2TransformReadableType> |
transformGetWatchable() |
void |
transformMakeMatrix4x4F(R2TransformContextType context,
com.io7m.jtensors.parameterized.PMatrixWritable4x4FType<R2SpaceObjectType,R2SpaceWorldType> m)
Produce a 4x4 matrix for the current transformation, writing the resulting
matrix to
m. |
<T extends R2SpaceType,U extends R2SpaceType> |
transformMakeViewMatrix4x4F(R2TransformContextType context,
com.io7m.jtensors.parameterized.PMatrixWritable4x4FType<T,U> m)
Produce a view matrix for the transform.
|
R2WatchableType<R2TransformOrthogonalReadableType> |
transformOrthogonalGetWatchable() |
com.io7m.jtensors.parameterized.PVector3FType<R2SpaceWorldType> |
translation() |
com.io7m.jtensors.parameterized.PVectorReadable3FType<R2SpaceWorldType> |
translationReadable() |
public static R2TransformOT newTransformWithValues(com.io7m.jtensors.Quaternion4FType in_orientation, com.io7m.jtensors.parameterized.PVector3FType<R2SpaceWorldType> in_translation)
in_orientation - The orientationin_translation - The translationpublic static R2TransformOT newTransform()
(0, 0, 0, 1) for orientation and the translation (0, 0,
0).public static R2TransformOT newTransformWithNotifier(Runnable in_changed)
Construct a transform using the default values: The identity quaternion
(0, 0, 0, 1) for orientation and the translation (0, 0,
0).
in_changed - The procedure that will be executed every time the value
of this transform is changedpublic com.io7m.jtensors.Quaternion4FType orientation()
orientation in interface R2TransformOTTypepublic com.io7m.jtensors.parameterized.PVector3FType<R2SpaceWorldType> translation()
translation in interface R2TransformOTTypepublic void transformMakeMatrix4x4F(R2TransformContextType context, com.io7m.jtensors.parameterized.PMatrixWritable4x4FType<R2SpaceObjectType,R2SpaceWorldType> m)
R2TransformReadableTypem.transformMakeMatrix4x4F in interface R2TransformReadableTypecontext - The current transform contextm - The matrix to which values will be writtenpublic <T extends R2SpaceType,U extends R2SpaceType> void transformMakeViewMatrix4x4F(R2TransformContextType context, com.io7m.jtensors.parameterized.PMatrixWritable4x4FType<T,U> m)
R2TransformViewReadableTypetransformMakeViewMatrix4x4F in interface R2TransformViewReadableTypeT - The source coordinate systemU - The target coordinate systemcontext - A transform contextm - The output matrixpublic com.io7m.jtensors.QuaternionReadable4FType orientationReadable()
orientationReadable in interface R2TransformOTReadableTypepublic com.io7m.jtensors.parameterized.PVectorReadable3FType<R2SpaceWorldType> translationReadable()
translationReadable in interface R2TransformOTReadableTypepublic R2WatchableType<R2TransformReadableType> transformGetWatchable()
transformGetWatchable in interface R2TransformReadableTypepublic R2WatchableType<R2TransformOrthogonalReadableType> transformOrthogonalGetWatchable()
transformOrthogonalGetWatchable in interface R2TransformOrthogonalReadableTypeCopyright © 2017 <code@io7m.com> http://io7m.com