Class Scene

Balík: @aspose/3d (v24.12.0)

Scéna je koreňovým kontajnerom pre 3D graf scén v @aspose/3d. Obsahuje hierarchiu uzlov, metadáta a animačné klipy a poskytuje primárne I/O rozhranie pre načítanie a ukladanie 3D súborov.

export class Scene extends SceneObject

ImageRenderOptions

A3DObject ← SceneObject ← Scene

ImageRenderOptions

Načítajte OBJ súbor a vypíšte počet podriadených uzlov v koreňovom uzle grafu scény.

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
rootNodeNodeKoreňový uzol grafu scény. Všetka geometria, svetlá, kamery a ďalšie objekty sú pripojené pod týmto uzlom.
assetInfoAssetInfoMetadáta o aktíve, vrátane tvorcu, času vytvorenia, informácií o jednotkách a súradnicovom systéme.
animationClipsAnimationClip[]Zbierka animačných klipov definovaných v scéne. Každý klip obsahuje animačné krivky pre uzly a ich vlastnosti.
subScenesScene[]Podscény vložené v tejto scéne. Používa sa formátmi ako FBX, ktoré podporujú hierarchie scén. Poznámka: Táto vlastnosť nie je v aktuálnom rozhraní API potvrdená a môže byť nedostupná.

ImageRenderOptions

open(fileOrStream, options?)

Načíta 3D súbor z cesty k súboru alebo z Buffer do scény, pričom nahradí akýkoľvek existujúci obsah.

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

ImageRenderOptions

fileOrStream string | Buffer

Cesta k zdrojovému súboru alebo Buffer obsahujúci surové dáta súboru.

options LoadOptions (voliteľné)

Formátovo špecifické možnosti načítania. Pass undefined pre použitie predvolených hodnôt.

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

Načíta 3D súbor z pamäti Buffer. Toto je preferované preťaženie, keď už boli dáta súboru načítané do pamäte.

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

ImageRenderOptions

buffer Buffer

Node.js Buffer obsahujúci kompletný obsah súboru.

options LoadOptions (voliteľné)

Možnosti načítania špecifické pre formát.

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

Uloží scénu do súboru. Formát sa odvodí z prípony súboru, alebo môžete odovzdať formátovo špecifický SaveOptions inštanciu (alebo FileFormat singleton) ako druhý argument.

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

ImageRenderOptions

fileOrStream string

Cieľová cesta súboru. Prípona určuje výstupný formát (napr., .glb → GLB, .gltf → glTF JSON, .stl → STL).

formatOrOptions FileFormat | SaveOptions (voliteľné)

Buď formátový singleton (napr., GltfFormat.getInstance()) SaveOptions podtriedu.

options SaveOptions (voliteľné)

Formátovo špecifické možnosti ukladania, keď je FileFormat je odovzdaný ako druhý 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)

Vytvorí nový pomenovaný animačný klip a pridá ho do animationClips kolekcie scény.

createAnimationClip(name: string): AnimationClip

ImageRenderOptions

name string

Popisný názov pre nový animačný klip.

ImageRenderOptions

AnimationClip

Novovytvorená AnimationClip inštancia.

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