Matrix4d.translationRotateScale
- Matrix4d translationRotateScale(double tx, double ty, double tz, double qx, double qy, double qz, double qw, double sx, double sy, double sz)
- Matrix4d translationRotateScale(Vector3d translation, Quaterniond quat, Vector3d scale)
- Matrix4d translationRotateScale(double tx, double ty, double tz, double qx, double qy, double qz, double qw, double scale)
- Matrix4d translationRotateScale(Vector3d translation, Quaterniond quat, double scale)
struct Matrix4d
ref return
translationRotateScale
matrix_4d Matrix4d
constructorsfunctionsstatic variablesvariables
Set <code>this</code> matrix to <code>T * R * S</code>, where <code>T</code> is the given <code>translation</code>, <code>R</code> is a rotation transformation specified by the given quaternion, and <code>S</code> is a scaling transformation which scales all three axes by <code>scale</code>. <p> When transforming a vector by the resulting matrix the scaling transformation will be applied first, then the rotation and at last the translation. <p> When used with a right-handed coordinate system, the produced rotation will rotate a vector counter-clockwise around the rotation axis, when viewing along the negative axis direction towards the origin. When used with a left-handed coordinate system, the rotation is clockwise. <p> This method is equivalent to calling: <code>translation(translation).rotate(quat).scale(scale)</code>
@see #translation(ref Vector3d) @see #rotate(ref Quaterniond) @see #scale(double)
@param translation the translation @param quat the quaternion representing a rotation @param scale the scaling factors @return this