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

Aspose.3D FOSS for TypeScript

Ladda, konstruera, transformera och exportera 3D‑scener från Node.js — fullt typad, öppen källkod och produktionsklar med en enda npm‑installation.

Open-Source TypeScript Library för 3D filbehandling

Aspose.3D FOSS för TypeScript är ett MIT-licensierat bibliotek för att arbeta med 3D-filformat i Node.js-applikationer. Installera det med ett enda npm install @aspose/3d kommando och börja läsa, konstruera och skriva 3D-scener i TypeScript omedelbart, utan inhemska tillägg att kompilera, utan externa SDK:er att installera och utan renderare som krävs.

Biblioteket exponerar ett fullständigt typat scen‑graf API byggt kring Scene, Node, Entity, Mesh, Camera, Light och Transform, samma konceptuella modell som används av professionella 3D-verktyg. Formatstöd inkluderar OBJ (Wavefront, med .mtl materialladdning), glTF 2.0 och GLB binär (PBR-material), STL (binär och ASCII, full roundtrip), COLLADA (DAE), 3MF och FBX. Per‑format alternativklasser såsom ObjLoadOptions och GltfSaveOptions ger dig exakt kontroll över koordinatsystemets orientering, skala, normalisering av normaler, binär vs. JSON utdata och materialladdning.

Aspose.3D FOSS riktar sig mot Node.js 18, 20 och 22+ med TypeScript 5.0+ och kompilerar till CommonJS. Biblioteket levereras med strikta TypeScript-kompilatorinställningar (noImplicitAny, strictNullChecks) så att din IDE ger fullständig autokomplettering och kompileringssäkerhet. Dess enda runtime‑beroende, xmldom, installeras automatiskt. För företagsproduktfamiljen, se Aspose.3D — Enterprise Product Family.

Stöd för 3D-format och API för typade scener.

  • ** OBJ/MTL:** Ladda in Wavefront-OBJ-filer med tillhörande definitioner av material.
  • glTF 2.0 / GLB: PBR-materialbelastning och binär utgång via GltfSaveOptions.
  • STL: Läs och skriv både binär- och ASCII-STl med fullständig rundresorverifiering.
  • COLLADA, 3MF, FBX: Ytterligare formatstöd med alternativklasser per format.
  • Full typskrivningstyper: Varje klass, metod och alternativ är starkt typt med noImplicitAny och strictNullChecks.

Var Aspose.3D kan användas för fosser

  • Node.js-tillgångspipelines: Importera OBJ-filer, validera och omorienter geometri och exporta som GLB i CI.
  • Spelverktyg: Batch-process 3D-maskar utan en inbyggd motor eller renderer.
  • 3D-skrivningsarbetsflöden: Läs, validerar och exporterar STL- och 3MF-filer igen.
  • Serverless backends: Kör 3D-konvertering slutpunkter i Lambda eller Cloud Functions.
  • ** Innehållsmigrering:** Konvertera mellan formatfamiljer i stor skala från ett enda skript.

Alternativ för format och koordinatkontroll

  • ** Koordinatsystemsinriktning:** Vänd axlar och justera skala per format med valklass.
  • Normal normalisering: Normalisera automatiskt normaler för vertex vid laddning eller spara.
  • ** Binär mot JSON-utgång:** Välj kompakt GLB eller läsbar glTF via GltfSaveOptions.
  • Materialladdningskontroll: Aktiverar eller inaktiverer MTL/teksturladd för snabbare analys.
  • Runt- och tillbakafesten: Okända scener i grafen bevaras bokstavligen vid återsparande.

Utvecklarexpertis

Aspose.3D FOSS för TypeScript‑installationer med ett enda npm install @aspose/3d-kommando. Det finns inga inhemska tillägg att kompilera. Biblioteket är ren TypeScript/JavaScript med ett automatiskt installerat beroende (xmldom).

Den starkt typade API ger fullständig IDE‑autokomplettering för varje scen‑grafklass och formatalternativ. Biblioteket riktar sig mot Node.js 18–22+ och TypeScript 5.0+, körs identiskt på Linux‑CI‑runners och utvecklares arbetsstationer, och är MIT-licensierat med en öppen ärende‑spårare på GitHub.

Ladda in en OBJ-scene och exportera som glTF

Installera med npm, använd sedan scene.open() med ObjLoadOptions för att ladda mesh tillsammans med dess MTL‑materialfil. Både open() och save() är synkrona — ingen await eller Promise‑kedjning behövs. Att anropa scene.save() med en .gltf‑ändelse skriver standard glTF 2.0 JSON — formatet härleds automatiskt från filändelsen.

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

Konvertera STL till binär GLB

För att producera en kompakt binär GLB istället för standard JSON glTF, lägger du GltfSaveOptions med binaryMode = true. Både open() och save() är synkron ingen await behövs.

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

Vanliga Frågor

Vad är Aspose.3D FOSS för TypeScript?

Det är ett fritt, MIT-licensierat TypeScript/Node.js bibliotek för att ladda, manipulera och spara 3D scener utan att installera någon nativ tillägg eller extern SDK.

Vilka 3D-format stöds?

OBJ (med .mtl), glTF 2.0 och GLB, STL (binär och ASCII), COLLADA (DAE), 3MF och FBX. Varje format har en dedikerad typade alternativ klass.

Behöver det nativa Node.js-tillägg?

Nej. Aspose.3D FOSS för TypeScript är ren JavaScript/TypeScript. Det kräver inget kompileringssteg och har ett enda körningsberoende (xmldom) som installeras automatiskt av npm.

Hur installerar jag den?

Utför npm install @aspose/3d. Inga ytterligare systempaket eller nativa tillägg krävs.

Vilka Node.js- och TypeScriptversioner stöds?

Node.js 18, 20 och 22+. TypeScript 5.0+. Biblioteket sammanställer till CommonJS och fungerar med strikta Typeskriptinställningar.

Fick den med typdefinitioner?

Ja. Alla klasser, metoder, enum och alternativtyper är helt skrivna med noImplicitAny och strictNullChecks aktiverade.

Kan jag styra koordinatsystemets orientering?

Ja. Per-format alternativ klasser som ObjLoadOptions och GltfSaveOptions låter dig vända axlar, justera skala, och normalisera normala utan anpassad parsing kod.

Var hittar jag källkoden?

Biblioteket är licensierat av MIT och finns på GitHub. Bug-rapporter och pull-förfrågningar välkomnas.

  

Stöd och Lärande Resurser

 Svenska