Class GlobalTransform

Class GlobalTransform

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

GlobalTransform fornisce una visualizzazione in sola lettura della trasformazione nello spazio mondiale di un nodo. Viene ottenuta da node.globalTransform ed è calcolata moltiplicando le Transform matrici del nodo e di tutti i suoi antenati. Tutte le proprietà sono in sola lettura; per modificare la posizione mondiale di un nodo è necessario modificare il locale Transform del nodo o di uno dei suoi antenati.

export class GlobalTransform

ColladaSaveOptions

Leggi la posizione nello spazio mondiale di un nodo annidato dopo aver caricato un file FBX.

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

ColladaSaveOptions

Tutte le proprietà su GlobalTransform sono in sola lettura.

ColladaSaveOptionsColladaSaveOptionsColladaSaveOptions
translationVector3Posizione nello spazio mondiale del nodo, nel sistema di coordinate della radice della scena.
scaleVector3Scala nello spazio mondiale — il prodotto della locale del nodo scaling e di tutte le scalature degli antenati. Nota: questa proprietà è denominata scale (non scaling) per distinguerla dallo spazio locale Transform.scaling.
rotationQuaternionOrientamento nello spazio mondiale come quaternione unitario.
eulerAnglesVector3Rotazione nello spazio mondiale espressa come angoli di Eulero in radianti, derivata da the rotation quaternione.
transformMatrixMatrix4La matrice di trasformazione completa locale‑a‑mondo 4×4.

ColladaSaveOptions

  • GlobalTransform viene calcolato al momento della lettura. Non esiste un passaggio di aggiornamento manuale; ogni accesso a node.globalTransform restituisce un’istantanea appena calcolata.
  • ColladaSaveOptions scale proprietà su GlobalTransform corrisponde al locale scaling proprietà su Transform. La differenza di nome è intenzionale: scale (singolare) indica un valore derivato dallo spazio mondiale, mentre scaling (forma nominale) indica la proprietà locale impostabile.
  • Offset geometrici (geometricTranslation, geometricScaling, geometricRotation su Transform) vengono applicati alla geometria del nodo stesso ma non vengono propagati ai figli; GlobalTransform non include offset geometrici.
 Italiano