Libreria JavaScript per creare progetti CAD parametrici 2D e 3D
La libreria CAD JavaScript open source consente ai programmatori di creare progetti parametrici 2D e 3D. Crea il tuo motore di rendering per geometrie 3D e 2D tramite API gratuita.
Cos'è JSCAD?
JSCAD è una libreria JavaScript open source e gratuita che consente agli sviluppatori di software di creare e manipolare modelli 3D in un ambiente browser all'interno delle proprie applicazioni JavaScript. La libreria è progettata per essere facile da usare e molto flessibile, il che la rende una scelta eccellente per un'ampia gamma di applicazioni. JSCAD offre una serie di strumenti e funzioni per creare modelli complessi con facilità, oltre a una gamma di opzioni di personalizzazione per regolare l'aspetto e la funzionalità dei modelli.
JSCAD è un potente strumento per la creazione di modelli 3D che può essere utilizzato in una vasta gamma di applicazioni, dal gaming e intrattenimento alla ricerca scientifica e al design industriale. La libreria JSCAD supporta un'ampia gamma di formati di file, tra cui STL, OBJ e 3MF, semplificando l'esportazione dei modelli per l'utilizzo in altre applicazioni software. La libreria è molto versatile e consente agli utenti di combinare diverse forme ed elementi per creare strutture e modelli complessi, rendendola uno strumento versatile per progettisti, ingegneri e hobbisti.
JSCAD ha un'interfaccia estremamente intuitiva ed è progettata per essere intuitiva. La libreria offre una vasta gamma di opzioni di personalizzazione, consentendo agli utenti di adattare l'aspetto e le funzionalità dei propri modelli alle proprie esigenze e preferenze specifiche. Grazie alla sua ampia gamma di opzioni di personalizzazione, alle funzionalità avanzate e al supporto per una vasta gamma di formati di file, JSCAD è uno strumento potente che può essere utilizzato per un'ampia gamma di applicazioni.
Introduzione a JSCAD
Il metodo di installazione consigliato è tramite npm. Per un'installazione senza problemi, utilizzare il seguente comando.
Installa JSCAD tramite npm
npm install @jscad/modeling
Puoi anche installarlo manualmente; scarica i file della versione più recente direttamente dal repository GitHub.
Crea un nuovo design tramite l'API JavaScript
La libreria open source OpenCascade supporta il multi-threading per determinate operazioni. La libreria non fornisce supporto nativo per il multi-threading, poiché JavaScript è un linguaggio single-threaded. Tuttavia, gli sviluppatori possono utilizzare i Web Worker nelle loro applicazioni per eseguire determinate attività in un thread separato, il che può migliorare le prestazioni e la reattività. L'esempio seguente mostra come utilizzare un Web Worker per eseguire un'attività di calcolo complessa in un thread separato, mantenendo al contempo la reattività dell'interfaccia utente principale.
const {CAG, CSG} = require('@jscad/csg');
// create a simple shape like a cube:
const cube = CSG.cube({
center: [0, 0, 0],
radius: 10
});
//export your design in a desired format:
const stlSerializer = require('@jscad/stl-serializer');
const stlData = stlSerializer.serialize(result);
console.log(stlData);
Converti il formato dei progetti nelle app JavaScript
La libreria open source JSCAD offre agli sviluppatori software la possibilità di convertire il formato di qualsiasi progetto in altri formati di file supportati. La libreria include il supporto per diversi formati di file comuni, come STL, AMF, DXF, JSON, X3D, immagini SVG e molti altri. Per convertire il formato di un file esistente, è necessario innanzitutto caricare un file esistente e scegliere il formato di output. I progetti possono essere facilmente condivisi con altri come allegati a e-mail, messaggi, ecc.
const {CSG} = require('@jscad/modeling')
const {STL} = require('@jscad/stl-serializer')
// Load the design file in the desired format
const stlString = fs.readFileSync('design.stl', 'utf8')
//Convert the STL format to a JSCAD CSG object:
const design = STL.parse(stlString)
const stlString = STL.serialize(design)
fs.writeFileSync('manipulated_design.stl', stlString)
Trasformazioni di forme CAD tramite app JavaScript
La libreria JSCAD semplifica la creazione di forme e modelli 3D all'interno delle proprie applicazioni JavaScript. La forma originale può essere trasformata un numero illimitato di volte. La libreria offre una serie di funzioni e caratteristiche per la trasformazione delle forme, come la rotazione delle forme di un qualsiasi angolo attorno agli assi X, Y e Z, la scalatura delle forme secondo qualsiasi fattore, la traslazione (spostamento) delle forme in un'altra posizione, l'allineamento o la centratura delle forme lungo gli assi X, Y e Z, la specchiatura (riflessione) delle forme e così via.
const { cuboid } = require('@jscad/modeling').primitives
const { rotateX,rotateY,rotateZ } = require('@jscad/modeling').transforms
const myshape = cuboid({size: [5, 20, 5]})
let newshape = rotateX((Math.PI * 2 / 4), myshape)
newshape = rotateY((Math.PI * 2 / 24), newshape)
newshape = rotateZ((Math.PI * 2 / 12), newshape)