Class GlobalTransform

Class GlobalTransform

패키지: @aspose/3d (v24.12.0)

GlobalTransform 노드의 월드 스페이스 변환에 대한 읽기 전용 뷰를 제공합니다. 이는 다음에서 얻어집니다 node.globalTransform 그리고 로컬을 곱하여 계산됩니다 Transform 노드와 모든 조상의 행렬을 곱합니다. 모든 속성은 읽기 전용입니다; 노드의 월드 위치를 변경하려면 로컬을 수정해야 합니다 Transform 노드의 로컬이거나 그 조상 중 하나의 로컬.

export class GlobalTransform

ColladaSaveOptions

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

에 있는 모든 속성은 GlobalTransform 읽기 전용입니다.

ColladaSaveOptionsColladaSaveOptionsColladaSaveOptions
translationVector3노드의 월드 스페이스 위치이며, 씬 루트의 좌표계에 기준합니다.
scaleVector3World-space scale — 노드의 로컬 스케일과 scaling 및 모든 조상 스케일링. 참고: 이 속성은 다음과 같이 명명됩니다 scale (not scaling)를 로컬-스페이스와 구별하기 위해 Transform.scaling.
rotationQuaternionWorld-space orientation을 단위 쿼터니언으로 표현합니다.
eulerAnglesVector3World-space rotation은 라디안 단위의 오일러 각으로 표현되며, rotation 쿼터니언.
transformMatrixMatrix4전체 로컬-투-월드 4×4 변환 행렬.

ColladaSaveOptions

  • GlobalTransform 읽기 시점에 계산됩니다. 수동 새로 고침 단계가 없으며; 모든 접근은 node.globalTransform 새로 계산된 스냅샷을 반환합니다.
  • ColladaSaveOptions scale 속성 on GlobalTransform 로컬에 해당합니다 scaling 속성 on Transform. 이름 차이는 의도된 것입니다: scale (singular) 은(는) 월드 스페이스에서 파생된 값을 나타내며, scaling (noun form) 은(는) 로컬에서 설정 가능한 속성을 나타냅니다.
  • 기하학적 오프셋 (geometricTranslation, geometricScaling, geometricRotation on Transform)는 노드 자체의 기하에 적용되지만 자식에게는 전파되지 않습니다; GlobalTransform 기하학적 오프셋을 포함하지 않습니다.
 한국어