Matrix2d Class

Class of which objects represents affine transformatins in 2d space. The matrix public doubles is a 2*3 matrix that has the following structure: | m00=xaxis-x | m10=xaxis-y | | m01=yaxis-x | m11=yaxis-y | | m02=transx | m12=transy |
Public Class Matrix2d
This language is not supported or no code example is available.
public class Matrix2d
This language is not supported or no code example is available.
public ref class Matrix2d 
This language is not supported or no code example is available.
public class Matrix2d
This language is not supported or no code example is available.
Name Description
Public constructor Matrix2d(double, double, double, double, double, double) Constructor that directly sets the elements of the matrix.
Public constructor Matrix2d() Default constructor, which creates an identity matrix.
Public constructor Matrix2d(Matrix2d) Copy constructor.
Top
Name Description
Public property Determinant Gets the determinant of the matrix. If the determinant is non-zero, the matrix is not invertible.
Public property Inverse Gets a new matrix, which is the inverse of this matrix.
Public property IsInvertible Checks if the matrix can be inverted, that is if the determinant is not zero.
Public property IsValid
Public property Item(int) Array-like element access for matrix.
Public property Translation
Public property Transposed Gets the transposed matrix of this one. Since this 2d matrix is a 2x3 matrix, the translation part of the matrix will be lost when transposing it.
Public property XAxis Gets a new vector representing the x axis in the matrix local coordinate system.
Public property YAxis Gets a new vector representing the y axis in the matrix local coordinate system.
Top
Methods
 
Name Description
Public method Apply(double, double, out double, out double, bool)
Public method Apply(ref double, ref double)
Public method ApplyInverse(double, double, out double, out double, bool)
Public method ApplyInverse(ref double, ref double)
Public method Static CreateMirroring(Point2d, Point2d) Creates a matrix that reflects stuff over the line passing through two given points.
Public method Static CreateRotation(double) Computes a new matrix which is a pure rotation matrix.
Public method Static CreateRotation(double, Point2d) Computes a new matrix that represents rotation around a given point.
Public method Static CreateScaling(double) Computes a new matrix which is a pure scaling matrix where x and y scale is the same.
Public method Static CreateScaling(double, Point2d) Computes a new matrix which is a scaling matrix with a given origo.
Public method Static CreateScaling(double, double) Computes a new matrix which is a 'stretch' matrix,that is scaling in x and y might be diffrent.
Public method Static CreateScaling(double, double, Point2d) Computes a new matrix which is a 'stretch' matrix using a given origo, that is scaling in x and y might be diffrent.
Public method Static CreateShearing(double, double) Returns a new shear matrix, which has its x axis is tilted xshearRadians from local x axis. y axis is tilted yshearRadians from local y axis. The shearing radians are clamped to be between -89 to 89 degrees.
Public method Static CreateTranslation(double, double) Creates a translation vector using two doubles for dx,dy.
Public method Eigenvalues(out double, out double) Calculates the eigenvalues of a 2x2 matrix
Public method Eigenvector(double)
Public method ExtractRotation() Extract the rotation portion of the matrix.
Public method ExtractScaling() Extracts the scaling portion of the matrix.
Public method ExtractTranslation() Extract the translation portion of the matrix.
Public method ExtractTranslationVector()
Public method IsMirroring() Checks if this matrix, when applied on an object will reflect it, for example if the direction of an arc will switch from CW to CCW when transformet with it.
Public method IsUniform() Checks if the matrix contains a uniform scaling
Public method SetIdentity() Modifies the matrix in-place so that it is a identiy matrix.
Public method ToString() Creates a string suitable for debugging purposes.
Top
Name Description
Operator Static Multiply Multiplies a matrix with another. Mathematically: result = b * a (Note: reverse order! For convenience when writing larger transforms)
Top
Fields
 
Name Description
Public field m00 x of X-axis
Public field m01 x of Y-axis
Public field m02 x translation
Public field m10 y of Y-axis
Public field m11 y of Y-axis
Public field m12 y translation
Top
IGS.Genamo.Matrix2d

.NET Framework

Supported in: 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8

In this article

Definition