CAD

openSCAD silinder

openSCAD silinder
Selle artikli koostamisel tahtsin teada saada, mis inimestel on probleeme openSCAD-iga. Minu üllatuseks oli kõige tavalisem küsimus silindri loomise kohta. Seal on silindri käsk, mille kohta saate kõigepealt teada üksikasjad. Pärast seda näete uuenduslikke viise silindrite loomiseks oma maitse järgi. Huvitavamate asjade loomiseks võite silindreid ka teistest tükkidest ära võtta. Enamik lugejaid, kes siia tulevad, soovivad ilmselt näha õõnsat silindrit või mingisugust toru. Jätkake lugemist, meil on teile palju varuks.

Silindri käsk

Kui kasutate silindri käsu lihtsamat versiooni, vajate ainult ühte parameetrit. See teeb ühe kindla ühtlase silindri ja mitte midagi enamat. Peaksite arvestama, et see silinder on standardraadiusega ja sulgudes oleva väärtuse kõrgus. Käsul on siiski palju võimalusi, uurime need läbi.

silinder (r1 = 20);
silinder (r1 = 20, r2 = 5);
silinder (r1 = 20, h = 40);
silinder (r = 20, h = 40);
silinder (r1 = 20, r2 = 5, h = 40, keskpunkt = tõene);

Esimesel koodil pole kahel esimesel silindril mingit mõtet, kuna neil pole kõrgust. Levinud viga on see, kui unustate väärtuse ja see ei näe välja nii, nagu kavatsesite. Muutujate kasutamisel juhtub sama asi, kui kasutate määratlemata muutujat. Sellisel juhul kontrollige konsooli logi selle käivitamisel.

Koonus

Kolmas on koonus, põhjuseks on see, et väärtus r2 on standardse suurusega. Proovige neljandat ja vaadake, mis juhtub. Viimane loob koonuse, kus teil on mõõtmete täielik kontroll. Seda on tahkete koonuste jaoks lihtne kasutada. Paned paika kaks raadiust ja kõrguse ning ongi valmis. Võite kasutada ka läbimõõtu, kui see teile paremini sobib.

Keskpunkt = tegelik väärtus kehtib z-telje kohta, jättes koonuse poolenisti maapinnast ülespoole. Vaikimisi on vale, mis paneb koonuse põhja nii-öelda “maapinnale”. Parameetriga '$ fn' saate valida ka selle, kui koonuse seinad on ümmarguse kujuga.

Õõnes silinder

Hei, oota hetk! See loob ainult tahkeid tükke, kuidas ma nendesse auke puurin? Sa küsid, tänan! Ma ütlen teile. Vastus on kõik erinev. Käsk, mis on. Mõelge allolevale koodile, see sisaldab kahte silindrit, mis on haaratud lokkisulgude ja erinevuskäskudega.

erinevus ()
silinder (r = 30, h = 40);
silinder (r = 28, h = 41);

Lihtsamalt öeldes, kui teil on mitu tükki, siis lõigake kõigist järgnevatest tükkidest materjal esimesest tükist ära. Sellisel juhul lõikasite silindrist silindri välja. Kui soovite mõne muu kuju välja lõigata, saate seda teha ka. Proovige kuupi või kera! Pange tähele huvitavaid ja mõnikord laastavaid mõjusid, mida $ fn väärtus sellel koodil võib olla.

Õõnes koonus

Seda saate teha ka koonusega, lihtsalt kasutage raadiuse kahekordseid väärtusi. Kuna määrate mõlemad koonused, on teil lõpptulemuse üle palju kontrolli. Lihtsaim õõnes koonus on vaid kaks koonust üksteise sees, paksusega materjali jaoks.

erinevus ()
silinder (r1 = 30, r2 = 12, h = 50);
silinder (r1 = 25, r2 = 7, h = 45);

See koonus on ülaosas kaetud, saate selle avada, seades lihtsalt teise kõrguse esimesest kõrgemaks. Kuna teil on kaks silindrit, saate neid kahte vahetada. Näitena võite teise silindri vahetamisega läbi selle sirge augu lõigata. Võite valida ka kuubiku, kuid pidage meeles, et see võib koonusest välja lõigata liiga palju materjali.

Püramiid

See võib tunduda ebaoluline, kuid see on kasulik trikk, mida peate meeles pidama, kui jätkate openSCAD-i kasutamist. Kõik silindrid ja muud elemendid on kuju ligikaudsed. Parameetri $ fn kohta lugesite varem, siin kasutate seda ära. Seda silmas pidades võite mõelda: Püramiid on nelja küljega koonus. Õige! kasutage $ fn = 4 ja teil on nelja küljega koonus, mis tähendab püramiidi.

erinevus ()
silinder (r1 = 30, r2 = 12, h = 40, $ fn = 4);
silinder (r1 = 25, r2 = 7, h = 35, $ ​​fn = 4);

Sisemine silinder lõikab sama silindri kui välimine. Kuni hakkate parameetriga $ fn mängima. Selle parameetri mõjudega tutvumiseks proovige teha neljajalgne väljaheide. Kuidas mõjutab parameeter $ fn tulemust? Samuti, kuidas saate ülemise või alumise osa katta?

Kombineerides paljusid

Silindrite palju kasutamiseks peaksite õppima, kuidas paljusid neist kombineerida. Lõpptulemus võib olla väga keeruline ja mõnikord isegi kasulik. Üks võimalus on panna silindrile ülaosa. Selleks, et seda hästi teha, peate kasutama muutujaid. Tehke harjumuseks panna need disaini tippu. See hõlbustab hiljem moodulite valmistamist.

paks = 5;
baser = 30;
topr = 12;
kõrgus = 50;
liit ()
// Alumine koonus
erinevus ()
silinder (r1 = alus, r2 = topr, h = kõrgus);
silinder (r1 = aluspaksus, r2 = topr - paksus, h = kõrgus + paksus);

// Ülemine pall
tõlkima ([0, 0, kõrgus])
erinevus ()
kera (r = topr);
kera (r = topr-paks);
tõlkima ([0, 0, -topr])
kuup (suurus = topr * 2, keskpunkt = tõene);

Alustades ülalt, on teil muutujaid. Need on mõeldud paksuse, aluse raadiuse, ülemise raadiuse ja kõrguse jaoks. Ametiühingu avaldus toob tükid kokku. Trakside sees on teil koonus ja seejärel ülemine pall. Kuna nad on liidu sees, saavad neist lõpuks üks tükk. Saate teha veelgi rohkem, kui kasutate paljusid silindreid mitme nurga all.

Katseklaasi valmistamine

Koonustest edasi liikudes tehke katseklaas. Esiteks peate kaaluma, millised kujundid moodustavad katseklaasi. Põhiosa on silinder, pole midagi uhket, lihtsalt kahe silindri korrapärane erinevus. Kui määrate pikkuseks muutuja, saate seda väärtust kasutada viitena. Peate teadma, kus toru lõpeb ja muutub poolkeraks põhjas. Sfääri määratlemiseks kasutate ka toru raadiust.

tubr = 20;
tubl = 80;
paks = 2;
erinevus ()
silinder (r1 = tubr, r2 = tubr, h = tubl);
silinder (r1 = tubr - thickn, r2 = tubr - thickn, h = tubl);

Proovige seda ja teil on ainult lihtne silinder, nii et kogu toru valmistamiseks peate selle sulama koos poolkeraga. Vaikimisi avatudSCAD-is pole poolkera, peate selle tegema. Kasutage kahe sfääri vahet, et luua õõnes kera, seejärel eemaldage teine ​​kuup, mis kera ära lõikab.

erinevus ()
kera (tubr);
kera (tubr - paks);
tõlkima ([0, 0, -tubr])
kuup (suurus = tubr * 2, keskpunkt = tõene);

Nüüd on teil kaks eraldi tükki. Järgmine samm on nende kokku panemine. Siin saate kasutada käsku union. Nagu erinevus-käsk, võtab liit kõik tükid järjekorras. Liidus pole järjekord nii oluline, kuna see on täiendus. Kood näeb natuke kole välja, sest me ei kasuta siin mooduleid.

liit ()
// Põhitoru
erinevus ()
silinder (r1 = tubr, r2 = tubr, h = tubl);
silinder (r1 = tubr - thickn, r2 = tubr - thickn, h = tubl);

// Alumine kera
tõlkima ([0, 0, tubl])
erinevus ()
kera (tubr);
kera (tubr - paks);
tõlkima ([0, 0, -tubr])
kuup (suurus = tubr * 2, keskpunkt = tõene);


// Ülemine rõngas
erinevus ()
silinder (r = tubr + paksus, h = paksus);
silinder (r = tubr, h = paksus);

Siin kujundame selle tagurpidi, see on teie otsustada. Tehke seda, mis on konkreetsel juhul mugav. Kasutamise ajal saate seda alati pöörata. Ülemisel rõngal on teravad servad, saate selle parandada, kasutades ringi ja pöörates seda välja. Selle tegemiseks, uurimiseks ja katsetamiseks on muid võimalusi!

rotate_extrude (kumerus = 10, $ fn = 100)
tõlkima ([tubr, 0, 0])
ring (r = paksus, $ fn = 100);

Kombineerides paljusid silindreid

Kui olete mitmest silindrist toru teinud, võiksite neid ka erineval viisil ühendada. Selleks saate uuesti kasutada ametiühingut. Oletame, et soovite ühte toru neljakümne viie kraadise nurga all teise toru suhtes. Selle tegemiseks asetate nurga all oleva toru suure toru poole ülespoole.

liit ()
toru (50, 4, 300);
tõlkima ([0, 0, kogu pikkus / 2]) pöörama ([45, 0, 0])
toru (50, 4, 150);

Kui proovite seda, näeb see väljastpoolt suurepärane välja. Sisse vaadates näete, et teil on mõlemad terved torud. Lühike blokeerib voolu pikas torus. Selle parandamiseks peate kustutama mõlemad silindrid torude sees. Võite pidada kogu liitu üheks tükiks ja panna vastavad silindrid pärast seda vahe sisse.

erinevus ()
liit ()
toru (50, 4, 300);
tõlkima ([0, 0, kogu pikkus / 2]) pöörama ([45, 0, 0])
toru (50, 4, 150);


silinder (r = 50 - 4, h = kogu pikkus);
tõlkima ([0, 0, kogu pikkus / 2]) pöörama ([45, 0, 0])
silinder (r = 50 - 4, h = kogu pikkus / 2);

Nagu näete, venib esimene silinder kogu toru pikkuses. See kustutab kõik suure toru sees, kuid ka väike kallutatud toru tuleb kustutada. Tõlkekäsk liigutab toru pooleldi ülespoole, seejärel pöörleb ja asetab silindri toru sisse. Tegelikult kopeeritakse kood ülevalt ja toru asendatakse silindriga.

Sanitaartehnilised tööd

Kui soovite teha rohkem torusid, võite kasutada ülaltoodud näite moodulit ja alustada laiendamist. Kood on saadaval aadressil https: // github.com / matstage / openSCAD-silindrid.git, Kirjutamise ajal on ainult need kaks, kuid kontrollige sageli, et näha rohkem. Võimalik, et saate luua põnevamat kraami.

Ploki sees

Kui soovite valmistada sisepõlemismootorit, vajate silindrilist auku tahke tükina. Allpool on toodud näide, mis on kõige lihtsam, jahutuskanalite ja kolvide jaoks on palju muud lisada. See on veel üks päev.

mooduli silindriplokk (
silinder R = 3,
Äär = 1,
silindrite arv = 8)

erinevus ()
kuup ([silinderR * 2 + serv * 2,
silinderR * 2 * numCylinders + Edge * numCylinders + Edge, 10]);
(x = [0: 1: arvsilindrid-1])
tõlkima ([silinderR + serv, silinderR * x * 2 + serv * x + silinderR + serv, 0])
silinder (r = silinderR, h = 12);

Siin on teil kuup, mis kasvab vastavalt soovitud silindrite arvule plokis. Kõik mooduli väärtused on vaikimisi, nii et saate seda kasutada ilma väärtusteta. Selle kasutamiseks kasutage 'use 'avaldis faili ülaosas ja seejärel lisage silindriplokk (numCylinders = 8). Võite kasutada või jätta suvalise väärtuse. Kui jätate need välja, võtab see vaikimisi. Lühidalt öeldes algab mooduli sisemine osa väärtustest ja loob seejärel kuubiku, mis oleks silindritele sobiv. Seejärel jätkub silindrite eemaldamine for-lause abil. Tänu avaldusele saate teha suurema või väiksema ploki. Täpsemate moodulite puhul saate teatud väärtuste saavutamisel seada piiranguid, mis muudavad kujundust. Võib-olla soovite sellest teha V, kui see on 8 või enam silindrit.

Väljapressimine tasasest kujust

Teine viis silindri loomiseks on ringi tegemine ja selle väljapressimine. Tahke silinder on ainult kaks rida:

sirgjooneline (15)
ring (20);

Nii luuakse 15 (raadiusega ühikut pole avatudSCAD-is) pikkus 20 raadiusega. Läbimõõtu saate kasutada parameetri d abil. Lihtsalt silindri loomine pole eriti kasulik, kuid võite kasutada sama tehnikat mis tahes 2D kuju jaoks. Seda näete hiljem. Kui õõnes silinder on kood veidi pikem.

sirgjooneline (15)
erinevus ()
ring (20);
ring (18);

See on sama, kuid nagu me oleme varem teinud, eemaldate keskringi. Selle saate ka ringi pöörata, kasutades versiooni rotate_extrude. See sobib suurepäraselt sõõrikute valmistamiseks, lihtsaim versioon näeb välja selline.

rotate_extrude (nurk = 180, kumerus = 10)
tõlkima ([30,0,0])
erinevus ()
ring (20);
ring (10);

See kood loob poolringi, mis on õõnes. Märkus, millega peaksite olema ettevaatlik, on see, et tõlge on vajalik, või saate vea: „VIGA: kõigil rotateextrude () punktidel peab olema sama X koordinaadimärk (vahemik on -2.09 -> 20.00) ”. Numbrid sõltuvad ringis olevast väärtusest. Kuna see loob silindriga sama kuju, võib see tunduda kasutu. See ei ole! Selle käsu parimaks otstarbeks on muuta lame kuju kuidagi toimivaks. Kasutusjuhendis on näiteks lihtne hulknurk, see loob ümmarguse kuju, kus saate rihma juhtida. Samuti saate selle ümber keerata. Allolev kood loob korgitseri.

tõlkima ([- 80,0,0])
lineaarne väljavõte (80, keerd = 900, skaala = 2.0, viilud = 100)
tõlkima ([2, 0, 0])
ruut (10);

Juhendis toodud näide näitab polügooni, mis võib olla kasulik. Allolev kood võib olla mis iganes teile meeldib, kuid illustreerib selle tegemise jõudu.

tõlkima ([0, -80, 0])
rotate_extrude (nurk = 275)
tõlkima ([12,3,2])
hulknurk (punktid = [[0,0], [20,17], [34,12], [25,22], [20, 30]];

Hulknurga kujuga saate katsetada seni, kuni saate selle oma rakenduse jaoks sobivaks. Kui tundub, et ainult numbreid kasutades on veidi hirmutav, saate profiili luua teistes CAD-programmides ja importida dxf-tulemuse käsu import () abil.

Järeldus

Silindri valmistamine on lihtne, kuid alles protsessi algus. Keerukas osa on teha sellega midagi kasulikku. Samuti peate selle oma disaini lisama ja võib-olla looma keerukamaid probleeme kui silindrid. Leidke viise ja väljakutseid oma teadmiste pidevaks laiendamiseks openSCADi abil. Ärge unustage kasutada dokumentatsiooni ja toetuda muule tarkvarale, kui seda pole arvude jms abil hõlpsasti võimalik saavutada. Midagi, mida selles postituses ei käsitleta, on see, et saate Inkscape'i ja Blenderisse asju joonistada ja importida need openSCADi. Eksportimine openSCAD-st stl-i ja muudesse vormingutesse on hästi toetatud ja kui olete tõesti uudishimulik, vaadake loomingut Thingiverse'is. Neil on hulk entusiaste, kes panustavad oma saidile.

Kuidas installida ja mängida Doomi Linuxis
Doomi sissejuhatus Doom-seeria sai alguse 90ndatel pärast algse Doomi väljaandmist. See oli kohene hitt ja sellest ajast alates on mänguseeria pälvinu...
Vulkan Linuxi kasutajatele
Iga uue põlvkonna graafikakaartidega näeme, et mängude arendajad ületavad graafilise truuduse piire ja jõuavad fotorealismile ühe sammu lähemale. Kuid...
OpenTTD vs Simutrans
Oma transpordisimulatsiooni loomine võib olla lõbus, lõõgastav ja äärmiselt köitev. Sellepärast peate endale meelepärase leidmiseks kindlasti proovima...