Matrix 类

Summary: Replaces the GDI+ Matrix.

Module: aspose.imaging

Full Name: aspose.imaging.Matrix

Constructors

Name描述
Matrix()将 Matrix 类的新实例初始化为单位矩阵。
Matrix(m11, m12, m21, m22, m31, m32)Matrix 类的新实例初始化。
Matrix(origin)复制 Matrix 类。
Matrix(rect, plgpts)Matrix 类的新实例初始化为由指定矩形和点数组定义的几何变换。
Matrix(rect, plgpts)Matrix 类的新实例初始化为由指定矩形和点数组定义的几何变换。

Properties

NameTypeAccess描述
TYPE_FLIP [static]intr此标志位表示此对象定义的变换
执行关于某轴的镜像翻转,进而将通常的右手坐标系转换为左手坐标系
并且还会执行其他标志位指示的转换。
右手坐标系是指正 X 轴逆时针旋转以覆盖正 Y 轴,
类似于当你正面看向拇指时右手手指的卷曲方向。
左手坐标系是指正 X 轴顺时针旋转以覆盖正 Y 轴,
类似于左手手指的卷曲方向。
没有数学方法可以确定原始翻转或镜像变换的角度,因为在适当的调整旋转下,所有翻转角度都是相同的。
注意:TypeFlip 是在 GENERAL_TRANSFORM 已公开流通后添加的,
因此无法方便地重新编号标志位而不在外部代码中引入二进制不兼容。
TYPE_GENERAL_ROTATION [static]intr此标志位表示此对象定义的变换
执行任意角度的旋转,并且还会执行其他标志位指示的转换。
旋转会以相同的量改变向量的角度,
与向量的原始方向无关且不改变向量的长度。
此标志位与
TYPE_GENERAL_SCALE [static]intr通用缩放会在 x 和 y 方向上以不同的量乘以向量的长度,
而不改变垂直向量之间的角度。
此标志位与 TypeUniformScale 标志互斥。
TYPE_GENERAL_TRANSFORM [static]intr此常量表示此对象定义的变换
对输入坐标执行任意转换。
如果此变换可以由上述任意常量分类,
类型将是常量 TypeIdentity,或是
适用于此变换执行的各种坐标转换的相应标志位的组合。
TYPE_IDENTITY [static]intr恒等变换是指输出坐标始终与输入坐标相同的变换。
如果此变换不是恒等变换,
类型将是常量 GENERAL_TRANSFORM,或是
适用于此变换执行的各种坐标转换的相应标志位的组合。
TYPE_MASK_ROTATION [static]intr此常量是用于任意旋转标志位的位掩码。
TYPE_MASK_SCALE [static]intr此常量是用于任意缩放标志位的位掩码。
TYPE_QUADRANT_ROTATION [static]intr此标志位表示此对象定义的变换
执行以 90 度的整数倍为单位的象限旋转,
并且还会执行其他标志位指示的转换。
旋转会以相同的量改变向量的角度,
与向量的原始方向无关且不改变向量的长度。
此标志位与 TypeGeneralRotation 标志互斥。
TYPE_TRANSLATION [static]intr平移会在 x 和 y 方向上以恒定量移动坐标,
且不改变向量的长度或角度。
TYPE_UNIFORM_SCALE [static]intr统一缩放会在 x 和 y 方向上以相同的量乘以向量的长度,
而不改变向量之间的角度。
此标志位与 TypeGeneralScale 标志互斥。
elementsfloat[]r获取一个浮点数数组,表示此 Matrix 的元素。
m11floatr获取矩阵第一行第一列的元素。表示沿 X 轴的缩放。
m12floatr获取矩阵第一行第二列的元素。表示沿 Y 轴的剪切。
m21floatr获取矩阵第二行第一列的元素。表示沿 X 轴的剪切。
m22floatr获取矩阵第二行第二列的元素。表示沿 Y 轴的缩放。
m31floatr获取矩阵第三行第一列的元素。表示沿 X 轴的平移。
m32floatr获取矩阵第三行第一列的元素。表示沿 Y 轴的平移。

Methods

Name描述
create_with_rect(rect, plgpts)Matrix 类的新实例初始化为由指定矩形和点数组定义的几何变换。
create_with_rect_f(rect, plgpts)Matrix 类的新实例初始化为由指定矩形和点数组定义的几何变换。
get_elements()获取矩阵元素的副本。
multiply(t_tx)使用(默认)Prepend 顺序,将此 Matrix 与 matrix 参数中指定的矩阵相乘。
multiply(t_tx, order)将此 Matrix 与 matrix 参数中指定的矩阵相乘,并按照 order 参数中指定的顺序进行。
reset()将此 Matrix 重置为单位矩阵的元素。
rotate(angle)在默认(Prepend)顺序下,对此 Matrix 应用以角度参数指定的量进行顺时针旋转,围绕原点(零 x 和 y 坐标)。
rotate(angle, order)在指定的顺序下,对此 Matrix 应用以角度参数指定的量进行顺时针旋转,围绕原点(零 x 和 y 坐标)。
rotate_at(angle, point)在默认(Prepend)顺序下,对此 Matrix 应用围绕指定点的顺时针旋转。
rotate_at(angle, point, order)在指定的顺序下,对此 Matrix 应用围绕指定点的顺时针旋转。
scale(scale_x, scale_y, order)使用指定的顺序,将指定的缩放向量(scaleX 和 scaleY)应用到此 Matrix
scale(sx, sy)使用(默认)Prepend 顺序,将指定的缩放向量(scaleX 和 scaleY)应用到此 Matrix。
transform_points(points)将此 Matrix 所表示的几何变换应用于指定的点数组。
translate(offset_x, offset_y, order)在指定的顺序下,将指定的平移向量应用到此 Matrix。
translate(tx, ty)使用(默认)Prepend 顺序,将指定的平移向量应用到此 Matrix

Constructor: Matrix()

 Matrix() 

将 Matrix 类的新实例初始化为单位矩阵。

Constructor: Matrix(m11, m12, m21, m22, m31, m32)

 Matrix(m11, m12, m21, m22, m31, m32) 

Matrix 类的新实例初始化。

Parameters:

参数TypeDescription
m11floatm00 M11 缩放 X
m12floatm10 M12 剪切 Y
m21floatm01 M21 剪切 X
m22floatm11 M22 缩放 Y
m31floatm02 M31 平移 X
m32floatm12 M32 平移 Y

Constructor: Matrix(origin)

 Matrix(origin) 

复制 Matrix 类。

Parameters:

参数TypeDescription
originMatrix用于复制的基矩阵

Constructor: Matrix(rect, plgpts)

 Matrix(rect, plgpts) 

Matrix 类的新实例初始化为由指定矩形和点数组定义的几何变换。

Parameters:

参数TypeDescription
rectRectangleF一个 RectangleF 结构,表示要进行变换的矩形。
plgptsPointF[]一个包含三个 PointF 结构的数组,表示要将矩形的左上、右上和左下角变换到的平行四边形的三个点。平行四边形的右下角由前面三个角推断得到。

Constructor: Matrix(rect, plgpts)

 Matrix(rect, plgpts) 

Matrix 类的新实例初始化为由指定矩形和点数组定义的几何变换。

Parameters:

参数TypeDescription
rectRectangle一个 RectangleF 结构,表示要进行变换的矩形。
plgptsPoint[]一个包含三个 PointF 结构的数组,表示要将矩形的左上、右上和左下角变换到的平行四边形的三个点。平行四边形的右下角由前面三个角推断得到。

Method: create_with_rect(rect, plgpts) [static]

 create_with_rect(rect, plgpts) 

Matrix 类的新实例初始化为由指定矩形和点数组定义的几何变换。

Parameters:

参数TypeDescription
rectRectangle一个 RectangleF 结构,表示要进行变换的矩形。
plgptsPoint[]一个包含三个 PointF 结构的数组,表示要将矩形的左上、右上和左下角变换到的平行四边形的三个点。平行四边形的右下角由前面三个角推断得到。

Returns

TypeDescription
Matrix

Method: create_with_rect_f(rect, plgpts) [static]

 create_with_rect_f(rect, plgpts) 

Matrix 类的新实例初始化为由指定矩形和点数组定义的几何变换。

Parameters:

参数TypeDescription
rectRectangleF一个 RectangleF 结构,表示要进行变换的矩形。
plgptsPointF[]一个包含三个 PointF 结构的数组,表示要将矩形的左上、右上和左下角变换到的平行四边形的三个点。平行四边形的右下角由前面三个角推断得到。

Returns

TypeDescription
Matrix

Method: get_elements()

 get_elements() 

获取矩阵元素的副本。

Returns

TypeDescription
float[]矩阵元素的副本。

Method: multiply(t_tx)

 multiply(t_tx) 

使用(默认)Prepend 顺序,将此 Matrix 与 matrix 参数中指定的矩阵相乘。

Parameters:

参数TypeDescription
t_txMatrix用于相乘的矩阵。

Method: multiply(t_tx, order)

 multiply(t_tx, order) 

将此 Matrix 与 matrix 参数中指定的矩阵相乘,并按照 order 参数中指定的顺序进行。

Parameters:

参数TypeDescription
t_txMatrix该 tx. 该 tx. 该 tx.
orderMatrixOrder该 顺序. 该 顺序. 该 顺序.

Method: rotate(angle)

 rotate(angle) 

在默认(Prepend)顺序下,对此 Matrix 应用以角度参数指定的量进行顺时针旋转,围绕原点(零 x 和 y 坐标)。

Parameters:

参数TypeDescription
角度float该 旋转角度。

Method: rotate(angle, order)

 rotate(angle, order) 

在指定的顺序下,对此 Matrix 应用以角度参数指定的量进行顺时针旋转,围绕原点(零 x 和 y 坐标)。

Parameters:

参数TypeDescription
角度float该 旋转角度。
orderMatrixOrder该 矩阵顺序。

Method: rotate_at(angle, point)

 rotate_at(angle, point) 

在默认(Prepend)顺序下,对此 Matrix 应用围绕指定点的顺时针旋转。

Parameters:

参数TypeDescription
角度float角度。
pointPointF该 点。

Method: rotate_at(angle, point, order)

 rotate_at(angle, point, order) 

在指定的顺序下,对此 Matrix 应用围绕指定点的顺时针旋转。

Parameters:

参数TypeDescription
角度float角度。
pointPointF该 点。
orderMatrixOrder该 顺序。

Method: scale(scale_x, scale_y, order)

 scale(scale_x, scale_y, order) 

使用指定的顺序,将指定的缩放向量(scaleX 和 scaleY)应用到此 Matrix

Parameters:

参数TypeDescription
scale_xfloat该 X 缩放。
scale_yfloat该 Y 缩放。
orderMatrixOrder该 顺序。

Method: scale(sx, sy)

 scale(sx, sy) 

使用(默认)Prepend 顺序,将指定的缩放向量(scaleX 和 scaleY)应用到此 Matrix。

Parameters:

参数TypeDescription
sxfloat该 sx. 该 sx. 该 sx.
syfloat该 sy. 该 sy. 该 sy.

Method: transform_points(points)

 transform_points(points) 

将此 Matrix 所表示的几何变换应用于指定的点数组。

Parameters:

参数TypeDescription
pointsPointF[]该 点。

Method: translate(offset_x, offset_y, order)

 translate(offset_x, offset_y, order) 

在指定的顺序下,将指定的平移向量应用到此 Matrix。

Parameters:

参数TypeDescription
offset_xfloat该 X 偏移。
offset_yfloat该 Y 偏移。
orderMatrixOrder该 顺序。

Method: translate(tx, ty)

 translate(tx, ty) 

使用(默认)Prepend 顺序,将指定的平移向量应用到此 Matrix

Parameters:

参数TypeDescription
txfloat该 tx. 该 tx. 该 tx.
tyfloat该 ty. 该 ty. 该 ty.