GlobalTransform — Aspose.3D FOSS for Java
Notes
GlobalTransform bir salt okunur bir anlık görüntüsü Node’s dünya-uzayı dönüşümü. Şu yol ile elde edilir node.getGlobalTransform() ve düğümün kendi Transform her bir atağın dönüşümüyle sahne köküne kadar.
Tüm özellikler salt okunurdur. Bir düğümün konumunu değiştirmek için, düğümün yerel Transform yerine.
Notes: com.aspose.threed
import com.aspose.threed.GlobalTransform;GlobalTransform genellikle doğrudan örneklenmez; ondan alırsınız node.getGlobalTransform().
Notes
| Notes | Notes | Notes | Notes |
|---|---|---|---|
translation | Vector3 | getTranslation() | Düğümün dünya uzayındaki konumu |
scale | Vector3 | getScale() | Düğümün dünya uzayındaki ölçeği |
rotation | Quaternion | getRotation() | Dünya uzayındaki dönüşüm bir quaternion olarak |
eulerAngles | Vector3 | getEulerAngles() | Dünya uzayındaki dönüşüm radyan cinsinden Euler açıları olarak (roll, pitch, yaw) |
transformMatrix | Matrix4 | getTransformMatrix() | Tam 4x4 dünya uzayı dönüşüm matrisi |
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
GlobalTransformzamanında hesaplanırnode.getGlobalTransform()erişildiğinde; o değil bir üst düğümün dinamik olarak güncellenirTransformsonradan değişiklikler.- Getter şudur
getScale()açıkGlobalTransform(değilgetScaling()). YerelTransformkullanırgetScaling()yazılabilir ölçek özelliği için.