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

Aspose.3D FOSS for TypeScript

Indlæs, opret, transformer og eksporter 3D‑scener fra Node.js — fuldt typet, open‑source og klar til produktion med kun én npm‑install.

Open-Source TypeScript Library for 3D filbehandling

Aspose.3D FOSS for TypeScript er et MIT-licenseret bibliotek til at arbejde med 3D-filformater i Node.js-applikationer. Installér det med en enkelt npm install @aspose/3d kommando og begynd straks at læse, konstruere og skrive 3D-scener i TypeScript, uden native add-ons at kompilere, uden eksterne SDK’er at installere, og uden at der kræves en renderer.

Biblioteket eksponerer en fuldt typet scene-graph API bygget omkring Scene, Node, Entity, Mesh, Camera, Light og Transform, den samme konceptuelle model som bruges af professionelle 3D-værktøjer. Formatunderstøttelse omfatter OBJ (Wavefront, med .mtl materialelæsning), glTF 2.0 og GLB binær (PBR-materialer), STL (binær og ASCII, fuld roundtrip), COLLADA (DAE), 3MF og FBX. Per-format indstillingsklasser såsom ObjLoadOptions og GltfSaveOptions giver dig præcis kontrol over koordinatsystemorientering, skala, normalisering af normaler, binær vs. JSON output og materialelæsning.

Aspose.3D FOSS målretter Node.js 18, 20 og 22+ med TypeScript 5.0+ og kompilerer til CommonJS. Biblioteket leveres med strenge TypeScript-kompilatorindstillinger (noImplicitAny, strictNullChecks), så dit IDE giver fuld autoudfyldning og compile-time sikkerhed. Dens eneste runtime-afhængighed, xmldom, installeres automatisk. For enterprise-produktfamilien, se Aspose.3D — Enterprise Product Family.

3D-formatunderstøttelse og API til typede scener

  • ** OBJ/MTL:** Lade Wavefront-OBJ-filer med tilhørende materialedefinitioner.
  • glTF 2.0 / GLB: PBR-materials opladning og binær udgang af GDB via GltfSaveOptions.
  • STL: Læs og skriv både binær- og ASCII-STl med fuld rundrejseverifikation.
  • COLLADA, 3MF, FBX: Supplerende formatunderstøttelse med klasseoptioner pr. format.
  • Fuld TypeScript-typer: Hver klasse, metode og mulighed er stærkt skrevet med noImplicitAny og strictNullChecks.

Hvor Aspose.3D FOSS kan anvendes

  • Node.js-aktivpipelines: Importer OBJ-filer, validerer og omorienterer geometri og eksporter som GLB i CI.
  • ** Spilleværktøj:** 3D-masker, der er bundet til en seriebehandling uden indbygget motor eller renderer.
  • 3D-printing workflows: Læs, valider og reeksport STL- og 3MF-filer.
  • Serverless backends: Kør 3D-konvertering endpoints i Lambda eller Cloud Functions.
  • Indholdsmigration: Konvertering mellem formatfamilier i skala fra et enkelt script.

Optimering af format og koordinationskontrol

  • ** Koordinat-system orienteringen:** Flip akser og justere skala pr. format med valg af klasser.
  • Normal normalisering: Normaliserer automatisk normaler for toppen ved belastning eller gemme.
  • ** Binær vs. JSON-udgang:** Vælg kompakt GLB eller læsbar glTF via GltfSaveOptions.
  • Materielladningskontroll: Aktiver eller deaktiver MTL/teksturlasting for hurtigere analyse.
  • ** Rundtur-true:** Ukendte scene-grafnode bevares ordret ved genopslagning.

Udvikleroplevelse

Aspose.3D FOSS for TypeScript installeres med en enkelt kommando npm install @aspose/3d. Der er ingen indfødte tilføjelser til at kompilere. Biblioteket er ren Type Script/JavaScript med én automatisk installeret afhængighed (xmldom).

Det stærkt typede API giver fuld IDE-autokomplet for hver scenegraf klasse og formatmulighed. Biblioteket er rettet mod Node.js 1822+ og TypeScript 5.0+, kører identisk på Linux CI løbere og udvikler arbejdsstationer, og er MIT-licenseret med en åben problem tracker på GitHub .

Lade et OBJ-scene og eksportere som glTF

Installer med npm, og brug derefter scene.open() med ObjLoadOptions til at indlæse nettet sammen med dets MTL-materialefil. Både open() og save() er synkrone ingen await eller Promise kædning er nødvendig. Ved at ringe til scene.save() ved hjælp af en .gltf udvidelse skrives standard glTF 2.0 JSON ?? formatet udledes automatisk fra filens forlængelse.

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");

Konvertere STL til binær GLB

For at producere en kompakt binær GLB i stedet for standard JSON glTF, skal GltfSaveOptions passeres med binaryMode = true. Både open() og save() er synkrone der kræves ingen 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);

Ofte stillede spørgsmål

Hvad er Aspose.3D FOSS for TypeScript?

Det er et gratis, MIT-licenseret TypeScript/Node.js bibliotek til at indlæse, manipulere og gemme 3D scener uden installation af nogen native addon eller ekstern SDK.

Hvilke 3D-formater understøttes?

OBJ (med .mtl), glTF 2.0 og GLB, STL (binær og ASCII), COLLADA (DAE), 3MF og FBX. Hvert format har en dedikeret klasser af typede optioner.

Er det nødvendigt med native Node.js-tilføjelser?

Nej. Aspose.3D FOSS til TypeScript er ren JavaScript/TypeScript. Den kræver ingen kompileringstrin og har en enkelt runtime‑afhængighed (xmldom) installeret automatisk af npm.

Hvordan installerer jeg den?

Kør npm install @aspose/3d. Ingen yderligere systempakker eller native tilføjelser er nødvendige.

Hvilke Node.js- og TypeScript-versioner understøttes?

Node.js 18, 20 og 22+. TypeScript 5.0+. Biblioteket kompileres til CommonJS og fungerer med strenge Type Script-indstillinger.

Er det leveret med TypeScript type definitioner?

Alle klasser, metoder, enumer og valgtyper er fuldt indskrevet med noImplicitAny og strictNullChecks aktiveret.

Kan jeg styre koordinatsystemets orientering?

Ja. Per-format option klasser som ObjLoadOptions og GltfSaveOptions giver dig mulighed for at flippe akser, justere skalaen og normalisere normale uden brugerdefineret parsing kode.

Hvor kan jeg finde kildekoden?

Biblioteket er MIT-licenseret og hostet på GitHub. Bugrapporter og pullanmodninger er velkomne.

  

Support og læringsressourcer

 Dansk