Class GlobalTransform

Class GlobalTransform

Paket: @aspose/3d (v24.12.0)

GlobalTransform ger en skrivskyddad vy av en nods transformation i världsrummet. Den erhålls från node.globalTransform och beräknas genom att multiplicera den lokala Transform matriserna för noden och alla dess förfäder. Alla egenskaper är skrivskyddade; för att ändra en nods världsläge måste du modifiera den lokala Transform för noden eller en av dess förfäder.

export class GlobalTransform

Notes

Läs världsrumspositionen för en nästlad nod efter att ha laddat en FBX‑fil.

import { Scene } from '@aspose/3d';

const scene = new Scene();
scene.open('character.fbx');

function printWorldPositions(node: any, depth: number = 0): void {
  const gt = node.globalTransform;
  const t = gt.translation;
  console.log(`${'  '.repeat(depth)}${node.name}: (${t.x.toFixed(3)}, ${t.y.toFixed(3)}, ${t.z.toFixed(3)})`);
  for (const child of node.childNodes) {
    printWorldPositions(child, depth + 1);
  }
}

printWorldPositions(scene.rootNode);

Notes

Alla egenskaper på GlobalTransform är skrivskyddade.

NotesNotesNotes
translationVector3Världsrumsposition för noden, i koordinatsystemet för scenroten.
scaleVector3Världsrums-skala — produkten av nodens lokala scaling och alla förfäders skalningar. Obs: denna egenskap heter scale (inte scaling) för att skilja den från lokalt utrymme Transform.scaling.
rotationQuaternionVärldsrumsorientering som en enhetskvaternion.
eulerAnglesVector3Världsrumsrotation uttryckt som Euler-vinklar i radianer, härledd från den rotation kvaternion.
transformMatrixMatrix4Den fullständiga lokal‑till‑värld 4×4 transformationsmatrisen.

Notes

  • GlobalTransform beräknas vid lästid. Det finns inget manuellt uppdateringssteg; varje åtkomst till node.globalTransform returnerar en nyberäknad ögonblicksbild.
  • Notes scale egenskap på GlobalTransform motsvarar den lokala scaling egenskap på Transform. Namnskillnaden är avsiktlig: scale (singular) indikerar ett värde härlett i världsrummet, medan scaling (noun form) indikerar den lokala inställningsbara egenskapen.
  • Geometriska förskjutningar (geometricTranslation, geometricScaling, geometricRotationTransform) tillämpas på nodens egen geometri men sprids inte till barn; GlobalTransform inkluderar inte geometriska förskjutningar.
 Svenska