Class Matrix
Tên không gian: Aspose.Imaging Tổng hợp: Aspose.Imaging.dll (25.5.0)
Thay thế GDI + Matrix.
[JsonObject(MemberSerialization.OptIn)]
public class MatrixInheritance
Thành viên thừa kế
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Hầu hết các thuật toán được lấy từ Sun’s AffineTransform.java.Tên của Java cho các yếu tố matrix được sử dụng bên trong.Bản đồ tên Java để .net để mô tả:M00 M11 Kích thước XM10 M12 Shear Ym01 M21 Shear Xm11 M22 Kích thước Ym02 M31 Bản dịch Xm12 M32 Bản dịch Y
Constructors
Matrix()
Bắt đầu một ví dụ mới của lớp Matrix như là lớp Matrix nhận dạng.
public Matrix()Matrix(Hải quân, Hải quân, Hải quân, Hải quân, Hải quân)
Bắt đầu một trường hợp mới của lớp Aspose.Imaging.Matrix.
[JsonConstructor]
public Matrix(float m11, float m12, float m21, float m22, float m31, float m32)Parameters
m11 float
M00 M11 Kích thước X
m12 float
M10 M12 Shear Y
m21 float
m01 M21 Shear X
m22 float
m11 M22 Kích thước Y
m31 float
m02 M31 Bản dịch X
m32 float
m12 M32 Bản dịch Y
Matrix(Vị trí, PointF[])
Bắt đầu một ví dụ mới của lớp Aspose.Imaging.Matrix đến biến đổi địa phương được xác định bởi góc thẳng cụ thể và chuỗi các điểm.
public Matrix(RectangleF rect, PointF[] plgpts)Parameters
rect RectangleF
Một cấu trúc Aspose.Imaging.RectangleF đại diện cho góc phải được chuyển đổi.
plgpts PointF
[ ]
Một chuỗi của ba cấu trúc Aspose.Imaging.PointF đại diện cho các điểm của một parallelogram mà các góc trên trái, trên phải, và dưới trái của đường thẳng sẽ được chuyển đổi.
Matrix(Vị trí, Point[])
Bắt đầu một ví dụ mới của lớp Aspose.Imaging.Matrix đến biến đổi địa phương được xác định bởi góc thẳng cụ thể và chuỗi các điểm.
public Matrix(Rectangle rect, Point[] plgpts)Parameters
rect Rectangle
A Aspose.Imaging.Rectangle cấu trúc đại diện cho các đường thẳng phải được chuyển đổi.
plgpts Point
[ ]
Một chuỗi của ba Aspose.Imaging.Thông điểm cấu trúc đại diện cho các điểm của một parallelogram mà các góc trên trái, trên phải, và dưới trái của đường thẳng sẽ được chuyển đổi.
Matrix(Matrix)
Tạo một bản sao của lớp Aspose.Imaging.Matrix.
public Matrix(Matrix origin)Parameters
origin Matrix
Matrix cơ bản để đối phó
Fields
TypeFlip
Bút lá cờ này cho thấy rằng sự biến đổi được định nghĩa bởi đối tượng nàythực hiện một hình ảnh gương flip xung quanh một số axis mà thay đổibình thường hệ thống phối hợp tay phải vào tay tráihệ thống ngoài các chuyển đổi được chỉ ra bởi các bit cờ khác.Một hệ thống tọa độ tay phải là một nơi mà X tích cựcaxis xoay theo cách đồng hồ để vượt qua axis Y tích cựctương tự như hướng mà ngón tay trên tay phải của bạncurl khi bạn cẩn thận kết thúc trên ngón tay của bạn.Một hệ thống tọa độ bên trái là một nơi mà X tích cựcaxis xoay theo cách đồng hồ để vượt qua axis Y tích cực tương tựđến hướng mà ngón tay trên tay trái của bạn xoay.Không có cách toán học để xác định góc độ củachuyển đổi gốc hoặc gương từ tất cả các góccủa flip là giống nhau do một xoay điều chỉnh thích hợp.Lưu ý: TypeFlip được thêm vào sau khi GENERAL_TRANSFORM đã được công khailưu thông và các bit cờ sẽ không còn thuận tiệnđổi tên mà không giới thiệu sự không tương thích nhị phân bên ngoàiMã
public const int TypeFlip = 64Giá trị Field
TypeGeneralRotation
Bút lá cờ này cho thấy rằng sự biến đổi được định nghĩa bởi đối tượng nàythực hiện một xoay bằng một góc tự nguyện ngoàiChuyển đổi được chỉ ra bởi các bits lá cờ khác.Một xoay thay đổi các góc của vectors bằng cùng một số lượngbất kể hướng ban đầu của vector và không cóThay đổi chiều dài vector.Bản vương miện này là lẫn nhau độc quyền với
public const int TypeGeneralRotation = 16Giá trị Field
TypeGeneralScale
Một quy mô tổng thể tăng chiều dài của các vector bằng cách khác nhauSố lượng trong các hướng x và y mà không thay đổi gócgiữa vectors perpendicularBút lá cờ này là độc quyền lẫn nhau với lá cờ TypeUniformScale.
public const int TypeGeneralScale = 4Giá trị Field
TypeGeneralTransform
Điều này liên tục cho thấy rằng sự biến đổi được định nghĩa bởi đối tượng nàythực hiện một chuyển đổi tự nguyện của các coordinates input.Nếu biến đổi này có thể được phân loại bởi bất kỳ liên tục nào ở trên,loại sẽ là loại liên tục TypeIdentity hoặc mộtkết hợp các bit cờ thích hợp cho các coordinate khác nhaunhững chuyển đổi mà sự chuyển đổi này thực hiện.
public const int TypeGeneralTransform = 32Giá trị Field
TypeIdentity
Một chuyển đổi danh tính là một trong đó các phối hợp sản xuất làLuôn luôn giống như các phối hợp đầu vào.Nếu sự biến đổi này là bất cứ điều gì khác ngoài sự biến đổi danh tính,loại sẽ là liên tục GENERAL_TRANSFORM hoặc mộtkết hợp các bit cờ thích hợp cho các coordinate khác nhaunhững chuyển đổi mà sự chuyển đổi này thực hiện.
public const int TypeIdentity = 0Giá trị Field
TypeMaskRotation
Điều này là một mặt nạ nhỏ cho bất kỳ bit cờ xoay nào.
public const int TypeMaskRotation = 24Giá trị Field
TypeMaskScale
Sự liên tục này là một mặt nạ nhỏ cho bất kỳ bit lá cờ quy mô nào.
public const int TypeMaskScale = 6Giá trị Field
TypeQuadrantRotation
Bút lá cờ này cho thấy rằng sự biến đổi được định nghĩa bởi đối tượng nàythực hiện một vòng tròn bốn bằng một số nhiều 90 độ trongNgoài các chuyển đổi được chỉ ra bởi các bit cờ khác.Một xoay thay đổi các góc của vectors bằng cùng một số lượngbất kể hướng ban đầu của vector và không cóThay đổi chiều dài vector.Chiếc nhánh này là độc quyền lẫn nhau với cờ TypeGeneralRotation.
public const int TypeQuadrantRotation = 8Giá trị Field
TypeTranslation
Một phiên dịch di chuyển các tọa độ bằng một số lượng liên tục trong xvà y mà không thay đổi chiều dài hoặc góc của vectors.
public const int TypeTranslation = 1Giá trị Field
TypeUniformScale
Một quy mô đồng nhất làm tăng chiều dài vector bằng cùng một số lượngtrong cả các hướng x và y mà không thay đổi góc giữaCác vectorChiếc nhánh này là độc quyền lẫn nhau với cờ TypeGeneralScale.
public const int TypeUniformScale = 2Giá trị Field
Properties
Elements
Nó nhận được một loạt các giá trị điểm floating đại diện cho các yếu tố của Aspose.Imaging.Matrix này.
public float[] Elements { get; }Giá trị bất động sản
float [ ]
M11
Nó nhận được yếu tố matrice ở hàng đầu hàng đầu cột đầu tiên. đại diện quy mô theo axis X.
[JsonProperty]
public float M11 { get; }Giá trị bất động sản
M12
Nó nhận được yếu tố matrice ở hàng thứ nhất cột thứ hai. đại diện cho tấm dọc theo axis Y.
[JsonProperty]
public float M12 { get; }Giá trị bất động sản
M21
Nó nhận được yếu tố matrice ở hàng thứ hai đầu tiên cột. đại diện cho một tấm dọc theo axis X.
[JsonProperty]
public float M21 { get; }Giá trị bất động sản
M22
Nó nhận được yếu tố matrice ở cột thứ hai hàng thứ hai. đại diện cho quy mô dọc theo ax Y.
[JsonProperty]
public float M22 { get; }Giá trị bất động sản
M31
Nhận các yếu tố matrix ở hàng thứ ba đầu tiên cột. đại diện cho phiên dịch dọc theo axis X.
[JsonProperty]
public float M31 { get; }Giá trị bất động sản
M32
Nó nhận được yếu tố matrice ở hàng thứ ba đầu tiên cột. đại diện cho phiên dịch dọc theo ax Y.
[JsonProperty]
public float M32 { get; }Giá trị bất động sản
Methods
Equals(Matrix và Matrix)
Nó xác định liệu hai matrixes có bình đẳng hay không.
public static bool Equals(Matrix a, Matrix b)Parameters
a Matrix
Matrix đầu tiên để so sánh.
b Matrix
Matrix thứ hai để so sánh.
Returns
Thật sự nếu matrixes là bình đẳng.
Equals(đối tượng)
Nó xác định xem System.Object được chỉ định có tương đương với trường hợp này hay không.
public override bool Equals(object obj)Parameters
obj object
Hệ thống.Object để so sánh với trường hợp này.
Returns
’truyền’ nếu System.Object được chỉ định là tương đương với trường hợp này; nếu không, ’lầm'.
Exceptions
Các thông số obj’ là null.
GetElements()
Nhận bản sao của các yếu tố matrix.
public float[] GetElements()Returns
float [ ]
Một bản sao của Matrix Elements.
GetHashCode()
Quay lại một mã hash cho trường hợp này.
public override int GetHashCode()Returns
Một mã hash cho ví dụ này, phù hợp để sử dụng trong các thuật toán hashing và cấu trúc dữ liệu như một bảng hash.
Multiply(Matrix và MatrixOrder)
Lặp lại Matrix này bằng Matrix được chỉ định trong parameter matrix, và theo thứ tự được chỉ định trong parameter order.
public void Multiply(Matrix tTx, MatrixOrder order)Parameters
tTx Matrix
Nhãn hiệu: The tx. The tx
order MatrixOrder
Lệnh - Lệnh - Lệnh
Multiply(Matrix)
Lặp lại Matrix này bằng Matrix được chỉ định trong Parameter Matrix bằng cách sử dụng (đặc định) Prepend Order.
public void Multiply(Matrix tTx)Parameters
tTx Matrix
Matrix để đa dạng với.
Reset()
Khôi phục lại Matrix này để có các yếu tố của Matrix Identity.
public void Reset()Rotate(Đánh giá MatrixOrder)
Ứng dụng xoay theo chiều đồng hồ của một số lượng được chỉ định trong thông số góc, xung quanh nguồn gốc (zero x và y phối hợp) cho Matrix này trong thứ tự được chỉ định.
public void Rotate(float angle, MatrixOrder order)Parameters
angle float
góc xoay.
order MatrixOrder
Lệnh Matrix
Rotate(Sông)
Ứng dụng xoay đồng hồ của một số lượng được chỉ định trong thông số góc, xung quanh nguồn gốc (zero x và y coordinates) cho Matrix này trong lệnh mặc định (Prepend).
public void Rotate(float angle)Parameters
angle float
góc xoay.
RotateAt(Tính năng: PointF, MatrixOrder)
Ứng dụng một xoay đồng hồ về điểm được chỉ định cho Matrix này trong thứ tự được chỉ định.
public void RotateAt(float angle, PointF point, MatrixOrder order)Parameters
angle float
Ngôi góc
point PointF
Điểm .
order MatrixOrder
lệnh .
RotateAt(Động đất, PointF)
Ứng dụng một xoay đồng hồ về điểm được chỉ định cho Matrix này trong lệnh mặc định (Prepend).
public void RotateAt(float angle, PointF point)Parameters
angle float
Ngôi góc
point PointF
Điểm .
Scale(Float, Float và MatrixOrder)
Ứng dụng vector quy mô cụ thể (scaleX và scaleY) cho Aspose.Imaging.Matrix này bằng cách sử dụng lệnh được chỉ định.
public void Scale(float scaleX, float scaleY, MatrixOrder order)Parameters
scaleX float
Kích thước x.
scaleY float
Kích thước Y.
order MatrixOrder
lệnh .
Scale(Float , Float)
Ứng dụng vector quy mô cụ thể (scaleX và scaleY) cho Matrix này bằng cách sử dụng lệnh (default) Prepend.
public void Scale(float sx, float sy)Parameters
sx float
Lời bài hát: The SX. The SX
sy float
Lời bài hát: The Sy.
ToString()
Trở lại một System.String đại diện cho trường hợp này.
public override string ToString()Returns
Một hệ thống.String đại diện cho trường hợp này.
TransformPoints(Điểm[])
Ứng dụng biến đổi địa phương được đại diện bởi Aspose.Imaging.Matrix này cho một loạt các điểm cụ thể.
public void TransformPoints(PointF[] points)Parameters
points PointF
[ ]
Các điểm.
Translate(Float, Float và MatrixOrder)
Ứng dụng vector dịch cụ thể cho Matrix này theo thứ tự cụ thể.
public void Translate(float offsetX, float offsetY, MatrixOrder order)Parameters
offsetX float
Tùy chọn x.
offsetY float
Ưu đãi Y.
order MatrixOrder
lệnh .
Translate(Float , Float)
Ứng dụng vector dịch cụ thể cho Aspose.Imaging.Matrix này bằng cách sử dụng lệnh Prepend (tiền định).
public void Translate(float tx, float ty)Parameters
tx float
Nhãn hiệu: The tx. The tx
ty float
Lời bài hát: The Ty.