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 SceneObjectColladaSaveOptions
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
| ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions |
|---|---|---|
rootNode | Node | Il nodo radice del grafo di scena. Tutta la geometria, le luci, le telecamere e gli altri oggetti sono collegati sotto questo nodo. |
assetInfo | AssetInfo | Metadati sull’asset, inclusi creatore, data di creazione, informazioni sull’unità e sistema di coordinate. |
animationClips | AnimationClip[] | La raccolta di clip di animazione definite nella scena. Ogni clip contiene curve di animazione per i nodi e le loro proprietà. |
subScenes | Scene[] | 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): voidColladaSaveOptions
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): voidColladaSaveOptions
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): voidColladaSaveOptions
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): AnimationClipColladaSaveOptions
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}`);