GlobalTransform

GlobalTransform

Methods

GlobalTransform egy csak olvasható pillanatkép egy Node’s világ-térbeli transzformációja. Ez a következővel szerezhető meg node.getGlobalTransform() és tükrözi a csomópont saját Transform minden ős transzformációjával a jelenet gyökeréig.

Minden tulajdonság csak olvasható. A csomópont pozíciójának megváltoztatásához módosítsa a csomópont helyi Transform helyette.

Methods: com.aspose.threed

import com.aspose.threed.GlobalTransform;

GlobalTransform nem szokásos közvetlenül példányosítani; ezt a következőtől kapja 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 a számítás időpontjában node.getGlobalTransform() hozzáféréskor; ez nem dinamikusan frissítve, ha egy szülőcsomópontja Transform későbbi változások.
  • A getter van getScale() be GlobalTransform (nem getScaling()). A helyi Transform használ getScaling() az írható skála tulajdonsághoz.

Lásd még

 Magyar