Class GlobalTransform
Package : @aspose/3d (v24.12.0)
GlobalTransform fournit une vue en lecture seule de la transformation en espace mondial d’un nœud. Elle est obtenue à partir de node.globalTransform et est calculée en multipliant les locales Transform matrices du nœud et de tous ses ancêtres. Toutes les propriétés sont en lecture seule ; pour changer la position mondiale d’un nœud, vous devez modifier le local Transform du nœud ou de l’un de ses ancêtres.
export class GlobalTransformColladaSaveOptions
Lire la position dans l’espace mondial d’un nœud imbriqué après le chargement d’un fichier 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
Toutes les propriétés sur GlobalTransform sont en lecture seule.
| ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions |
|---|---|---|
translation | Vector3 | Position en espace mondial du nœud, dans le système de coordonnées de la racine de la scène. |
scale | Vector3 | Échelle en espace mondial — le produit du local du nœud scaling et toutes les mises à l’échelle des ancêtres. Remarque : cette propriété est nommée scale (pas scaling) pour le distinguer de l’espace local Transform.scaling. |
rotation | Quaternion | Orientation en espace mondial sous forme d’un quaternion unité. |
eulerAngles | Vector3 | Rotation en espace mondial exprimée en angles d’Euler en radians, dérivée du rotation quaternion. |
transformMatrix | Matrix4 | La matrice de transformation 4×4 complète locale-vers-mondial. |
ColladaSaveOptions
GlobalTransformest calculée au moment de la lecture. Il n’y a aucune étape de rafraîchissement manuelle ; chaque accès ànode.globalTransformrenvoie un instantané fraîchement calculé.- ColladaSaveOptions
scalepropriété surGlobalTransformcorrespond à l’espace localscalingpropriété activéeTransform. La différence de nom est intentionnelle :scale(singulier) indique une valeur dérivée de l’espace mondial, tandis quescaling(forme nominale) indique la propriété locale réglable. - Décalages géométriques (
geometricTranslation,geometricScaling,geometricRotationsurTransform) sont appliqués à la géométrie du nœud lui‑même mais ne sont pas propagés aux enfants ;GlobalTransformn’inclut pas les décalages géométriques.