Example
Matrix4 е 4x4 матрица с двойна точност, използвана за афинни трансформации в 3D пространство. Тя се връща от Transform.getTransformMatrix() и GlobalTransform.getTransformMatrix(), и може да бъде конструирана от разложения на транслация, ротация и мащаб (TRS).
Example: com.aspose.threed
Example
| Example | Example |
|---|
Matrix4() | Конструира идентична матрица |
Matrix4(double m00, double m01, ... double m33) | Конструира от 16 отделни елемента (row-major) |
Статични полета
| Example | Example | Example |
|---|
IDENTITY | Matrix4 | 4x4 идентична матрица |
Публични полета (достъп до елемент)
Matrix4 използва публични полета за достъп до елемент: m00, m01, … m33 (общо 16 полета, подредба по редове).
| Шаблон на полетата | Example | Example |
|---|
m00 … m33 | double | Отделните елементи на матрицата като публични полета. Достъп като mat.m00, mat.m01, и т.н. |
Компонентите на транслацията са в последната колона: m03 (X), m13 (Y), m23 (Z).
Example
| Example | Тип на връщане | Example |
|---|
multiply(Matrix4 other) | Matrix4 | Умножение на матрици; връща нова матрица |
inverse() | Matrix4 | Връща обратната матрица |
transpose() | Matrix4 | Връща транспонираната матрица |
decompose(Vector3 translation, Vector3 scaling, Quaternion rotation) | boolean | Шаблон: винаги връща false. Предназначено е да разложи матрицата на TRS компоненти, но все още не е реализирано. |
determinant() | double | Връща детерминантата на матрицата |
transformPoint(Vector3 point) | Vector3 | Трансформира точка (прилага пълно транслация + ротация + мащаб) |
transformDirection(Vector3 direction) | Vector3 | Трансформира вектор на посока (прилага ротация + мащаб, игнорира транслацията) |
Статични методи
| Example | Тип на връщане | Example |
|---|
Matrix4.translate(Vector3 t) | Matrix4 | Създава транслационна матрица |
Matrix4.translate(double x, double y, double z) | Matrix4 | Създава транслационна матрица от компоненти |
Matrix4.scale(Vector3 s) | Matrix4 | Създава мащабна матрица |
Matrix4.scale(double x, double y, double z) | Matrix4 | Създава мащабна матрица от компоненти |
Matrix4.rotateFromQuaternion(Quaternion q) | Matrix4 | Създава ротационна матрица от кватернион |
Example
Вижте също