GlobalTransform

GlobalTransform — Aspose.3D FOSS for Java

Methods

GlobalTransform är en skrivskyddad ögonblicksbild av en Node’s världsrums‑transformation. Den erhålls via node.getGlobalTransform() och återspeglar sammansättningen av nodens egna Transform med varje förfaders transform upp till scenroten.

Alla egenskaper är skrivskyddade. För att ändra en nods position, ändra nodens lokala Transform istället.

Methods: com.aspose.threed

import com.aspose.threed.GlobalTransform;

GlobalTransform instansieras normalt inte direkt; du får den från node.getGlobalTransform().

Methods

MethodsMethodsMethodsMethods
translationVector3getTranslation()Världsrumsposition för noden
scaleVector3getScale()Världsrums‑skala för noden
rotationQuaterniongetRotation()Världsrumsrotation som en kvaternion
eulerAnglesVector3getEulerAngles()Världsrumsrotation som Euler‑vinklar i radianer (roll, pitch, yaw)
transformMatrixMatrix4getTransformMatrix()Fullständig 4x4 världsrums‑transformmatris

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 beräknas vid tidpunkten node.getGlobalTransform() hämtas; den är inte uppdateras dynamiskt om en föräldranods Transform senare ändringar.
  • Getter-funktionen är getScale()GlobalTransform (inte getScaling()) Transform använder getScaling() för den skrivbara scale property.

Se även

 Svenska