1. Prodotti
  2.   Aspose.3D
  3.   Aspose.3D FOSS for TypeScript

Aspose.3D FOSS per TypeScript

Carica, costruisci, trasforma ed esporta scene 3D da Node.js — completamente tipizzata, open source e pronta per la produzione con una singola installazione npm.

Libreria TypeScript open source per l'elaborazione di file 3D

Aspose.3D FOSS per TypeScript è una libreria con licenza MIT per lavorare con formati di file 3D nelle applicazioni Node.js. Installala con un singolo comando npm install @aspose/3d e inizia a leggere, costruire e scrivere scene 3D in TypeScript immediatamente, senza addon nativi da compilare, senza SDK esterni da installare e senza la necessità di un renderer.

La libreria espone un’API di scene‑graph completamente tipizzata costruita attorno a Scene, Node, Entity, Mesh, Camera, Light e Transform, lo stesso modello concettuale usato dagli strumenti 3D professionali. Il supporto dei formati include OBJ (Wavefront, con caricamento dei materiali .mtl), glTF 2.0 e GLB binario (materiali PBR), STL (binario e ASCII, roundtrip completo), COLLADA (DAE), 3MF e FBX. Classi di opzioni per formato come ObjLoadOptions e GltfSaveOptions ti offrono un controllo preciso sull’orientamento del sistema di coordinate, scala, normalizzazione delle normali, output binario vs. JSON, e caricamento dei materiali.

Aspose.3D FOSS mira a Node.js 18, 20 e 22+ con TypeScript 5.0+ e compila in CommonJS. La libreria è fornita con impostazioni rigorose del compilatore TypeScript (noImplicitAny, strictNullChecks) così il tuo IDE fornisce il completamento automatico completo e la sicurezza a tempo di compilazione. La sua unica dipendenza di runtime, xmldom, viene installata automaticamente. Per la famiglia di prodotti enterprise, vedi Aspose.3D — Enterprise Product Family.

Supporto ai formati 3D e API tipizzata per il grafo della scena

  • OBJ / MTL: Carica file Wavefront OBJ con le definizioni di materiale corrispondenti.
  • glTF 2.0 / GLB: Caricamento del materiale PBR e output binario GLB tramite GltfSaveOptions.
  • STL: Leggi e scrivi sia STL binari che ASCII con verifica completa del roundtrip.
  • COLLADA, 3MF, FBX: Supporto aggiuntivo per i formati con classi di opzioni per formato.
  • Tipi TypeScript completi: Ogni classe, metodo e opzione è fortemente tipizzato con noImplicitAny e strictNullChecks.

Dove Aspose.3D FOSS può essere usato

  • Node.js asset pipelines: Importa file OBJ, valida e ri-orienta la geometria, ed esporta come GLB in CI.
  • Strumenti di gioco: Elabora in batch mesh 3D senza un motore o renderer nativo.
  • Flussi di lavoro per la stampa 3D: Leggi, valida e riesporta i file STL e 3MF.
  • Serverless backends: Esegui endpoint di conversione 3D in Lambda o Cloud Functions.
  • Migrazione dei contenuti: Converti tra famiglie di formati su larga scala da un unico script.

Opzioni per formato e controllo delle coordinate

  • Orientamento del sistema di coordinate: Capovolgi gli assi e regola la scala per formato con le classi di opzione.
  • Normalizzazione delle normali: Automaticamente normalizza le normali dei vertici al caricamento o al salvataggio.
  • Binario vs. JSON output: Seleziona GLB compatto o glTF leggibile tramite GltfSaveOptions.
  • Controllo del caricamento dei materiali: Abilita o disabilita il caricamento di MTL/texture per una più rapida analisi.
  • Fedeltà al round-trip: I nodi sconosciuti del grafo della scena sono preservati alla lettera al momento del nuovo salvataggio.

Esperienza dello sviluppatore

Aspose.3D FOSS per TypeScript si installa con un unico comando npm install @aspose/3d. Non ci sono addon nativi da compilare. La libreria è pure TypeScript/JavaScript con una dipendenza auto‑installata (xmldom).

L’API tipizzata fornisce il completamento automatico completo nell’IDE per ogni classe del grafo della scena e per ogni opzione di formato. La libreria è destinata a Node.js 18–22+ e TypeScript 5.0+, funziona identicamente su runner CI Linux e workstation degli sviluppatori, ed è rilasciata con licenza MIT con un tracker di issue aperto su GitHub.

Carica una scena OBJ ed esporta come glTF

Installa con npm, poi usa scene.open() con ObjLoadOptions per caricare la mesh insieme al suo file materiale MTL. Entrambi open() e save() sono sincroni — non è necessario await o concatenazione di Promise. Chiamando scene.save() con un’estensione .gltf si scrive lo standard glTF 2.0 JSON — il formato è inferito automaticamente dall’estensione del file.

npm install @aspose/3d
import { Scene } from "@aspose/3d";
import { ObjLoadOptions } from "@aspose/3d/formats/obj";
const scene = new Scene();
scene.open("model.obj", new ObjLoadOptions());
// Export as glTF 2.0 JSON
scene.save("model.gltf");

Converti STL in Binary GLB

Per produrre un GLB binario compatto invece del predefinito JSON glTF, passa GltfSaveOptions con binaryMode = true. Sia open() che save() sono sincroni — non è necessario alcun await.

import { Scene } from "@aspose/3d";
import { GltfSaveOptions } from "@aspose/3d/formats/gltf";
const scene = new Scene();
scene.open("mesh.stl");
// Save as compact binary GLB
const opts = new GltfSaveOptions();
opts.binaryMode = true;
scene.save("mesh.glb", opts);

Domande Frequenti

Cos’è Aspose.3D FOSS per TypeScript?

È una libreria gratuita, con licenza MIT, per TypeScript/Node.js, per caricare, manipolare e salvare scene 3D senza installare alcun addon nativo o SDK esterno.

Quali formati 3D sono supportati?

OBJ (con .mtl), glTF 2.0 e GLB, STL (binario e ASCII), COLLADA (DAE), 3MF e FBX. Ogni formato ha una classe di opzioni tipizzata dedicata.

Richiede addon nativi di Node.js?

No. Aspose.3D FOSS per TypeScript è puro JavaScript/TypeScript. Non richiede alcuna fase di compilazione e ha una singola dipendenza runtime (xmldom) installata automaticamente da npm.

Come lo installo?

Esegui npm install @aspose/3d. Non sono richiesti pacchetti di sistema aggiuntivi né addon nativi.

Quali versioni di Node.js e TypeScript sono supportate?

Node.js 18, 20 e 22+. TypeScript 5.0+. La libreria si compila in CommonJS e funziona con impostazioni TypeScript rigorose.

Viene fornito con le definizioni di tipo TypeScript?

Sì. Tutte le classi, i metodi, gli enum e i tipi di opzione sono completamente tipizzati con noImplicitAny e strictNullChecks abilitati.

Posso controllare l’orientamento del sistema di coordinate?

Sì. Classi di opzioni per formato come ObjLoadOptions e GltfSaveOptions ti consentono di invertire gli assi, regolare la scala e normalizzare le normali senza codice di parsing personalizzato.

Dove posso trovare il codice sorgente?

La libreria è rilasciata sotto licenza MIT e ospitata su GitHub. Segnalazioni di bug e pull request sono benvenute.

  

Risorse di Supporto e Apprendimento

 Italiano