GlobalTransform

GlobalTransform — Aspose.3D FOSS for Java

Methods

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

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

Methods: com.aspose.threed

import com.aspose.threed.GlobalTransform;

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

Methods

MethodsMethodsMethodsMethods
translationVector3getTranslation()מיקום במרחב‑העולם של ה‑node
scaleVector3getScale()קנה מידה במרחב‑העולם של ה‑node
rotationQuaterniongetRotation()סיבוב במרחב‑העולם כקוואטרניון
eulerAnglesVector3getEulerAngles()סיבוב במרחב‑העולם כזוויות אוילר ברדיאנים (roll, pitch, yaw)
transformMatrixMatrix4getTransformMatrix()מטריצת טרנספורמציה מלאה 4x4 במרחב‑העולם

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

  • GlobalTransform מחושבת בזמן node.getGlobalTransform() נגיש; הוא לא מתעדכן דינמית אם של צומת הורה Transform שינויים מאוחרים.
  • ה-getter הוא getScale() ב GlobalTransform (לא getScaling()). המקומי Transform משתמש getScaling() עבור מאפיין הסקלה הניתן לכתיבה.

ראה גם

 עברית