Matrix4d.rotateAffineXYZ

Apply rotation of <code>angleX</code> radians about the X axis, followed by a rotation of <code>angleY</code> radians about the Y axis and followed by a rotation of <code>angleZ</code> radians about the Z axis. <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 assumes that <code>this</code> matrix represents an {@link #isAffine() affine} transformation (i.e. its last row is equal to <code>(0, 0, 0, 1)</code>) and can be used to speed up matrix multiplication if the matrix only represents affine transformations, such as translation, rotation, scaling and shearing (in any combination). <p> If <code>M</code> is <code>this</code> matrix and <code>R</code> the rotation matrix, then the new matrix will be <code>M * R</code>. So when transforming a vector <code>v</code> with the new matrix by using <code>M * R * v</code>, the rotation will be applied first! <p> This method is equivalent to calling: <code>rotateX(angleX).rotateY(angleY).rotateZ(angleZ)</code>

@param angleX the angle to rotate about X @param angleY the angle to rotate about Y @param angleZ the angle to rotate about Z @return this

  1. Matrix4d rotateAffineXYZ(double angleX, double angleY, double angleZ)
    struct Matrix4d
    ref public return
    rotateAffineXYZ
    (
    double angleX
    ,
    double angleY
    ,
    double angleZ
    )
  2. Matrix4d rotateAffineXYZ(double angleX, double angleY, double angleZ, Matrix4d dest)

Meta