Share via


Matrix3D Struktur

Definisi

Mewakili matriks 4 x 4 yang digunakan untuk transformasi dalam ruang 3-D.

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
Warisan
Matrix3D
Atribut
Penerapan

Contoh

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

Keterangan

Matrix3D memiliki sintaks vektor baris berikut:

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

Perhatikan bahwa karena kolom keempat juga dapat diakses, matriks memungkinkan pengembang untuk mewakili affine serta transformasi non-affine.

Matriks dapat ditambahkan atau ditambahkan sebelumnya ke matriks lain. Menambahkan matriks A ke matriks B menunjukkan transformasi oleh B lalu oleh A:

Penggunaan Atribut XAML

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

Nilai XAML

M11System.Double

Nilai di baris pertama dan kolom pertama ini Matrix3D. Untuk informasi selengkapnya, lihat M11 properti.

M12System.Double

Nilai di baris pertama dan kolom kedua dari ini Matrix3D. Untuk informasi selengkapnya, lihat M12 properti.

M13System.Double

Nilai di baris pertama dan kolom ketiga dari ini Matrix3D. Untuk informasi selengkapnya, lihat M13 properti.

M14System.Double

Nilai di baris pertama dan kolom keempat dari ini Matrix3D. Untuk informasi selengkapnya, lihat M14 properti.

M21System.Double

Nilai di baris kedua dan kolom pertama dari ini Matrix3D. Untuk informasi selengkapnya, lihat M21 properti.

M22System.Double

Nilai di baris kedua dan kolom kedua dari ini Matrix3D. Untuk informasi selengkapnya, lihat M22 properti.

M23System.Double

Nilai di baris kedua dan kolom ketiga dari ini Matrix3D. Untuk informasi selengkapnya, lihat M23 properti.

M24System.Double

Nilai di baris kedua dan kolom keempat dari ini Matrix3D. Untuk informasi selengkapnya, lihat M24 properti.

M31System.Double

Nilai di baris ketiga dan kolom pertama dari ini Matrix3D. Untuk informasi selengkapnya, lihat M31 properti.

M32System.Double

Nilai di baris ketiga dan kolom kedua dari ini Matrix3D. Untuk informasi selengkapnya, lihat M32 properti.

M33System.Double

Nilai di baris ketiga dan kolom ketiga dari ini Matrix3D. Untuk informasi selengkapnya, lihat M34 properti.

M34System.Double

Nilai di baris ketiga dan kolom keempat dari ini Matrix3D. Untuk informasi selengkapnya, lihat M33 properti.

M44System.Double

Nilai di baris keempat dan kolom keempat dari ini Matrix3D. Untuk informasi selengkapnya, lihat M44 properti.

offsetXSystem.Double

Nilai di baris keempat dan kolom pertama dari ini Matrix3D. Untuk informasi selengkapnya, lihat OffsetX properti.

offsetYSystem.Double

Nilai dalam baris keempat dan kolom kedua dari ini Matrix3D. Untuk informasi selengkapnya, lihat OffsetY properti.

offsetZSystem.Double

Nilai di baris keempat dan kolom ketiga dari ini Matrix3D. Untuk informasi selengkapnya, lihat OffsetZ properti.

Konstruktor

Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double)

Konstruktor yang menetapkan nilai awal matriks.

Properti

Determinant

Mengambil penenjuk struktur ini Matrix3D .

HasInverse

Mendapatkan nilai yang menunjukkan apakah ini Matrix3D tidak dapat dibalik.

Identity

Matrix3D Mengubah struktur menjadi identitas Matrix3D.

IsAffine

Mendapatkan nilai yang menunjukkan apakah struktur ini Matrix3D affine.

IsIdentity

Menentukan apakah struktur ini Matrix3D adalah Matriks3D identitas.

M11

Mendapatkan atau mengatur nilai baris pertama dan kolom pertama struktur ini Matrix3D .

M12

Mendapatkan atau mengatur nilai baris pertama dan kolom kedua dari struktur ini Matrix3D .

M13

Mendapatkan atau mengatur nilai baris pertama dan kolom ketiga struktur ini Matrix3D .

M14

Mendapatkan atau menetapkan nilai baris pertama dan kolom keempat dari struktur ini Matrix3D .

M21

Mendapatkan atau mengatur nilai baris kedua dan kolom pertama struktur ini Matrix3D .

M22

Mendapatkan atau mengatur nilai baris kedua dan kolom kedua struktur ini Matrix3D .

M23

Mendapatkan atau mengatur nilai baris kedua dan kolom ketiga struktur ini Matrix3D .

M24

Mendapatkan atau mengatur nilai baris kedua dan kolom keempat dari struktur ini Matrix3D .

M31

Mendapatkan atau mengatur nilai baris ketiga dan kolom pertama struktur ini Matrix3D .

M32

Mendapatkan atau mengatur nilai baris ketiga dan kolom kedua dari struktur ini Matrix3D .

M33

Mendapatkan atau mengatur nilai baris ketiga dan kolom ketiga dari struktur ini Matrix3D .

M34

Mendapatkan atau menetapkan nilai baris ketiga dan kolom keempat dari struktur ini Matrix3D .

M44

Mendapatkan atau menetapkan nilai baris keempat dan kolom keempat dari struktur ini Matrix3D .

OffsetX

Mendapatkan atau mengatur nilai baris keempat dan kolom pertama struktur ini Matrix3D .

OffsetY

Mendapatkan atau mengatur nilai baris keempat dan kolom kedua dari struktur ini Matrix3D .

OffsetZ

Mendapatkan atau mengatur nilai baris keempat dan kolom ketiga dari struktur ini Matrix3D .

Metode

Append(Matrix3D)

Menambahkan matriks tertentu ke matriks saat ini.

Equals(Matrix3D)

Menguji kesetaraan antara dua matriks.

Equals(Matrix3D, Matrix3D)

Menguji kesetaraan antara dua matriks.

Equals(Object)

Menguji kesetaraan antara dua matriks.

GetHashCode()

Mengembalikan kode hash untuk matriks ini.

Invert()

Mengalihkan struktur ini Matrix3D .

Multiply(Matrix3D, Matrix3D)

Mengalikan matriks yang ditentukan.

Parse(String)

Mengonversi representasi string struktur Matrix3D menjadi struktur Matrix3D yang setara.

Prepend(Matrix3D)

Menambahkan matriks tertentu ke matriks saat ini.

Rotate(Quaternion)

Menambahkan transformasi rotasi ke saat ini Matrix3D.

RotateAt(Quaternion, Point3D)

Putar ini Matrix3D tentang yang ditentukan Point3D.

RotateAtPrepend(Quaternion, Point3D)

Menambahkan rotasi tentang pusat Point3D tertentu ke struktur ini Matrix3D .

RotatePrepend(Quaternion)

Menambahkan rotasi yang ditentukan oleh Quaternion ke struktur ini Matrix3D .

Scale(Vector3D)

Menambahkan skala Vector3D yang ditentukan ke struktur ini Matrix3D .

ScaleAt(Vector3D, Point3D)

Menskalakan struktur ini Matrix3D dengan yang ditentukan Vector3D tentang yang ditentukan Point3D.

ScaleAtPrepend(Vector3D, Point3D)

Menambahkan transformasi skala yang ditentukan tentang yang ditentukan Point3D ke struktur ini Matrix3D .

ScalePrepend(Vector3D)

Menambahkan skala Vector3D yang ditentukan ke struktur saat ini Matrix3D .

SetIdentity()

Mengubah struktur ini Matrix3D menjadi matriks identitas.

ToString()

Membuat representasi string dari struktur ini Matrix3D .

ToString(IFormatProvider)

Membuat representasi string dari struktur ini Matrix3D .

Transform(Point3D)

Mengubah yang ditentukan Point3D oleh Matrix3D dan mengembalikan hasilnya.

Transform(Point3D[])

Mengubah objek yang ditentukan Point3D dalam array oleh Matrix3D.

Transform(Point4D)

Mengubah yang ditentukan Point4D oleh Matrix3D dan mengembalikan hasilnya.

Transform(Point4D[])

Mengubah objek yang ditentukan Point4D dalam array oleh Matrix3D dan mengembalikan hasilnya.

Transform(Vector3D)

Mengubah yang ditentukan Vector3D oleh ini Matrix3D.

Transform(Vector3D[])

Mengubah objek yang ditentukan Vector3D dalam array dengan ini Matrix3D.

Translate(Vector3D)

Menambahkan terjemahan offset yang ditentukan ke struktur saat ini Matrix3D .

TranslatePrepend(Vector3D)

Menambahkan terjemahan offset yang ditentukan ke struktur ini Matrix3D .

Operator

Equality(Matrix3D, Matrix3D)

Membandingkan dua Matrix3D instans untuk kesetaraan yang tepat.

Inequality(Matrix3D, Matrix3D)

Membandingkan dua Matrix3D instans untuk ketidaksamaan yang tepat.

Multiply(Matrix3D, Matrix3D)

Mengalikan matriks yang ditentukan.

Implementasi Antarmuka Eksplisit

IFormattable.ToString(String, IFormatProvider)

Memformat nilai instans saat ini menggunakan format yang ditentukan.

Berlaku untuk