Matrix3D Estrutura

Definição

Representa uma matriz 4 x 4 usada para transformações no espaço 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
Herança
Matrix3D
Atributos
Implementações

Exemplos

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

Observações

Matrix3D tem a seguinte sintaxe de vector linha:

Coluna 1 Coluna 2 Coluna 3 Coluna 4
M11 M12 M13 M14
M21 M22 M23 M24
M31 M32 M33 M34
OffsetX OffsetY OffsetZ M44

Note-se que, como a quarta coluna também é acessível, a matriz permite aos desenvolvedores representar transformadas afins e não afins.

As matrizes podem ser adicionadas ou precedidas a outras matrizes. Adicionar a matriz A à matriz B denota uma transformação por B e depois 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

M11System.Double

O valor na primeira linha e na primeira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M11.

M12System.Double

O valor na primeira linha e na segunda coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M12.

M13System.Double

O valor na primeira linha e na terceira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M13.

M14System.Double

O valor na primeira linha e na quarta coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M14.

M21System.Double

O valor na segunda linha e na primeira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M21.

M22System.Double

O valor na segunda linha e segunda coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M22.

M23System.Double

O valor na segunda linha e terceira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M23.

M24System.Double

O valor na segunda linha e na quarta coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M24.

M31System.Double

O valor na terceira linha e na primeira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M31.

M32System.Double

O valor na terceira linha e na segunda coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M32.

M33System.Double

O valor na terceira linha e terceira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M34.

M34System.Double

O valor na terceira linha e na quarta coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M33.

M44System.Double

O valor na quarta linha e na quarta coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M44.

offsetXSystem.Double

O valor na quarta linha e na primeira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade OffsetX.

offsetYSystem.Double

O valor na quarta linha e na segunda coluna deste Matrix3D. Para obter mais informações, consulte a propriedade OffsetY.

offsetZSystem.Double

O valor na quarta linha e terceira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade OffsetZ.

Construtores

Name Description
Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double)

Construtor que define os valores iniciais da matriz.

Propriedades

Name Description
Determinant

Recupera o determinante desta Matrix3D estrutura.

HasInverse

Obtém um valor que indica se isto Matrix3D é invertível.

Identity

Transforma uma Matrix3D estrutura numa identidade Matrix3D.

IsAffine

Obtém um valor que indica se esta Matrix3D estrutura é afim.

IsIdentity

Determina se esta Matrix3D estrutura é uma Matrix3D identidade.

M11

Obtém ou define o valor da primeira linha e da primeira coluna desta Matrix3D estrutura.

M12

Obtém ou define o valor da primeira linha e da segunda coluna desta Matrix3D estrutura.

M13

Obtém ou define o valor da primeira linha e da terceira coluna desta Matrix3D estrutura.

M14

Obtém ou define o valor da primeira linha e da quarta coluna desta Matrix3D estrutura.

M21

Obtém ou define o valor da segunda linha e da primeira coluna desta Matrix3D estrutura.

M22

Obtém ou define o valor da segunda linha e da segunda coluna desta Matrix3D estrutura.

M23

Obtém ou define o valor da segunda linha e da terceira coluna desta Matrix3D estrutura.

M24

Obtém ou define o valor da segunda linha e da quarta coluna desta Matrix3D estrutura.

M31

Obtém ou define o valor da terceira linha e da primeira coluna desta Matrix3D estrutura.

M32

Obtém ou define o valor da terceira linha e da segunda coluna desta Matrix3D estrutura.

M33

Obtém ou define o valor da terceira linha e da terceira coluna desta Matrix3D estrutura.

M34

Obtém ou define o valor da terceira linha e da quarta coluna desta Matrix3D estrutura.

M44

Obtém ou define o valor da quarta linha e da quarta coluna desta Matrix3D estrutura.

OffsetX

Obtém ou define o valor da quarta linha e da primeira coluna desta Matrix3D estrutura.

OffsetY

Obtém ou define o valor da quarta linha e da segunda coluna desta Matrix3D estrutura.

OffsetZ

Obtém ou define o valor da quarta linha e da terceira coluna desta Matrix3D estrutura.

Métodos

Name Description
Append(Matrix3D)

Acrescenta uma matriz especificada à matriz atual.

Equals(Matrix3D, Matrix3D)

Testa a igualdade entre duas matrizes.

Equals(Matrix3D)

Testa a igualdade entre duas matrizes.

Equals(Object)

Testa a igualdade entre duas matrizes.

GetHashCode()

Devolve o código de hash para esta matriz.

Invert()

Inverte esta Matrix3D estrutura.

Multiply(Matrix3D, Matrix3D)

Multiplica as matrizes especificadas.

Parse(String)

Converte uma representação de cadeias de uma Matrix3D estrutura na estrutura equivalente Matrix3D.

Prepend(Matrix3D)

Antepõe uma matriz especificada à matriz atual.

Rotate(Quaternion)

Adiciona uma transformada de rotação à corrente Matrix3D.

RotateAt(Quaternion, Point3D)

Roda isto Matrix3D em torno do especificado Point3D.

RotateAtPrepend(Quaternion, Point3D)

Precede uma rotação em torno de um centro Point3D especificado a esta Matrix3D estrutura.

RotatePrepend(Quaternion)

Precede uma rotação especificada por a Quaternion a a a esta Matrix3D estrutura.

Scale(Vector3D)

Acrescenta a escala Vector3D especificada a esta Matrix3D estrutura.

ScaleAt(Vector3D, Point3D)

Escala esta Matrix3D estrutura pelo especificado Vector3D em torno do especificado Point3D.

ScaleAtPrepend(Vector3D, Point3D)

Precede a transformação de escala especificada em torno do especificado Point3D a esta Matrix3D estrutura.

ScalePrepend(Vector3D)

Antepõe a escala Vector3D especificada à estrutura atual Matrix3D .

SetIdentity()

Transforma esta Matrix3D estrutura numa matriz identidade.

ToString()

Cria uma representação em cadeia desta Matrix3D estrutura.

ToString(IFormatProvider)

Cria uma representação em cadeia desta Matrix3D estrutura.

Transform(Point3D)

Transforma o especificado Point3D pelo Matrix3D e devolve o resultado.

Transform(Point3D[])

Transforma os objetos especificados Point3D no array pelo Matrix3D.

Transform(Point4D)

Transforma o especificado Point4D pelo Matrix3D e devolve o resultado.

Transform(Point4D[])

Transforma os objetos especificados Point4D no array pelo Matrix3D e devolve o resultado.

Transform(Vector3D)

Transforma o especificado Vector3D por este Matrix3D.

Transform(Vector3D[])

Transforma os objetos especificados Vector3D no array por este Matrix3D.

Translate(Vector3D)

Acrescenta uma translação do deslocamento especificado à estrutura atual Matrix3D .

TranslatePrepend(Vector3D)

Precede uma translação do deslocamento especificado para esta Matrix3D estrutura.

Operadores

Name Description
Equality(Matrix3D, Matrix3D)

Compara duas Matrix3D instâncias para igualdade exata.

Inequality(Matrix3D, Matrix3D)

Compara dois Matrix3D casos para a desigualdade exata.

Multiply(Matrix3D, Matrix3D)

Multiplica as matrizes especificadas.

Implementações de Interface Explícita

Name Description
IFormattable.ToString(String, IFormatProvider)

Formata o valor da instância atual usando o formato especificado.

Aplica-se a