GlobalTransform

GlobalTransform — Aspose.3D FOSS for Java

Notes

GlobalTransform on vain luku tilannekuva Noden maailmanavaruuden muunnos. Se saadaan node.getGlobalTransform() ja heijastaa solmun oman Transform kunkin esivanhemman muunnoksen kanssa kohtauksen juureen asti.

Kaikki ominaisuudet ovat vain luku. Muuttaaksesi solmun sijaintia, muokkaa solmun paikallista Transform sen sijaan.

Notes: com.aspose.threed

import com.aspose.threed.GlobalTransform;

GlobalTransform ei yleensä luoda suoraan; saat sen node.getGlobalTransform().

Notes

NotesNotesNotesNotes
translationVector3getTranslation()Solmun maailmanavaruuden sijainti
scaleVector3getScale()Solmun maailmanavaruuden mittakaava
rotationQuaterniongetRotation()Solmun maailmanavaruuden kierto kvaternionina
eulerAnglesVector3getEulerAngles()Solmun maailmanavaruuden kierto Eulerin kulmina radiaaneina (roll, pitch, yaw)
transformMatrixMatrix4getTransformMatrix()Täydellinen 4x4 maailmanavaruuden muunnosmatriisi

Notes

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);

Notes

  • GlobalTransform lasketaan sillä hetkellä node.getGlobalTransform() avataan; se on ei päivitetään dynaamisesti, jos vanhemman solmun Transform myöhemmin tapahtuvat muutokset.
  • Getter on getScale() on GlobalTransform (ei getScaling()) Transform käyttää getScaling() kirjoitettavalle skaalaominaisuudelle.

Katso myös

 Suomi