API reference - Class Matrix2dNotation used in Ruby API documentation Description: A 2d matrix object used mainly for representing rotation and shear transformations. This object represents a 2x2 matrix. This matrix is used to represent affine transformations in the 2d space mainly. It can be decomposed into basic transformations: mirroring, rotation and shear. In that case, the assumed execution order of the basic transformations is mirroring at the x axis, rotation, magnification and shear. This class was introduced in version 0.22. Public constructors
Public methods
Detailed description[const] Matrix2d *(const Matrix2d arg1)Description: Product two matrices.
@arg m [const] Matrix2d +(const Matrix2d arg1)Description: Sum two matrices.
@arg m [const] double angleDescription: Returns the rotation angle of the rotation component of this matrix.
The matrix is decomposed into basic transformations assuming an execution order of mirroring at the x axis, rotation, magnification and shear. [const] void assign(const Matrix2d other)Description: Assign the contents of another object to self This method assigns the contents of another object to self. This is a deep copy that does not only copy the reference but the actual content. [const] DCplxTrans cplx_transDescription: Converts this matrix to a complex transformation (if possible).
This method is successful only if the matrix does not contain shear components and the magnification must be isotropic. void createDescription: Ensures the C++ object is created Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created. void destroyDescription: Explicitly destroy the object Explicitly destroy the object on C++ side if it was owned by the Ruby interpreter. Subsequent access to this object will throw an exception. If the object is not owned by Ruby, this method will do nothing. [const] bool destroyed?Description: Returns a value indicating whether the object was already destroyed This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself. [const] Matrix2d dupDescription: Creates a copy of self [const] Matrix2d invertedDescription: The inverse of this matrix.
[const] bool is_const_object?Description: Returns a value indicating whether the reference is a const reference This method returns true, if self is a const reference. In that case, only const methods may be called on self. [const] bool is_mirror?Description: Returns the mirror flag of this matrix.
The matrix is decomposed into basic transformations assuming an execution order of mirroring at the x axis, rotation, magnification and shear. [const] double m(int i,int j)Description: Gets the m coefficient with the given index.
[const] double m11Description: Gets the m11 coefficient.
[const] double m12Description: Gets the m12 coefficient.
[const] double m21Description: Gets the m21 coefficient.
[const] double m22Description: Gets the m22 coefficient.
[const] double mag_xDescription: Returns the x magnification of the magnification component of this matrix.
The matrix is decomposed into basic transformations assuming an execution order of mirroring at the x axis, magnification, shear and rotation. [const] double mag_yDescription: Returns the y magnification of the magnification component of this matrix.
The matrix is decomposed into basic transformations assuming an execution order of mirroring at the x axis, magnification, shear and rotation. [static] new Matrix2d newDescription: Create a new Matrix2d representing a unit transformation [static] new Matrix2d new(double m)Description: Create a new Matrix2d representing an isotropic magnification
[static] new Matrix2d new(double mx,double my)Description: Create a new Matrix2d representing an anisotropic magnification
[static] new Matrix2d new(const DCplxTrans arg1)Description: Create a new Matrix2d from the given complex transformation@args t
[static] new Matrix2d new(double m11,double m12,double m21,double m22)Description: Create a new Matrix2d from the four coefficients [static] new Matrix2d newc(double mag,double rotation,bool mirror)Description: Create a new Matrix2d representing an isotropic magnification, rotation and mirroring
This constructor is provided to construct a matrix similar to the complex transformation. This constructor is called 'newc' to distinguish it from the constructors taking matrix coefficients ('c' is for composite). The order of execution of the operations is mirror, magnification, rotation (as for complex transformations). [static] new Matrix2d newc(double shear,double mx,double my,double rotation,bool mirror)Description: Create a new Matrix2d representing a shear, anisotropic magnification, rotation and mirroring
The order of execution of the operations is mirror, magnification, shear and rotation. This constructor is called 'newc' to distinguish it from the constructor taking the four matrix coefficients ('c' is for composite). [const] double shear_angleDescription: Returns the magnitude of the shear component of this matrix.
The matrix is decomposed into basic transformations assuming an execution order of mirroring at the x axis, rotation, magnification and shear. The shear basic transformation will tilt the x axis towards the y axis and vice versa. The shear angle gives the tilt angle of the axes towards the other one. The possible range for this angle is -45 to 45 degree. [const] string to_sDescription: Convert the matrix to a string.
[const] DPoint trans(const DPoint arg1)Description: Transforms a point with this matrix.
@arg p |