Матрица

Матрица

Общ преглед

Matrix е клас в Aspose.PDF FOSS за .NET.

Представлява 3x3 матрица за трансформация [a b 0; c d 0; e f 1].

Този клас предоставя 30 метода за работа с Matrix обекти в .NET програми.
Наличните методи включват: Add, Equals, GetAngle, GetFlipMatrix, GetHashCode, Inverse, InverseTransformPoint, Matrix, Multiply, Reverse, Rotate, Rotation, и 8 допълнителни метода.
Всички публични членове са достъпни за всяко .NET приложение след инсталиране на пакета Aspose.PDF FOSS for .NET.
Свойства: A, B, C, D, Data, E, и 3 още.

Свойства

ИмеТипДостъпОписание
AdoubleЧетене/ЗаписПолучава или задава a.
BdoubleЧетене/ЗаписПолучава или задава b.
CdoubleЧетене/ЗаписПолучава или задава c.
DdoubleЧетене/ЗаписПолучава или задава d.
EdoubleЧетене/ЗаписПолучава или задава e.
FdoubleЧетене/ЗаписПолучава или задава f.
Datadouble[]ЧетенеЕлементите на матрицата като 6‑елементен double масив.
Elementsfloat[]ЧетенеЕлементите на матрицата като 6‑елементен float масив.
IdentityMatrixЧетенеИдентична матрица.

Методи

ПодписОписание
Matrix()Конструктор по подразбиране — създава единичната матрица.
Matrix(a: double, b: double, c: double, d: double, e: double, f: double)Извиква Matrix върху този екземпляр на Matrix.
Matrix(matrix: Matrix)Конструктор за копиране.
Matrix(matrixArray: double[])Създава матрица от масив с 6 елемента [a, b, c, d, e, f].
Matrix(matrixArray: float[])Създава матрица от масив с 6 елемента от тип float.
Translate(tx: double, ty: double)Създава матрица за транслация.
Scale(sx: double, sy: double)Създава матрица за мащабиране.
Rotate(degrees: double)Създава матрица за ротация (ъгъл в градуси).
Translate(dx: double, dy: double, source: Matrix)Композиция на транслация върху източника: връща source × translate(dx, dy).
Scale(sx: double, sy: double, source: Matrix)Композиция на мащабиране върху източника: връща source × scale(sx, sy).
Rotation(alpha: double)Създава матрица за ротация; alpha е в радиани.
Rotation(rotation: Rotation)Създава матрица за ротация за една от четирите стандартни PDF ротации.
Skew(alpha: double, beta: double)Създава матрица за наклон/изкривяване; alpha и beta са в радиани.
GetAngle(rotation: Rotation)Конвертира стойност Rotation в ъгъл в радиани.
GetFlipMatrix()Матрица, която обръща оста Y (вертикално огледало).
Add(other: Matrix)Елементно събиране.
Multiply(other: Matrix)Умножава тази матрица с друга: this × other.
TransformPoint(x: double, y: double)Трансформира точка (връща резултата чрез кортеж — удобство).
Transform(x: double, y: double, x1: double, y1: double)Трансформира точка и връща резултата чрез out параметри.
InverseTransformPoint(x: double, y: double)Трансформира точка чрез обратната на тази матрица (връща резултата чрез кортеж).
UnTransform(x1: double, y1: double, x: double, y: double)Обратно трансформира точка и връща резултата чрез out параметри.
Scale(x: double, y: double, x1: double, y1: double)Прилага само скалата от тази матрица (пренебрегва компонента за транслация).
UnScale(x1: double, y1: double, x: double, y: double)Прилага обратната скала (пренебрегва транслацията).
Inverse()Изчислява обратната матрица.
Reverse()Изчислява обратната (реверсивна) матрица.
Transform(p: Point)Трансформира точка.
Transform(rect: Rectangle)Трансформира правоъгълник.
Equals(obj: object?)Извиква Equals върху този екземпляр на Matrix.
GetHashCode()Извиква GetHashCode върху този екземпляр на Matrix.
ToString()Извиква ToString върху този екземпляр на Matrix.

Вижте също

 Български