public interface Matrix3DReadOnly
| Modifier and Type | Method and Description | 
|---|---|
default void | 
addTransform(Tuple3DBasics tupleToTransform)
Transforms the given tuple by this matrix and add the result to the tuple. 
 | 
default void | 
addTransform(Tuple3DReadOnly tupleOriginal,
            Tuple3DBasics tupleTransformed)
Transforms the given tuple  
tupleOriginal by this matrix and add the result to
 tupleTransformed. | 
default void | 
checkIfMatrix2D()
Asserts that this matrix describes transformation in the XY plane. 
 | 
default void | 
checkIfRotationMatrix()
Asserts that this matrix is a rotation matrix. 
 | 
default boolean | 
containsNaN()
Tests if at least one element of this matrix is equal to Double.NaN. 
 | 
default double | 
determinant()
Computes the determinant of this matrix. 
 | 
default boolean | 
epsilonEquals(Matrix3DReadOnly other,
             double epsilon)
Tests on a per coefficient basis if this matrix is equal to the given  
other to an
 epsilon. | 
default boolean | 
equals(Matrix3DReadOnly other)
Tests on a per component basis if this matrix is exactly equal to  
other. | 
default void | 
get(org.ejml.data.DenseMatrix64F matrixToPack)
Packs the coefficients of this matrix into a dense-matrix. 
 | 
default void | 
get(double[] matrixArrayToPack)
Packs the coefficients of this matrix into a row-major 1D array. 
 | 
default void | 
get(int startIndex,
   double[] matrixArrayToPack)
Packs the coefficients of this matrix into a row-major 1D array starting at the given index
  
startIndex. | 
default void | 
get(int startRow,
   int startColumn,
   org.ejml.data.DenseMatrix64F matrixToPack)
Packs the coefficients of this matrix into a dense-matrix given index offsets for the row and the
 column. 
 | 
default void | 
getColumn(int column,
         double[] columnArrayToPack)
Packs a column of this matrix into an array. 
 | 
default void | 
getColumn(int column,
         Tuple3DBasics columnToPack)
Packs a column of this matrix into a 3D tuple. 
 | 
default double | 
getElement(int row,
          int column)
Retrieves and returns a coefficient of this matrix given its row and column indices. 
 | 
double | 
getM00()
Gets the 1st row 1st column coefficient of this matrix. 
 | 
double | 
getM01()
Gets the 1st row 2nd column coefficient of this matrix. 
 | 
double | 
getM02()
Gets the 1st row 3rd column coefficient of this matrix. 
 | 
double | 
getM10()
Gets the 2nd row 1st column coefficient of this matrix. 
 | 
double | 
getM11()
Gets the 2nd row 2nd column coefficient of this matrix. 
 | 
double | 
getM12()
Gets the 2nd row 3rd column coefficient of this matrix. 
 | 
double | 
getM20()
Gets the 3rd row 1st column coefficient of this matrix. 
 | 
double | 
getM21()
Gets the 3rd row 2nd column coefficient of this matrix. 
 | 
double | 
getM22()
Gets the 3rd row 3rd column coefficient of this matrix. 
 | 
default void | 
getRow(int row,
      double[] rowArrayToPack)
Packs a row of this matrix into an array. 
 | 
default void | 
getRow(int row,
      Tuple3DBasics rowToPack)
Packs a row of this matrix into a 3D tuple. 
 | 
default void | 
inverseTransform(Matrix3D matrixToTransform)
Performs the inverse of the transforms to the given 3D matrix  
matrixOriginal by this
 matrix. | 
void | 
inverseTransform(Matrix3DReadOnly matrixOriginal,
                Matrix3D matrixTransformed)
Performs the inverse of the transforms to the given 3D matrix  
matrixOriginal by this
 matrix and stores the result in matrixTransformed. | 
default void | 
inverseTransform(Tuple2DBasics tupleToTransform)
Performs the inverse of the transform to the given tuple by this matrix. 
 | 
default void | 
inverseTransform(Tuple2DBasics tupleToTransform,
                boolean checkIfTransformInXYPlane)
Performs the inverse of the transform to the given tuple by this matrix. 
 | 
default void | 
inverseTransform(Tuple2DReadOnly tupleOriginal,
                Tuple2DBasics tupleTransformed)
Performs the inverse of the transform to the given tuple  
tupleOriginal by this matrix and
 stores the result in tupleTransformed. | 
void | 
inverseTransform(Tuple2DReadOnly tupleOriginal,
                Tuple2DBasics tupleTransformed,
                boolean checkIfTransformInXYPlane)
Performs the inverse of the transform to the given tuple  
tupleOriginal by this matrix and
 stores the result in tupleTransformed. | 
default void | 
inverseTransform(Tuple3DBasics tupleToTransform)
Performs the inverse of the transform to the given tuple by this matrix. 
 | 
void | 
inverseTransform(Tuple3DReadOnly tupleOriginal,
                Tuple3DBasics tupleTransformed)
Performs the inverse of the transform to the given tuple  
tupleOriginal by this matrix and
 stores the result in tupleTransformed. | 
default void | 
inverseTransform(Vector4DBasics vectorToTransform)
Performs the inverse of the transform to the vector part the given 4D vector by this matrix. 
 | 
void | 
inverseTransform(Vector4DReadOnly vectorOriginal,
                Vector4DBasics vectorTransformed)
Performs the inverse of the transform to the vector part the given 4D vector
  
vectorOriginal by this matrix and stores the result in vectorTransformed. | 
default boolean | 
isIdentity()
Tests if this matrix is equal to the identity matrix. 
 | 
default boolean | 
isIdentity(double epsilon)
Tests if this matrix is equal to the identity matrix. 
 | 
default boolean | 
isMatrix2D()
Tests if this matrix describes transformation in the XY plane. 
 | 
default boolean | 
isMatrix2D(double epsilon)
Tests if this matrix describes transformation in the XY plane. 
 | 
default boolean | 
isMatrixSkewSymmetric()
Tests if this matrix is skew symmetric: 
 | 
default boolean | 
isMatrixSkewSymmetric(double epsilon)
Tests if this matrix is skew symmetric: 
 | 
default boolean | 
isRotationMatrix()
Tests if this matrix is a rotation matrix. 
 | 
default boolean | 
isRotationMatrix(double epsilon)
Tests if this matrix is a rotation matrix given a tolerance  
epsilon. | 
default void | 
transform(Matrix3D matrixToTransform)
Transforms the given 3D matrix by this matrix. 
 | 
void | 
transform(Matrix3DReadOnly matrixOriginal,
         Matrix3D matrixTransformed)
Transforms the given 3D matrix  
matrixOriginal by this matrix and stores the result in
 matrixTransformed. | 
default void | 
transform(Tuple2DBasics tupleToTransform)
Transforms the given tuple by this matrix. 
 | 
default void | 
transform(Tuple2DBasics tupleToTransform,
         boolean checkIfTransformInXYPlane)
Transforms the given tuple by this matrix. 
 | 
default void | 
transform(Tuple2DReadOnly tupleOriginal,
         Tuple2DBasics tupleTransformed)
Transforms the given tuple  
tupleOriginal by this matrix and stores the result in
 tupleTransformed. | 
default void | 
transform(Tuple2DReadOnly tupleOriginal,
         Tuple2DBasics tupleTransformed,
         boolean checkIfRotationInXYPlane)
Transforms the given tuple  
tupleOriginal by this matrix and stores the result in
 tupleTransformed. | 
default void | 
transform(Tuple3DBasics tupleToTransform)
Transforms the given tuple by this matrix. 
 | 
default void | 
transform(Tuple3DReadOnly tupleOriginal,
         Tuple3DBasics tupleTransformed)
Transforms the given tuple  
tupleOriginal by this matrix and stores the result in
 tupleTransformed. | 
default void | 
transform(Vector4DBasics vectorToTransform)
Transforms the vector part of the given 4D vector. 
 | 
default void | 
transform(Vector4DReadOnly vectorOriginal,
         Vector4DBasics vectorTransformed)
Transforms the vector part of the given 4D vector  
vectorOriginal and stores the result
 into vectorTransformed. | 
double getM00()
double getM01()
double getM02()
double getM10()
double getM11()
double getM12()
double getM20()
double getM21()
double getM22()
default double getElement(int row,
                          int column)
row - the row of the coefficient to return.column - the column of the coefficient to return.java.lang.ArrayIndexOutOfBoundsException - if either row ∉ [0, 2] or column
            ∉ [0, 2].default void get(double[] matrixArrayToPack)
matrixArrayToPack - the array in which the coefficients of this matrix are stored. Modified.default void get(int startIndex,
                 double[] matrixArrayToPack)
startIndex.startIndex - index in the array to store the first coefficient of this matrix.matrixArrayToPack - the array in which the coefficients of this matrix are stored. Modified.default void get(org.ejml.data.DenseMatrix64F matrixToPack)
matrixToPack - the dense-matrix in which the coefficients of this matrix are stored.
           Modified.default void get(int startRow,
                 int startColumn,
                 org.ejml.data.DenseMatrix64F matrixToPack)
startRow - the first row index to start writing in the dense-matrix.startColumn - the first column index to start writing in the dense-matrix.matrixToPack - the dense-matrix in which the coefficients of this matrix are stored.
           Modified.default void getColumn(int column,
                       double[] columnArrayToPack)
column - the index of the column to pack.columnArrayToPack - the array in which the column of this matrix is stored. Modified.java.lang.ArrayIndexOutOfBoundsException - if column ∉ [0, 2].default void getColumn(int column,
                       Tuple3DBasics columnToPack)
column - the index of the column to pack.columnToPack - the tuple in which the column of this matrix is stored. Modified.java.lang.ArrayIndexOutOfBoundsException - if column ∉ [0, 2].default void getRow(int row,
                    double[] rowArrayToPack)
row - the index of the row to pack.rowArrayToPack - the array in which the row of this matrix is stored. Modified.java.lang.ArrayIndexOutOfBoundsException - if row ∉ [0, 2].default void getRow(int row,
                    Tuple3DBasics rowToPack)
row - the index of the row to pack.rowToPack - the array in which the row of this matrix is stored. Modified.java.lang.ArrayIndexOutOfBoundsException - if row ∉ [0, 2].default boolean containsNaN()
true if at least one element of this matrix is equal to Double.NaN,
         false otherwise.default double determinant()
default void checkIfRotationMatrix()
This matrix is a rotation matrix if:
Matrix3DFeatures.EPS_CHECK_ROTATION,
 Matrix3DFeatures.EPS_CHECK_ROTATION,
 Matrix3DFeatures.EPS_CHECK_ROTATION.
 NotARotationMatrixException - if the matrix is not a rotation matrix.default void checkIfMatrix2D()
This matrix is considered to be a 2D transformation in the XY plane if:
Matrix3DFeatures.EPS_CHECK_2D,
 m20, m02, m21, and m12 are equal to 0.0 +/-
 Matrix3DFeatures.EPS_CHECK_2D.
 NotAMatrix2DException - if the matrix represents a 3D transformation.default boolean isIdentity()
 The assertion is done on a per coefficient basis using
 Matrix3DFeatures.EPS_CHECK_IDENTITY as the tolerance.
 
epsilon - the tolerance as shown above.true if the given matrix is considered to be equal to the identity matrix,
         false otherwise.default boolean isIdentity(double epsilon)
 The assertion is done on a per coefficient basis using epsilon as the tolerance.
 
epsilon - the tolerance as shown above.true if the given matrix is considered to be equal to the identity matrix,
         false otherwise.default boolean isRotationMatrix()
This matrix is a rotation matrix if:
Matrix3DFeatures.EPS_CHECK_ROTATION,
 Matrix3DFeatures.EPS_CHECK_ROTATION,
 Matrix3DFeatures.EPS_CHECK_ROTATION.
 true if this matrix is a rotation matrix, false otherwise.default boolean isRotationMatrix(double epsilon)
epsilon.
 This matrix is a rotation matrix if:
epsilon,
 epsilon,
 epsilon.
 epsilon - the tolerance to use.true if this matrix is a rotation matrix, false otherwise.default boolean isMatrix2D()
This matrix is considered to be a 2D transformation in the XY plane if:
Matrix3DFeatures.EPS_CHECK_2D,
 m20, m02, m21, and m12 are equal to 0.0 +/-
 Matrix3DFeatures.EPS_CHECK_2D.
 true if this matrix describes a 2D transformation in the XY plane, false
         otherwise.default boolean isMatrix2D(double epsilon)
This matrix is considered to be a 2D transformation in the XY plane if:
epsilon,
 m20, m02, m21, and m12 are equal to 0.0 +/-
 epsilon.
 epsilon - the tolerance to use.true if this matrix describes a 2D transformation in the XY plane, false
         otherwise.default boolean isMatrixSkewSymmetric()
     |  0 -z  y |
 m = |  z  0 -x |
     | -y  x  0 |
 
 This matrix is considered to be skew symmetric if:
Matrix3DFeatures.EPS_CHECK_SKEW,
 m10, m01),
 (m12, m21), and (m20, m02) are equal to 0.0 +/-
 Matrix3DFeatures.EPS_CHECK_SKEW.
 true if the matrix is skew symmetric, false otherwise.default boolean isMatrixSkewSymmetric(double epsilon)
     |  0 -z  y |
 m = |  z  0 -x |
     | -y  x  0 |
 
 This matrix is considered to be skew symmetric if:
epsilon,
 m10, m01),
 (m12, m21), and (m20, m02) are equal to 0.0 +/- epsilon.
 epsilon - the tolerance to use.true if the matrix is skew symmetric, false otherwise.default void transform(Tuple3DBasics tupleToTransform)
tupleToTransform = this * tupleToTransform
tupleToTransform - the tuple to transform. Modified.default void transform(Tuple3DReadOnly tupleOriginal, Tuple3DBasics tupleTransformed)
tupleOriginal by this matrix and stores the result in
 tupleTransformed.
 tupleTransformed = this * tupleOriginal
tupleOriginal - the tuple to transform. Not modified.tupleTransformed - the tuple to store the result. Modified.default void addTransform(Tuple3DBasics tupleToTransform)
tupleToTransform = tupleToTransform + this * tupleToTransform
tupleToTransform - the tuple to transform. Modified.default void addTransform(Tuple3DReadOnly tupleOriginal, Tuple3DBasics tupleTransformed)
tupleOriginal by this matrix and add the result to
 tupleTransformed.
 tupleTransformed = tupleTransformed + this * tupleOriginal
tupleOriginal - the tuple to transform. Not modified.tupleTransformed - the tuple to add the result to. Modified.default void transform(Tuple2DBasics tupleToTransform)
tupleToTransform = this * tupleToTransform
tupleToTransform - the tuple to transform. Modified.NotAMatrix2DException - if this matrix does not represent a transformation in the XY plane.default void transform(Tuple2DReadOnly tupleOriginal, Tuple2DBasics tupleTransformed)
tupleOriginal by this matrix and stores the result in
 tupleTransformed.
 tupleTransformed = this * tupleOriginal
tupleOriginal - the tuple to transform. Not modified.tupleTransformed - the tuple to store the result. Modified.NotAMatrix2DException - if this matrix does not represent a transformation in the XY plane.default void transform(Tuple2DBasics tupleToTransform, boolean checkIfTransformInXYPlane)
tupleToTransform = this * tupleToTransform
tupleToTransform - the tuple to transform. Modified.checkIfTransformInXYPlane - whether this method should assert that this matrix represents a
           transformation in the XY plane.NotAMatrix2DException - if checkIfTransformInXYPlane == true and this matrix does
            not represent a transformation in the XY plane.default void transform(Tuple2DReadOnly tupleOriginal, Tuple2DBasics tupleTransformed, boolean checkIfRotationInXYPlane)
tupleOriginal by this matrix and stores the result in
 tupleTransformed.
 tupleTransformed = this * tupleOriginal
tupleOriginal - the tuple to transform. Not modified.tupleTransformed - the tuple to store the result. Modified.checkIfRotationInXYPlane - whether this method should assert that this matrix represents a
           transformation in the XY plane.NotAMatrix2DException - if checkIfTransformInXYPlane == true and this matrix does
            not represent a transformation in the XY plane.default void transform(Matrix3D matrixToTransform)
matrixToTransform = this * matrixToTransform * this-1
matrixToTransform - the matrix to transform. Modified.SingularMatrixException - if this matrix is not invertible.void transform(Matrix3DReadOnly matrixOriginal, Matrix3D matrixTransformed)
matrixOriginal by this matrix and stores the result in
 matrixTransformed.
 matrixTransformed = this * matrixOriginal * this-1
matrixOriginal - the matrix to transform. Not modified.matrixTransformed - the matrix in which the result is stored. Modified.SingularMatrixException - if this matrix is not invertible.default void transform(Vector4DBasics vectorToTransform)
 vectorToTransform.s = vectorToTransform.s 
 vectorToTransform.xyz = this * vectorToTransform.xyz
 
vectorToTransform - the vector to transform. Modified.default void transform(Vector4DReadOnly vectorOriginal, Vector4DBasics vectorTransformed)
vectorOriginal and stores the result
 into vectorTransformed.
 
 vectorTransformed.s = vectorOriginal.s 
 vectorTransformed.xyz = this * vectorOriginal.xyz
 
vectorOriginal - the vector to transform. Not modified.vectorTransformed - the vector in which the result is stored. Modified.default void inverseTransform(Tuple3DBasics tupleToTransform)
tupleToTransform = this-1 * tupleToTransform
tupleToTransform - the tuple to transform. Modified.SingularMatrixException - if this matrix is not invertible.void inverseTransform(Tuple3DReadOnly tupleOriginal, Tuple3DBasics tupleTransformed)
tupleOriginal by this matrix and
 stores the result in tupleTransformed.
 tupleTransformed = this-1 * tupleOriginal
tupleOriginal - the tuple to transform. Not modified.tupleTransformed - the tuple in which the result is stored. Modified.SingularMatrixException - if this matrix is not invertible.default void inverseTransform(Tuple2DBasics tupleToTransform)
tupleToTransform = this-1 * tupleToTransform
tupleToTransform - the tuple to transform. Modified.NotAMatrix2DException - if this matrix does not represent a transformation in the XY plane.SingularMatrixException - if this matrix is not invertible.default void inverseTransform(Tuple2DReadOnly tupleOriginal, Tuple2DBasics tupleTransformed)
tupleOriginal by this matrix and
 stores the result in tupleTransformed.
 tupleTransformed = this-1 * tupleOriginal
tupleOriginal - the tuple to transform. Not modified.tupleTransformed - the tuple in which the result is stored. Modified.NotAMatrix2DException - if this matrix does not represent a transformation in the XY plane.SingularMatrixException - if this matrix is not invertible.default void inverseTransform(Tuple2DBasics tupleToTransform, boolean checkIfTransformInXYPlane)
tupleToTransform = this-1 * tupleToTransform
tupleToTransform - the tuple to transform. Modified.checkIfTransformInXYPlane - whether this method should assert that this matrix represents a
           transformation in the XY plane.NotAMatrix2DException - if checkIfTransformInXYPlane == true and this matrix does
            not represent a transformation in the XY plane.SingularMatrixException - if this matrix is not invertible.void inverseTransform(Tuple2DReadOnly tupleOriginal, Tuple2DBasics tupleTransformed, boolean checkIfTransformInXYPlane)
tupleOriginal by this matrix and
 stores the result in tupleTransformed.
 tupleTransformed = this-1 * tupleOriginal
tupleOriginal - the tuple to transform. Not modified.tupleTransformed - the tuple in which the result is stored. Modified.checkIfTransformInXYPlane - whether this method should assert that this matrix represents a
           transformation in the XY plane.NotAMatrix2DException - if checkIfTransformInXYPlane == true and this matrix does
            not represent a transformation in the XY plane.SingularMatrixException - if this matrix is not invertible.default void inverseTransform(Matrix3D matrixToTransform)
matrixOriginal by this
 matrix.
 matrixToTransform = this-1 * matrixToTransform * this-1
matrixToTransform - the matrix to transform. Not modified.SingularMatrixException - if this matrix is not invertible.void inverseTransform(Matrix3DReadOnly matrixOriginal, Matrix3D matrixTransformed)
matrixOriginal by this
 matrix and stores the result in matrixTransformed.
 matrixTransformed = this-1 * matrixOriginal * this-1
matrixOriginal - the matrix to transform. Not modified.matrixTransformed - the matrix in which the result is stored. Modified.SingularMatrixException - if this matrix is not invertible.default void inverseTransform(Vector4DBasics vectorToTransform)
 vectorToTransform.s = vectorToTransform.s 
 vectorToTransform.xyz = this-1 * vectorToTransform.xyz
 
vectorToTransform - the vector to transform. Modified.SingularMatrixException - if this matrix is not invertible.void inverseTransform(Vector4DReadOnly vectorOriginal, Vector4DBasics vectorTransformed)
vectorOriginal by this matrix and stores the result in vectorTransformed.
 
 vectorTransformed.s = vectorOriginal.s 
 vectorTransformed.xyz = this-1 * vectorOriginal.xyz
 
vectorOriginal - the vector to transform. Not modified.vectorTransformed - the vector in which the result is stored. Modified.SingularMatrixException - if this matrix is not invertible.default boolean equals(Matrix3DReadOnly other)
other.
 
 The method returns false if the given matrix is null.
 
other - the other matrix to compare against this. Not modified.true if the two matrices are exactly equal component-wise, false
         otherwise.default boolean epsilonEquals(Matrix3DReadOnly other, double epsilon)
other to an
 epsilon.other - the other matrix to compare against this. Not modified.epsilon - the tolerance to use when comparing each component.true if the two matrices are equal, false otherwise.