GlobalTransform

GlobalTransform

Methods

GlobalTransform je iba na čítanie snímka Nodesvetový priestor transformácie. Získava sa pomocou node.getGlobalTransform() a odráža zloženie vlastného uzla Transform s transformáciou každého predka až po koreň scény.

Všetky vlastnosti sú iba na čítanie. Ak chcete zmeniť pozíciu uzla, upravte lokálny Transform namiesto toho.

Methods: com.aspose.threed

import com.aspose.threed.GlobalTransform;

GlobalTransform zvyčajne sa neinstancuje priamo; získate ho z node.getGlobalTransform().

Methods

NameTypeAccessDescription
translationVector3ReadGets the translation.
scaleVector3ReadGets the scale.
eulerAnglesVector3ReadGets the rotation represented in Euler angles, measured in degree.
rotationQuaternionReadGets the rotation represented in quaternion.
transformMatrixMatrix4ReadGets the transform matrix.
SignatureDescription
GlobalTransform()Initializes a new instance of the GlobalTransform class.
GlobalTransform(matrix: Matrix4)Initializes a new instance of the GlobalTransform class with the specified matrix.
getTranslation()Vector3Gets the translation.
getScale()Vector3Gets the scale.
getEulerAngles()Vector3Gets the rotation represented in Euler angles, measured in degree.
getRotation()QuaternionGets the rotation represented in quaternion.
getTransformMatrix()Matrix4Gets the transform matrix.

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 sa vypočíta v čase node.getGlobalTransform() sa pristupuje; je nie aktualizované dynamicky, ak je rodičovského uzla Transform neskoršie zmeny.
  • Getter je getScale() zapnuté GlobalTransform (nie getScaling()). Lokálny Transform používa getScaling() pre zapisovateľnú vlastnosť mierky.

Pozri tiež

 Slovenčina