Matrix3D Matrix3D Matrix3D Matrix3D Struct

Definição

Representa uma matriz 4x4 usada para transformações no espaço 3D.Represents a 4 x 4 matrix used for transformations in 3-D space.

public value class Matrix3D : IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.Media3D.Matrix3DConverter))]
[System.Serializable]
public struct Matrix3D : IFormattable
type Matrix3D = struct
    interface IFormattable
Public Structure Matrix3D
Implements IFormattable
Herança
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

Matrix3Dtem a seguinte sintaxe de vetor de linha:Matrix3D has the following row-vector syntax:

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 as transformações afim e não-afim.Note that because the fourth column is also accessible, the matrix allows developers to represent affine as well as non-affine transforms.

As matrizes podem ser acrescentadas ou precedidas a outras matrizes.Matrices can be appended or prepended to other matrices. Acrescentar a matriz A à matriz B denota uma transformação de B e, em seguida, por um:Appending matrix A to matrix B denotes a transformation by B and then by A:

Uso do Atributo XAMLXAML Attribute Usage

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

Valores XAMLXAML Values

M11M11
System.Double

O valor na primeira linha e a primeira coluna deste Matrix3D.The value in the first row and first column of this Matrix3D. Para obter mais informações, consulte a propriedade M11.For more information, see the M11 property.

M12M12
System.Double

O valor na primeira linha e segunda coluna Matrix3Ddisso.The value in the first row and second column of this Matrix3D. Para obter mais informações, consulte a propriedade M12.For more information, see the M12 property.

M13M13
System.Double

O valor na primeira linha e a Matrix3Dterceira coluna disso.The value in the first row and third column of this Matrix3D. Para obter mais informações, consulte a propriedade M13.For more information, see the M13 property.

M14M14
System.Double

O valor na primeira linha e a Matrix3Dquarta coluna disso.The value in the first row and fourth column of this Matrix3D. Para obter mais informações, consulte a propriedade M14.For more information, see the M14 property.

M21M21
System.Double

O valor na segunda linha e a Matrix3Dprimeira coluna deste.The value in the second row and first column of this Matrix3D. Para obter mais informações, consulte a propriedade M21.For more information, see the M21 property.

M22M22
System.Double

O valor na segunda linha e segunda coluna Matrix3Ddisso.The value in the second row and second column of this Matrix3D. Para obter mais informações, consulte a propriedade M22.For more information, see the M22 property.

M23M23
System.Double

O valor na segunda linha e a Matrix3Dterceira coluna disso.The value in the second row and third column of this Matrix3D. Para obter mais informações, consulte a propriedade M23.For more information, see the M23 property.

M24M24
System.Double

O valor na segunda linha e a Matrix3Dquarta coluna disso.The value in the second row and fourth column of this Matrix3D. Para obter mais informações, consulte a propriedade M24.For more information, see the M24 property.

M31M31
System.Double

O valor na terceira linha e na primeira coluna deste Matrix3D.The value in the third row and first column of this Matrix3D. Para obter mais informações, consulte a propriedade M31.For more information, see the M31 property.

M32M32
System.Double

O valor na terceira linha e segunda coluna Matrix3Ddisso.The value in the third row and second column of this Matrix3D. Para obter mais informações, consulte a propriedade M32.For more information, see the M32 property.

M33M33
System.Double

O valor na terceira linha e na terceira coluna Matrix3Ddisso.The value in the third row and third column of this Matrix3D. Para obter mais informações, consulte a propriedade M34.For more information, see the M34 property.

M34M34
System.Double

O valor na terceira linha e na quarta coluna Matrix3Ddisso.The value in the third row and fourth column of this Matrix3D. Para obter mais informações, consulte a propriedade M33.For more information, see the M33 property.

M44M44
System.Double

O valor na quarta linha e na quarta coluna Matrix3Ddisso.The value in the fourth row and fourth column of this Matrix3D. Para obter mais informações, consulte a propriedade M44.For more information, see the M44 property.

offsetXoffsetX
System.Double

O valor na quarta linha e na primeira coluna deste Matrix3D.The value in the fourth row and first column of this Matrix3D. Para obter mais informações, consulte a propriedade OffsetX.For more information, see the OffsetX property.

offsetYoffsetY
System.Double

O valor na quarta linha e segunda coluna Matrix3Ddisso.The value in the fourth row and second column of this Matrix3D. Para obter mais informações, consulte a propriedade OffsetY.For more information, see the OffsetY property.

offsetZoffsetZ
System.Double

O valor na quarta linha e a Matrix3Dterceira coluna disso.The value in the fourth row and third column of this Matrix3D. Para obter mais informações, consulte a propriedade OffsetZ.For more information, see the OffsetZ property.

Construtores

Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double) Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double) Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double) 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.Constructor that sets matrix's initial values.

Propriedades

Determinant Determinant Determinant Determinant

Recupera o determinante dessa estrutura Matrix3D.Retrieves the determinant of this Matrix3D structure.

HasInverse HasInverse HasInverse HasInverse

Obtém um valor que indica se este Matrix3D pode ser invertido.Gets a value that indicates whether this Matrix3D is invertible.

Identity Identity Identity Identity

Altera uma estrutura Matrix3D em uma identidade Matrix3D.Changes a Matrix3D structure into an identity Matrix3D.

IsAffine IsAffine IsAffine IsAffine

Obtém um valor que indica se esta estrutura Matrix3D é afim.Gets a value that indicates whether this Matrix3D structure is affine.

IsIdentity IsIdentity IsIdentity IsIdentity

Determina se esta estrutura Matrix3D é uma Matrix3D de identidade.Determines whether this Matrix3D structure is an identity Matrix3D.

M11 M11 M11 M11

Obtém ou define o valor da primeira linha e primeira coluna dessa estrutura Matrix3D.Gets or sets the value of the first row and first column of this Matrix3D structure.

M12 M12 M12 M12

Obtém ou define o valor da primeira linha e segunda coluna dessa estrutura Matrix3D.Gets or sets the value of the first row and second column of this Matrix3D structure.

M13 M13 M13 M13

Obtém ou define o valor da primeira linha e terceira coluna dessa estrutura Matrix3D.Gets or sets the value of the first row and third column of this Matrix3D structure.

M14 M14 M14 M14

Obtém ou define o valor da primeira linha e quarta coluna dessa estrutura Matrix3D.Gets or sets the value of the first row and fourth column of this Matrix3D structure.

M21 M21 M21 M21

Obtém ou define o valor da segunda linha e da primeira coluna desta estrutura Matrix3D.Gets or sets the value of the second row and first column of this Matrix3D structure.

M22 M22 M22 M22

Obtém ou define o valor da segunda linha e da segunda coluna desta estrutura Matrix3D.Gets or sets the value of the second row and second column of this Matrix3D structure.

M23 M23 M23 M23

Obtém ou define o valor da segunda linha e terceira coluna desta estrutura Matrix3D.Gets or sets the value of the second row and third column of this Matrix3D structure.

M24 M24 M24 M24

Obtém ou define o valor da segunda linha e quarta coluna desta estrutura Matrix3D.Gets or sets the value of the second row and fourth column of this Matrix3D structure.

M31 M31 M31 M31

Obtém ou define o valor da terceira linha e da primeira coluna desta estrutura Matrix3D.Gets or sets the value of the third row and first column of this Matrix3D structure.

M32 M32 M32 M32

Obtém ou define o valor da terceira linha e da segunda coluna desta estrutura Matrix3D.Gets or sets the value of the third row and second column of this Matrix3D structure.

M33 M33 M33 M33

Obtém ou define o valor da terceira linha e terceira coluna desta estrutura Matrix3D.Gets or sets the value of the third row and third column of this Matrix3D structure.

M34 M34 M34 M34

Obtém ou define o valor da terceira linha e quarta coluna desta estrutura Matrix3D.Gets or sets the value of the third row and fourth column of this Matrix3D structure.

M44 M44 M44 M44

Obtém ou define o valor da quarta linha e quarta coluna dessa estrutura Matrix3D.Gets or sets the value of the fourth row and fourth column of this Matrix3D structure.

OffsetX OffsetX OffsetX OffsetX

Obtém ou define o valor da quarta linha e primeira coluna dessa estrutura Matrix3D.Gets or sets the value of the fourth row and first column of this Matrix3D structure.

OffsetY OffsetY OffsetY OffsetY

Obtém ou define o valor da quarta linha e segunda coluna dessa estrutura Matrix3D.Gets or sets the value of the fourth row and second column of this Matrix3D structure.

OffsetZ OffsetZ OffsetZ OffsetZ

Obtém ou define o valor da quarta linha e terceira coluna dessa estrutura Matrix3D.Gets or sets the value of the fourth row and third column of this Matrix3D structure.

Métodos

Append(Matrix3D) Append(Matrix3D) Append(Matrix3D) Append(Matrix3D)

Acrescenta uma matriz especificada à matriz atual.Appends a specified matrix to the current matrix.

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

Testa a igualdade entre duas matrizes.Tests equality between two matrices.

Equals(Matrix3D) Equals(Matrix3D) Equals(Matrix3D) Equals(Matrix3D)

Testa a igualdade entre duas matrizes.Tests equality between two matrices.

Equals(Matrix3D, Matrix3D) Equals(Matrix3D, Matrix3D) Equals(Matrix3D, Matrix3D) Equals(Matrix3D, Matrix3D)

Testa a igualdade entre duas matrizes.Tests equality between two matrices.

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

Retorna o código hash desta matrizReturns the hash code for this matrix

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

Inverte essa estrutura Matrix3D.Inverts this Matrix3D structure.

Multiply(Matrix3D, Matrix3D) Multiply(Matrix3D, Matrix3D) Multiply(Matrix3D, Matrix3D) Multiply(Matrix3D, Matrix3D)

Multiplica as matrizes especificadas.Multiplies the specified matrices.

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

Converte uma representação de cadeia de caracteres de uma estrutura Matrix3D na estrutura Matrix3D equivalente.Converts a string representation of a Matrix3D structure into the equivalent Matrix3D structure.

Prepend(Matrix3D) Prepend(Matrix3D) Prepend(Matrix3D) Prepend(Matrix3D)

Precede uma matriz especificada na matriz atual.Prepends a specified matrix to the current matrix.

Rotate(Quaternion) Rotate(Quaternion) Rotate(Quaternion) Rotate(Quaternion)

Acrescenta uma transformação de rotação ao Matrix3D atual.Appends a rotation transform to the current Matrix3D.

RotateAt(Quaternion, Point3D) RotateAt(Quaternion, Point3D) RotateAt(Quaternion, Point3D) RotateAt(Quaternion, Point3D)

Gira este Matrix3D sobre o Point3D especificado.Rotates this Matrix3D about the specified Point3D.

RotateAtPrepend(Quaternion, Point3D) RotateAtPrepend(Quaternion, Point3D) RotateAtPrepend(Quaternion, Point3D) RotateAtPrepend(Quaternion, Point3D)

Precede uma rotação sobre um centro especificado Point3D nesta estrutura Matrix3D.Prepends a rotation about a specified center Point3D to this Matrix3D structure.

RotatePrepend(Quaternion) RotatePrepend(Quaternion) RotatePrepend(Quaternion) RotatePrepend(Quaternion)

Precede uma rotação especificada por um Quaternion nesta estrutura Matrix3D.Prepends a rotation specified by a Quaternion to this Matrix3D structure.

Scale(Vector3D) Scale(Vector3D) Scale(Vector3D) Scale(Vector3D)

Acrescenta a escala especificada Vector3D a esta estrutura Matrix3D.Appends the specified scale Vector3D to this Matrix3D structure.

ScaleAt(Vector3D, Point3D) ScaleAt(Vector3D, Point3D) ScaleAt(Vector3D, Point3D) ScaleAt(Vector3D, Point3D)

Dimensiona essa estrutura Matrix3D pelo Vector3D especificado sobre o Point3D indicado.Scales this Matrix3D structure by the specified Vector3D about the specified Point3D.

ScaleAtPrepend(Vector3D, Point3D) ScaleAtPrepend(Vector3D, Point3D) ScaleAtPrepend(Vector3D, Point3D) ScaleAtPrepend(Vector3D, Point3D)

Precede a transformação de escala especificada sobre o Point3D especificado nesta estrutura Matrix3D.Prepends the specified scale transformation about the specified Point3D to this Matrix3D structure.

ScalePrepend(Vector3D) ScalePrepend(Vector3D) ScalePrepend(Vector3D) ScalePrepend(Vector3D)

Precede a escala Vector3D especificada na estrutura Matrix3D atual.Prepends the specified scale Vector3D to the current Matrix3D structure.

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

Altera essa estrutura Matrix3D em uma matriz de identidade.Changes this Matrix3D structure into an identity matrix.

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

Cria uma representação de cadeia de caracteres dessa estrutura Matrix3D.Creates a string representation of this Matrix3D structure.

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

Cria uma representação de cadeia de caracteres dessa estrutura Matrix3D.Creates a string representation of this Matrix3D structure.

Transform(Point3D) Transform(Point3D) Transform(Point3D) Transform(Point3D)

Transforma o Point3D especificado pelo Matrix3D e retorna o resultado.Transforms the specified Point3D by the Matrix3D and returns the result.

Transform(Point3D[]) Transform(Point3D[]) Transform(Point3D[]) Transform(Point3D[])

Transforma os objetos Point3D especificados na matriz pelo Matrix3D.Transforms the specified Point3D objects in the array by the Matrix3D.

Transform(Point4D) Transform(Point4D) Transform(Point4D) Transform(Point4D)

Transforma o Point4D especificado pelo Matrix3D e retorna o resultado.Transforms the specified Point4D by the Matrix3D and returns the result.

Transform(Point4D[]) Transform(Point4D[]) Transform(Point4D[]) Transform(Point4D[])

Transforma os objetos Point4D especificados na matriz pelo Matrix3D e retorna o resultado.Transforms the specified Point4D objects in the array by the Matrix3D and returns the result.

Transform(Vector3D) Transform(Vector3D) Transform(Vector3D) Transform(Vector3D)

Transforma o Vector3D especificado por este Matrix3D.Transforms the specified Vector3D by this Matrix3D.

Transform(Vector3D[]) Transform(Vector3D[]) Transform(Vector3D[]) Transform(Vector3D[])

Transforma os objetos Vector3D especificados na matriz por este Matrix3D.Transforms the specified Vector3D objects in the array by this Matrix3D.

Translate(Vector3D) Translate(Vector3D) Translate(Vector3D) Translate(Vector3D)

Acrescenta uma translação ao deslocamento especificado à estrutura Matrix3D atual.Appends a translation of the specified offset to the current Matrix3D structure.

TranslatePrepend(Vector3D) TranslatePrepend(Vector3D) TranslatePrepend(Vector3D) TranslatePrepend(Vector3D)

Precede uma translação do deslocamento especificado nesta estrutura Matrix3D.Prepends a translation of the specified offset to this Matrix3D structure.

Operadores

Equality(Matrix3D, Matrix3D) Equality(Matrix3D, Matrix3D) Equality(Matrix3D, Matrix3D) Equality(Matrix3D, Matrix3D)

Compara duas instâncias Matrix3D quanto à igualdade exata.Compares two Matrix3D instances for exact equality.

Inequality(Matrix3D, Matrix3D) Inequality(Matrix3D, Matrix3D) Inequality(Matrix3D, Matrix3D) Inequality(Matrix3D, Matrix3D)

Compara duas instâncias Matrix3D quanto à desigualdade exata.Compares two Matrix3D instances for exact inequality.

Multiply(Matrix3D, Matrix3D) Multiply(Matrix3D, Matrix3D) Multiply(Matrix3D, Matrix3D) Multiply(Matrix3D, Matrix3D)

Multiplica as matrizes especificadas.Multiplies the specified matrices.

Implantações explícitas de interface

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

Formata o valor da instância atual usando o formato especificado.Formats the value of the current instance using the specified format.

Aplica-se a

Veja também