JS-bibliotek til læsning og skrivning af 2D- og 3D CAD-filer
OPen Source Free JavaScript Library gør det muligt for programmører at oprette og manipulere AutoCAD-filer og 2D- eller 3D-former. Oprettelse og redigering af 3D-objekter i JS-applikationer.
Hvad er Aspose.CAD til OpenCascade.js?
OpenCascade.js er et praktisk open source-bibliotek, der giver udviklere som dig mulighed for nemt at lave og styre 3D-objekter ved hjælp af JavaScript. Dette bibliotek er baseret på Open Cascade Technology (OCCT), et open source-værktøj til 3D-modellering og numerisk simulering. Med OpenCascade.js kan du oprette robuste applikationer ved hjælp af OpenCascade CAD-kernen. Disse applikationer kan problemfrit fungere i webbrowsere, servere eller på forskellige enheder, der understøtter WebAssembly. Biblioteket er meget hurtigt på grund af kraften i Emscripten og WebAssembly. CAD-kernen kører med næsten native hastigheder og understøtter fuldt ud multi-threading på alle moderne browsere.
OpenCascade.js-biblioteket er populært i forskellige brancher på grund af dets præcision, pålidelighed og hastighed. En god ting ved OpenCascade.js er, at det kan håndtere flere filtyper som STL, IGES og STEP. Det betyder, at du problemfrit kan hente 3D-modeller fra forskellige CAD-programmer eller datakilder og redigere dem ved hjælp af biblioteket. Biblioteket tilbyder også en række værktøjer til at oprette og redigere 3D-objekter, herunder muligheden for at oprette komplekse former, kurver og overflader, samt udføre geometriske transformationer, såsom skalering, rotation og oversættelse.
OpenCascade.js-biblioteket hjælper dig med at se 3D-objekter live og tilbyder mange værktøjer til at vise, belyse og skygge 3D-objekter. Dette giver dig mulighed for at skabe livagtige og engagerende 3D-verdener. Biblioteket har fremragende dokumentation, så du nemt kan starte og udvikle avancerede 3D-apps på ingen tid. Biblioteket er fyldt med værktøjer og funktioner, der hjælper dig med at oprette, konstruere og se 3D-elementer. Det er perfekt til forskellige anvendelser som at designe produkter, fremstille ting, planlægge bygninger og arbejde i byggeriet.
Kom godt i gang med OpenCascade.js
Den anbefalede installationsmetode er ved hjælp af npm. Brug følgende kommando for at sikre en problemfri installation.
Installer OpenCascade.js via npm
npm install opencascade.js@beta
Du kan også installere det manuelt; download de seneste udgivelsesfiler direkte fra GitHub-arkivet.
Understøttelse af flere tråde i JavaScript-apps
Open source-biblioteket OpenCascade understøtter flere tråde til visse operationer. Biblioteket tilbyder ikke indbygget understøttelse af flere tråde, da JavaScript er et enkelttrådet sprog. Udviklere kan dog bruge Web Workers i deres applikation til at udføre bestemte opgaver i en separat tråd, hvilket kan forbedre ydeevne og responsivitet. Følgende eksempel demonstrerer, hvordan man bruger en Web Worker til at udføre en tung beregningsopgave i en separat tråd, samtidig med at den primære brugergrænseflade forbliver responsiv.
Sådan bruger du multi-threading i JavaScript-apps
javascript
// worker.js
onmessage = function(e) {
// Do heavy computational task here
postMessage("Task completed!");
};
// main.js
const worker = new Worker("worker.js");
worker.onmessage = function(e) {
console.log("Worker said: " + e.data);
};
worker.postMessage("Start task");
Arbejd med 2D- og 3D-"Offsets" via JavaScript
OpenCascade-biblioteket med åben kildekode giver softwareudviklere mulighed for at arbejde med 2D- og 3D-"Offsets" i deres egne JavaScript-applikationer. For at udføre opgaverne skal du først indlæse de nødvendige biblioteker og oprette en 2D- eller 3D-form. Derefter kan du forskyde en 2D-form. Du kan bruge BRepOffsetAPI_MakeOffset-klassen og bruge BRepBuilderAPI_MakeSolid-klassen til at forskyde en 3D-form. Du kan bruge 3D-modelleringssoftware som FreeCAD til at vise forskydningsformen.
Sådan opretter du en 2D-form via JavaScript API
const wire = new BRepBuilderAPI_MakeWire();
wire.Add(new BRepBuilderAPI_MakeEdge(new gp_Pnt(0, 0, 0), new gp_Pnt(1, 0, 0)));
wire.Add(new BRepBuilderAPI_MakeEdge(new gp_Pnt(1, 0, 0), new gp_Pnt(1, 1, 0)));
wire.Add(new BRepBuilderAPI_MakeEdge(new gp_Pnt(1, 1, 0), new gp_Pnt(0, 1, 0)));
wire.Add(new BRepBuilderAPI_MakeEdge(new gp_Pnt(0, 1, 0), new gp_Pnt(0, 0, 0)));
create 3D shape:
onst face = new BRepBuilderAPI_MakeFace(wire.Wire());
// Offset the 2D shape:
const offset = new BRepOffsetAPI_MakeOffset(face.Face(), 1, 1e-6);
offset.Build();
// Offset the 3D shape:
const solid = new BRepBuilderAPI_MakeSolid(offset.Shape());
solid.Build();