Matrix4x3d.rotateTranslation

Apply the rotation - and possibly scaling - transformation of the given {@link Quaterniond} to this matrix, which is assumed to only contain a translation, and store the result in <code>dest</code>. <p> This method assumes <code>this</code> to only contain a 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> If <code>M</code> is <code>this</code> matrix and <code>Q</code> the rotation matrix obtained from the given quaternion, then the new matrix will be <code>M * Q</code>. So when transforming a vector <code>v</code> with the new matrix by using <code>M * Q * v</code>, the quaternion rotation will be applied first! <p> In order to set the matrix to a rotation transformation without post-multiplying, use {@link #rotation(Quaterniond)}. <p> Reference: <a href="http://en.wikipedia.org/wiki/Rotation_matrix#Quaternion">http://en.wikipedia.org</a>

@see #rotation(Quaterniond)

@param quat the {@link Quaterniond} @param dest will hold the result @return dest

  1. Matrix4x3d rotateTranslation(double ang, double x, double y, double z, Matrix4x3d dest)
  2. Matrix4x3d rotateTranslation(Quaterniond quat, Matrix4x3d dest)
    struct Matrix4x3d
    rotateTranslation

Meta