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 отдельных элементов (по строкам) |
Статические поля
| 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
См. также