بنية Matrix4

Matrix4 structure

تنفيذ مصفوفة 4x4.

public struct Matrix4

المُنشئات

الاسمالوصف
Matrix4(double[])يُهيئ نسخة جديدة من بنية Matrix4.
Matrix4(FMatrix4)أنشئ Matrix4 من نسخة FMatrix4 instance
Matrix4(Vector4, Vector4, Vector4, Vector4)يبني المصفوفة من 4 صفوف.
Matrix4(double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double)يُهيئ نسخة جديدة من بنية Matrix4.

الخصائص

الاسمالوصف
static Identity { get; }يحصل على مصفوفة الهوية.
Determinant { get; }يسترجع محدد المصفوفة.

الطرق

الاسمالوصف
static Rotate(Quaternion)إنشاء مصفوفة دوران من رباعية
static Rotate(double, Vector3)إنشاء مصفوفة دوران بزاوية الدوران والمحور
static RotateFromEuler(Vector3)إنشاء مصفوفة دوران من زاوية أويلر
static RotateFromEuler(double, double, double)إنشاء مصفوفة دوران من زاوية أويلر
static Scale(double)ينشئ مصفوفة تقوم بالتحجيم على طول المحور x، والمحور y، والمحور z.
static Scale(Vector3)ينشئ مصفوفة تقوم بالتحجيم على طول المحور x، والمحور y، والمحور z.
static Scale(double, double, double)ينشئ مصفوفة تقوم بالتحجيم على طول المحور x، والمحور y، والمحور z.
static Translate(Vector3)ينشئ مصفوفة تقوم بالترجمة على طول المحور x، والمحور y، والمحور z
static Translate(double, double, double)ينشئ مصفوفة تقوم بالترجمة على طول المحور x، والمحور y، والمحور z
Concatenate(Matrix4)يجمع المصفوفتين
Decompose(out Vector3, out Vector3, out Quaternion)
Inverse()يعكس هذا الكائن.
Normalize()يعيد تطبيع هذا الكائن.
SetTRS(Vector3, Vector3, Vector3)يُهيئ المصفوفة بالترجمة/الدوران/التحجيم
ToArray()يحوّل المصفوفة إلى مصفوفة.
override ToString()يعيد سلسلة تمثل الـ Matrix4 الحالي.
Transpose()يقلب هذه النسخة.
operator *اضرب المصفوفتين (4 عمليات)

الحقول

الاسمالوصف
m00ال m00.
m01ال m01.
m02ال m02.
m03ال m03.
m10ال m10.
m11ال m11.
m12ال m12.
m13ال m13.
m20ال m20.
m21ال m21.
m22ال m22.
m23ال m23.
m30ال m30.
m31ال m31.
m32ال m32.
m33ال m33.

أمثلة

Matrix4 mat = Matrix4.RotateFromEuler(90, 0, 0);
Matrix4 mat2 = Matrix4.Translate(0, 10, -50);
Matrix4 transform = mat2 * mat;
Vector4 pos = new Vector4(10, 9, 0, 1);
Vector4 transformed = transform * pos;

انظر أيضًا