All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class java.vecmath.Matrix4d

java.lang.Object
   |
   +----java.vecmath.Matrix4d

public class Matrix4d
extends Object
A double precision floating point 4 by 4 matrix.


Variable Index

 o m00
The matrix element that maps x into x'.
 o m01
The matrix element that maps y into x'.
 o m02
The matrix element that maps z into x'.
 o m03
The matrix element that is the translational component of x'.
 o m10
The matrix element that maps x into y'.
 o m11
The matrix element that maps y into y'.
 o m12
The matrix element that maps z into y'.
 o m13
The matrix element that is the translational component of y'.
 o m20
The matrix element that maps x into z'.
 o m21
The matrix element that maps y into z'.
 o m22
The matrix element that maps z into z'.
 o m23
The matrix element that is the translational component of z'.
 o m30
Unused matrix element, except for perspective mapping of x to w'.
 o m31
Unused matrix element, except for perspective mapping of y to w'.
 o m32
Unused matrix element, except for perspective mapping of z to w'.
 o m33
Unused matrix element, except for perspective mapping must be unity.

Constructor Index

 o Matrix4d()
Constructs and initializes a Matrix4d to all zeros.
 o Matrix4d(double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double)
Constructs and initializes a Matrix4d from the specified 16 values.
 o Matrix4d(double[])
Constructs and initializes a Matrix4d from the specified 16 element array.
 o Matrix4d(Matrix3d, Vector3d, double)
Constructs and initializes a Matrix4f from the rotation matrix, translation, and scale values; the scale is applied only to the rotational components of the matrix (upper 3x3) and not to the translational components of the matrix.
 o Matrix4d(Matrix3f, Vector3d, double)
Constructs and initializes a Matrix4d from the rotation matrix, translation, and scale values; the scale is applied only to the rotational components of the matrix (upper 3x3) and not to the translational components of the matrix.
 o Matrix4d(Matrix4d)
Constructs a new matrix with the same values as the Matrix4d parameter.
 o Matrix4d(Matrix4f)
Constructs a new matrix with the same values as the Matrix4f parameter.
 o Matrix4d(Quat4d, Vector3d, double)
Constructs and initializes a Matrix4d from the quaternion, translation, and scale values; the scale is applied only to the rotational components of the matrix (upper 3x3) and not to the translational components.
 o Matrix4d(Quat4f, Vector3d, double)
Constructs and initializes a Matrix4d from the quaternion, translation, and scale values; the scale is applied only to the rotational components of the matrix (upper 3x3) and not to the translational components.

Method Index

 o add(Matrix4d)
Sets the value of this matrix to sum of itself and matrix m1.
 o add(Matrix4d, Matrix4d)
Sets the value of this matrix to the matrix sum of matrices m1 and m2.
 o determinant()
Computes the determinant of this matrix.
 o epsilonEquals(Matrix4d, float)
Returns true if the L-infinite distance between this matrix and matrix m1 is less than or equal to the epsilon parameter, otherwise returns false.
 o equals(Matrix4d)
Returns true if all of the data members of Matrix4d m1 are equal to the corresponding data members in this Matrix4d.
 o get(Matrix3d)
Performs an SVD normalization of this matrix in order to acquire the normalized rotational component; the values are placed into the Matrix3d parameter.
 o get(Matrix3d, Vector3d)
Performs an SVD normalization of this matrix to calculate the rotation as a 3x3 matrix, the translation, and the scale.
 o get(Matrix3f)
Performs an SVD normalization of this matrix in order to acquire the normalized rotational component; the values are placed into the Matrix3f parameter.
 o get(Matrix3f, Vector3d)
Performs an SVD normalization of this matrix to calculate the rotation as a 3x3 matrix, the translation, and the scale.
 o get(Quat4d)
Performs an SVD normalization of this matrix in order to acquire the normalized rotational component; the values are placed into the Quat4f parameter.
 o get(Quat4f)
Performs an SVD normalization of this matrix in order to acquire the normalized rotational component; the values are placed into the Quat4f parameter.
 o get(Vector3d)
Retrieves the translational components of this matrix.
 o getElement(int, int)
Retrieves the value at the specified row and column of this matrix.
 o getRotationScale(Matrix3d)
Gets the upper 3x3 values of this matrix and places them into the matrix m1.
 o getRotationScale(Matrix3f)
Gets the upper 3x3 values of this matrix and places them into the matrix m1.
 o hashCode()
Returns a hash number based on the data values in this object.
 o invert()
Inverts this matrix in place.
 o invert(Matrix4d)
Sets the value of this matrix to the matrix inverse of the passed (user declared) matrix m1.
 o mul(Matrix4d)
Sets the value of this matrix to the result of multiplying itself with matrix m1.
 o mul(Matrix4d, Matrix4d)
Sets the value of this matrix to the result of multiplying the two argument matrices together.
 o mulTransposeBoth(Matrix4d, Matrix4d)
Multiplies the transpose of matrix m1 times the transpose of matrix m2, and places the result into this.
 o mulTransposeLeft(Matrix4d, Matrix4d)
Multiplies the transpose of matrix m1 times matrix m2, and places the result into this.
 o mulTransposeRight(Matrix4d, Matrix4d)
Multiplies matrix m1 times the transpose of matrix m2, and places the result into this.
 o negate()
Negates the value of this matrix: this = -this.
 o negate(Matrix4d)
Sets the value of this matrix equal to the negation of of the Matrix4d parameter.
 o rotX(double)
Sets the value of this matrix to a rotation matrix about the x axis by the passed angle.
 o rotY(double)
Sets the value of this matrix to a rotation matrix about the y axis by the passed angle.
 o rotZ(double)
Sets the value of this matrix to a rotation matrix about the z axis by the passed angle.
 o set(AxisAngle4d)
Sets the value of this matrix to the matrix conversion of the double precision axis and angle argument.
 o set(AxisAngle4f)
Sets the value of this matrix to the matrix conversion of the single precision axis and angle argument.
 o set(double)
Sets the value of this matrix to a scale matrix with the passed scale amount.
 o set(double, Vector3d)
Sets the value of this transform to a scale and translation matrix; the scale is not applied to the translation and all of the matrix values are modified.
 o set(double[])
Sets the values in this Matrix4d equal to the row-major array parameter (ie, the first four elements of the array will be copied into the first row of this matrix, etc.).
 o set(Matrix3d)
Sets the rotational component (upper 3x3) of this matrix to the matrix values in the double precision Matrix3d argument; the other elements of this matrix are initialized as if this were an identity matrix (ie, affine matrix with no translational component).
 o set(Matrix3d, Vector3d, double)
Sets the value of this matrix from the rotation expressed by the rotation matrix m1, the translation t1, and the scale s.
 o set(Matrix3f)
Sets the rotational component (upper 3x3) of this matrix to the matrix values in the single precision Matrix3f argument; the other elements of this matrix are initialized as if this were an identity matrix (ie, affine matrix with no translational component).
 o set(Matrix3f, Vector3f, float)
Sets the value of this matrix from the rotation expressed by the rotation matrix m1, the translation t1, and the scale s.
 o set(Matrix4d)
Sets the value of this matrix to a copy of the passed matrix m1.
 o set(Matrix4f)
Sets the value of this matrix to the double value of the passed matrix4f m1.
 o set(Quat4d)
Sets the value of this matrix to the matrix conversion of the (double precision) quaternion argument.
 o set(Quat4d, Vector3d, double)
Sets the value of this matrix from the rotation expressed by the quaternion q1, the translation t1, and the scale s.
 o set(Quat4f)
Sets the value of this matrix to the matrix conversion of the single precision quaternion argument.
 o set(Quat4f, Vector3d, double)
Sets the value of this matrix from the rotation expressed by the quaternion q1, the translation t1, and the scale s.
 o set(Quat4f, Vector3f, float)
Sets the value of this matrix from the rotation expressed by the quaternion q1, the translation t1, and the scale s.
 o set(Vector3d)
Sets the value of this matrix to a translate matrix by the passed translation value.
 o set(Vector3d, double)
Sets the value of this transform to a scale and translation matrix; the translation is scaled by the scale factor and all of the matrix values are modified.
 o setColumn(int, double, double, double, double)
Sets the specified column of this matrix4d to the four values provided.
 o setColumn(int, double[])
Sets the specified column of this matrix4d to the four values provided.
 o setColumn(int, Vector4d)
Sets the specified column of this matrix4d to the vector provided.
 o setElement(int, int, double)
Sets the specified element of this matrix4f to the value provided.
 o setIdentity()
Sets this Matrix4d to identity.
 o setRotation(AxisAngle4d)
Sets the rotational component (upper 3x3) of this matrix to the matrix equivalent values of the axis-angle argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the matrix equivalent of the axis-angle, and then the scale is reapplied to the rotational components.
 o setRotation(Matrix3d)
Sets the rotational component (upper 3x3) of this matrix to the matrix values in the double precision Matrix3d argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the passed rotation components, and then the scale is reapplied to the rotational components.
 o setRotation(Matrix3f)
Sets the rotational component (upper 3x3) of this matrix to the matrix values in the single precision Matrix3d argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the passed rotation components, and then the scale is reapplied to the rotational components.
 o setRotation(Quat4d)
Sets the rotational component (upper 3x3) of this matrix to the matrix equivalent values of the quaternion argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the matrix equivalent of the quaternion, and then the scale is reapplied to the rotational components.
 o setRotation(Quat4f)
Sets the rotational component (upper 3x3) of this matrix to the matrix equivalent values of the quaternion argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the matrix equivalent of the quaternion, and then the scale is reapplied to the rotational components.
 o setRotationScale(Matrix3d)
Replaces the upper 3x3 matrix values of this matrix with the values in the matrix m1.
 o setRotationScale(Matrix3f)
Replaces the upper 3x3 matrix values of this matrix with the values in the matrix m1.
 o setRow(int, double, double, double, double)
Sets the specified row of this matrix4d to the four values provided.
 o setRow(int, double[])
Sets the specified row of this matrix4d to the four values provided.
 o setRow(int, Vector4d)
Sets the specified row of this matrix4d to the Vector provided.
 o setTranslation(Vector3d)
Modifies the translational components of this matrix to the values of the Vector3d argument; the other values of this matrix are not modified.
 o setZero()
Sets this matrix to all zeros.
 o sub(Matrix4d)
Sets the value of this matrix to the matrix difference of itself and matrix m1 (this = this - m1).
 o sub(Matrix4d, Matrix4d)
Sets the value of this matrix to the matrix difference of matrices m1 and m2.
 o toString()
Returns a string that contains the values of this Matrix4d.
 o transform(Point3d)
Transforms the point parameter with this Matrix4d and places the result back into point.
 o transform(Point3d, Point3d)
Transforms the point parameter with this Matrix4d and places the result into pointOut.
 o transform(Point3f)
Transforms the point parameter with this Matrix4d and places the result back into point.
 o transform(Point3f, Point3f)
Transforms the point parameter with this Matrix4d and places the result into pointOut.
 o transform(Tuple4d)
Transform the vector vec using this Matrix4d and place the result back into vec.
 o transform(Tuple4d, Tuple4d)
Transform the vector vec using this Matrix4d and place the result into vecOut.
 o transform(Tuple4f)
Transform the vector vec using this Transform and place the result back into vec.
 o transform(Tuple4f, Tuple4f)
Transform the vector vec using this Matrix4d and place the result into vecOut.
 o transform(Vector3d)
Transforms the normal parameter by this transform and places the value back into normal.
 o transform(Vector3d, Vector3d)
Transforms the normal parameter by this Matrix4d and places the value into normalOut.
 o transform(Vector3f)
Transforms the normal parameter by this transform and places the value back into normal.
 o transform(Vector3f, Vector3f)
Transforms the normal parameter by this Matrix4d and places the value into normalOut.
 o transpose()
Sets the value of this matrix to its transpose.
 o transpose(Matrix4d)
Sets the value of this matrix to the transpose of the argument matrix

Variables

 o m00
 public double m00
The matrix element that maps x into x'.

 o m01
 public double m01
The matrix element that maps y into x'.

 o m02
 public double m02
The matrix element that maps z into x'.

 o m03
 public double m03
The matrix element that is the translational component of x'.

 o m10
 public double m10
The matrix element that maps x into y'.

 o m11
 public double m11
The matrix element that maps y into y'.

 o m12
 public double m12
The matrix element that maps z into y'.

 o m13
 public double m13
The matrix element that is the translational component of y'.

 o m20
 public double m20
The matrix element that maps x into z'.

 o m21
 public double m21
The matrix element that maps y into z'.

 o m22
 public double m22
The matrix element that maps z into z'.

 o m23
 public double m23
The matrix element that is the translational component of z'.

 o m30
 public double m30
Unused matrix element, except for perspective mapping of x to w'.

 o m31
 public double m31
Unused matrix element, except for perspective mapping of y to w'.

 o m32
 public double m32
Unused matrix element, except for perspective mapping of z to w'.

 o m33
 public double m33
Unused matrix element, except for perspective mapping must be unity.

Constructors

 o Matrix4d
 public Matrix4d(double m00,
                 double m01,
                 double m02,
                 double m03,
                 double m10,
                 double m11,
                 double m12,
                 double m13,
                 double m20,
                 double m21,
                 double m22,
                 double m23,
                 double m30,
                 double m31,
                 double m32,
                 double m33)
Constructs and initializes a Matrix4d from the specified 16 values.

Parameters:
m00 - the [0][0] element
m01 - the [0][1] element
m02 - the [0][2] element
m03 - the [0][3] element
m10 - the [1][0] element
m11 - the [1][1] element
m12 - the [1][2] element
m13 - the [1][3] element
m20 - the [2][0] element
m21 - the [2][1] element
m22 - the [2][2] element
m23 - the [2][3] element
m30 - the [3][0] element
m31 - the [3][1] element
m32 - the [3][2] element
m33 - the [3][3] element
 o Matrix4d
 public Matrix4d(double v[])
Constructs and initializes a Matrix4d from the specified 16 element array. this.m00 =v[0], this.m01=v[1], etc.

Parameters:
v - the array of length 16 containing in order
 o Matrix4d
 public Matrix4d(Quat4d q1,
                 Vector3d t1,
                 double s)
Constructs and initializes a Matrix4d from the quaternion, translation, and scale values; the scale is applied only to the rotational components of the matrix (upper 3x3) and not to the translational components.

Parameters:
q1 - The quaternion value representing the rotational component
t1 - The translational component of the matrix
s - The scale value applied to the rotational components
 o Matrix4d
 public Matrix4d(Quat4f q1,
                 Vector3d t1,
                 double s)
Constructs and initializes a Matrix4d from the quaternion, translation, and scale values; the scale is applied only to the rotational components of the matrix (upper 3x3) and not to the translational components.

Parameters:
q1 - The quaternion value representing the rotational component
t1 - The translational component of the matrix
s - The scale value applied to the rotational components
 o Matrix4d
 public Matrix4d(Matrix4d m1)
Constructs a new matrix with the same values as the Matrix4d parameter.

Parameters:
m1 - The source matrix.
 o Matrix4d
 public Matrix4d(Matrix4f m1)
Constructs a new matrix with the same values as the Matrix4f parameter.

Parameters:
m1 - The source matrix.
 o Matrix4d
 public Matrix4d(Matrix3f m1,
                 Vector3d t1,
                 double s)
Constructs and initializes a Matrix4d from the rotation matrix, translation, and scale values; the scale is applied only to the rotational components of the matrix (upper 3x3) and not to the translational components of the matrix.

Parameters:
m1 - The rotation matrix representing the rotational components
t1 - The translational components of the matrix
s - The scale value applied to the rotational components
 o Matrix4d
 public Matrix4d(Matrix3d m1,
                 Vector3d t1,
                 double s)
Constructs and initializes a Matrix4f from the rotation matrix, translation, and scale values; the scale is applied only to the rotational components of the matrix (upper 3x3) and not to the translational components of the matrix.

Parameters:
m1 - The rotation matrix representing the rotational components
t1 - The translational components of the matrix
s - The scale value applied to the rotational components
 o Matrix4d
 public Matrix4d()
Constructs and initializes a Matrix4d to all zeros.

Methods

 o toString
 public String toString()
Returns a string that contains the values of this Matrix4d.

Returns:
the String representation
Overrides:
toString in class Object
 o setIdentity
 public final void setIdentity()
Sets this Matrix4d to identity.

 o setElement
 public final void setElement(int row,
                              int column,
                              double value)
Sets the specified element of this matrix4f to the value provided.

Parameters:
row - the row number to be modified (zero indexed)
column - the column number to be modified (zero indexed)
value - the new value
 o getElement
 public final double getElement(int row,
                                int column)
Retrieves the value at the specified row and column of this matrix.

Parameters:
row - the row number to be retrieved (zero indexed)
column - the column number to be retrieved (zero indexed)
Returns:
the value at the indexed element
 o get
 public final void get(Matrix3d m1)
Performs an SVD normalization of this matrix in order to acquire the normalized rotational component; the values are placed into the Matrix3d parameter.

Parameters:
m1 - matrix into which the rotational component is placed
 o get
 public final void get(Matrix3f m1)
Performs an SVD normalization of this matrix in order to acquire the normalized rotational component; the values are placed into the Matrix3f parameter.

Parameters:
m1 - matrix into which the rotational component is placed
 o get
 public final double get(Matrix3d m1,
                         Vector3d t1)
Performs an SVD normalization of this matrix to calculate the rotation as a 3x3 matrix, the translation, and the scale. None of the matrix values are modified.

Parameters:
m1 - The normalized matrix representing the rotation
t1 - The translation component
Returns:
The scale component of this transform
 o get
 public final double get(Matrix3f m1,
                         Vector3d t1)
Performs an SVD normalization of this matrix to calculate the rotation as a 3x3 matrix, the translation, and the scale. None of the matrix values are modified.

Parameters:
m1 - The normalized matrix representing the rotation
t1 - The translation component
Returns:
The scale component of this transform
 o get
 public final void get(Quat4f q1)
Performs an SVD normalization of this matrix in order to acquire the normalized rotational component; the values are placed into the Quat4f parameter.

Parameters:
q1 - quaternion into which the rotation component is placed
 o get
 public final void get(Quat4d q1)
Performs an SVD normalization of this matrix in order to acquire the normalized rotational component; the values are placed into the Quat4f parameter.

Parameters:
q1 - quaternion into which the rotation component is placed
 o get
 public final void get(Vector3d trans)
Retrieves the translational components of this matrix.

Parameters:
trans - the vector that will receive the translational component
 o getRotationScale
 public final void getRotationScale(Matrix3f m1)
Gets the upper 3x3 values of this matrix and places them into the matrix m1.

Parameters:
m1 - The matrix that will hold the values
 o getRotationScale
 public final void getRotationScale(Matrix3d m1)
Gets the upper 3x3 values of this matrix and places them into the matrix m1.

Parameters:
m1 - The matrix that will hold the values
 o setRotationScale
 public final void setRotationScale(Matrix3d m1)
Replaces the upper 3x3 matrix values of this matrix with the values in the matrix m1.

Parameters:
m1 - The matrix that will be the new upper 3x3
 o setRotationScale
 public final void setRotationScale(Matrix3f m1)
Replaces the upper 3x3 matrix values of this matrix with the values in the matrix m1.

Parameters:
m1 - The matrix that will be the new upper 3x3
 o setRow
 public final void setRow(int row,
                          double x,
                          double y,
                          double z,
                          double w)
Sets the specified row of this matrix4d to the four values provided.

Parameters:
row - the row number to be modified (zero indexed)
x - the first column element
y - the second column element
z - the third column element
w - the fourth column element
 o setRow
 public final void setRow(int row,
                          Vector4d v)
Sets the specified row of this matrix4d to the Vector provided.

Parameters:
row - the row number to be modified (zero indexed)
v - the replacement row
 o setRow
 public final void setRow(int row,
                          double v[])
Sets the specified row of this matrix4d to the four values provided.

Parameters:
row - the row number to be modified (zero indexed)
v - the replacement row
 o setColumn
 public final void setColumn(int column,
                             double x,
                             double y,
                             double z,
                             double w)
Sets the specified column of this matrix4d to the four values provided.

Parameters:
column - the column number to be modified (zero indexed)
x - the first row element
y - the second row element
z - the third row element
w - the fourth row element
 o setColumn
 public final void setColumn(int column,
                             Vector4d v)
Sets the specified column of this matrix4d to the vector provided.

Parameters:
column - the column number to be modified (zero indexed)
v - the replacement column
 o setColumn
 public final void setColumn(int column,
                             double v[])
Sets the specified column of this matrix4d to the four values provided.

Parameters:
column - the column number to be modified (zero indexed)
v - the replacement column
 o add
 public final void add(Matrix4d m1,
                       Matrix4d m2)
Sets the value of this matrix to the matrix sum of matrices m1 and m2.

Parameters:
m1 - the first matrix
m2 - the second matrix
 o add
 public final void add(Matrix4d m1)
Sets the value of this matrix to sum of itself and matrix m1.

Parameters:
m1 - the other matrix
 o sub
 public final void sub(Matrix4d m1,
                       Matrix4d m2)
Sets the value of this matrix to the matrix difference of matrices m1 and m2.

Parameters:
m1 - the first matrix
m2 - the second matrix
 o sub
 public final void sub(Matrix4d m1)
Sets the value of this matrix to the matrix difference of itself and matrix m1 (this = this - m1).

Parameters:
m1 - the other matrix
 o transpose
 public final void transpose()
Sets the value of this matrix to its transpose.

 o transpose
 public final void transpose(Matrix4d m1)
Sets the value of this matrix to the transpose of the argument matrix

Parameters:
m1 - the matrix to be transposed
 o set
 public final void set(double m[])
Sets the values in this Matrix4d equal to the row-major array parameter (ie, the first four elements of the array will be copied into the first row of this matrix, etc.).

Parameters:
m - The double precision array of length 16
 o set
 public final void set(Matrix3f m1)
Sets the rotational component (upper 3x3) of this matrix to the matrix values in the single precision Matrix3f argument; the other elements of this matrix are initialized as if this were an identity matrix (ie, affine matrix with no translational component).

Parameters:
m1 - double precision 3x3 matrix
 o set
 public final void set(Matrix3d m1)
Sets the rotational component (upper 3x3) of this matrix to the matrix values in the double precision Matrix3d argument; the other elements of this matrix are initialized as if this were an identity matrix (ie, affine matrix with no translational component).

Parameters:
m1 - double precision 3x3 matrix
 o set
 public final void set(Quat4d q1)
Sets the value of this matrix to the matrix conversion of the (double precision) quaternion argument.

Parameters:
q1 - the quaternion to be converted
 o set
 public final void set(AxisAngle4d a1)
Sets the value of this matrix to the matrix conversion of the double precision axis and angle argument.

Parameters:
a1 - the axis and angle to be converted
 o set
 public final void set(Quat4f q1)
Sets the value of this matrix to the matrix conversion of the single precision quaternion argument.

Parameters:
q1 - the quaternion to be converted
 o set
 public final void set(AxisAngle4f a1)
Sets the value of this matrix to the matrix conversion of the single precision axis and angle argument.

Parameters:
a1 - the axis and angle to be converted
 o set
 public final void set(Quat4d q1,
                       Vector3d t1,
                       double s)
Sets the value of this matrix from the rotation expressed by the quaternion q1, the translation t1, and the scale s.

Parameters:
q1 - the rotation expressed as a quaternion
t1 - the translation
s - the scale value
 o set
 public final void set(Quat4f q1,
                       Vector3d t1,
                       double s)
Sets the value of this matrix from the rotation expressed by the quaternion q1, the translation t1, and the scale s.

Parameters:
q1 - the rotation expressed as a quaternion
t1 - the translation
s - the scale value
 o set
 public final void set(Quat4f q1,
                       Vector3f t1,
                       float s)
Sets the value of this matrix from the rotation expressed by the quaternion q1, the translation t1, and the scale s.

Parameters:
q1 - the rotation expressed as a quaternion
t1 - the translation
s - the scale value
 o set
 public final void set(Matrix4f m1)
Sets the value of this matrix to the double value of the passed matrix4f m1.

Parameters:
m1 - the matrix4f
 o set
 public final void set(Matrix4d m1)
Sets the value of this matrix to a copy of the passed matrix m1.

Parameters:
m1 - the matrix to be copied
 o invert
 public final void invert(Matrix4d m1)
Sets the value of this matrix to the matrix inverse of the passed (user declared) matrix m1.

Parameters:
m1 - the matrix to be inverted
 o invert
 public final void invert()
Inverts this matrix in place.

 o determinant
 public final double determinant()
Computes the determinant of this matrix.

Returns:
the determinant of the matrix
 o set
 public final void set(double scale)
Sets the value of this matrix to a scale matrix with the passed scale amount.

Parameters:
scale - the scale factor for the matrix
 o set
 public final void set(Vector3d v1)
Sets the value of this matrix to a translate matrix by the passed translation value.

Parameters:
v1 - the translation amount
 o set
 public final void set(double scale,
                       Vector3d v1)
Sets the value of this transform to a scale and translation matrix; the scale is not applied to the translation and all of the matrix values are modified.

Parameters:
scale - the scale factor for the matrix
v1 - the translation amount
 o set
 public final void set(Vector3d v1,
                       double scale)
Sets the value of this transform to a scale and translation matrix; the translation is scaled by the scale factor and all of the matrix values are modified.

Parameters:
v1 - the translation amount
scale - the scale factor for the matrix
 o set
 public final void set(Matrix3f m1,
                       Vector3f t1,
                       float scale)
Sets the value of this matrix from the rotation expressed by the rotation matrix m1, the translation t1, and the scale s. The translation is not modified by the scale.

Parameters:
m1 - The rotation component
t1 - The translation component
scale - The scale component
 o set
 public final void set(Matrix3d m1,
                       Vector3d t1,
                       double scale)
Sets the value of this matrix from the rotation expressed by the rotation matrix m1, the translation t1, and the scale s. The translation is not modified by the scale.

Parameters:
m1 - The rotation component
t1 - The translation component
scale - The scale component
 o setTranslation
 public final void setTranslation(Vector3d trans)
Modifies the translational components of this matrix to the values of the Vector3d argument; the other values of this matrix are not modified.

Parameters:
trans - the translational component
 o rotX
 public final void rotX(double angle)
Sets the value of this matrix to a rotation matrix about the x axis by the passed angle.

Parameters:
angle - the angle to rotate about the X axis in radians
 o rotY
 public final void rotY(double angle)
Sets the value of this matrix to a rotation matrix about the y axis by the passed angle.

Parameters:
angle - the angle to rotate about the Y axis in radians
 o rotZ
 public final void rotZ(double angle)
Sets the value of this matrix to a rotation matrix about the z axis by the passed angle.

Parameters:
angle - the angle to rotate about the Z axis in radians
 o mul
 public final void mul(Matrix4d m1)
Sets the value of this matrix to the result of multiplying itself with matrix m1.

Parameters:
m1 - the other matrix
 o mul
 public final void mul(Matrix4d m1,
                       Matrix4d m2)
Sets the value of this matrix to the result of multiplying the two argument matrices together.

Parameters:
m1 - the first matrix
m2 - the second matrix
 o mulTransposeBoth
 public final void mulTransposeBoth(Matrix4d m1,
                                    Matrix4d m2)
Multiplies the transpose of matrix m1 times the transpose of matrix m2, and places the result into this.

Parameters:
m1 - The matrix on the left hand side of the multiplication
m2 - The matrix on the right hand side of the multiplication
 o mulTransposeRight
 public final void mulTransposeRight(Matrix4d m1,
                                     Matrix4d m2)
Multiplies matrix m1 times the transpose of matrix m2, and places the result into this.

Parameters:
m1 - The matrix on the left hand side of the multiplication
m2 - The matrix on the right hand side of the multiplication
 o mulTransposeLeft
 public final void mulTransposeLeft(Matrix4d m1,
                                    Matrix4d m2)
Multiplies the transpose of matrix m1 times matrix m2, and places the result into this.

Parameters:
m1 - The matrix on the left hand side of the multiplication
m2 - The matrix on the right hand side of the multiplication
 o equals
 public boolean equals(Matrix4d m1)
Returns true if all of the data members of Matrix4d m1 are equal to the corresponding data members in this Matrix4d.

Parameters:
m1 - The matrix with which the comparison is made.
Returns:
true or false
 o epsilonEquals
 public boolean epsilonEquals(Matrix4d m1,
                              float epsilon)
Returns true if the L-infinite distance between this matrix and matrix m1 is less than or equal to the epsilon parameter, otherwise returns false. The L-infinite distance is equal to MAX[i=0,1,2,3 ; j=0,1,2,3 ; abs(this.m(i,j) - m1.m(i,j)]

Parameters:
m1 - The matrix to be compared to this matrix
epsilon - the threshold value
 o hashCode
 public int hashCode()
Returns a hash number based on the data values in this object. Two different Matrix4d objects with identical data values (ie, returns true for equals(Matrix4d) ) will return the same hash number. Two objects with different data members may return the same hash value, although this is not likely.

Returns:
the integer hash value
Overrides:
hashCode in class Object
 o transform
 public final void transform(Tuple4d vec,
                             Tuple4d vecOut)
Transform the vector vec using this Matrix4d and place the result into vecOut.

Parameters:
vec - the double precision vector to be transformed
vecOut - the vector into which the transformed values are placed
 o transform
 public final void transform(Tuple4d vec)
Transform the vector vec using this Matrix4d and place the result back into vec.

Parameters:
vec - the double precision vector to be transformed
 o transform
 public final void transform(Tuple4f vec,
                             Tuple4f vecOut)
Transform the vector vec using this Matrix4d and place the result into vecOut.

Parameters:
vec - the single precision vector to be transformed
vecOut - the vector into which the transformed values are placed
 o transform
 public final void transform(Tuple4f vec)
Transform the vector vec using this Transform and place the result back into vec.

Parameters:
vec - the single precision vector to be transformed
 o transform
 public final void transform(Point3d point,
                             Point3d pointOut)
Transforms the point parameter with this Matrix4d and places the result into pointOut. The fourth element of the point input paramter is assumed to be one.

Parameters:
point - the input point to be transformed.
pointOut - the transformed point
 o transform
 public final void transform(Point3d point)
Transforms the point parameter with this Matrix4d and places the result back into point. The fourth element of the point input paramter is assumed to be one.

Parameters:
point - the input point to be transformed.
 o transform
 public final void transform(Point3f point,
                             Point3f pointOut)
Transforms the point parameter with this Matrix4d and places the result into pointOut. The fourth element of the point input paramter is assumed to be one.

Parameters:
point - the input point to be transformed.
pointOut - the transformed point
 o transform
 public final void transform(Point3f point)
Transforms the point parameter with this Matrix4d and places the result back into point. The fourth element of the point input paramter is assumed to be one.

Parameters:
point - the input point to be transformed.
 o transform
 public final void transform(Vector3d normal,
                             Vector3d normalOut)
Transforms the normal parameter by this Matrix4d and places the value into normalOut. The fourth element of the normal is assumed to be zero.

Parameters:
normal - the input normal to be transformed.
normalOut - the transformed normal
 o transform
 public final void transform(Vector3d normal)
Transforms the normal parameter by this transform and places the value back into normal. The fourth element of the normal is assumed to be zero.

Parameters:
normal - the input normal to be transformed.
 o transform
 public final void transform(Vector3f normal,
                             Vector3f normalOut)
Transforms the normal parameter by this Matrix4d and places the value into normalOut. The fourth element of the normal is assumed to be zero.

Parameters:
normal - the input normal to be transformed.
normalOut - the transformed normal
 o transform
 public final void transform(Vector3f normal)
Transforms the normal parameter by this transform and places the value back into normal. The fourth element of the normal is assumed to be zero.

Parameters:
normal - the input normal to be transformed.
 o setRotation
 public final void setRotation(Matrix3d m1)
Sets the rotational component (upper 3x3) of this matrix to the matrix values in the double precision Matrix3d argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the passed rotation components, and then the scale is reapplied to the rotational components.

Parameters:
m1 - double precision 3x3 matrix
 o setRotation
 public final void setRotation(Matrix3f m1)
Sets the rotational component (upper 3x3) of this matrix to the matrix values in the single precision Matrix3d argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the passed rotation components, and then the scale is reapplied to the rotational components.

Parameters:
m1 - single precision 3x3 matrix
 o setRotation
 public final void setRotation(Quat4f q1)
Sets the rotational component (upper 3x3) of this matrix to the matrix equivalent values of the quaternion argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the matrix equivalent of the quaternion, and then the scale is reapplied to the rotational components.

Parameters:
q1 - the quaternion that specifies the rotation
 o setRotation
 public final void setRotation(Quat4d q1)
Sets the rotational component (upper 3x3) of this matrix to the matrix equivalent values of the quaternion argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the matrix equivalent of the quaternion, and then the scale is reapplied to the rotational components.

Parameters:
q1 - the quaternion that specifies the rotation
 o setRotation
 public final void setRotation(AxisAngle4d a1)
Sets the rotational component (upper 3x3) of this matrix to the matrix equivalent values of the axis-angle argument; the other elements of this matrix are unchanged; a singular value decomposition is performed on this object's upper 3x3 matrix to factor out the scale, then this object's upper 3x3 matrix components are replaced by the matrix equivalent of the axis-angle, and then the scale is reapplied to the rotational components.

Parameters:
a1 - the axis-angle to be converted (x, y, z, angle)
 o setZero
 public final void setZero()
Sets this matrix to all zeros.

 o negate
 public final void negate()
Negates the value of this matrix: this = -this.

 o negate
 public final void negate(Matrix4d m1)
Sets the value of this matrix equal to the negation of of the Matrix4d parameter.

Parameters:
m1 - The source matrix

All Packages  Class Hierarchy  This Package  Previous  Next  Index