GlobalTransform

GlobalTransform — Aspose.3D FOSS for Java

Methods

GlobalTransform è un sola lettura istantanea di un Nodetrasformazione nello spazio mondiale. È ottenuta tramite node.getGlobalTransform() e riflette la composizione della propria Transform con la trasformazione di ogni antenato fino alla radice della scena.

Tutte le proprietà sono di sola lettura. Per cambiare la posizione di un nodo, modifica il locale del nodo Transform invece.

Methods: com.aspose.threed

import com.aspose.threed.GlobalTransform;

GlobalTransform non viene normalmente istanziato direttamente; lo ricevi da node.getGlobalTransform().

Methods

MethodsMethodsMethodsMethods
translationVector3getTranslation()Posizione nello spazio mondiale del nodo
scaleVector3getScale()Scala nello spazio mondiale del nodo
rotationQuaterniongetRotation()Rotazione nello spazio mondiale come quaternione
eulerAnglesVector3getEulerAngles()Rotazione nello spazio mondiale come angoli di Eulero in radianti (roll, pitch, yaw)
transformMatrixMatrix4getTransformMatrix()Matrice di trasformazione completa 4x4 nello spazio mondiale

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 viene calcolato al momento node.getGlobalTransform() viene acceduto; è non aggiornato dinamicamente se il nodo genitore Transform modifiche successive.
  • Il getter è getScale() su GlobalTransform (non getScaling()). Il locale Transform utilizza getScaling() per la proprietà di scala scrivibile.

Vedi anche

 Italiano