|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectmaspack.matrix.MatrixBase
maspack.matrix.DenseMatrixBase
maspack.matrix.AffineTransform2dBase
public class AffineTransform2dBase
Base class for 3 x 3 matrices representing 2D affine transformations. A 2D
affine transformation applied to a 2-vector v has the form
A v + b
In homogeneous coordinates, this is represented by a 3 x 3 matrix of the form
[ A p ] M = [ ] [ 0 1 ]
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface maspack.matrix.Matrix |
---|
Matrix.Partition, Matrix.WriteFormat |
Field Summary |
---|
Fields inherited from interface maspack.matrix.Matrix |
---|
INDEFINITE, POSITIVE_DEFINITE, SPD, SYMMETRIC |
Constructor Summary | |
---|---|
AffineTransform2dBase()
|
Method Summary | |
---|---|
int |
colSize()
Returns the number of columns in this matrix (which is always 3). |
boolean |
epsilonEquals(AffineTransform2dBase X,
double epsilon)
Returns true if the elements of this transformation equal those of transform X1 within a prescribed tolerance
epsilon . |
boolean |
equals(AffineTransform2dBase X)
Returns true if the elements of this transformation exactly equal those of transform X1 . |
void |
get(double[] values)
Copies the elements of this matrix into an array of doubles. |
double |
get(int i,
int j)
Gets a single element of this matrix. |
void |
getColumn(int j,
double[] values)
Copies a column of this matrix into an array of doubles. |
void |
getColumn(int j,
double[] values,
int off)
Copies a column of this matrix into an array of doubles, starting at a specified offset. |
void |
getRow(int i,
double[] values)
Copies a row of this matrix into an array of doubles. |
void |
getRow(int i,
double[] values,
int off)
Copies a row of this matrix into an array of doubles, starting at a specified offset. |
boolean |
invert()
Inverts this transform in place. |
void |
mul(Vector3d vr)
Multiplies the column vector vr by this transform and places the result back in vr. |
void |
mul(Vector3d vr,
Vector3d v1)
Multiplies the column vector v1 by this transform and places the result in vr. |
boolean |
mulInverse(Vector3d vr)
Multiplies the column vector vr by the inverse of this transform and places the result back in vr. |
boolean |
mulInverse(Vector3d vr,
Vector3d v1)
Multiplies the column vector v1 by the inverse of this transform and places the result in vr. |
int |
rowSize()
Returns the number of rows in this matrix (which is always 3). |
void |
set(double[] vals)
Sets the elements of this matrix from an array of doubles. |
void |
set(int i,
int j,
double value)
Sets a single element of this matrix. |
void |
set(RigidTransform2d X)
Sets this affine transform to the rigid body transform described by X. |
void |
setColumn(int j,
double[] values)
Sets a column of this matrix from an array of doubles. |
void |
setIdentity()
Sets the transformation to the identity. |
void |
setRow(int i,
double[] values)
Set a row of this matrix from an array of doubles. |
Methods inherited from class maspack.matrix.DenseMatrixBase |
---|
add, checkConsistency, set, set, set, set, setCCSValues, setColumn, setCRSValues, setRow, setSubMatrix |
Methods inherited from class maspack.matrix.MatrixBase |
---|
containsNaN, determinant, epsilonEquals, equals, frobeniusNorm, get, getCCSIndices, getCCSIndices, getCCSValues, getCCSValues, getColumn, getCRSIndices, getCRSIndices, getCRSValues, getCRSValues, getDefaultFormat, getRow, getSize, getSubMatrix, hasNaN, idString, infinityNorm, isFixedSize, isSymmetric, mul, mul, mul, mulAdd, mulAdd, mulAdd, mulTranspose, mulTranspose, mulTranspose, mulTransposeAdd, mulTransposeAdd, mulTransposeAdd, numNonZeroVals, numNonZeroVals, oneNorm, scan, setCRSValues, setDefaultFormat, setSize, toString, toString, toString, trace, write, write, write, write, write, writeToFile |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface maspack.matrix.Matrix |
---|
determinant, epsilonEquals, equals, frobeniusNorm, getCCSIndices, getCCSIndices, getCCSValues, getCCSValues, getColumn, getCRSIndices, getCRSIndices, getCRSValues, getCRSValues, getRow, getSize, getSubMatrix, infinityNorm, isFixedSize, isSymmetric, mul, mul, mul, mulAdd, mulAdd, mulAdd, mulTranspose, mulTranspose, mulTranspose, mulTransposeAdd, mulTransposeAdd, mulTransposeAdd, numNonZeroVals, numNonZeroVals, oneNorm, scan, setSize, toString, trace, write, write, write |
Constructor Detail |
---|
public AffineTransform2dBase()
Method Detail |
---|
public int colSize()
colSize
in interface LinearTransformNd
colSize
in interface Matrix
colSize
in class MatrixBase
public int rowSize()
rowSize
in interface LinearTransformNd
rowSize
in interface Matrix
rowSize
in class MatrixBase
public double get(int i, int j)
get
in interface Matrix
get
in class MatrixBase
i
- element row indexj
- element column index
public void get(double[] values)
(i,j)
is
stored at location i*colSize()+j
.
get
in interface Matrix
get
in class MatrixBase
values
- array into which values are copiedpublic void getColumn(int j, double[] values)
getColumn
in interface Matrix
getColumn
in class MatrixBase
j
- column indexvalues
- array into which the column is copiedpublic void getColumn(int j, double[] values, int off)
getColumn
in interface Matrix
getColumn
in class MatrixBase
j
- column indexvalues
- array into which the column is copiedoff
- offset in values where copying should beginpublic void getRow(int i, double[] values)
getRow
in interface Matrix
getRow
in class MatrixBase
i
- row indexvalues
- array into which the row is copiedpublic void getRow(int i, double[] values, int off)
getRow
in interface Matrix
getRow
in class MatrixBase
i
- row indexvalues
- array into which the row is copiedoff
- offset in values where copying should beginpublic final void set(int i, int j, double value)
set
in interface DenseMatrix
set
in class DenseMatrixBase
i
- element row indexj
- element column indexvalue
- element valuepublic void set(double[] vals)
(i,j)
is stored at location i*colSize()+j
.
set
in interface DenseMatrix
set
in class DenseMatrixBase
vals
- array from which values are copiedpublic void setColumn(int j, double[] values)
setColumn
in interface DenseMatrix
setColumn
in class DenseMatrixBase
j
- column indexvalues
- array from which column values are copiedpublic void setRow(int i, double[] values)
setRow
in interface DenseMatrix
setRow
in class DenseMatrixBase
i
- row indexvalues
- array from which the row is copiedpublic void set(RigidTransform2d X)
X
- rigid body transform to copypublic void setIdentity()
public void mul(Vector3d vr, Vector3d v1)
vr
- result vectorv1
- vector to multiplypublic void mul(Vector3d vr)
vr
- vector to multiply (in place)public boolean mulInverse(Vector3d vr, Vector3d v1)
vr
- result vectorv1
- vector to multiply
public boolean mulInverse(Vector3d vr)
vr
- vector to multiply (in place)
public boolean invert()
public boolean epsilonEquals(AffineTransform2dBase X, double epsilon)
X1
within a prescribed tolerance
epsilon
.
X
- transform to compare withepsilon
- comparison tolerance
public boolean equals(AffineTransform2dBase X)
X1
.
X
- transform to compare with
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |