Matrix4 Structure |
Namespace: ABB.Robotics.Math
public struct Matrix4
The Matrix4 type exposes the following members.
Name | Description | |
---|---|---|
Matrix4(Vector3) |
Creates a matrix with unit rotation and a specified translation.
| |
Matrix4(Double, Boolean) |
Creates a matrix from an array of 16 values.
| |
Matrix4(Matrix3, Vector3) |
Constructs a matrix from a 3x3 orientation matrix and a translation.
| |
Matrix4(Vector3, Quaternion) |
Creates a matrix from a translation vector and a quaternion.
| |
Matrix4(Vector3, Vector3) |
Creates a matrix from a translation vector and
Euler angles (zyx).
| |
Matrix4(Vector3, Double) |
Creates a matrix from a rotation axis and angle,
with unit translation.
| |
Matrix4(Vector3, Vector3, Vector3, Vector3) |
Creates an affine matrix from four vectors
| |
Matrix4(Vector4, Vector4, Vector4, Vector4) |
Creates a matrix from four column vectors.
|
Name | Description | |
---|---|---|
AxisAngle |
Gets/sets the rotation as axis/angle
(represented by a 4-vector [axis,angle]).
| |
Elements |
Returns an array of all elements in column-first order.
| |
EulerXYZ |
Gets/sets the rotation as Euler angles (xyz order). | |
EulerZYX |
Gets/sets the rotation as Euler angles (zyx order). Note: the vector contains the angles as [rx,ry,rz]. | |
IsNaN |
Returns a value indicating whether any elements evaluates to a value that is not a number (NaN).
| |
Item |
Column vector access.
| |
Quaternion |
Gets/sets the rotation as a quaternion.
| |
Translation |
Gets/sets the translation vector.
| |
UpperLeft |
Gets/sets the rotation as a 3x3 matrix.
|
Name | Description | |
---|---|---|
AlmostEquals(Matrix4) |
Comparison method for matrices with default tolerance
| |
AlmostEquals(Matrix4, Double) |
Comparison method for matrices with tolerance
| |
CheckRigid |
Throws an exception if this matrix is not rigid.
| |
Clean |
Zeroes any values smaller than Globals.EPS.
| |
CleanRigid |
Ensures this is a valid rigid matrix
| |
Determinant |
Returns the determinant.
| |
Equals | (Inherited from ValueType.) | |
FromAxis |
Returns a matrix with one given axis. The other two axes are arbitrarily
chosen to form a right-handed coordinate system.
| |
FromThreePoint |
Creates a matrix from three points.
| |
FromTwoAxes |
Creates a matrix from a translation and two axis vectors
| |
FromTwoPointXY |
Creates a matrix from a translation and two points
| |
FromTwoPointXZ |
Creates a matrix from a translation and two points
| |
GetAxisVector |
Gets the axis vector from the specified axis
| |
GetHashCode | (Inherited from ValueType.) | |
GetType | (Inherited from Object.) | |
Inverse |
Returns the inverse of a general matrix.
| |
InverseRigid |
Returns a an inverted copy of the matrix. If the matrix is non-rigid the result is undefined.
| |
Invert |
Inverts a general matrix, using Cramer's rule.
| |
InvertAffine |
Inverts an affine matrix.
| |
InvertRigid |
Inverts a rigid (pure translation+rotation) matrix.
| |
IsAffine |
Returns true if the matrix is affine.
| |
IsEmpty |
Returns true if all elements in the matrix are zero.
| |
IsIdentity |
Returns true if the matrix is identity.
| |
IsRigid |
Returns true if this matrix is rigid (orthogonal),
e.g. it represents a pure rotation and translation.
| |
Multiply(Matrix4) |
Matrix-Matrix multiplication method.
| |
Multiply(Vector4) |
Matrix-Vector4 multiplication method.
| |
MultiplyPoint |
Matrix-Vector3 (interpreted as a point) multiplication.
| |
MultiplyVector |
Matrix-Vector3 (interpreted as a direction) multiplication.
| |
RelativeMatrix |
Returns a matrix representing the relative transform, between the two specified matrices.
| |
Rotate(Vector3, Double) |
Rotates the matrix around an axis through the origin.
| |
Rotate(Vector3, Vector3, Double) |
Rotates the matrix around an axis through a point.
| |
Scale(Double) |
Scale uniformly about origin.
| |
Scale(Vector3) |
Scale by vector about origin.
| |
Scale(Vector3, Vector3) |
Scale by vector about a point.
| |
ToString |
Returns a string in the format (Overrides ValueTypeToString.)[[x.x x.y x.z x.w] [y.x y.y y.z y.w] [z.x z.y z.z z.w] [t.x t.y t.z t.w]] | |
Translate(Vector3) |
Translates the matrix by a vector.
| |
Translate(Double, Double, Double) |
Translates the matrix by x,y,z.
| |
TranslateLocal(Vector3) |
Translates the matrix by a vector in its own coordinate system.
| |
TranslateLocal(Double, Double, Double) |
Translates the matrix by x,y,z in its own coordinate system.
| |
Transpose |
Transposes the matrix.
| |
TryParse |
Converts the string representation to its Matrix4 equivalent.
| |
WithEulerZYX |
Returns a new Matrix4 with the given Euler ZYX orientation
| |
WithTranslation |
Returns a new Matrix4 with the given translation
|
Name | Description | |
---|---|---|
Multiply(Matrix4, Matrix4) |
Matrix-Matrix multiplication operator.
| |
Multiply(Matrix4, Vector4) |
Matrix-Vector4 multiplication operator.
|
Name | Description | |
---|---|---|
Identity |
Identity matrix.
| |
t |
Column vector.
| |
x |
Column vector.
| |
y |
Column vector.
| |
z |
Column vector.
|