Class Scene

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

Scene é o contêiner raiz para um grafo de cena 3D em @aspose/3d. Ele contém a hierarquia de nós, metadados e clipes de animação, e fornece a interface principal de E/S para carregar e salvar arquivos 3D.

export class Scene extends SceneObject

ImageRenderOptions

A3DObject ← SceneObject ← Scene

ImageRenderOptions

Carregue um arquivo OBJ e imprima o número de nós filhos na raiz do grafo de cena.

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
rootNodeNodeO nó raiz do grafo de cena. Toda a geometria, luzes, câmeras e outros objetos são anexados sob este nó.
assetInfoAssetInfoMetadados sobre o recurso, incluindo criador, data de criação, informações de unidade e sistema de coordenadas.
animationClipsAnimationClip[]A coleção de clipes de animação definidos na cena. Cada clipe contém curvas de animação para nós e suas propriedades.
subScenesScene[]Subcenas incorporadas nesta cena. Usado por formatos como FBX que suportam hierarquias de cena. Observação: Esta propriedade não está confirmada na superfície atual da API e pode não estar disponível.

ImageRenderOptions

open(fileOrStream, options?)

Carrega um arquivo 3D a partir de um caminho de arquivo ou um Buffer para a cena, substituindo qualquer conteúdo existente.

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

ImageRenderOptions

fileOrStream string | Buffer

O caminho para o arquivo de origem, ou um Buffer contendo os dados brutos do arquivo.

options LoadOptions (opcional)

Opções de carregamento específicas do formato. Passe undefined para usar os padrões.

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

Carrega um arquivo 3D a partir de uma memória Buffer. Esta é a sobrecarga preferida quando os dados do arquivo já foram lidos para a memória.

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

ImageRenderOptions

buffer Buffer

Um Node.js Buffer contendo o conteúdo completo do arquivo.

options LoadOptions (opcional)

Opções de carregamento específicas de formato.

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

Salva a cena em um arquivo. O formato é inferido a partir da extensão do arquivo, ou você pode passar um específico de formato SaveOptions instância (ou um FileFormat singleton) como segundo argumento.

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

ImageRenderOptions

fileOrStream string

O caminho do arquivo de destino. A extensão determina o formato de saída (por exemplo,., .glb → GLB, .gltf → glTF JSON, .stl → STL).

formatOrOptions FileFormat | SaveOptions (opcional)

Um singleton de formato (por exemplo,., GltfFormat.getInstance()) ou um específico de formato SaveOptions subclasse.

options SaveOptions (opcional)

Opções de salvamento específicas de formato quando um FileFormat é passado como o segundo argumento.

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)

Cria um novo clipe de animação nomeado e o adiciona ao animationClips coleção.

createAnimationClip(name: string): AnimationClip

ImageRenderOptions

name string

Um nome descritivo para o novo clipe de animação.

ImageRenderOptions

AnimationClip

O recém-criado AnimationClip instância.

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