GlobalTransform — Aspose.3D FOSS for Java
Methods
GlobalTransform ist ein schreibgeschützt Schnappschuss eines Nodes Welt-Raum-Transformation. Sie wird erhalten über node.getGlobalTransform() und spiegelt die Zusammensetzung der eigenen Transform mit der Transformation jedes Vorgängers bis zur Szenenwurzel.
Alle Eigenschaften sind schreibgeschützt. Um die Position eines Knotens zu ändern, modifiziere die lokale Transform stattdessen.
Methods: com.aspose.threed
import com.aspose.threed.GlobalTransform;GlobalTransform wird normalerweise nicht direkt instanziiert; du erhältst es von node.getGlobalTransform().
Methods
| Methods | Methods | Methods | Methods |
|---|---|---|---|
translation | Vector3 | getTranslation() | Welt-Raum-Position des Knotens |
scale | Vector3 | getScale() | Welt-Raum-Skala des Knotens |
rotation | Quaternion | getRotation() | World-Space-Rotation als Quaternion |
eulerAngles | Vector3 | getEulerAngles() | World-Space-Rotation als Euler-Winkel in Radianten (roll, pitch, yaw) |
transformMatrix | Matrix4 | getTransformMatrix() | Vollständige 4x4 World-Space-Transformationsmatrix |
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
GlobalTransformwird zum Zeitpunkt berechnetnode.getGlobalTransform()wird zugegriffen; es ist nicht dynamisch aktualisiert, wenn ein übergeordnetes Knoten-Transformspätere Änderungen.- Der Getter ist
getScale()aufGlobalTransform(nichtgetScaling()). Der lokaleTransformverwendetgetScaling()für die schreibbare Skalen-Eigenschaft.