Matrix Matrix Matrix Matrix Struct

Definizione

Rappresenta una matrice di trasformazione affine 3x3 usata per le trasformazioni nello spazio 2D.Represents a 3x3 affine transformation matrix used for transformations in 2-D space.

public value class Matrix : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.MatrixConverter))]
[System.Serializable]
public struct Matrix : IFormattable
type Matrix = struct
    interface IFormattable
Public Structure Matrix
Implements IFormattable
Ereditarietà
Attributi
Implementazioni

Commenti

Una 3x3 matrice viene usata per le trasformazioni in un 2D2-D piano x-y.A 3x3 matrix is used for transformations in a 2D2-D x-y plane. Matrici di trasformazione affine possono essere moltiplicate per formare un numero qualsiasi di trasformazioni lineare, ad esempio la rotazione e inclinazione (taglio), seguito dalla traslazione.Affine transformation matrices can be multiplied to form any number of linear transformations, such as rotation and skew (shear), followed by translation. Una matrice di trasformazione affine ha la colonna finale è uguale a (0, 0, 1), in modo che solo i membri nelle prime due colonne devono essere specificati.An affine transformation matrix has its final column equal to (0, 0, 1), so only the members in the first two columns need to be specified. Si noti che i vettori sono espressi come vettori di riga, anziché come vettori di colonna.Note that vectors are expressed as row-vectors, not column vectors.

Oggetto WPFWPF Matrix viene archiviata utilizzando l'ordine di riga e presenta la struttura seguente:A WPFWPF Matrix is stored using row-major order and has the following structure:

M11 M12 00
M21 M22 00
OffsetX OffsetY 11

Nell'ultima riga, i membri OffsetX e OffsetY, rappresentano i valori di conversione.The members in the last row, OffsetX and OffsetY, represent translation values.

Nei metodi e proprietà, la matrice di trasformazione è in genere specificata come un vettore con solo sei membri, come indicato di seguito:In methods and properties, the transformation matrix is usually specified as a vector with only six members, as follows:

(M11, M12, M21, M22, OffsetX, OffsetY)(M11, M12, M21, M22, OffsetX, OffsetY)

Sebbene sia possibile usare una Matrix struttura direttamente per convertire i punti di singole, o con un MatrixTransform trasformare oggetti, WPFWPF fornisce inoltre un set di classi che consentono di trasformare gli oggetti senza utilizzare direttamente le matrici: RotateTransform, ScaleTransform, SkewTransform, e TranslateTransform.Although you can use a Matrix structure directly to translate individual points, or with a MatrixTransform to transform objects, WPFWPF also provides a set of classes that enable you to transform objects without working directly with matrices: RotateTransform, ScaleTransform, SkewTransform, and TranslateTransform.

Uso della sintassi XAML per gli attributiXAML Attribute Usage

<object property="m11, m12, m21, m22, offsetX, offsetY"/>  
- or -  
<object property="Identity"/>  

Valori XAMLXAML Values

m11m11
System.Double

Il valore nella prima riga e nella prima colonna della struttura Matrix.The value in the first row and first column of this Matrix. Per altre informazioni, vedere la proprietà M11.For more information, see the M11 property.

m12m12
System.Double

Il valore nella prima riga e della seconda colonna.The value in the first row and second column. Per altre informazioni, vedere la proprietà M12.For more information, see the M12 property.

m21m21
System.Double

Il valore nella seconda riga e della prima colonna.The value in the second row and first column. Per altre informazioni, vedere la proprietà M21.For more information, see the M21 property.

m22m22
System.Double

Il valore nella seconda riga e della seconda colonna.The value in the second row and second column. Per altre informazioni, vedere la proprietà M22.For more information, see the M22 property.

offsetXoffsetX
System.Double

Il valore nella terza riga e nella prima colonna.The value in the third row and first column. Per altre informazioni, vedere la proprietà OffsetX.For more information, see the OffsetX property.

offsetYoffsetY
System.Double

Il valore nella terza riga e della seconda colonna.The value in the third row and second column. Per altre informazioni, vedere la proprietà OffsetY.For more information, see the OffsetY property.

Costruttori

Matrix(Double, Double, Double, Double, Double, Double) Matrix(Double, Double, Double, Double, Double, Double) Matrix(Double, Double, Double, Double, Double, Double) Matrix(Double, Double, Double, Double, Double, Double)

Inizializza una nuova istanza della struttura Matrix.Initializes a new instance of the Matrix structure.

Proprietà

Determinant Determinant Determinant Determinant

Ottiene il determinante della struttura Matrix.Gets the determinant of this Matrix structure.

HasInverse HasInverse HasInverse HasInverse

Ottiene un valore che indica se questa struttura Matrix è invertibile o meno.Gets a value that indicates whether this Matrix structure is invertible.

Identity Identity Identity Identity

Ottiene una struttura Matrix di identità.Gets an identity Matrix.

IsIdentity IsIdentity IsIdentity IsIdentity

Ottiene un valore che indica se la struttura Matrix è una matrice di identità o meno.Gets a value that indicates whether this Matrix structure is an identity matrix.

M11 M11 M11 M11

Ottiene o imposta il valore della prima riga e della prima colonna della struttura Matrix.Gets or sets the value of the first row and first column of this Matrix structure.

M12 M12 M12 M12

Ottiene o imposta il valore della prima riga e della seconda colonna della struttura Matrix.Gets or sets the value of the first row and second column of this Matrix structure.

M21 M21 M21 M21

Ottiene o imposta il valore della seconda riga e della prima colonna della struttura Matrix.Gets or sets the value of the second row and first column of this Matrix structure.

M22 M22 M22 M22

Ottiene o imposta il valore della seconda riga e della seconda colonna della struttura Matrix.Gets or sets the value of the second row and second column of this Matrix structure.

OffsetX OffsetX OffsetX OffsetX

Ottiene o imposta il valore della terza riga e della prima colonna della struttura Matrix.Gets or sets the value of the third row and first column of this Matrix structure.

OffsetY OffsetY OffsetY OffsetY

Ottiene o imposta il valore della terza riga e della seconda colonna della struttura Matrix.Gets or sets the value of the third row and second column of this Matrix structure.

Metodi

Append(Matrix) Append(Matrix) Append(Matrix) Append(Matrix)

Accoda la struttura Matrix specificata alla struttura Matrix corrente.Appends the specified Matrix structure to this Matrix structure.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto Object specificato è o meno una struttura Matrix identica alla struttura Matrix corrente.Determines whether the specified Object is a Matrix structure that is identical to this Matrix.

Equals(Matrix) Equals(Matrix) Equals(Matrix) Equals(Matrix)

Determina se la struttura Matrix specificata è uguale o meno a questa istanza.Determines whether the specified Matrix structure is identical to this instance.

Equals(Matrix, Matrix) Equals(Matrix, Matrix) Equals(Matrix, Matrix) Equals(Matrix, Matrix)

Determina se le due strutture Matrix specificate sono identiche.Determines whether the two specified Matrix structures are identical.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Restituisce il codice hash di questa struttura Matrix.Returns the hash code for this Matrix structure.

Invert() Invert() Invert() Invert()

Inverte la struttura Matrix.Inverts this Matrix structure.

Multiply(Matrix, Matrix) Multiply(Matrix, Matrix) Multiply(Matrix, Matrix) Multiply(Matrix, Matrix)

Moltiplica una struttura Matrix per un'altra struttura Matrix.Multiplies a Matrix structure by another Matrix structure.

Parse(String) Parse(String) Parse(String) Parse(String)

Converte una rappresentazione String di una matrice nella struttura Matrix equivalente.Converts a String representation of a matrix into the equivalent Matrix structure.

Prepend(Matrix) Prepend(Matrix) Prepend(Matrix) Prepend(Matrix)

Antepone la struttura Matrix specificata alla struttura Matrix corrente.Prepends the specified Matrix structure onto this Matrix structure.

Rotate(Double) Rotate(Double) Rotate(Double) Rotate(Double)

Applica una rotazione dell'angolo specificato intorno all'origine della struttura Matrix .Applies a rotation of the specified angle about the origin of this Matrix structure.

RotateAt(Double, Double, Double) RotateAt(Double, Double, Double) RotateAt(Double, Double, Double) RotateAt(Double, Double, Double)

Ruota la matrice intorno al punto specificato.Rotates this matrix about the specified point.

RotateAtPrepend(Double, Double, Double) RotateAtPrepend(Double, Double, Double) RotateAtPrepend(Double, Double, Double) RotateAtPrepend(Double, Double, Double)

Antepone alla struttura Matrix una rotazione dell'angolo specificato intorno al punto definito.Prepends a rotation of the specified angle at the specified point to this Matrix structure.

RotatePrepend(Double) RotatePrepend(Double) RotatePrepend(Double) RotatePrepend(Double)

Antepone alla struttura Matrix una rotazione dell'angolo specificato.Prepends a rotation of the specified angle to this Matrix structure.

Scale(Double, Double) Scale(Double, Double) Scale(Double, Double) Scale(Double, Double)

Accoda il vettore di ridimensionamento specificato alla struttura Matrix corrente.Appends the specified scale vector to this Matrix structure.

ScaleAt(Double, Double, Double, Double) ScaleAt(Double, Double, Double, Double) ScaleAt(Double, Double, Double, Double) ScaleAt(Double, Double, Double, Double)

Ridimensiona la struttura Matrix rispetto al punto specificato in base al valore definito.Scales this Matrix by the specified amount about the specified point.

ScaleAtPrepend(Double, Double, Double, Double) ScaleAtPrepend(Double, Double, Double, Double) ScaleAtPrepend(Double, Double, Double, Double) ScaleAtPrepend(Double, Double, Double, Double)

Antepone il ridimensionamento specificato rispetto al punto definito di questa struttura Matrix.Prepends the specified scale about the specified point of this Matrix.

ScalePrepend(Double, Double) ScalePrepend(Double, Double) ScalePrepend(Double, Double) ScalePrepend(Double, Double)

Antepone il vettore di ridimensionamento specificato alla struttura Matrix corrente.Prepends the specified scale vector to this Matrix structure.

SetIdentity() SetIdentity() SetIdentity() SetIdentity()

Cambia la struttura Matrix in una matrice di identità.Changes this Matrix structure into an identity matrix.

Skew(Double, Double) Skew(Double, Double) Skew(Double, Double) Skew(Double, Double)

Accoda alla struttura Matrix un'inclinazione di gradi specificati nelle dimensioni x e y.Appends a skew of the specified degrees in the x and y dimensions to this Matrix structure.

SkewPrepend(Double, Double) SkewPrepend(Double, Double) SkewPrepend(Double, Double) SkewPrepend(Double, Double)

Antepone alla struttura Matrix un'inclinazione di gradi specificati nelle dimensioni x e y.Prepends a skew of the specified degrees in the x and y dimensions to this Matrix structure.

ToString() ToString() ToString() ToString()

Crea una rappresentazione String di questa struttura Matrix.Creates a String representation of this Matrix structure.

ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider)

Crea una rappresentazione String della struttura Matrix con le informazioni di formattazione specifiche delle impostazioni cultura.Creates a String representation of this Matrix structure with culture-specific formatting information.

Transform(Point) Transform(Point) Transform(Point) Transform(Point)

Trasforma il punto specificato mediante la struttura Matrix e restituisce il risultato.Transforms the specified point by the Matrix and returns the result.

Transform(Point[]) Transform(Point[]) Transform(Point[]) Transform(Point[])

Trasforma i punti specificati mediante la struttura Matrix.Transforms the specified points by this Matrix.

Transform(Vector) Transform(Vector) Transform(Vector) Transform(Vector)

Trasforma il vettore specificato mediante la struttura Matrix.Transforms the specified vector by this Matrix.

Transform(Vector[]) Transform(Vector[]) Transform(Vector[]) Transform(Vector[])

Trasforma i vettori specificati mediante la struttura Matrix.Transforms the specified vectors by this Matrix.

Translate(Double, Double) Translate(Double, Double) Translate(Double, Double) Translate(Double, Double)

Accoda alla struttura Matrix una traslazione degli offset specificati.Appends a translation of the specified offsets to this Matrix structure.

TranslatePrepend(Double, Double) TranslatePrepend(Double, Double) TranslatePrepend(Double, Double) TranslatePrepend(Double, Double)

Antepone alla struttura Matrix una traslazione degli offset specificati.Prepends a translation of the specified offsets to this Matrix structure.

Operatori

Equality(Matrix, Matrix) Equality(Matrix, Matrix) Equality(Matrix, Matrix) Equality(Matrix, Matrix)

Determina se le due strutture Matrix specificate sono identiche.Determines whether the two specified Matrix structures are identical.

Inequality(Matrix, Matrix) Inequality(Matrix, Matrix) Inequality(Matrix, Matrix) Inequality(Matrix, Matrix)

Determina se le due strutture Matrix specificate non sono identiche.Determines whether the two specified Matrix structures are not identical.

Multiply(Matrix, Matrix) Multiply(Matrix, Matrix) Multiply(Matrix, Matrix) Multiply(Matrix, Matrix)

Moltiplica una struttura Matrix per un'altra struttura Matrix.Multiplies a Matrix structure by another Matrix structure.

Implementazioni dell'interfaccia esplicita

IFormattable.ToString(String, IFormatProvider) IFormattable.ToString(String, IFormatProvider) IFormattable.ToString(String, IFormatProvider) IFormattable.ToString(String, IFormatProvider)

Formatta il valore dell'istanza corrente usando il formato specificato.Formats the value of the current instance using the specified format.

Si applica a

Vedi anche