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 SceneObjectImageRenderOptions
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
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
rootNode | Node | Nodul rădăcină al graficului de scenă. Toată geometria, luminile, camerele și celelalte obiecte sunt atașate sub acest nod. |
assetInfo | AssetInfo | Metadatele despre resursă, inclusiv creatorul, data creării, informațiile despre unitate și sistemul de coordonate. |
animationClips | AnimationClip[] | Colecția de clipuri de animație definite în scenă. Fiecare clip conține curbe de animație pentru noduri și proprietățile lor. |
subScenes | Scene[] | 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): voidImageRenderOptions
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): voidImageRenderOptions
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): voidImageRenderOptions
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): AnimationClipImageRenderOptions
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}`);