ClassMatrixPosition
Matrix-backed implementation of IPosition for precise 2D transforms when placing content in fixed documents.
Definition
Namespace:Telerik.Windows.Documents.Fixed.Model.Data
Assembly:Telerik.Windows.Documents.Fixed.dll
Syntax:
public class MatrixPosition : IPosition
Inheritance: objectMatrixPosition
Implements:
Constructors
MatrixPosition()
Create a new instance with an identity matrix.
Declaration
public MatrixPosition()
MatrixPosition(IPosition)
Create a new instance by copying the matrix from another position.
Declaration
public MatrixPosition(IPosition other)
Parameters
other
The position to copy transformation values from.
MatrixPosition(Matrix)
Create a new instance using the provided transformation matrix.
Declaration
public MatrixPosition(Matrix matrix)
Parameters
matrix
Matrix
The transformation matrix to use.
Properties
Default
Returns a new instance with identity transformation for convenience.
Declaration
public static MatrixPosition Default { get; }
Property Value
A new MatrixPosition instance with identity matrix.
Matrix
Transformation matrix that defines the current position, scale, and rotation.
Declaration
public Matrix Matrix { get; }
Property Value
Matrix
The transformation matrix containing scale, rotation, and translation values.
Implements
Methods
Clear()
Resets all transformation values to their default state.
Declaration
public void Clear()
Implements
Clone()
Creates a deep copy of the current matrix position with all transformation values.
Declaration
public IPosition Clone()
Returns
A new MatrixPosition instance that is a copy of this instance.
Implements
Rotate(double)
Applies rotation transformation by the specified angle around the origin.
Declaration
public void Rotate(double angle)
Parameters
angle
The rotation angle in degrees.
Implements
RotateAt(double, double, double)
Applies rotation transformation by the specified angle around a center point.
Scale(double, double)
Applies scaling transformation by the specified factors.
ScaleAt(double, double, double, double)
Applies scaling transformation by the specified factors around a center point.
Declaration
public void ScaleAt(double scaleX, double scaleY, double centerX, double centerY)
Parameters
scaleX
The horizontal scale factor.
scaleY
The vertical scale factor.
centerX
The X coordinate of the scaling center point.
centerY
The Y coordinate of the scaling center point.
Implements
Translate(double, double)
Applies translation transformation by the specified offset values.