GlobalTransform

GlobalTransform – Aspose.3D FOSS for Java

Notes

GlobalTransform הוא קריאה‑בלבד תמונת מצב של Nodeשל הטרנספורמציה במרחב העולם. היא מתקבלת דרך node.getGlobalTransform() ומשקפת את הרכבה של ה‑node עצמו Transform עם הטרנספורמציה של כל האב עד לשורש הסצנה.

כל המאפיינים הם קריאה‑בלבד. כדי לשנות את מיקום ה‑node, שנה את ה‑local Transform במקום זאת.

Notes: com.aspose.threed

import com.aspose.threed.GlobalTransform;

GlobalTransform אינו בדרך כלל מופעל ישירות; אתה מקבל אותו מ- node.getGlobalTransform().

Notes

ClassDescription
GlobalTransformRead-only world-space transform snapshot. Exposes the composed translation, rotation, scale, and matrix of a node in world space.
NameTypeAccessDescription
translationVector3ReadReturns the world-space translation (position) of the node.
rotationVector3ReadReturns the world-space rotation (Euler angles) of the node.
scaleVector3ReadReturns the world-space scale of the node.
transformMatrixMatrix4ReadReturns the full 4x4 world-space transformation matrix.
SignatureDescription
getTranslation() to Vector3Returns the world-space translation of the node.
getRotation() to Vector3Returns the world-space rotation of the node.
getScale() to Vector3Returns the world-space scale of the node.
getTransformMatrix() to Matrix4Returns the full 4x4 world-space transformation matrix.

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() ב GlobalTransform (לא getScaling()) Transform משתמש getScaling() עבור מאפיין הסקלה הניתן לכתיבה.

ראה גם

 עברית