Class Matrix

Class Matrix

Numele spaţiului: Aspose.Imaging Asamblare: Aspose.Imaging.dll (25.4.0)

Înlocuiește GDI+ Matrix.

[JsonObject(MemberSerialization.OptIn)]
public class Matrix

Inheritance

object Matrix

Membrii moștenitori

object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Remarks

Cele mai multe algoritmi sunt luate de la Sun’s AffineTransform.java.Numele Java pentru elementele matrice utilizate intern.Harta de nume Java la .net pentru a descrie:m00 M11 Scala Xm10 m12 șir Ym01 M21 Shear Xm11 M22 Scala Ym02 M31 Traducere Xm12 M32 Traducere Y

Constructors

Matrix()

Iniţializează o nouă instanţă a clasei Matrix ca matrix identităţii.

public Matrix()

Matrix(float, float, float, float, float, float)

Inițializează o nouă instanță a clasei Aspose.Imaging.Matrix.

[JsonConstructor]
public Matrix(float m11, float m12, float m21, float m22, float m31, float m32)

Parameters

m11 float

m00 M11 Scala X

m12 float

m10 m12 șir Y

m21 float

m01 M21 Shear X

m22 float

m11 M22 Scala Y

m31 float

m02 M31 Traducere X

m32 float

m12 M32 Traducere Y

Matrix(RectangleF și PointF[])

Inițializează o nouă instanță a clasei Aspose.Imaging.Matrix la transformarea geometrică definită de rectanglul specificat și de gama de puncte.

public Matrix(RectangleF rect, PointF[] plgpts)

Parameters

rect RectangleF

O structură Aspose.Imaging.RectangleF care reprezintă rectanglul care trebuie transformat.

plgpts PointF []

O serie de trei structuri Aspose.Imaging.PointF care reprezintă punctele unui paralelogram la care vor fi transformate colțurile din dreapta superioară, dreaptă și din stânga jos a rectangularului.

Matrix(Târgul, punctul[])

Inițializează o nouă instanță a clasei Aspose.Imaging.Matrix la transformarea geometrică definită de rectanglul specificat și de gama de puncte.

public Matrix(Rectangle rect, Point[] plgpts)

Parameters

rect Rectangle

O structură Aspose.Imaging.Rectangle care reprezintă rectanglul care trebuie transformat.

plgpts Point []

O serie de trei structuri Aspose.Imaging.Pointe care reprezintă punctele unui paralelogram la care vor fi transformate colțurile de sus stânga, sus dreapta și inferioară ale rectanglului.

Matrix(Matrix)

Face o copie a clasei Aspose.Imaging.Matrix.

public Matrix(Matrix origin)

Parameters

origin Matrix

Matrix de bază pentru a face față

Fields

TypeFlip

Acest bit de steag indică faptul că transformarea definită de acest obiectrealizează o imagine de oglindă flip-ul asupra anumitor axe care schimbăSistemul de coordonare cu mâna dreaptă în mâna stângăSistemul în plus față de conversii indicate de alte bite de pavilion.Un sistem de coordonate cu mâna dreaptă este unul în care X-ul pozitivaxul se rotește în mod contrar orei pentru a depăși axul pozitiv Yasemănătoare cu direcția în care degetele pe mâna dreaptăcurl atunci când te uiți la capul tău.Un sistem de coordonate cu mâna stângă este unul în care X-ul pozitivaxul se rotește în mod orar pentru a depăși axul pozitiv Y similarîn direcția în care degetele de pe mâna stângă curge.Nu există nici o metodă matematică de determinare a unghiuluitransformarea originală sau a oglinzii din toate unghiurilede flip sunt identice datorită unei rotații de ajustare adecvate.NOTĂ: TypeFlip a fost adăugat după ce GENERAL_TRANSFORM a fost publiccirculația și bits-ul de steag nu mai ar putea fi convenabilrenumerat fără introducerea incompatibilității binare în exteriorcodul .

public const int TypeFlip = 64

Valoarea câmpului

int

TypeGeneralRotation

Acest bit de steag indică faptul că transformarea definită de acest obiectrealizează o rotație prin un unghi arbitrar, în plus față deConversii indicate de alte bite de pavilion.O rotație schimbă unghiile vectorilor cu aceeași cantitateindiferent de direcția inițială a vectorului și fărăSchimbarea lungimii vectorului.Această bandă este reciproc exclusivă cu

public const int TypeGeneralRotation = 16

Valoarea câmpului

int

TypeGeneralScale

O scară generală multiplică lungimea vectorilor prin diferitecantități în direcțiile x și y fără a schimba unghiulîntre vectorii perpendiculi.Acest tip de steag este reciproc exclusiv cu steagul TypeUniformScale.

public const int TypeGeneralScale = 4

Valoarea câmpului

int

TypeGeneralTransform

Această constantă indică faptul că transformarea definită de acest obiectefectuează o conversie arbitrară a coordonatelor de intrare.Dacă această transformare poate fi clasificată de oricare dintre constanțele de mai sus,tipul va fi fie tipul de identitate constantă sau uncombinarea bits de pavilion corespunzător pentru diferitele coordonatetransformări pe care aceste transformări le realizează.

public const int TypeGeneralTransform = 32

Valoarea câmpului

int

TypeIdentity

O transformare a identității este una în care coordonatele de producție suntîntotdeauna la fel ca coordonatele de intrare.Dacă această transformare este altceva decât transformarea identității,tipul va fi fie constantul GENERAL_TRANSFORM sau uncombinarea bits de pavilion corespunzător pentru diferitele coordonatetransformări pe care aceste transformări le realizează.

public const int TypeIdentity = 0

Valoarea câmpului

int

TypeMaskRotation

Această constantă este un pic de mască pentru oricare dintre biturile de steag de rotație.

public const int TypeMaskRotation = 24

Valoarea câmpului

int

TypeMaskScale

Această constantă este o mască pentru oricare dintre picăturile de steag de scară.

public const int TypeMaskScale = 6

Valoarea câmpului

int

TypeQuadrantRotation

Acest bit de steag indică faptul că transformarea definită de acest obiectrealizează o rotație cu quadrant cu câteva multiple de 90 de grade înîn plus față de conversionele indicate de alte bite de pavilion.O rotație schimbă unghiile vectorilor cu aceeași cantitateindiferent de direcția inițială a vectorului și fărăSchimbarea lungimii vectorului.Acest tip de steag este reciproc exclusiv cu steagul TypeGeneralRotation.

public const int TypeQuadrantRotation = 8

Valoarea câmpului

int

TypeTranslation

O traducere mișcă coordonatele printr-o cantitate constantă în xși y fără a schimba lungimea sau unghiul vectorilor.

public const int TypeTranslation = 1

Valoarea câmpului

int

TypeUniformScale

O scară uniformă mărește lungimea vectorilor cu aceeași cantitate.în ambele direcții x și y fără a schimba unghiul întrepentru vectori.Acest tip de steag este reciproc exclusiv cu steagul TypeGeneralScale.

public const int TypeUniformScale = 2

Valoarea câmpului

int

Properties

Elements

Obține o serie de valori floating-point care reprezintă elementele acestui Aspose.Imaging.Matrix.

public float[] Elements { get; }

Valoarea proprietății

float []

M11

Obține elementul de matrice în prima coloană. reprezintă scara de-a lungul axei X.

[JsonProperty]
public float M11 { get; }

Valoarea proprietății

float

M12

Obține elementul de matrice în prima runda a doua coloană. Representează frunzele de-a lungul axei Y.

[JsonProperty]
public float M12 { get; }

Valoarea proprietății

float

M21

Obține elementul de matrice în prima coloană din a doua rândă. Representează coada de-a lungul axei X.

[JsonProperty]
public float M21 { get; }

Valoarea proprietății

float

M22

Obține elementul de matrice în a doua coloană. reprezintă scara de-a lungul axei Y.

[JsonProperty]
public float M22 { get; }

Valoarea proprietății

float

M31

Obține elementul de matrice în prima coloană a treia rând. reprezintă traducerea de-a lungul axului X.

[JsonProperty]
public float M31 { get; }

Valoarea proprietății

float

M32

Obține elementul de matrice în prima coloană a treia rând. reprezintă traducerea de-a lungul axei Y.

[JsonProperty]
public float M32 { get; }

Valoarea proprietății

float

Methods

Equals(Matrix și Matrix)

Se determină dacă două matrice sunt egale.

public static bool Equals(Matrix a, Matrix b)

Parameters

a Matrix

Prima matrice de comparare.

b Matrix

Cea de-a doua matrice de comparat.

Returns

bool

Este adevărat dacă matrice sunt egale.

Equals(Obiectul)

Determine dacă Sistemul.Obiect specificat este egal cu această instanță.

public override bool Equals(object obj)

Parameters

obj object

Sistemul.Obiect pentru a compara cu această instanță.

Returns

bool

‘realitate’ dacă Sistemul.Obiectul specificat este egal cu acest caz; altfel, ‘falsa’.

Exceptions

NullReferenceException

Parametrul obj’ este zero.

GetElements()

Obțineți o copie a elementelor matrice.

public float[] GetElements()

Returns

float []

O copie a elementelor matrice.

GetHashCode()

Întoarceți un cod hash pentru acest caz.

public override int GetHashCode()

Returns

int

Un cod de hash pentru acest exemplu, potrivit pentru utilizare în algoritmi de hashing și structuri de date, cum ar fi un tabel de hash.

Multiply(Matrix și MatrixOrder)

Multiplică această matrice prin matrica specificată în parametrul matrice și în ordinea specificată în parametrul de ordine.

public void Multiply(Matrix tTx, MatrixOrder order)

Parameters

tTx Matrix

Ceea ce se întâmplă cu tx.

order MatrixOrder

Ordinul – Ordinul – Ordinul

Multiply(Matrix)

Multiplică această matrice prin matrica specificată în parametrul matrice folosind (default) ordine Prepend.

public void Multiply(Matrix tTx)

Parameters

tTx Matrix

Matrix pentru a se multiplica cu.

Reset()

Resetă această matrice pentru a avea elementele matricei identității.

public void Reset()

Rotate(Călărași, MatrixOrder)

Aplica o rotație orală a unei cantități specificate în parametrul de unghi, în jurul originii (coordonate zero x și y) pentru această Matrix în ordinea specificată.

public void Rotate(float angle, MatrixOrder order)

Parameters

angle float

Angajul rotativ.

order MatrixOrder

Ordinul Matrixului.

Rotate(float)

Aplica o rotație orală a unei cantități specificate în parametrul de unghi, în jurul originii (zero x și y coordonate) pentru această Matrix în ordinea predefinită (Prepend).

public void Rotate(float angle)

Parameters

angle float

Angajul rotativ.

RotateAt(Cuvânt cheie: PointF, MatrixOrder)

Aplicați o rotație orală cu privire la punctul specificat acestei matrice în ordinea specificată.

public void RotateAt(float angle, PointF point, MatrixOrder order)

Parameters

angle float

cu unghiul .

point PointF

şi punctul .

order MatrixOrder

şi ordinea .

RotateAt(Călărași, PointF)

Aplicați o rotație orală cu privire la punctul specificat acestei matrice în ordinea predefinită (Prepend).

public void RotateAt(float angle, PointF point)

Parameters

angle float

cu unghiul .

point PointF

şi punctul .

Scale(în float, float, matrixOrder)

Aplicați vectorul de scară specificat (scaleX și scaleY) la acest Aspose.Imaging.Matrix folosind ordinea specificată.

public void Scale(float scaleX, float scaleY, MatrixOrder order)

Parameters

scaleX float

În scara X.

scaleY float

În scară Y.

order MatrixOrder

şi ordinea .

Scale(în float, float)

Aplicați vectorul de scară specificat (scaleX și scaleY) pentru această Matrix folosind (default) ordine Prepend.

public void Scale(float sx, float sy)

Parameters

sx float

SX – SX – SX – SX – SX – SX – SX – SX – SX

sy float

I. I. I. I. I. I. I. I. I. I. I.

ToString()

Întoarce un sistem.String care reprezintă această instanță.

public override string ToString()

Returns

string

Un sistem.String care reprezintă această instanță.

TransformPoints(Punctul[])

Aplica transformarea geometrică reprezentată de acest Aspose.Imaging.Matrix la o serie specifică de puncte.

public void TransformPoints(PointF[] points)

Parameters

points PointF []

şi punctele .

Translate(în float, float, matrixOrder)

Se aplică vectorul de traducere specificat acestei matrice în ordinea specificată.

public void Translate(float offsetX, float offsetY, MatrixOrder order)

Parameters

offsetX float

Întâlnirea lui X.

offsetY float

Împărtășește Y.

order MatrixOrder

şi ordinea .

Translate(în float, float)

Aplicați vectorul de traducere specificat pentru acest Aspose.Imaging.Matrix folosind (default) comanda Prepend.

public void Translate(float tx, float ty)

Parameters

tx float

Ceea ce se întâmplă cu tx.

ty float

Iată ce se întâmplă cu tine, cu tine.

 Română