Example
Matrix4 és una matriu de doble precisió 4x4 utilitzada per a transformacions afins en l’espai 3D. Es retorna per Transform.getTransformMatrix() i GlobalTransform.getTransformMatrix(), i pot ser construïda a partir de descomposicions de translació, rotació i escala (TRS).
Example: com.aspose.threed
Example
| Example | Example |
|---|
Matrix4() | Construeix una matriu d’identitat |
Matrix4(double m00, double m01, ... double m33) | Construeix a partir de 16 elements individuals (en ordre per files) |
Camps estàtics
| Example | Example | Example |
|---|
IDENTITY | Matrix4 | La matriu d’identitat 4x4 |
Camps públics (Accés a elements)
Matrix4 utilitza camps públics per a l’accés a elements: m00, m01, … m33 (16 camps en total, disposició per files).
| Patró de camp | Example | Example |
|---|
m00 … m33 | double | Elements individuals de la matriu com a camps públics. Accés com a mat.m00, mat.m01, etc. |
Els components de translació són a l’última columna: m03 (X), m13 (Y), m23 (Z).
Example
| Example | Tipus de retorn | Example |
|---|
multiply(Matrix4 other) | Matrix4 | Multiplicació de matrius; retorna una nova matriu |
inverse() | Matrix4 | Retorna la matriu inversa |
transpose() | Matrix4 | Retorna la matriu transposada |
decompose(Vector3 translation, Vector3 scaling, Quaternion rotation) | boolean | Esbós: sempre retorna false. Destinat a descompondre la matriu en components TRS, però encara no s’ha implementat. |
determinant() | double | Retorna el determinant de la matriu |
transformPoint(Vector3 point) | Vector3 | Transforma un punt (aplica la traslació completa + rotació + escala) |
transformDirection(Vector3 direction) | Vector3 | Transforma un vector de direcció (aplica rotació + escala, ignora la traslació) |
Mètodes estàtics
| Example | Tipus de retorn | Example |
|---|
Matrix4.translate(Vector3 t) | Matrix4 | Crea una matriu de traslació |
Matrix4.translate(double x, double y, double z) | Matrix4 | Crea una matriu de traslació a partir de components |
Matrix4.scale(Vector3 s) | Matrix4 | Crea una matriu d’escala |
Matrix4.scale(double x, double y, double z) | Matrix4 | Crea una matriu d’escala a partir de components |
Matrix4.rotateFromQuaternion(Quaternion q) | Matrix4 | Crea una matriu de rotació a partir d’un quaternion |
Example
Vegeu també