Struct RadMatrix
Represents a light-weight 3*3 Matrix to be used for GDI+ transformations.
Inherited Members
Namespace: Telerik.WinControls.Layouts
Assembly: Telerik.WinControls.dll
Syntax
public struct RadMatrix
Constructors
RadMatrix(Matrix)
Initializes a new RadMatrix, using the elements of the specified GDI+ Matrix instance.
Declaration
public RadMatrix(Matrix gdiMatrix)
Parameters
System.Drawing.Drawing2D.Matrix
gdiMatrix
The GDI+ Matrix to copy elements from. |
RadMatrix(PointF)
Initializes a new RadMatrix, applying the specified X and Y values as DX and DY members of the matrix.
Declaration
public RadMatrix(PointF offset)
Parameters
System.Drawing.PointF
offset
The point containing the X and Y offset values. |
RadMatrix(Single)
Initializes a new RadMatrix, rotated by the specified angle (in degrees) at origin (0, 0).
Declaration
public RadMatrix(float angle)
Parameters
System.Single
angle
The rotation angle in degrees. |
RadMatrix(Single, PointF)
Initializes a new RadMatrix, rotated by the specified angle (in degrees) at the provided origin.
Declaration
public RadMatrix(float angle, PointF origin)
Parameters
System.Single
angle
The rotation angle in degrees. |
System.Drawing.PointF
origin
The origin point for rotation. |
RadMatrix(Single, Single)
Initializes a new RadMatrix, scaling it by the provided parameters, at the origin (0, 0).
Declaration
public RadMatrix(float scaleX, float scaleY)
Parameters
System.Single
scaleX
The X-axis scale factor. |
System.Single
scaleY
The Y-axis scale factor. |
RadMatrix(Single, Single, PointF)
Initializes a new RadMatrix, scaling it by the provided parameters, at the specified origin.
Declaration
public RadMatrix(float scaleX, float scaleY, PointF origin)
Parameters
System.Single
scaleX
The X-axis scale factor. |
System.Single
scaleY
The Y-axis scale factor. |
System.Drawing.PointF
origin
The origin point for scaling. |
RadMatrix(Single, Single, Single, Single, Single, Single)
Initializes a new RadMatrix, using the specified parameters.
Declaration
public RadMatrix(float m11, float m12, float m21, float m22, float dx, float dy)
Parameters
System.Single
m11
The matrix element at row 1, column 1. |
System.Single
m12
The matrix element at row 1, column 2. |
System.Single
m21
The matrix element at row 2, column 1. |
System.Single
m22
The matrix element at row 2, column 2. |
System.Single
dx
The X-axis translation component. |
System.Single
dy
The Y-axis translation component. |
RadMatrix(RadMatrix)
Copy constructor.
Declaration
public RadMatrix(RadMatrix source)
Parameters
RadMatrix
source
The source RadMatrix to copy from. |
Fields
DegreeToRadian
Declaration
public const float DegreeToRadian = 0.0174532942F
Field Value
System.Single
|
DX
Declaration
public float DX
Field Value
System.Single
|
DY
Declaration
public float DY
Field Value
System.Single
|
Empty
Identity
M11
Declaration
public float M11
Field Value
System.Single
|
M12
Declaration
public float M12
Field Value
System.Single
|
M21
Declaration
public float M21
Field Value
System.Single
|
M22
Declaration
public float M22
Field Value
System.Single
|
PI
Declaration
public const float PI = 3.141593F
Field Value
System.Single
|
RadianToDegree
Declaration
public const float RadianToDegree = 57.2957726F
Field Value
System.Single
|
TwoPI
Declaration
public const float TwoPI = 6.283186F
Field Value
System.Single
|
Properties
Determinant
Gets the determinant - [(M11 * M22) - (M12 * M21)] - of this Matrix.
Declaration
public float Determinant { get; }
Property Value
System.Single
|
Elements
Gets all the six fields of the matrix as an array.
Declaration
public float[] Elements { get; }
Property Value
System.Single[]
|
IsEmpty
Determines whether the current matrix is empty.
Declaration
public bool IsEmpty { get; }
Property Value
System.Boolean
|
IsIdentity
Determines whether this matrix equals to the Identity one.
Declaration
public bool IsIdentity { get; }
Property Value
System.Boolean
|
IsInvertible
Determines whether this matrix may be inverted. That is to have non-zero determinant.
Declaration
public bool IsInvertible { get; }
Property Value
System.Boolean
|
Rotation
Gets the rotation (in degrees) applied to this matrix.
Declaration
public float Rotation { get; }
Property Value
System.Single
|
ScaleX
Gets the scale by the X axis, provided by this matrix.
Declaration
public float ScaleX { get; }
Property Value
System.Single
|
ScaleY
Gets the scale by the Y axis, provided by this matrix.
Declaration
public float ScaleY { get; }
Property Value
System.Single
|
Methods
Divide(RadMatrix)
Equals(Matrix)
Declaration
public bool Equals(Matrix gdiMatrix)
Parameters
System.Drawing.Drawing2D.Matrix
gdiMatrix
|
Returns
System.Boolean
|
Equals(Object)
Declaration
public override bool Equals(object obj)
Parameters
System.Object
obj
|
Returns
System.Boolean
|
Overrides
Equals(Single[])
Declaration
public bool Equals(float[] elements)
Parameters
System.Single[]
elements
|
Returns
System.Boolean
|
GetHashCode()
Declaration
public override int GetHashCode()
Returns
System.Int32
|
Overrides
Invert()
Declaration
public void Invert()
Multiply(RadMatrix)
Multiply(RadMatrix, MatrixOrder)
Declaration
public void Multiply(RadMatrix m, MatrixOrder order)
Parameters
RadMatrix
m
|
System.Drawing.Drawing2D.MatrixOrder
order
|
PointsDistance(PointF, PointF)
Declaration
public static float PointsDistance(PointF pt1, PointF pt2)
Parameters
System.Drawing.PointF
pt1
|
System.Drawing.PointF
pt2
|
Returns
System.Single
|
Reset()
Declaration
public void Reset()
Rotate(Single)
Declaration
public void Rotate(float angle)
Parameters
System.Single
angle
|
Rotate(Single, MatrixOrder)
Declaration
public void Rotate(float angle, MatrixOrder order)
Parameters
System.Single
angle
|
System.Drawing.Drawing2D.MatrixOrder
order
|
RotateAt(Single, PointF)
Declaration
public void RotateAt(float angle, PointF origin)
Parameters
System.Single
angle
|
System.Drawing.PointF
origin
|
RotateAt(Single, PointF, MatrixOrder)
Declaration
public void RotateAt(float angle, PointF origin, MatrixOrder order)
Parameters
System.Single
angle
|
System.Drawing.PointF
origin
|
System.Drawing.Drawing2D.MatrixOrder
order
|
Scale(Single, Single)
Declaration
public void Scale(float scaleX, float scaleY)
Parameters
System.Single
scaleX
|
System.Single
scaleY
|
Scale(Single, Single, MatrixOrder)
Declaration
public void Scale(float scaleX, float scaleY, MatrixOrder order)
Parameters
System.Single
scaleX
|
System.Single
scaleY
|
System.Drawing.Drawing2D.MatrixOrder
order
|
ToGdiMatrix()
Declaration
public Matrix ToGdiMatrix()
Returns
System.Drawing.Drawing2D.Matrix
|
ToString()
Declaration
public override string ToString()
Returns
System.String
|
Overrides
TransformPoint(PointF)
Declaration
public PointF TransformPoint(PointF point)
Parameters
System.Drawing.PointF
point
|
Returns
System.Drawing.PointF
|
TransformPoints(PointF[])
Declaration
public void TransformPoints(PointF[] points)
Parameters
System.Drawing.PointF[]
points
|
TransformRectangle(RectangleF)
Declaration
public RectangleF TransformRectangle(RectangleF bounds)
Parameters
System.Drawing.RectangleF
bounds
|
Returns
System.Drawing.RectangleF
|
Translate(Single, Single)
Declaration
public void Translate(float dx, float dy)
Parameters
System.Single
dx
|
System.Single
dy
|
Translate(Single, Single, MatrixOrder)
Declaration
public void Translate(float dx, float dy, MatrixOrder order)
Parameters
System.Single
dx
|
System.Single
dy
|
System.Drawing.Drawing2D.MatrixOrder
order
|
Operators
Equality(RadMatrix, RadMatrix)
Declaration
public static bool operator ==(RadMatrix a, RadMatrix b)
Parameters
RadMatrix
a
|
RadMatrix
b
|
Returns
System.Boolean
|
Inequality(RadMatrix, RadMatrix)
Declaration
public static bool operator !=(RadMatrix a, RadMatrix b)
Parameters
RadMatrix
a
|
RadMatrix
b
|
Returns
System.Boolean
|
Multiply(RadMatrix, RadMatrix)
Declaration
public static RadMatrix operator *(RadMatrix a, RadMatrix b)
Parameters
RadMatrix
a
|
RadMatrix
b
|
Returns
RadMatrix
|