JavaScript bibliotēka parametrisku 2D un 3D CAD dizainu izveidei
Atvērtā koda JavaScript CAD bibliotēka ļauj programmētājiem veidot parametriskus 2D un 3D dizainus. Izveidojiet savu 3D un 2D ģeometriju renderētāju, izmantojot bezmaksas API.
Kas ir JSCAD?
JSCAD ir atvērtā koda bezmaksas JavaScript bibliotēka, kas ļauj programmatūras izstrādātājiem izveidot un manipulēt ar 3D modeļiem pārlūkprogrammas vidē savās JavaScript lietojumprogrammās. Bibliotēka ir izstrādāta tā, lai to būtu viegli lietot, kā arī tā būtu ļoti elastīga, padarot to par lielisku izvēli plašam lietojumprogrammu klāstam. JSCAD nodrošina rīku un funkciju kopumu sarežģītu modeļu vienkāršai izveidei, kā arī virkni pielāgošanas iespēju, lai pielāgotu modeļu izskatu un funkcionalitāti.
JSCAD ir jaudīgs rīks 3D modeļu izveidei, ko var izmantot plašā lietojumprogrammu klāstā, sākot no spēlēm un izklaides līdz zinātniskiem pētījumiem un rūpnieciskajam dizainam. JSCAD bibliotēka atbalsta plašu failu formātu klāstu, tostarp STL, OBJ un 3MF, tādējādi atvieglojot modeļu eksportēšanu izmantošanai citās programmatūras lietojumprogrammās. Bibliotēka ir ļoti daudzpusīga un ļauj lietotājiem apvienot dažādas formas un elementus, lai izveidotu sarežģītas struktūras un modeļus, padarot to par daudzpusīgu rīku dizaineriem, inženieriem un hobijiem.
JSCAD ir ļoti lietotājam draudzīgs interfeiss, un tā ir izstrādāta, lai būtu ļoti spontāna. Bibliotēka piedāvā virkni pielāgošanas iespēju, ļaujot lietotājiem pielāgot savu modeļu izskatu un funkcionalitāti atbilstoši savām īpašajām vajadzībām un vēlmēm. Ar plašu pielāgošanas iespēju klāstu, uzlabotajām funkcijām un atbalstu dažādiem failu formātiem JSCAD ir jaudīgs rīks, ko var izmantot plašam lietojumu klāstam.
Darba sākšana ar JSCAD
Ieteicamais instalēšanas veids ir npm. Lai instalēšana noritētu gludi, lūdzu, izmantojiet šo komandu.
Instalējiet JSCAD, izmantojot npm
npm install @jscad/modeling
Varat to instalēt arī manuāli; lejupielādējiet jaunākos laidiena failus tieši no GitHub repozitorija.
Jauna dizaina izveide, izmantojot JavaScript API
Atvērtā pirmkoda OpenCascade bibliotēka atbalsta vairāku pavedienu apstrādi noteiktām darbībām. Bibliotēka nenodrošina vietējo atbalstu vairāku pavedienu apstrādei, jo JavaScript ir viena pavediena valoda. Tomēr izstrādātāji var izmantot Web Workers savās lietojumprogrammās, lai veiktu noteiktus uzdevumus atsevišķā pavedienā, kas var uzlabot veiktspēju un atsaucību. Šajā piemērā ir parādīts, kā izmantot Web Worker, lai veiktu apjomīgu skaitļošanas uzdevumu atsevišķā pavedienā, vienlaikus saglabājot galvenā lietotāja interfeisa atsaucību.
Kā izveidot dizainu un eksportēt to STL formātā, izmantojot JavaScript API?
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);
Dizaina formāta konvertēšana JavaScript lietotnēs
Atvērtā pirmkoda JSCAD bibliotēka sniedz programmatūras izstrādātājiem iespēju konvertēt jebkura dizaina formātu uz citiem atbalstītajiem failu formātiem. Bibliotēka ietver atbalstu dažādiem populāriem failu formātiem, piemēram, STL, AMF, DXF, JSON, X3D, SVG attēliem un daudziem citiem. Lai konvertētu esoša faila formātu, vispirms ir jāielādē esošs fails un jāizvēlas izvades failu formāti. Dizainus var viegli koplietot ar citiem kā failu pielikumus e-pastam, ziņojumiem utt.
Kā ielādēt dizainu un konvertēt tā formātu, izmantojot JavaScript API?
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)
CAD formu transformācijas, izmantojot JavaScript lietotnes
JSCAD bibliotēka programmatūras izstrādātājiem atvieglo 3D formu un modeļu izveidi savās JavaScript lietotnēs. Sākotnējo formu var transformēt neierobežotu skaitu reižu. Bibliotēka ir nodrošinājusi funkciju un līdzekļu kopumu formu transformācijai, piemēram, formu pagriešanu par jebkuru noteiktu leņķi ap X, Y un Z asi, formu mērogošanu par jebkuru koeficientu, formu pārvietošanu uz citu vietu, formu izlīdzināšanu vai centrēšanu pa X, Y un Z asi, formu spoguļošanu (atstarošanu) utt.
Kā veikt formas rotāciju ap vienu asi, izmantojot JavaScript API?
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)