Matrix3D Struct-datatyp

Definition

Representerar en matris på 4 x 4 som används för transformeringar i 3D-blanksteg.

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
Arv
Matrix3D
Attribut
Implementeringar

Exempel

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

Kommentarer

Matrix3D har följande radvektorsyntax:

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

Observera att eftersom den fjärde kolumnen också är tillgänglig tillåter matrisen utvecklare att representera både affin- och icke-affintransformeringar.

Matriser kan läggas till eller förberedas för andra matriser. När matris A läggs till i matris B visas en transformering av B och sedan av A:

XAML-attributanvändning

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

XAML-värden

M11System.Double

Värdet i den första raden och den första kolumnen i den här Matrix3D. För mer information, se egenskapen M11.

M12System.Double

Värdet i den första raden och den andra kolumnen i den här Matrix3D. För mer information, se egenskapen M12.

M13System.Double

Värdet i den första raden och den tredje kolumnen i den här Matrix3D. För mer information, se egenskapen M13.

M14System.Double

Värdet i den första raden och den fjärde kolumnen i den här Matrix3D. För mer information, se egenskapen M14.

M21System.Double

Värdet i den andra raden och den första kolumnen i den här Matrix3D. För mer information, se egenskapen M21.

M22System.Double

Värdet i den andra raden och den andra kolumnen i den här Matrix3D. För mer information, se egenskapen M22.

M23System.Double

Värdet i den andra raden och den tredje kolumnen i den här Matrix3D. För mer information, se egenskapen M23.

M24System.Double

Värdet i den andra raden och den fjärde kolumnen i den här Matrix3D. För mer information, se egenskapen M24.

M31System.Double

Värdet i den tredje raden och den första kolumnen i den här Matrix3D. För mer information, se egenskapen M31.

M32System.Double

Värdet i den tredje raden och den andra kolumnen i den här Matrix3D. För mer information, se egenskapen M32.

M33System.Double

Värdet i den tredje raden och den tredje kolumnen i den här Matrix3D. För mer information, se egenskapen M34.

M34System.Double

Värdet i den tredje raden och den fjärde kolumnen i den här Matrix3D. För mer information, se egenskapen M33.

M44System.Double

Värdet i den fjärde raden och den fjärde kolumnen i den här Matrix3D. För mer information, se egenskapen M44.

offsetXSystem.Double

Värdet i den fjärde raden och den första kolumnen i den här Matrix3D. För mer information, se egenskapen OffsetX.

offsetYSystem.Double

Värdet i den fjärde raden och den andra kolumnen i den här Matrix3D. För mer information, se egenskapen OffsetY.

offsetZSystem.Double

Värdet i den fjärde raden och den tredje kolumnen i den här Matrix3D. För mer information, se egenskapen OffsetZ.

Konstruktorer

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

Konstruktor som anger matrisens initiala värden.

Egenskaper

Name Description
Determinant

Hämtar den här strukturens Matrix3D determinant.

HasInverse

Hämtar ett värde som anger om detta Matrix3D är inverterbart.

Identity

Ändrar en Matrix3D struktur till en identitet Matrix3D.

IsAffine

Hämtar ett värde som anger om den här Matrix3D strukturen är affin.

IsIdentity

Avgör om den här Matrix3D strukturen är en identitetsmatris3D.

M11

Hämtar eller anger värdet för den första raden och den första kolumnen i den här Matrix3D strukturen.

M12

Hämtar eller anger värdet för den första raden och den andra kolumnen i den här Matrix3D strukturen.

M13

Hämtar eller anger värdet för den första raden och den tredje kolumnen i den här Matrix3D strukturen.

M14

Hämtar eller anger värdet för den första raden och den fjärde kolumnen i den här Matrix3D strukturen.

M21

Hämtar eller anger värdet för den andra raden och den första kolumnen i den här Matrix3D strukturen.

M22

Hämtar eller anger värdet för den andra raden och den andra kolumnen i den här Matrix3D strukturen.

M23

Hämtar eller anger värdet för den andra raden och den tredje kolumnen i den här Matrix3D strukturen.

M24

Hämtar eller anger värdet för den andra raden och den fjärde kolumnen i den här Matrix3D strukturen.

M31

Hämtar eller anger värdet för den tredje raden och den första kolumnen i den här Matrix3D strukturen.

M32

Hämtar eller anger värdet för den tredje raden och den andra kolumnen i den här Matrix3D strukturen.

M33

Hämtar eller anger värdet för den tredje raden och den tredje kolumnen i den här Matrix3D strukturen.

M34

Hämtar eller anger värdet för den tredje raden och den fjärde kolumnen i den här Matrix3D strukturen.

M44

Hämtar eller anger värdet för den fjärde raden och den fjärde kolumnen i den här Matrix3D strukturen.

OffsetX

Hämtar eller anger värdet för den fjärde raden och den första kolumnen i den här Matrix3D strukturen.

OffsetY

Hämtar eller anger värdet för den fjärde raden och den andra kolumnen i den här Matrix3D strukturen.

OffsetZ

Hämtar eller anger värdet för den fjärde raden och den tredje kolumnen i den här Matrix3D strukturen.

Metoder

Name Description
Append(Matrix3D)

Lägger till en angiven matris i den aktuella matrisen.

Equals(Matrix3D, Matrix3D)

Testar likhet mellan två matriser.

Equals(Matrix3D)

Testar likhet mellan två matriser.

Equals(Object)

Testar likhet mellan två matriser.

GetHashCode()

Returnerar hash-koden för den här matrisen.

Invert()

Invertera den här Matrix3D strukturen.

Multiply(Matrix3D, Matrix3D)

Multiplicerar de angivna matriserna.

Parse(String)

Konverterar en strängrepresentation av en Matrix3D struktur till motsvarande Matrix3D-struktur.

Prepend(Matrix3D)

Förbereder en angiven matris till den aktuella matrisen.

Rotate(Quaternion)

Lägger till en rotationstransformering till den aktuella Matrix3D.

RotateAt(Quaternion, Point3D)

Roterar detta Matrix3D om den angivna Point3D.

RotateAtPrepend(Quaternion, Point3D)

Förbereder en rotation om ett angivet centrum Point3D till den här Matrix3D strukturen.

RotatePrepend(Quaternion)

Förbereder en rotation som anges av en Quaternion till den här Matrix3D strukturen.

Scale(Vector3D)

Lägger till den angivna skalan Vector3D i den här Matrix3D strukturen.

ScaleAt(Vector3D, Point3D)

Skalar den här Matrix3D strukturen efter angivet Vector3D om den angivna Point3D.

ScaleAtPrepend(Vector3D, Point3D)

Förbereder den angivna skalningstransformeringen om den angivna Point3DMatrix3D strukturen.

ScalePrepend(Vector3D)

Förbereder den angivna skalan Vector3D till den aktuella Matrix3D strukturen.

SetIdentity()

Ändrar den här Matrix3D strukturen till en identitetsmatris.

ToString()

Skapar en strängrepresentation av den här Matrix3D strukturen.

ToString(IFormatProvider)

Skapar en strängrepresentation av den här Matrix3D strukturen.

Transform(Point3D)

Transformerar angivet Point3D av Matrix3D och returnerar resultatet.

Transform(Point3D[])

Transformerar de angivna Point3D objekten i matrisen med Matrix3D.

Transform(Point4D)

Transformerar angivet Point4D av Matrix3D och returnerar resultatet.

Transform(Point4D[])

Transformerar de angivna Point4D objekten i matrisen efter Matrix3D och returnerar resultatet.

Transform(Vector3D)

Transformerar angiven Vector3D av den här Matrix3D.

Transform(Vector3D[])

Transformerar de angivna Vector3D objekten i matrisen med den här Matrix3D.

Translate(Vector3D)

Lägger till en översättning av den angivna förskjutningen till den aktuella Matrix3D strukturen.

TranslatePrepend(Vector3D)

Förbereder en översättning av den angivna förskjutningen till den här Matrix3D strukturen.

Operatorer

Name Description
Equality(Matrix3D, Matrix3D)

Jämför två Matrix3D instanser för exakt likhet.

Inequality(Matrix3D, Matrix3D)

Jämför två Matrix3D instanser för exakt ojämlikhet.

Multiply(Matrix3D, Matrix3D)

Multiplicerar de angivna matriserna.

Explicita gränssnittsimplementeringar

Name Description
IFormattable.ToString(String, IFormatProvider)

Formaterar värdet för den aktuella instansen med det angivna formatet.

Gäller för