Perguntas frequentes

Perguntas frequentes

Perguntas frequentes

Como posso instalar @aspose/3d?

Instalar a partir de npm. Node.js 18 ou posterior é necessário:

asposefoss/3d is not yet published — build from source until it ships. See the project README for build instructions.

Verifique a instalação:

import { Scene } from '@aspose/3d';
const scene = new Scene();
console.log('@aspose/3d ready');

Definições de tipo TypeScript estão ligadas ao pacote.Não separado @types/ O pacote é necessário.


Quais formatos de arquivo são suportados?

FormatoImportaçãoExportação
OBJSimSim
GSTFSimSim
FBXNão *Não *
STLSimSim
3MFSimSim
COLLADASimSim

Como posso carregar um arquivo 3D?

Criar a Scene e chamando scene.open():

import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';

const scene = new Scene();
scene.open('model.obj', new ObjLoadOptions());

Para formatos que não precisam de opções especiais, omite o segundo argumento:

const scene = new Scene();
scene.open('model.glb');

A cena.open() é sinônimo?

Não . scene.open() e scene.openFromBuffer() Se você precisa não bloquear I/O, execute-os dentro de um nodo de trabalho Node.js ou encolhe com o setImmediate.


Como posso economizar para glTF/GLB?

Chamado scene.save() O formato é detectado automaticamente da extensão:

scene.save('output.glb');   // binary glTF
scene.save('output.gltf');  // JSON glTF
scene.save('output.obj');   // OBJ
scene.save('output.stl');   // STL

Como posso carregar de um buffer (em memória)?

Usando scene.openFromBuffer():

import * as fs from 'fs';
import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';

const buffer = fs.readFileSync('model.obj');
const scene = new Scene();
scene.openFromBuffer(buffer, new ObjLoadOptions());

Erro: Não pode encontrar o módulo ‘@aspose/3d/formats/obj’

Isso requer Node.js 12.7+ pacote de resolução de exportações. certifique-se que você está no NODE.JS 18+. Para TypeScript, configurar "moduleResolution": "node16" ou "bundler" Em tsconfig.json:

{
  "compilerOptions": {
    "moduleResolution": "node16",
    "target": "ES2020"
  }
}

Qual é o tipo de node.entity?

node.entity Para acessar propriedades específicas de mesh, verifique sua presença com 'controlPoints' in node.entity Ou use o Mesh A classe da @aspose/3d/entities:

import { Mesh } from '@aspose/3d/entities';

if (node.entity instanceof Mesh) {
    const mesh = node.entity;
    console.log(mesh.controlPoints.length);
}

A biblioteca está em funcionamento no navegador?

A biblioteca é projetada para Node.js. o suporte do navegador depende da configuração de pacote e APIs do sistema de arquivos que são substituídos por alternativas em memória.


A biblioteca é segura?

Cada um Scene O objeto é independente.Utilizando separadamente Scene As instâncias de fitas separadas do Node.js trabalhadores são seguras, desde que você não compartilhe uma única cena entre as faltas sem sincronização externa.


Quais versões do Node.js são suportadas?

Node.js 18, 20 e 22 são oficialmente suportados.TypeScript 5.0+ é recomendado.


@aspose/3d suporta animações?

Sim, o sistema de animação inclui AnimationClip, AnimationChannel, e tipos de curva de teclado acessíveis a partir do @aspose/3d/animation.


Veja também

 Português