Matrix3D Struct
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta una matrice 4 x 4 usata per le trasformazioni nello spazio 3D.
public value class Matrix3D : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))]
[System.Serializable]
public struct Matrix3D : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))]
public struct Matrix3D : IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))>]
[<System.Serializable>]
type Matrix3D = struct
interface IFormattable
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))>]
type Matrix3D = struct
interface IFormattable
Public Structure Matrix3D
Implements IFormattable
- Ereditarietà
- Attributi
- Implementazioni
Esempio
// Multiplies a Vector3D by a Matrix3D using the static Multiply method.
// Returns a Vector3D.
Vector3D vector1 = new Vector3D(20, 30, 40);
Matrix3D matrix1 = new Matrix3D(10, 10, 10, 0, 20, 20, 20, 0, 30, 30, 30, 0, 5, 10, 15, 1);
Vector3D vectorResult = new Vector3D();
vectorResult = Vector3D.Multiply(vector1,matrix1);
// vector Result is equal to (2000, 2000, 2000)
' Multiplies a Vector3D by a Matrix3D using the static Multiply method.
' Returns a Vector3D.
Dim vector1 As New Vector3D(20, 30, 40)
Dim matrix1 As New Matrix3D(10, 10, 10, 0, 20, 20, 20, 0, 30, 30, 30, 0, 5, 10, 15, 1)
Dim vectorResult As New Vector3D()
vectorResult = Vector3D.Multiply(vector1,matrix1)
' vector Result is equal to (2000, 2000, 2000)
Commenti
Matrix3D ha la sintassi del vettore di riga seguente:
M11 | M12 | M13 | M14 |
M21 | M22 | M23 | M24 |
M31 | M32 | M33 | M34 |
OffsetX | OffsetY | OffsetZ | M44 |
Si noti che poiché anche la quarta colonna è accessibile, la matrice consente agli sviluppatori di rappresentare le trasformazioni affine e non affine.
Le matrici possono essere aggiunte o anteporte ad altre matrici. L'aggiunta della matrice A alla matrice B indica una trasformazione per B e quindi per A:
Uso della sintassi XAML per gli attributi
<object property="m11, m12, m13, m21, m22, m23, m31, m32, m33, offsetX, offsetY, offsetZ"/>
- or -
<object property="Identity"/>
Valori XAML
Valore nella prima riga e nella prima colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M11.
Valore nella prima riga e nella seconda colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M12.
Valore nella prima riga e nella terza colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M13.
Valore nella prima riga e nella quarta colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M14.
Valore nella seconda riga e nella prima colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M21.
Valore nella seconda riga e nella seconda colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M22.
Valore nella seconda riga e nella terza colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M23.
Valore nella seconda riga e nella quarta colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M24.
Valore nella terza riga e nella prima colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M31.
Valore nella terza riga e nella seconda colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M32.
Valore nella terza riga e nella terza colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M34.
Valore nella terza riga e nella quarta colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M33.
Valore nella quarta riga e nella quarta colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà M44.
offsetXSystem.Double
Valore nella quarta riga e nella prima colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà OffsetX.
OffsetySystem.Double
Valore nella quarta riga e nella seconda colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà OffsetY.
offsetZSystem.Double
Valore nella quarta riga e nella terza colonna di questo Matrix3Doggetto . Per altre informazioni, vedere la proprietà OffsetZ.
Costruttori
Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double) |
Costruttore che imposta i valori iniziali della matrice. |
Proprietà
Determinant |
Recupera il determinante della struttura Matrix3D . |
HasInverse |
Ottiene un valore che indica se Matrix3D è invertibile. |
Identity |
Modifica una struttura Matrix3D in una struttura Matrix3D di identità. |
IsAffine |
Ottiene un valore che indica se questa struttura Matrix3D è affine o meno. |
IsIdentity |
Determina se la struttura Matrix3D è una struttura Matrix3D di identità o meno. |
M11 |
Ottiene o imposta il valore della prima riga e della prima colonna della struttura Matrix3D. |
M12 |
Ottiene o imposta il valore della prima riga e della seconda colonna della struttura Matrix3D. |
M13 |
Ottiene o imposta il valore della prima riga e della terza colonna della struttura Matrix3D. |
M14 |
Ottiene o imposta il valore della prima riga e della quarta colonna della struttura Matrix3D. |
M21 |
Ottiene o imposta il valore della seconda riga e della prima colonna della struttura Matrix3D. |
M22 |
Ottiene o imposta il valore della seconda riga e della seconda colonna della struttura Matrix3D. |
M23 |
Ottiene o imposta il valore della seconda riga e della terza colonna della struttura Matrix3D. |
M24 |
Ottiene o imposta il valore della seconda riga e della quarta colonna della struttura Matrix3D. |
M31 |
Ottiene o imposta il valore della terza riga e della prima colonna della struttura Matrix3D. |
M32 |
Ottiene o imposta il valore della terza riga e della seconda colonna della struttura Matrix3D. |
M33 |
Ottiene o imposta il valore della terza riga e della terza colonna della struttura Matrix3D. |
M34 |
Ottiene o imposta il valore della terza riga e della quarta colonna della struttura Matrix3D. |
M44 |
Ottiene o imposta il valore della quarta riga e della quarta colonna della struttura Matrix3D. |
OffsetX |
Ottiene o imposta il valore della quarta riga e della prima colonna della struttura Matrix3D. |
OffsetY |
Ottiene o imposta il valore della quarta riga e della seconda colonna della struttura Matrix3D. |
OffsetZ |
Ottiene o imposta il valore della quarta riga e della terza colonna della struttura Matrix3D. |
Metodi
Append(Matrix3D) |
Accoda una matrice specificata alla matrice corrente. |
Equals(Matrix3D) |
Verifica l'uguaglianza tra due matrici. |
Equals(Matrix3D, Matrix3D) |
Verifica l'uguaglianza tra due matrici. |
Equals(Object) |
Verifica l'uguaglianza tra due matrici. |
GetHashCode() |
Restituisce il codice hash per questa matrice. |
Invert() |
Inverte la struttura Matrix3D. |
Multiply(Matrix3D, Matrix3D) |
Moltiplica le matrici specificate. |
Parse(String) |
Converte una rappresentazione di stringa di una struttura Matrix3D nella struttura Matrix3D equivalente. |
Prepend(Matrix3D) |
Antepone una matrice specificata alla matrice corrente. |
Rotate(Quaternion) |
Accoda una trasformazione di rotazione alla struttura Matrix3Dcorrente. |
RotateAt(Quaternion, Point3D) |
Ruota la struttura Matrix3D intorno all'oggetto Point3D specificato. |
RotateAtPrepend(Quaternion, Point3D) |
Antepone alla struttura Point3D corrente una rotazione intorno a un oggetto Matrix3D centrale specificato. |
RotatePrepend(Quaternion) |
Antepone alla struttura Quaternion corrente una rotazione specificata da una struttura Matrix3D. |
Scale(Vector3D) |
Accoda la struttura Vector3D di ridimensionamento specificata alla struttura Matrix3D corrente. |
ScaleAt(Vector3D, Point3D) |
Ridimensiona la struttura Matrix3D rispetto all'oggetto Vector3D specificato in base alla struttura Point3D definita. |
ScaleAtPrepend(Vector3D, Point3D) |
Antepone alla struttura Point3D corrente la trasformazione di adattamento specificata rispetto alla struttura Matrix3D definita. |
ScalePrepend(Vector3D) |
Antepone alla struttura Matrix3D corrente la struttura Vector3D di ridimensionamento specificata. |
SetIdentity() |
Cambia la struttura Matrix3D in una matrice di identità. |
ToString() |
Crea una rappresentazione di stringa della struttura Matrix3D corrente. |
ToString(IFormatProvider) |
Crea una rappresentazione di stringa della struttura Matrix3D corrente. |
Transform(Point3D) |
Trasforma l'oggetto Point3D specificato in base alla struttura Matrix3D e restituisce il risultato. |
Transform(Point3D[]) |
Trasforma gli oggetti Point3D specificati della matrice in base alla struttura Matrix3D. |
Transform(Point4D) |
Trasforma l'oggetto Point4D specificato in base alla struttura Matrix3D e restituisce il risultato. |
Transform(Point4D[]) |
Trasforma gli oggetti Point4D specificati della matrice in base alla struttura Matrix3D e restituisce il risultato. |
Transform(Vector3D) |
Trasforma l'oggetto Vector3D specificato in base alla struttura Matrix3D corrente. |
Transform(Vector3D[]) |
Trasforma gli oggetti Vector3D specificati della matrice in base alla struttura Matrix3D corrente. |
Translate(Vector3D) |
Accoda alla struttura Matrix3D corrente una traslazione dell'offset specificato. |
TranslatePrepend(Vector3D) |
Antepone alla struttura Matrix3D una traslazione dell'offset specificato. |
Operatori
Equality(Matrix3D, Matrix3D) |
Confronta due istanze di Matrix3D per stabilire se sono esattamente uguali. |
Inequality(Matrix3D, Matrix3D) |
Confronta due istanze della struttura Matrix3D per stabilire se sono esattamente diverse. |
Multiply(Matrix3D, Matrix3D) |
Moltiplica le matrici specificate. |
Implementazioni dell'interfaccia esplicita
IFormattable.ToString(String, IFormatProvider) |
Formatta il valore dell'istanza corrente usando il formato specificato. |