Class Scene

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

Scene este containerul rădăcină pentru un graf de scenă 3D în @aspose/3d. Acesta conține ierarhia nodurilor, metadatele și clipurile de animație și oferă interfața principală I/O pentru încărcarea și salvarea fișierelor 3D.

export class Scene extends SceneObject

ImageRenderOptions

A3DObject ← SceneObject ← Scene

ImageRenderOptions

Încarcă un fișier OBJ și afișează numărul de noduri copil din rădăcina grafului de scenă.

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

const scene = new Scene();
scene.open('model.obj');

function countNodes(node: any): number {
  let total = 1;
  for (const child of node.childNodes) {
    total += countNodes(child);
  }
  return total;
}

const nodeCount = countNodes(scene.rootNode);
console.log(`Total nodes in scene: ${nodeCount}`);

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
rootNodeNodeNodul rădăcină al graficului de scenă. Toată geometria, luminile, camerele și celelalte obiecte sunt atașate sub acest nod.
assetInfoAssetInfoMetadatele despre resursă, inclusiv creatorul, data creării, informațiile despre unitate și sistemul de coordonate.
animationClipsAnimationClip[]Colecția de clipuri de animație definite în scenă. Fiecare clip conține curbe de animație pentru noduri și proprietățile lor.
subScenesScene[]Sub-scene încorporate în această scenă. Folosite de formate precum FBX care suportă ierarhii de scenă. Notă: Această proprietate nu este confirmată în suprafața curentă a API-ului și s-ar putea să nu fie disponibilă.

ImageRenderOptions

open(fileOrStream, options?)

Încarcă un fișier 3D dintr-o cale de fișier sau un Buffer în scenă, înlocuind orice conținut existent.

open(fileOrStream: string | Buffer, options?: LoadOptions): void

ImageRenderOptions

fileOrStream string | Buffer

Calea către fișierul sursă, sau un Buffer care conține datele brute ale fișierului.

options LoadOptions (opțional)

Opțiuni de încărcare specifice formatului. Transmite undefined pentru a folosi valorile implicite.

ImageRenderOptions

void

ImageRenderOptions

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

const scene = new Scene();
scene.open('input.fbx');
console.log(`Loaded scene with root node: ${scene.rootNode.name}`);

openFromBuffer(buffer, options?)

Încarcă un fișier 3D dintr-un în memorie Buffer. Aceasta este suprasarcina preferată când datele fișierului au fost deja citite în memorie.

openFromBuffer(buffer: Buffer, options?: LoadOptions): void

ImageRenderOptions

buffer Buffer

Un Node.js Buffer care conține conținutul complet al fișierului.

options LoadOptions (opțional)

Opțiuni de încărcare specifice formatului.

ImageRenderOptions

void

ImageRenderOptions

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

const data = readFileSync('model.glb');
const scene = new Scene();
scene.openFromBuffer(data);
console.log(`Animation clips: ${scene.animationClips.length}`);

save(fileOrStream, formatOrOptions?, options?)

Salvează scena într-un fișier. Formatul este dedus din extensia fișierului, sau poți furniza un format specific SaveOptions instanță (sau o FileFormat singleton) ca al doilea argument.

save(fileOrStream: string, formatOrOptions?: FileFormat | SaveOptions, options?: SaveOptions): void

ImageRenderOptions

fileOrStream string

Calea fișierului de destinație. Extensia determină formatul de ieșire (de ex., .glb → GLB, .gltf → glTF JSON, .stl → STL).

formatOrOptions FileFormat | SaveOptions (opțional)

Fie un singleton de format (de ex., GltfFormat.getInstance()) sau un format-specific SaveOptions subclasă.

options SaveOptions (opțional)

Opțiuni de salvare Format-specific când un FileFormat este transmis ca al doilea argument.

ImageRenderOptions

void

ImageRenderOptions

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

const scene = new Scene();
scene.open('input.obj');

// Format inferred from extension
scene.save('output.glb');
console.log('Scene saved as GLB.');

createAnimationClip(name)

Creează un nou clip de animație denumit și îl adaugă la scenei animationClips colecție.

createAnimationClip(name: string): AnimationClip

ImageRenderOptions

name string

Un nume descriptiv pentru noul clip de animație.

ImageRenderOptions

AnimationClip

Nou creat AnimationClip instanță.

ImageRenderOptions

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

const scene = new Scene();
const clip = scene.createAnimationClip('WalkCycle');
console.log(`Created clip: ${clip.name}`);
console.log(`Total clips: ${scene.animationClips.length}`);
 Română