Ievads
Mēs esam priecīgi paziņot par pieejamību Aspose.3D FOSS for TypeScript kā @aspose/3d npm pakotne. Šī ar MIT licenci licencētā bibliotēka nodrošina ražošanas kvalitātes 3D skatu apstrādi TypeScript un Node.js lietojumprogrammām, neprasot vietējus bināros failus, platformas specifiskus rīku ķēdes vai komerciālas licences.
Bibliotēka ir veidota ap vienkāršu Scene API: ielādēt 3D failu ar scene.open(), pārbaudīt vai pārveidot ainas grafu, un ierakstīt rezultātu ar scene.save(). Pilnas TypeScript tipa definīcijas ir iekļautas; @types/ nav atsevišķas pakotnes vajadzības.
Galvenās funkcijas
Daudzformātu I/O. Pakotne lasa un raksta sešus galvenos 3D formātus vienā instalācijā. OBJ, glTF 2.0, GLB, STL, 3MF un COLLADA atbalsta gan importu, gan eksportu. FBX importētāja/eksportētāja klases pastāv, bet formāta automātiskā noteikšana vēl nav integrēta, tāpēc FBX failus nevar ielādēt caur scene.open().
Pirmklases TypeScript atbalsts. Visas publiskās klases, uzskaitījumi un opciju tipi ir pilnīgi tipizēti. IDE, kas atbalsta TypeScript valodas pakalpojumu (VS Code, WebStorm utt.), nodrošina precīzu automātisko pabeigšanu un iekļautu dokumentāciju katram API izsaukumam.
Node.js 18–22+ saderība. Pakotne ir pārbaudīta pret Node.js 18, 20 un 22 LTS laidieniem. Instalācijas laikā netiek kompilēti nekādi vietējie papildinājumi, tāpēc tā darbojas visās platformās, ko atbalsta Node.js.
Viena izpildlaika atkarība. Vienīgā atkarība ir xmldom, kas tiek izmantots tikai COLLADA XML parsēšanai. Visi pārējie formātu parsētāji ir tīri JavaScript implementācijas.
MIT licence. Izmantot @aspose/3d komerciālos, atvērtā koda vai iekšējos projektos bez ierobežojumiem.
Ātrais sākums
Instalējiet paketi:
npm install @aspose/3d
Ielādējiet OBJ failu un konvertējiet to uz bināro GLB:
import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';
import { GltfSaveOptions, GltfFormat } from '@aspose/3d/formats/gltf';
const scene = new Scene();
scene.open('model.obj', new ObjLoadOptions());
const saveOpts = new GltfSaveOptions();
saveOpts.binaryMode = true; // produce a single .glb file
scene.save('output.glb', GltfFormat.getInstance(), saveOpts);
console.log('Converted to GLB successfully');
Iterējiet pāri skatu mezgliem, lai pārbaudītu ģeometriju:
import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';
const scene = new Scene();
scene.open('model.obj', new ObjLoadOptions());
for (const node of scene.rootNode.childNodes) {
console.log(`Node: ${node.name}`);
if (node.entity) {
console.log(` Entity type: ${node.entity.constructor.name}`);
}
}
Atbalstītie formāti
| Formāts | Paplašinājums | Importēt | Eksportēt | Piezīmes |
|---|---|---|---|---|
| Wavefront OBJ | .obj | Jā | Jā | Lasa/raksta .mtl materiālu faili |
| glTF 2.0 | .gltf | Jā | Jā | JSON ar ārējiem .bin buferis |
| Binārs GLB | .glb | Jā | Jā | Iestatīt binaryMode: true iekš GltfSaveOptions |
| STL | .stl | Jā | Jā | ASCII un binārais STL |
| 3MF | .3mf | Jā | Jā | Open Packaging Convention arhīvs |
| FBX | .fbx | Nē* | Nē* | Importētājs/eksportētājs eksistē, bet formāta automātiskā noteikšana nav savienota |
| COLLADA | .dae | Jā | Jā | Pieprasa paketētu xmldom atkarība |
TypeScript priekšrocības
Darbojoties ar @aspose/3d TypeScript noķer kategorijas kļūdas kompilācijas laikā, nevis izpildes laikā. Kad jūs izsaucat scene.save(), kompilators pārbauda, vai opciju objekts atbilst sagaidāmajam SaveOptions apakštipam izvēlētajam formātam. Formātam specifiskās ielādes un saglabāšanas opcijas atklāj tikai īpašības, kas attiecas uz šo formātu; nav neizveidotas (nepazīstamas) opciju kastes, ko vajadzētu uzminēt.
Piemēram, GltfSaveOptions.binaryMode ir tipizēts boolean, tāpēc kompilators atmet saveOpts.binaryMode = 'yes' pirms tiek izpildīts jebkāds kods. Animācijas īpašības uz AnimationClip, materiālu kanāli uz PbrMaterial, un virsotnes elementu tipi uz VertexElement ir visi līdzīgi tipizēti un atklājami caur IntelliSense, neapsverot ārējo dokumentāciju.
Atvērtā pirmkods
Pakotne ir publicēta zem MIT License. Avota kods ir pieejams GitHub. Ieguldījumi, kļūdu ziņojumi un formāta atbalsta pieprasījumi tiek laipni gaidīti caur repozitorija problēmu sekotāju.
Bibliotēkai ir viena izpildlaika atkarība: xmldom versija 0.9+, tiek izmantota tikai, lasot vai rakstot COLLADA failus. Visas pārējās parsēšanas un rakstīšanas bibliotēkas ir pašpietiekamas tīri JavaScript implementācijas bez bināriem komponentiem.
Sākums
- npm:
npm install @aspose/3d - Zināšanu bāze: Kā ielādēt 3D modeļus TypeScript
- Zināšanu bāze: Kā eksportēt 3D ainas uz glTF/GLB TypeScript
- API atsauce: Aspose.3D FOSS priekš TypeScript: Pilna klašu atsauce
- GitHub: aspose-3d/aspose-3d-node
Secinājums
@aspose/3d versija 24.12.0 nodrošina stabilu, tipizētu, atkarībām vieglu pamatu 3D failu apstrādei TypeScript un Node.js vidē. Neatkarīgi no tā, vai lietošanas gadījums ir formāta konvertēšana, ainas pārbaude, ģeometrijas izguve vai cauruļvadu integrācija, bibliotēka aptver visizplatītākos 3D apmaiņas formātus ar atļaujošu atvērtā koda licenci.
Instalējiet to jau šodien un dariet mums zināmu, ko izveidojat.