GlobalTransform

GlobalTransform — Aspose.3D FOSS for Java

Methods

GlobalTransform est un lecture seule instantané d’un Nodetransformation en espace mondial. Elle est obtenue via node.getGlobalTransform() et reflète la composition de la propre Transform avec la transformation de chaque ancêtre jusqu’à la racine de la scène.

Toutes les propriétés sont en lecture seule. Pour modifier la position d’un nœud, modifiez le Transform à la place.

Methods: com.aspose.threed

import com.aspose.threed.GlobalTransform;

GlobalTransform n’est généralement pas instancié directement ; vous le recevez de node.getGlobalTransform().

Methods

MethodsMethodsMethodsMethods
translationVector3getTranslation()Position en espace mondial du nœud
scaleVector3getScale()Échelle en espace mondial du nœud
rotationQuaterniongetRotation()Rotation en espace mondial sous forme de quaternion
eulerAnglesVector3getEulerAngles()Rotation en espace mondial sous forme d’angles d’Euler en radians (roll, pitch, yaw)
transformMatrixMatrix4getTransformMatrix()Matrice de transformation complète 4x4 en espace mondial

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 est calculé au moment node.getGlobalTransform() est accédé ; il est pas mis à jour dynamiquement si le nœud parent Transform changements ultérieurs.
  • Le getter est getScale() sur GlobalTransform (pas getScaling()). Le local Transform utilise getScaling() pour la propriété d’échelle modifiable.

Voir aussi

 Français