GlobalTransform — Aspose.3D FOSS for Java
Notes
GlobalTransform は 読み取り専用 のスナップショット Nodeのワールド空間変換です。これは、以下を使用して取得されます node.getGlobalTransform() そして、ノード自身の Transform シーンルートまでのすべての祖先の変換と組み合わせたものです。.
すべてのプロパティは読み取り専用です。ノードの位置を変更するには、ノードのローカル Transform 代わりに。.
Notes: com.aspose.threed
import com.aspose.threed.GlobalTransform;GlobalTransform 通常は直接インスタンス化されません; それは~から受け取ります node.getGlobalTransform().
Notes
| Notes | Notes | Notes | Notes |
|---|---|---|---|
translation | Vector3 | getTranslation() | ノードのワールド空間位置 |
scale | Vector3 | getScale() | ノードのワールド空間スケール |
rotation | Quaternion | getRotation() | ワールド空間の回転(クォータニオン) |
eulerAngles | Vector3 | getEulerAngles() | ラジアン単位のEuler角としてのワールド空間回転 (roll, pitch, yaw) |
transformMatrix | Matrix4 | getTransformMatrix() | 完全な4x4ワールド空間変換行列 |
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
GlobalTransformはその時点で計算されますnode.getGlobalTransform()にアクセスされます;それは ではありません 親ノードの…がある場合、動的に更新されますTransform後に変更されます。.- getter は
getScale()onGlobalTransform(notgetScaling()). ローカルTransform使用しますgetScaling()書き込み可能なスケールプロパティ用に。.