Compartilhar via


Matrix3D Estrutura

Definição

Representa uma matriz 4x4 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)

Comentários

Matrix3D tem a seguinte sintaxe de vetor de linha:

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

Observe que, como a quarta coluna também é acessível, a matriz permite que os desenvolvedores representem transformações não afim.

As matrizes podem ser acrescentadas ou acrescentadas a outras matrizes. Acrescentar a matriz A à matriz B indica uma transformação por B e, em seguida, por A:

Uso do Atributo 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 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 na segunda coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M22.

M23System.Double

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

M24System.Double

O valor na segunda linha e 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 na terceira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M34.

M34System.Double

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

M44System.Double

O valor na quarta linha e 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

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

Determinant

Recupera o determinante dessa estrutura Matrix3D.

HasInverse

Obtém um valor que indica se este Matrix3D pode ser invertido.

Identity

Altera uma estrutura Matrix3D em uma identidade Matrix3D.

IsAffine

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

IsIdentity

Determina se esta estrutura Matrix3D é uma Matrix3D de identidade.

M11

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

M12

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

M13

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

M14

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

M21

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

M22

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

M23

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

M24

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

M31

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

M32

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

M33

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

M34

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

M44

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

OffsetX

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

OffsetY

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

OffsetZ

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

Métodos

Append(Matrix3D)

Acrescenta uma matriz especificada à matriz atual.

Equals(Matrix3D)

Testa a igualdade entre duas matrizes.

Equals(Matrix3D, Matrix3D)

Testa a igualdade entre duas matrizes.

Equals(Object)

Testa a igualdade entre duas matrizes.

GetHashCode()

Retorna o código hash desta matriz.

Invert()

Inverte essa estrutura Matrix3D.

Multiply(Matrix3D, Matrix3D)

Multiplica as matrizes especificadas.

Parse(String)

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

Prepend(Matrix3D)

Precede uma matriz especificada na matriz atual.

Rotate(Quaternion)

Acrescenta uma transformação de rotação ao Matrix3D atual.

RotateAt(Quaternion, Point3D)

Gira este Matrix3D sobre o Point3D especificado.

RotateAtPrepend(Quaternion, Point3D)

Precede uma rotação sobre um centro especificado Point3D nesta estrutura Matrix3D.

RotatePrepend(Quaternion)

Precede uma rotação especificada por um Quaternion nesta estrutura Matrix3D.

Scale(Vector3D)

Acrescenta a escala especificada Vector3D a esta estrutura Matrix3D.

ScaleAt(Vector3D, Point3D)

Dimensiona essa estrutura Matrix3D pelo Vector3D especificado sobre o Point3D indicado.

ScaleAtPrepend(Vector3D, Point3D)

Precede a transformação de escala especificada sobre o Point3D especificado nesta estrutura Matrix3D.

ScalePrepend(Vector3D)

Precede a escala Vector3D especificada na estrutura Matrix3D atual.

SetIdentity()

Altera essa estrutura Matrix3D em uma matriz de identidade.

ToString()

Cria uma representação de cadeia de caracteres dessa estrutura Matrix3D.

ToString(IFormatProvider)

Cria uma representação de cadeia de caracteres dessa estrutura Matrix3D.

Transform(Point3D)

Transforma o Point3D especificado pelo Matrix3D e retorna o resultado.

Transform(Point3D[])

Transforma os objetos Point3D especificados na matriz pelo Matrix3D.

Transform(Point4D)

Transforma o Point4D especificado pelo Matrix3D e retorna o resultado.

Transform(Point4D[])

Transforma os objetos Point4D especificados na matriz pelo Matrix3D e retorna o resultado.

Transform(Vector3D)

Transforma o Vector3D especificado por este Matrix3D.

Transform(Vector3D[])

Transforma os objetos Vector3D especificados na matriz por este Matrix3D.

Translate(Vector3D)

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

TranslatePrepend(Vector3D)

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

Operadores

Equality(Matrix3D, Matrix3D)

Compara duas instâncias Matrix3D quanto à igualdade exata.

Inequality(Matrix3D, Matrix3D)

Compara duas instâncias Matrix3D quanto à desigualdade exata.

Multiply(Matrix3D, Matrix3D)

Multiplica as matrizes especificadas.

Implantações explícitas de interface

IFormattable.ToString(String, IFormatProvider)

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

Aplica-se a