|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectmaspack.matrix.MatrixObject
maspack.matrix.AffineTransform3dObject
maspack.matrix.AffineTransform3d
A 4 x 4 matrix which implements general 3D affine transformations. The matrix has the specific form
[ A p ] M = [ ] [ 0 1 ]where A is a 3 x 3 matrix and p is a 3-vector. In homogeneous coordinates, this implements an affine transform of the form
In this class, the fields A and p are exposed, and users can manipulate them as desired. This allows us to minimize the number of methds in the AffineTransform3d class itself.
Field Summary | |
Matrix3d |
A
Matrix component. |
Vector3d |
p
Vector component. |
Constructor Summary | |
AffineTransform3d()
Creates an AffineTransform3d and initializes it to the identity. |
|
AffineTransform3d(Matrix3d A,
Vector3d p)
Creates an AffineTransform3d and initializes its components to the specified values. |
Method Summary | |
void |
applyScaling(double sx,
double sy,
double sz)
Scales the columns of A by the specified amounts. |
boolean |
invert()
Inverts this transform in place. |
boolean |
invert(AffineTransform3dObject X)
Inverts transform X and places the result in this transform. |
void |
mul(AffineTransform3dObject X)
Multiplies this transformation transformation X and places the result in this transformation. |
void |
mul(AffineTransform3dObject X1,
AffineTransform3dObject X2)
Multiplies transformation X1 by transformation X2 and places the result in this transformation. |
boolean |
mulInverse(AffineTransform3dObject X)
Multiplies this transformation by the inverse of transformation X and places the result in this transformation. |
boolean |
mulInverseBoth(AffineTransform3dObject X1,
AffineTransform3dObject X2)
Multiplies the inverse of transformation X1 by the inverse of transformation X2 and places the result in this transformation. |
boolean |
mulInverseLeft(AffineTransform3dObject X1,
AffineTransform3dObject X2)
Multiplies the inverse of transformation X1 by transformation X2 and places the result in this transformation. |
boolean |
mulInverseRight(AffineTransform3dObject X1,
AffineTransform3dObject X2)
Multiplies transformation X1 by the inverse of transformation X2 and places the result in this transformation. |
void |
set(RigidTransform3d X)
Sets this affine transform to the rigid body transform described by X. |
Methods inherited from class maspack.matrix.AffineTransform3dObject |
colSize, epsilonEquals, equals, get, get, getColumn, getMatrix, getOffset, getRow, mul, mul, mulInverse, mulInverse, rowSize, set, set, setColumn, setIdentity, setRotation, setRotation, setRotation, setRow, setTranslation |
Methods inherited from class maspack.matrix.MatrixObject |
determinant, epsilonEquals, equals, equals, frobeniusNorm, get, getColumn, getRow, infinityNorm, isFixedSize, oneNorm, scan, set, set, setColumn, setRow, setSize, toString, toString, toString |
Methods inherited from class java.lang.Object |
getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
public final Matrix3d A
public final Vector3d p
Constructor Detail |
public AffineTransform3d()
public AffineTransform3d(Matrix3d A, Vector3d p)
A
- value for the A matrixp
- value for the p vectorMethod Detail |
public void mul(AffineTransform3dObject X)
X
- right-hand transformationpublic void mul(AffineTransform3dObject X1, AffineTransform3dObject X2)
X1
- left-hand transformationX2
- right-hand transformationpublic boolean mulInverse(AffineTransform3dObject X)
X
- right-hand transformation
public boolean mulInverseRight(AffineTransform3dObject X1, AffineTransform3dObject X2)
X1
- left-hand transformationX2
- right-hand transformation
public boolean mulInverseLeft(AffineTransform3dObject X1, AffineTransform3dObject X2)
X1
- left-hand transformationX2
- right-hand transformation
public boolean mulInverseBoth(AffineTransform3dObject X1, AffineTransform3dObject X2)
X1
- left-hand transformationX2
- right-hand transformation
public boolean invert()
invert
in class AffineTransform3dObject
public boolean invert(AffineTransform3dObject X)
X
- transform to invert
public void set(RigidTransform3d X)
X
- rigid body transform to copypublic void applyScaling(double sx, double sy, double sz)
sx
- x scale factorsy
- y scale factorsz
- z scale factor
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |