Matrix3D Estructura

Definición

Representa una matriz de 4 x 4 usada para las transformaciones en espacio 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
Herencia
Matrix3D
Atributos
Implementaciones

Ejemplos

// 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)

Comentarios

Matrix3D tiene la siguiente sintaxis de vector de fila:

M11 M12 M13 M14
M21 M22 M23 M24
M31 M32 M33 M34
OffsetX OffsetY OffsetZ M44

Tenga en cuenta que, dado que también se puede acceder a la cuarta columna, la matriz permite a los desarrolladores representar afín, así como transformaciones no afín.

Las matrices se pueden anexar o anteponer a otras matrices. Anexar matriz A a la matriz B denota una transformación por B y, a continuación, por A:

Uso de atributos XAML

<object property="m11, m12, m13, m21, m22, m23, m31, m32, m33, offsetX, offsetY, offsetZ"/>  
- or -  
<object property="Identity"/>  

Valores XAML

M11
System.Double

Valor de la primera fila y la primera columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M11.

M12
System.Double

Valor de la primera fila y la segunda columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M12.

M13
System.Double

Valor de la primera fila y tercera columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M13.

M14
System.Double

Valor de la primera fila y cuarta columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M14.

M21
System.Double

El valor de la segunda fila y la primera columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M21.

M22
System.Double

Valor de la segunda fila y segunda columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M22.

M23
System.Double

Valor de la segunda fila y tercera columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M23.

M24
System.Double

Valor de la segunda fila y cuarta columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M24.

M31
System.Double

Valor de la tercera fila y la primera columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M31.

M32
System.Double

Valor de la tercera fila y segunda columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M32.

M33
System.Double

Valor de la tercera fila y tercera columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M34.

M34
System.Double

Valor de la tercera fila y cuarta columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M33.

M44
System.Double

Valor de la cuarta fila y cuarta columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad M44.

offsetX
System.Double

El valor de la cuarta fila y la primera columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad OffsetX.

offsetY
System.Double

Valor de la cuarta fila y segunda columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad OffsetY.

offsetZ
System.Double

Valor de la cuarta fila y tercera columna de este Matrix3Dobjeto . Para obtener más información, vea la propiedad OffsetZ.

Constructores

Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double)

Constructor que establece los valores iniciales de la matriz.

Propiedades

Determinant

Recupera el factor determinante de esta estructura Matrix3D.

HasInverse

Obtiene un valor que indica si Matrix3D se puede invertir.

Identity

Cambia una estructura Matrix3D en un identidad de Matrix3D.

IsAffine

Obtiene un valor que indica si esta estructura Matrix3D es afín.

IsIdentity

Determina si esta estructura Matrix3D es Matrix3D de identidad.

M11

Obtiene o establece el valor de la primera fila y la primera columna de esta estructura Matrix3D.

M12

Obtiene o establece el valor de la primera fila y la segunda columna de esta estructura Matrix3D.

M13

Obtiene o establece el valor de la primera fila y de la tercera columna de esta estructura Matrix3D.

M14

Obtiene o establece el valor de la primera fila y de la cuarta columna de esta estructura Matrix3D.

M21

Obtiene o establece el valor de la segunda fila y la primera columna de esta estructura Matrix3D.

M22

Obtiene o establece el valor de la segunda fila y la segunda columna de esta estructura Matrix3D.

M23

Obtiene o establece el valor de la segunda fila y de la tercera columna de esta estructura Matrix3D.

M24

Obtiene o establece el valor de la segunda fila y de la cuarta columna de esta estructura Matrix3D.

M31

Obtiene o establece el valor de la tercera fila y la primera columna de esta estructura Matrix3D.

M32

Obtiene o establece el valor de la tercera fila y la segunda columna de esta estructura Matrix3D.

M33

Obtiene o establece el valor de la tercera fila y columna de esta estructura Matrix3D.

M34

Obtiene o establece el valor de la tercera fila y de la cuarta columna de esta estructura Matrix3D.

M44

Obtiene o establece el valor de la cuarta fila y columna de esta estructura Matrix3D.

OffsetX

Obtiene o establece el valor de la cuarta fila y de la primera columna de esta estructura Matrix3D.

OffsetY

Obtiene o establece el valor de la cuarta fila y de la segunda columna de esta estructura Matrix3D.

OffsetZ

Obtiene o establece el valor de la cuarta fila y de la tercera columna de esta estructura Matrix3D.

Métodos

Append(Matrix3D)

Anexa una matriz especificada a la matriz actual.

Equals(Matrix3D)

Comprueba la igualdad entre dos matrices.

Equals(Matrix3D, Matrix3D)

Comprueba la igualdad entre dos matrices.

Equals(Object)

Comprueba la igualdad entre dos matrices.

GetHashCode()

Devuelve el código hash de esta matriz.

Invert()

Invierte esta estructura Matrix3D.

Multiply(Matrix3D, Matrix3D)

Multiplica las matrices especificadas.

Parse(String)

Convierte una representación de cadena de una estructura Matrix3D en la estructura equivalente de Matrix3D.

Prepend(Matrix3D)

Antepone una matriz especificada a la matriz actual.

Rotate(Quaternion)

Anexa una transformación de giro a la estructura Matrix3D actual.

RotateAt(Quaternion, Point3D)

Gira Matrix3D sobre el objeto Point3D especificado.

RotateAtPrepend(Quaternion, Point3D)

Antepone un giro sobre una estructura Point3D centrada especificada a esta estructura Matrix3D.

RotatePrepend(Quaternion)

Antepone un giro especificado por Quaternion a esta estructura Matrix3D.

Scale(Vector3D)

Anexa la estructura Vector3D de escala especificada a esta estructura Matrix3D.

ScaleAt(Vector3D, Point3D)

Escala esta estructura Matrix3D por la estructura Vector3D especificada sobre la estructura Point3D especificada.

ScaleAtPrepend(Vector3D, Point3D)

Antepone la transformación de la escala especificada sobre la estructura Point3D especificada a esta estructura Matrix3D.

ScalePrepend(Vector3D)

Antepone la estructura Vector3D de escala especificada a la estructura Matrix3D actual.

SetIdentity()

Cambia esta estructura Matrix3D a una matriz de identidad.

ToString()

Crea una representación de cadena de esta estructura Matrix3D.

ToString(IFormatProvider)

Crea una representación de cadena de esta estructura Matrix3D.

Transform(Point3D)

Transforma la estructura Point3D especificada por la estructura Matrix3D y devuelve el resultado.

Transform(Point3D[])

Transforma los objetos Point3D especificados de la matriz por Matrix3D.

Transform(Point4D)

Transforma la estructura Point4D especificada por la estructura Matrix3D y devuelve el resultado.

Transform(Point4D[])

Transforma los objetos Point4D especificados de la matriz por la estructura Matrix3D y devuelve el resultado.

Transform(Vector3D)

Transforma la estructura Vector3D especificada por esta estructura Matrix3D.

Transform(Vector3D[])

Transforma los objetos Vector3D especificados de la matriz por esta estructura Matrix3D.

Translate(Vector3D)

Anexa una traslación del desplazamiento especificado a la estructura Matrix3D actual.

TranslatePrepend(Vector3D)

Antepone una traslación del desplazamiento especificado a esta estructura Matrix3D.

Operadores

Equality(Matrix3D, Matrix3D)

Compara dos instancias de Matrix3D para determinar si son exactamente iguales.

Inequality(Matrix3D, Matrix3D)

Compara dos instancias de Matrix3D para determinar si son exactamente desiguales.

Multiply(Matrix3D, Matrix3D)

Multiplica las matrices especificadas.

Implementaciones de interfaz explícitas

IFormattable.ToString(String, IFormatProvider)

Da formato al valor de la instancia actual usando el formato especificado.

Se aplica a

Consulte también