GlobalTransform — Aspose.3D FOSS for Java
Methods
GlobalTransform è un sola lettura istantanea di un Nodetrasformazione nello spazio mondiale. È ottenuta tramite node.getGlobalTransform() e riflette la composizione della propria Transform con la trasformazione di ogni antenato fino alla radice della scena.
Tutte le proprietà sono di sola lettura. Per cambiare la posizione di un nodo, modifica il locale del nodo Transform invece.
Methods: com.aspose.threed
import com.aspose.threed.GlobalTransform;GlobalTransform non viene normalmente istanziato direttamente; lo ricevi da node.getGlobalTransform().
Methods
| Methods | Methods | Methods | Methods |
|---|---|---|---|
translation | Vector3 | getTranslation() | Posizione nello spazio mondiale del nodo |
scale | Vector3 | getScale() | Scala nello spazio mondiale del nodo |
rotation | Quaternion | getRotation() | Rotazione nello spazio mondiale come quaternione |
eulerAngles | Vector3 | getEulerAngles() | Rotazione nello spazio mondiale come angoli di Eulero in radianti (roll, pitch, yaw) |
transformMatrix | Matrix4 | getTransformMatrix() | Matrice di trasformazione completa 4x4 nello spazio mondiale |
Methods
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);Methods
GlobalTransformviene calcolato al momentonode.getGlobalTransform()viene acceduto; è non aggiornato dinamicamente se il nodo genitoreTransformmodifiche successive.- Il getter è
getScale()suGlobalTransform(nongetScaling()). Il localeTransformutilizzagetScaling()per la proprietà di scala scrivibile.