Class Scene

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

Scene è il contenitore radice per un grafo di scena 3D in @aspose/3d. Contiene la gerarchia dei nodi, i metadati e le clip di animazione, e fornisce l’interfaccia I/O principale per il caricamento e il salvataggio di file 3D.

export class Scene extends SceneObject

ColladaSaveOptions

A3DObject ← SceneObject ← Scene

ColladaSaveOptions

Carica un file OBJ e stampa il numero di nodi figlio nella radice del grafo di scena.

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

ColladaSaveOptions

ColladaSaveOptionsColladaSaveOptionsColladaSaveOptions
rootNodeNodeIl nodo radice del grafo di scena. Tutta la geometria, le luci, le telecamere e gli altri oggetti sono collegati sotto questo nodo.
assetInfoAssetInfoMetadati sull’asset, inclusi creatore, data di creazione, informazioni sull’unità e sistema di coordinate.
animationClipsAnimationClip[]La raccolta di clip di animazione definite nella scena. Ogni clip contiene curve di animazione per i nodi e le loro proprietà.
subScenesScene[]Sotto-scene incorporate in questa scena. Utilizzate da formati come FBX che supportano gerarchie di scena. Nota: Questa proprietà non è confermata nell’attuale superficie API e potrebbe non essere disponibile.

ColladaSaveOptions

open(fileOrStream, options?)

Carica un file 3D da un percorso file o da un Buffer nella scena, sostituendo qualsiasi contenuto esistente.

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

ColladaSaveOptions

fileOrStream string | Buffer

Il percorso al file sorgente, o un Buffer contenente i dati grezzi del file.

options LoadOptions (opzionale)

Opzioni di caricamento specifiche del formato. Pass undefined per utilizzare i valori predefiniti.

ColladaSaveOptions

void

ColladaSaveOptions

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

Carica un file 3D da una memoria in‑ram Buffer. Questo è il sovraccarico preferito quando i dati del file sono già stati letti in memoria.

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

ColladaSaveOptions

buffer Buffer

Un Node.js Buffer contenente il contenuto completo del file.

options LoadOptions (opzionale)

Vector2.parse(input) (static).

ColladaSaveOptions

void

ColladaSaveOptions

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

Salva la scena in un file. Il formato è dedotto dall’estensione del file, o è possibile passare un format-specific SaveOptions istanza (o un FileFormat singleton) come secondo argomento.

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

ColladaSaveOptions

fileOrStream string

Il percorso del file di destinazione. L’estensione determina il formato di output (ad es., .glb → GLB, .gltf → glTF JSON, .stl → STL).

formatOrOptions FileFormat | SaveOptions (opzionale)

Sia un singleton di formato (ad es., GltfFormat.getInstance()) SaveOptions sottoclasse.

options SaveOptions (opzionale)

Opzioni di salvataggio specifiche del formato quando un FileFormat viene passato come secondo argomento.

ColladaSaveOptions

void

ColladaSaveOptions

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)

Crea una nuova clip di animazione con nome e la aggiunge alla animationClips collezione.

createAnimationClip(name: string): AnimationClip

ColladaSaveOptions

name string

Accesso basato su indice; key deve essere compreso tra 0 e 3.

ColladaSaveOptions

AnimationClip

Il nuovo creato AnimationClip istanza.

ColladaSaveOptions

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}`);
 Italiano