GlobalTransform — Aspose.3D FOSS for Java
Notes
GlobalTransform es un solo lectura instantánea de un Node’s transformación en el espacio mundial. Se obtiene mediante node.getGlobalTransform() y refleja la composición del propio nodo Transform con la transformación de cada ancestro hasta la raíz de la escena.
Todas las propiedades son de solo lectura. Para cambiar la posición de un nodo, modifica la local del nodo Transform en su lugar.
Notes: com.aspose.threed
import com.aspose.threed.GlobalTransform;GlobalTransform no se instancia normalmente de forma directa; lo recibes de node.getGlobalTransform().
Notes
| Notes | Notes | Notes | Notes |
|---|---|---|---|
translation | Vector3 | getTranslation() | Posición en espacio mundial del nodo |
scale | Vector3 | getScale() | Escala en espacio mundial del nodo |
rotation | Quaternion | getRotation() | Rotación en espacio mundial como un cuaternión |
eulerAngles | Vector3 | getEulerAngles() | Rotación en espacio mundial como ángulos de Euler en radianes (roll, pitch, yaw) |
transformMatrix | Matrix4 | getTransformMatrix() | Matriz de transformación completa 4x4 en espacio mundial |
Notes
import com.aspose.threed.Scene;
import com.aspose.threed.Node;
import com.aspose.threed.GlobalTransform;
import com.aspose.threed.*;
Scene scene = new Scene();
// Create a parent node at (10, 0, 0)
Node parent = scene.getRootNode().createChildNode("parent");
parent.getTransform().setTranslation(new Vector3(10.0, 0.0, 0.0));
// Create a child node at (5, 0, 0) relative to parent
Node child = parent.createChildNode("child");
child.getTransform().setTranslation(new Vector3(5.0, 0.0, 0.0));
// Read world-space position
GlobalTransform gt = child.getGlobalTransform();
System.out.println(gt.getTranslation()); // Vector3(15.0, 0.0, 0.0)
System.out.println(gt.getScale()); // Vector3(1.0, 1.0, 1.0)
// Access the 4x4 matrix directly
Matrix4 mat = gt.getTransformMatrix();
System.out.println(mat.m03); // 15.0 -- world-space X translation
// Euler angles in degrees
Vector3 angles = gt.getEulerAngles();
System.out.println(Math.toDegrees(angles.x)); // 0.0 (no rotation)
// Using evaluateGlobalTransform to include geometric offset
Matrix4 manualMat = child.evaluateGlobalTransform(true);Notes
GlobalTransformse calcula en el momentonode.getGlobalTransform()se accede; es no actualizado dinámicamente si el nodo padreTransformcambios posteriores.- El getter es
getScale()enGlobalTransform(nogetScaling()). El localTransformutilizagetScaling()para la writable scale property.