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:

Kolom 1 Kolom 2 Kolom 3 Kolom 4
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 afin serta transformasi non-afin.

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 dari ini Matrix3D. Untuk informasi selengkapnya, lihat properti M11.

M12System.Double

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

M13System.Double

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

M14System.Double

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

M21System.Double

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

M22System.Double

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

M23System.Double

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

M24System.Double

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

M31System.Double

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

M32System.Double

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

M33System.Double

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

M34System.Double

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

M44System.Double

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

offsetXSystem.Double

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

offsetYSystem.Double

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

offsetZSystem.Double

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

Konstruktor

Nama Deskripsi
Matrix3D(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double)

Konstruktor yang menetapkan nilai awal matriks.

Properti

Nama Deskripsi
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 identitas Matrix3D.

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 dari struktur ini Matrix3D .

M14

Mendapatkan atau mengatur 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 dari 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 mengatur nilai baris ketiga dan kolom keempat dari struktur ini Matrix3D .

M44

Mendapatkan atau mengatur 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

Nama Deskripsi
Append(Matrix3D)

Menambahkan matriks tertentu ke matriks saat ini.

Equals(Matrix3D, Matrix3D)

Menguji kesetaraan antara dua matriks.

Equals(Matrix3D)

Menguji kesetaraan antara dua matriks.

Equals(Object)

Menguji kesetaraan antara dua matriks.

GetHashCode()

Mengembalikan kode hash untuk matriks ini.

Invert()

Menginversi 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 yang ditentukan 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 sebelumnya 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 sebelumnya transformasi skala yang ditentukan tentang yang ditentukan Point3D untuk 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

Nama Deskripsi
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

Nama Deskripsi
IFormattable.ToString(String, IFormatProvider)

Memformat nilai instans saat ini menggunakan format yang ditentukan.

Berlaku untuk