|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object | +--javax.vecmath.Matrix3d
A double precision floating point 3 by 3 matrix. Primarily to support 3D rotations.
| Field Summary | |
double |
m00
The first matrix element in the first row. |
double |
m01
The second matrix element in the first row. |
double |
m02
The third matrix element in the first row. |
double |
m10
The first matrix element in the second row. |
double |
m11
The second matrix element in the second row. |
double |
m12
The third matrix element in the second row. |
double |
m20
The first matrix element in the third row. |
double |
m21
The second matrix element in the third row. |
double |
m22
The third matrix element in the third row. |
| Constructor Summary | |
Matrix3d()
Constructs and initializes a Matrix3d to all zeros. |
|
Matrix3d(double[] v)
Constructs and initializes a Matrix3d from the specified nine- element array. |
|
Matrix3d(double m00,
double m01,
double m02,
double m10,
double m11,
double m12,
double m20,
double m21,
double m22)
Constructs and initializes a Matrix3d from the specified nine values. |
|
Matrix3d(Matrix3d m1)
Constructs a new matrix with the same values as the Matrix3d parameter. |
|
Matrix3d(Matrix3f m1)
Constructs a new matrix with the same values as the Matrix3f parameter. |
|
| Method Summary | |
void |
add(double scalar)
Adds a scalar to each component of this matrix. |
void |
add(double scalar,
Matrix3d m1)
Adds a scalar to each component of the matrix m1 and places the result into this. |
void |
add(Matrix3d m1)
Sets the value of this matrix to the sum of itself and matrix m1. |
void |
add(Matrix3d m1,
Matrix3d m2)
Sets the value of this matrix to the matrix sum of matrices m1 and m2. |
double |
determinant()
Computes the determinant of this matrix. |
boolean |
epsilonEquals(Matrix3d m1,
double 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. |
boolean |
equals(Matrix3d m1)
Returns true if all of the data members of Matrix3d m1 are equal to the corresponding data members in this Matrix3d. |
boolean |
equals(java.lang.Object t1)
Returns true if the Object t1 is of type Matrix3d and all of the data members of t1 are equal to the corresponding data members in this Matrix3d. |
void |
getColumn(int column,
double[] v)
Copies the matrix values in the specified column into the array parameter. |
void |
getColumn(int column,
Vector3d v)
Copies the matrix values in the specified column into the vector parameter. |
double |
getElement(int row,
int column)
Retrieves the value at the specified row and column of the specified matrix. |
void |
getRow(int row,
double[] v)
Copies the matrix values in the specified row into the array parameter. |
void |
getRow(int row,
Vector3d v)
Copies the matrix values in the specified row into the vector parameter. |
double |
getScale()
Performs an SVD normalization of this matrix to calculate and return the uniform scale factor. |
int |
hashCode()
Returns a hash code value based on the data values in this object. |
void |
invert()
Inverts this matrix in place. |
void |
invert(Matrix3d m1)
Sets the value of this matrix to the matrix inverse of the passed matrix m1. |
void |
mul(double scalar)
Multiplies each element of this matrix by a scalar. |
void |
mul(double scalar,
Matrix3d m1)
Multiplies each element of matrix m1 by a scalar and places the result into this. |
void |
mul(Matrix3d m1)
Sets the value of this matrix to the result of multiplying itself with matrix m1. |
void |
mul(Matrix3d m1,
Matrix3d m2)
Sets the value of this matrix to the result of multiplying the two argument matrices together. |
void |
mulNormalize(Matrix3d m1)
Multiplies this matrix by matrix m1, does an SVD normalization of the result, and places the result back into this matrix this = SVDnorm(this*m1). |
void |
mulNormalize(Matrix3d m1,
Matrix3d m2)
Multiplies matrix m1 by matrix m2, does an SVD normalization of the result, and places the result into this matrix this = SVDnorm(m1*m2). |
void |
mulTransposeBoth(Matrix3d m1,
Matrix3d m2)
Multiplies the transpose of matrix m1 times the transpose of matrix m2, and places the result into this. |
void |
mulTransposeLeft(Matrix3d m1,
Matrix3d m2)
Multiplies the transpose of matrix m1 times matrix m2, and places the result into this. |
void |
mulTransposeRight(Matrix3d m1,
Matrix3d m2)
Multiplies matrix m1 times the transpose of matrix m2, and places the result into this. |
void |
negate()
Negates the value of this matrix: this = -this. |
void |
negate(Matrix3d m1)
Sets the value of this matrix equal to the negation of of the Matrix3d parameter. |
void |
normalize()
Performs singular value decomposition normalization of this matrix. |
void |
normalize(Matrix3d m1)
Perform singular value decomposition normalization of matrix m1 and place the normalized values into this. |
void |
normalizeCP()
Perform cross product normalization of this matrix. |
void |
normalizeCP(Matrix3d m1)
Perform cross product normalization of matrix m1 and place the normalized values into this. |
void |
rotX(double angle)
Sets the value of this matrix to a counter clockwise rotation about the x axis. |
void |
rotY(double angle)
Sets the value of this matrix to a counter clockwise rotation about the y axis. |
void |
rotZ(double angle)
Sets the value of this matrix to a counter clockwise rotation about the z axis. |
void |
set(AxisAngle4d a1)
Sets the value of this matrix to the matrix conversion of the double precision axis and angle argument. |
void |
set(AxisAngle4f a1)
Sets the value of this matrix to the matrix conversion of the single precision axis and angle argument. |
void |
set(double scale)
Sets the value of this matrix to a scale matrix with the passed scale amount. |
void |
set(double[] m)
Sets the values in this Matrix3d equal to the row-major array parameter (ie, the first three elements of the array will be copied into the first row of this matrix, etc.). |
void |
set(Matrix3d m1)
Sets the value of this matrix to the value of the Matrix3d argument. |
void |
set(Matrix3f m1)
Sets the value of this matrix to the double value of the Matrix3f argument. |
void |
set(Quat4d q1)
Sets the value of this matrix to the matrix conversion of the double precision quaternion argument. |
void |
set(Quat4f q1)
Sets the value of this matrix to the matrix conversion of the single precision quaternion argument. |
void |
setColumn(int column,
double[] v)
Sets the specified column of this matrix3d to the three values provided. |
void |
setColumn(int column,
double x,
double y,
double z)
Sets the specified column of this matrix3d to the three values provided. |
void |
setColumn(int column,
Vector3d v)
Sets the specified column of this matrix3d to the vector provided. |
void |
setElement(int row,
int column,
double value)
Sets the specified element of this matrix3f to the value provided. |
void |
setIdentity()
Sets this Matrix3d to identity. |
void |
setRow(int row,
double[] v)
Sets the specified row of this matrix3d to the three values provided. |
void |
setRow(int row,
double x,
double y,
double z)
Sets the specified row of this matrix3d to the 4 values provided. |
void |
setRow(int row,
Vector3d v)
Sets the specified row of this matrix3d to the Vector provided. |
void |
setScale(double scale)
Sets the scale component of the current matrix by factoring out the current scale (by doing an SVD) and multiplying by the new scale. |
void |
setZero()
Sets this matrix to all zeros. |
void |
sub(Matrix3d m1)
Sets the value of this matrix to the matrix difference of itself and matrix m1 (this = this - m1). |
void |
sub(Matrix3d m1,
Matrix3d m2)
Sets the value of this matrix to the matrix difference of matrices m1 and m2. |
java.lang.String |
toString()
Returns a string that contains the values of this Matrix3d. |
void |
transform(Tuple3d t)
Multiply this matrix by the tuple t and place the result back into the tuple (t = this*t). |
void |
transform(Tuple3d t,
Tuple3d result)
Multiply this matrix by the tuple t and and place the result into the tuple "result" (result = this*t). |
void |
transpose()
Sets the value of this matrix to its transpose. |
void |
transpose(Matrix3d m1)
Sets the value of this matrix to the transpose of the argument matrix. |
| Methods inherited from class java.lang.Object |
clone,
finalize,
getClass,
notify,
notifyAll,
wait,
wait,
wait |
| Field Detail |
public double m00
public double m01
public double m02
public double m10
public double m11
public double m12
public double m20
public double m21
public double m22
| Constructor Detail |
public Matrix3d(double m00,
double m01,
double m02,
double m10,
double m11,
double m12,
double m20,
double m21,
double m22)
m00 - the [0][0] elementm01 - the [0][1] elementm02 - the [0][2] elementm10 - the [1][0] elementm11 - the [1][1] elementm12 - the [1][2] elementm20 - the [2][0] elementm21 - the [2][1] elementm22 - the [2][2] elementpublic Matrix3d(double[] v)
v - the array of length 9 containing in orderpublic Matrix3d(Matrix3d m1)
m1 - the source matrixpublic Matrix3d(Matrix3f m1)
m1 - the source matrixpublic Matrix3d()
| Method Detail |
public java.lang.String toString()
public final void setIdentity()
public final void setScale(double scale)
scale - the new scale amount
public final void setElement(int row,
int column,
double value)
row - the row number to be modified (zero indexed)column - the column number to be modified (zero indexed)value - the new value
public final double getElement(int row,
int column)
row - the row number to be retrieved (zero indexed)column - the column number to be retrieved (zero indexed)m - the matrix
public final void getRow(int row,
Vector3d v)
row - the matrix rowv - the vector into which the matrix row values will be copied
public final void getRow(int row,
double[] v)
row - the matrix rowv - the array into which the matrix row values will be copied
public final void getColumn(int column,
Vector3d v)
row - the matrix rowv - the vector into which the matrix row values will be copied
public final void getColumn(int column,
double[] v)
row - the matrix rowv - the array into which the matrix row values will be copied
public final void setRow(int row,
double x,
double y,
double z)
row - the row number to be modified (zero indexed)x - the first column elementy - the second column elementz - the third column element
public final void setRow(int row,
Vector3d v)
row - the row number to be modified (zero indexed)v - the replacement row
public final void setRow(int row,
double[] v)
row - the row number to be modified (zero indexed)v - the replacement row
public final void setColumn(int column,
double x,
double y,
double z)
column - the column number to be modified (zero indexed)x - the first row elementy - the second row elementz - the third row element
public final void setColumn(int column,
Vector3d v)
column - the column number to be modified (zero indexed)v - the replacement column
public final void setColumn(int column,
double[] v)
column - the column number to be modified (zero indexed)v - the replacement columnpublic final double getScale()
public final void add(double scalar)
scalar - the scalar adder
public final void add(double scalar,
Matrix3d m1)
scalar - the scalar adderm1 - the original matrix values
public final void add(Matrix3d m1,
Matrix3d m2)
m1 - the first matrixm2 - the second matrixpublic final void add(Matrix3d m1)
m1 - the other matrix
public final void sub(Matrix3d m1,
Matrix3d m2)
m1 - the first matrixm2 - the second matrixpublic final void sub(Matrix3d m1)
m1 - the other matrixpublic final void transpose()
public final void transpose(Matrix3d m1)
m1 - the matrix to be transposedpublic final void set(Quat4d q1)
q1 - the quaternion to be convertedpublic final void set(AxisAngle4d a1)
a1 - the axis and angle to be convertedpublic final void set(Quat4f q1)
q1 - the quaternion to be convertedpublic final void set(AxisAngle4f a1)
a1 - the axis and angle to be convertedpublic final void set(Matrix3f m1)
m1 - the matrix3d to be converted to doublepublic final void set(Matrix3d m1)
m1 - the source matrix3dpublic final void set(double[] m)
m - the double precision array of length 9public final void invert(Matrix3d m1)
m1 - the matrix to be invertedpublic final void invert()
public final double determinant()
public final void set(double scale)
scale - the scale factor for the matrixpublic final void rotX(double angle)
angle - the angle to rotate about the X axis in radianspublic final void rotY(double angle)
angle - the angle to rotate about the Y axis in radianspublic final void rotZ(double angle)
angle - the angle to rotate about the Z axis in radianspublic final void mul(double scalar)
scalar - The scalar multiplier.
public final void mul(double scalar,
Matrix3d m1)
scalar - the scalar multiplierm1 - the original matrixpublic final void mul(Matrix3d m1)
m1 - the other matrix
public final void mul(Matrix3d m1,
Matrix3d m2)
m1 - the first matrixm2 - the second matrixpublic final void mulNormalize(Matrix3d m1)
m1 - the matrix on the right hand side of the multiplication
public final void mulNormalize(Matrix3d m1,
Matrix3d m2)
m1 - the matrix on the left hand side of the multiplicationm2 - the matrix on the right hand side of the multiplication
public final void mulTransposeBoth(Matrix3d m1,
Matrix3d m2)
m1 - the matrix on the left hand side of the multiplicationm2 - the matrix on the right hand side of the multiplication
public final void mulTransposeRight(Matrix3d m1,
Matrix3d m2)
m1 - the matrix on the left hand side of the multiplicationm2 - the matrix on the right hand side of the multiplication
public final void mulTransposeLeft(Matrix3d m1,
Matrix3d m2)
m1 - the matrix on the left hand side of the multiplicationm2 - the matrix on the right hand side of the multiplicationpublic final void normalize()
public final void normalize(Matrix3d m1)
m1 - Provides the matrix values to be normalizedpublic final void normalizeCP()
public final void normalizeCP(Matrix3d m1)
m1 - Provides the matrix values to be normalizedpublic boolean equals(Matrix3d m1)
m1 - the matrix with which the comparison is madepublic boolean equals(java.lang.Object t1)
m1 - the matrix with which the comparison is made
public boolean epsilonEquals(Matrix3d m1,
double epsilon)
m1 - the matrix to be compared to this matrixepsilon - the threshold valuepublic int hashCode()
public final void setZero()
public final void negate()
public final void negate(Matrix3d m1)
m1 - the source matrixpublic final void transform(Tuple3d t)
t - the tuple to be multiplied by this matrix and then replaced
public final void transform(Tuple3d t,
Tuple3d result)
t - the tuple to be multiplied by this matrixresult - the tuple into which the product is placed
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||