Matrix3D Estrutura
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
- 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
O valor na primeira linha e na primeira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M11.
O valor na primeira linha e na segunda coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M12.
O valor na primeira linha e na terceira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M13.
O valor na primeira linha e quarta coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M14.
O valor na segunda linha e na primeira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M21.
O valor na segunda linha e na segunda coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M22.
O valor na segunda linha e na terceira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M23.
O valor na segunda linha e quarta coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M24.
O valor na terceira linha e na primeira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M31.
O valor na terceira linha e na segunda coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M32.
O valor na terceira linha e na terceira coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M34.
O valor na terceira linha e quarta coluna deste Matrix3D. Para obter mais informações, consulte a propriedade M33.
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 | |
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) | |
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) | |
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. |