Cilindro komanda
Jei naudojate paprasčiausią baliono komandos versiją, jums reikės tik vieno parametro. Tai daro vieną vientisą vienodą cilindrą ir nieko daugiau. Turėtumėte atkreipti dėmesį, kad tas cilindras bus standartinio spindulio ir skliaustuose esančios vertės aukščio. Vis dėlto komandoje yra daugybė galimybių, įsigilinkime į jas.
cilindras (r1 = 20);cilindras (r1 = 20, r2 = 5);
cilindras (r1 = 20, h = 40);
cilindras (r = 20, h = 40);
cilindras (r1 = 20, r2 = 5, h = 40, centras = tiesa);
Pirmieji du cilindrai aukščiau esančiame kode neturi prasmės, nes neturi aukščio. Dažna klaida yra ta, kai pamirši vertę ir ji atrodo ne taip, kaip norėjai. Kai naudojate kintamuosius, tas pats atsitinka, jei naudojate neapibrėžtą kintamąjį. Šiuo atveju aukštis, bet patikrinkite konsolės žurnalą, kai jį paleisite.
Kūgis
Trečiasis yra kūgis, priežastis yra ta, kad r2 reikšmė yra standartinio dydžio. Išbandykite ketvirtą ir sužinokite, kas nutiks. Paskutinis sukuria kūgį, kuriame jūs visiškai valdote matmenis. Šis yra paprastas naudoti kietiems kūgiams. Jūs nustatote du spindulius ir aukštį ir baigsite. Taip pat galite naudoti skersmenį, jei tai jums labiau tinka.
Centras = tikroji vertė galioja z ašiai, paliekant kūgį pusiaukelėje nuo „žemės“. Pagal nutylėjimą yra klaidinga, todėl kūgio apačia atsiduria ant „žemės“, taip sakant. Taip pat galite pasirinkti, kiek kūgio sienos yra apvalios, naudodami parametrą '$ fn'.
Tuščiaviduris cilindras
Ei, palauk minutėlę! Tai sukuria tik tvirtus gabalus, kaip aš juose išgręžiu skyles? Jūs klausiate, ačiū! Aš jums pasakysiu. Atsakymas yra skirtingas. Tai komanda. Apsvarstykite toliau pateiktą kodą. Jame yra du cilindrai, kurie apgaubti garbanotais skliaustais ir skirtumo komanda.
skirtumas ()cilindras (r = 30, h = 40);
cilindras (r = 28, h = 41);
Paprasčiau tariant, kai turite kelis gabalus, tada nupjaukite medžiagą iš pirmojo gabalo, naudodami visus toliau nurodytus gabalus. Tokiu atveju iš cilindro iškirpote cilindrą. Jei norite iškirpti bet kokią kitą formą, taip pat galite tai padaryti. Išbandykite kubą ar sferą! Atkreipkite dėmesį į įdomų, o kartais ir pražūtingą $ fn vertės poveikį šiam kodui.
Tuščiaviduris kūgis
Tai galite padaryti ir su kūgiu, tiesiog naudokite dvigubo spindulio vertes. Kadangi jūs apibrėžiate abu kūgius, jūs galite daug kontroliuoti galutinį rezultatą. Paprasčiausias tuščiaviduris kūgis yra tik du kūgiai, kurių storis medžiagai.
skirtumas ()cilindras (r1 = 30, r2 = 12, h = 50);
cilindras (r1 = 25, r2 = 7, h = 45);
Šis kūgis yra uždengtas viršuje, jį galite atidaryti paprasčiausiai nustatydami antrą aukštį aukščiau nei pirmasis. Kadangi turite du cilindrus, galite pakeisti bet kurį iš dviejų. Pavyzdžiui, galite iškirpti tiesią skylę per ją, pakeisdami antrąjį cilindrą. Taip pat galite pasirinkti kubą, tačiau atminkite, kad tai gali išpjauti per daug medžiagos iš kūgio.
Piramidė
Tai gali atrodyti neaktualu, tačiau tai yra naudinga gudrybė, kurią turite nepamiršti tęsdami „openSCAD“ naudojimą. Visi cilindrai ir kiti elementai yra apytiksliai formos. Apie parametrą $ fn perskaitėte anksčiau, čia juo pasinaudojote. Atsižvelgdami į tai, galite pagalvoti: Piramidė yra kūgis iš keturių pusių. Teisingai! naudokite $ fn = 4 ir turite kūgį su keturiomis pusėmis, tai reiškia piramidę.
skirtumas ()cilindras (r1 = 30, r2 = 12, h = 40, $ fn = 4);
cilindras (r1 = 25, r2 = 7, h = 35, $ fn = 4);
Vidinis cilindras perpjauna tą patį cilindrą kaip ir išorinis. Kol nepradėsite žaisti su parametru $ fn. Norėdami susipažinti su šio parametro poveikiu, pabandykite padaryti keturkoję išmatą. Kaip $ fn parametras veikia rezultatą? Be to, kaip galite padengti viršutinę ar apatinę dalį?
Daugelį derinant
Norėdami naudoti daug cilindrų, turėtumėte sužinoti, kaip daugelį iš jų sujungti. Galutinis rezultatas gali būti labai sudėtingas ir kartais netgi naudingas. Viena galimybė yra uždėti viršutinę dalį ant cilindro. Norėdami tai padaryti gerai, turite pradėti naudoti kintamuosius. Įpraskite juos įdėti į tai, ką kuriate. Tai palengvina vėliau modulių gamybą.
storis = 5;bazinis = 30;
topr = 12;
aukštis = 50;
sąjunga ()
// Apatinis kūgis
skirtumas ()
cilindras (r1 = pagrindas, r2 = topr, h = aukštis);
cilindras (r1 = pagrindo storis, r2 = topr - storis, h = aukštis + storis);
// Viršutinis kamuolys
versti ([0, 0, aukštis])
skirtumas ()
sfera (r = topr);
rutulys (r = topr -storis);
versti ([0, 0, -topr])
kubas (dydis = topr * 2, centras = tiesa);
Pradedant nuo viršaus, turite kintamuosius. Jie skirti storiui, pagrindo spinduliui, viršutiniam spinduliui ir aukščiui. Sąjungos pareiškimas sujungia kūrinius. Breketų viduje turite kūgį, o tada viršutinį rutulį. Kadangi jie yra sąjungos viduje, jie taps vienu kūriniu pabaigoje. Galite padaryti dar daugiau, kai naudojate daugybę cilindrų įvairiais kampais.
Mėgintuvėlio gaminimas
Judėdami iš kūgių, padarykite mėgintuvėlį. Pirmiausia turite apsvarstyti, kokios formos sudaro mėgintuvėlį. Pagrindinė dalis yra cilindras, nieko nuostabaus, tik reguliarus skirtumas tarp dviejų cilindrų. Jei ilgį nustatysite kaip kintamąjį, galite naudoti tą vertę kaip nuorodą. Turite žinoti, kur vamzdelis baigiasi ir tampa pusrutuliu apačioje. Jūs taip pat naudosite vamzdžio spindulį, kad apibrėžtumėte sferą.
tubr = 20;tubl = 80;
storis = 2;
skirtumas ()
cilindras (r1 = tubr, r2 = tubr, h = tubl);
cilindras (r1 = tubr - thickn, r2 = tubr - thickn, h = tubl);
Išbandykite tai ir turėsite tik paprastą cilindrą, kad padarytumėte visą mėgintuvėlį, kurį jums reikia ištirpinti kartu su puse rutulio. Numatytame „openSCAD“ nėra pusės sferos, turite ją sukurti. Norėdami sukurti tuščiavidurį rutulį, naudokite dviejų sferų skirtumą, tada pašalinkite kitą kubą, kuris nupjauna sferą.
skirtumas ()rutulys (tubr);
rutulys (tubr - storas);
versti ([0, 0, -tubr])
kubas (dydis = tubr * 2, centras = tiesa);
Dabar jūs turite dvi atskiras dalis. Kitas žingsnis - juos sujungti. Čia galite naudoti sąjungos komandą. Kaip ir skirtumo komanda, sąjunga paima visas dalis iš eilės. Sąjungoje tvarka nėra tokia svarbi, nes tai yra papildymas. Kodas atrodys šiek tiek negražus, nes čia nenaudojame modulių.
sąjunga ()// Pagrindinis vamzdis
skirtumas ()
cilindras (r1 = tubr, r2 = tubr, h = tubl);
cilindras (r1 = tubr - thickn, r2 = tubr - thickn, h = tubl);
// Apatinė sfera
versti ([0, 0, tubl])
skirtumas ()
rutulys (tubr);
rutulys (tubr - storas);
versti ([0, 0, -tubr])
kubas (dydis = tubr * 2, centras = tiesa);
// Viršutinis žiedas
skirtumas ()
cilindras (r = tubr + thickn, h = thickn);
cilindras (r = tubr, h = thickn);
Čia mes suprojektuojame jį aukštyn kojomis, tai priklauso nuo jūsų. Darykite tai, kas patogu konkrečiu atveju. Naudodami visada galite pasukti. Viršutinis žiedas turi aštrius kraštus. Tai galite ištaisyti naudodami apskritimą ir pasukdami_įskleisti. Yra ir kitų būdų tai padaryti, tyrinėti ir eksperimentuoti!
rotate_extrude (išgaubtumas = 10, $ fn = 100)versti ([tubr, 0, 0])
apskritimas (r = storis, $ fn = 100);
Daugelio cilindrų sujungimas
Pagaminę vamzdelį iš kelių cilindrų, taip pat galbūt norėsite juos sujungti skirtingais būdais. Norėdami tai padaryti, galite vėl naudoti sąjungą. Tarkime, kad norite vieno vamzdžio keturiasdešimt penkių laipsnių kampu, palyginti su kitu vamzdeliu. Norėdami tai padaryti, kampuotą vamzdelį padėkite iki pusės dideliu vamzdžiu.
sąjunga ()mėgintuvėlis (50, 4, 300);
versti ([0, 0, totlength / 2]) pasukti ([45, 0, 0])
mėgintuvėlis (50, 4, 150);
Pabandžius tai atrodo puikiai iš išorės. Pažvelgęs į vidų pamatai, kad turi abu ištisus vamzdelius. Trumpasis blokuoja srautą ilgame vamzdyje. Norėdami tai ištaisyti, turite ištrinti abu cilindrus vamzdžių viduje. Galite laikyti visą jungtį vienu gabalu ir įdėti atitinkamus cilindrus po jo skirtumo viduje.
skirtumas ()sąjunga ()
mėgintuvėlis (50, 4, 300);
versti ([0, 0, totlength / 2]) pasukti ([45, 0, 0])
mėgintuvėlis (50, 4, 150);
cilindras (r = 50 - 4, h = bendras ilgis);
versti ([0, 0, totlength / 2]) pasukti ([45, 0, 0])
cilindras (r = 50 - 4, h = bendras ilgis / 2);
Kaip matote, pirmasis cilindras ištempia visą vamzdžio ilgį. Tai ištrins viską, kas yra dideliame mėgintuvėlyje, tačiau reikia ištrinti ir mažą pasvirusį vamzdelį. Versti komanda perkelia vamzdį į viršų, jis sukasi ir įdeda cilindrą į vamzdžio vidų. Tiesą sakant, kodas nukopijuojamas iš viršaus ir vamzdis pakeičiamas cilindru.
Santechnika
Jei norite pagaminti daugiau vamzdžių, galite naudoti anksčiau pateiktame pavyzdyje esantį modulį ir pradėti plėstis. Kodas pasiekiamas adresu https: // github.com / matstage / openSCAD-cilindrai.git, Rašymo metu yra tik šie du, tačiau dažnai patikrinkite, ar norite pamatyti daugiau. Galbūt galėsite sukurti įdomesnių dalykų.
Bloko viduje
Jei norite pagaminti vidaus degimo variklį, jums reikia cilindro formos skylės vientisoje dalyje. Žemiau pateikiamas paprasčiausias įmanomas pavyzdys, kad aušinimo kanalus ir stūmoklius galima pridėti daug daugiau. Vis dėlto tai dar vienai dienai.
modulio cilindrų blokas (cilindras R = 3,
Kraštas = 1,
cilindrai = 8)
skirtumas ()
kubas ([cilindrasR * 2 + kraštas * 2,
cilindrasR * 2 * numerCylinders + Edge * numCylinders + Edge, 10]);
(x = [0: 1: numCylinders-1])
versti ([cilindrasR + kraštas, cilindrasR * x * 2 + kraštas * x + cilindrasR + kraštas, 0])
cilindras (r = cilindrasR, h = 12);
Čia jūs turite kubą, kuris auga pagal norimą cilindrų skaičių bloko viduje. Visos modulio reikšmės yra numatytosios, kad galėtumėte jas naudoti be reikšmių. Norėdami jį naudoti, naudokite „use
Išspaudimas iš plokščios formos
Kitas būdas sukurti cilindrą yra padaryti apskritimą ir jį išstumti. Tvirtas cilindras yra tik dvi linijos:
linijinis_extrude (15)apskritimas (20);
Tai sukuria 15 (be vienetų „openSCAD“) ilgį, kurio spindulys yra 20. Skersmenį galite naudoti naudodami parametrą d. Tiesiog sukurti cilindrą nėra labai naudinga, tačiau bet kuriai 2D formai galite naudoti tą pačią techniką. Tai pamatysite vėliau. Nors tuščiaviduris cilindras, kodas yra šiek tiek ilgesnis.
linijinis_extrude (15)skirtumas ()
apskritimas (20);
apskritimas (18);
Tai tas pats, bet, kaip jau padarėme anksčiau, jūs pašalinate centrinį ratą. Taip pat galite sulenkti jį ratu naudodami versiją „rotate_extrude“. Tai puikiai tinka gaminant spurgas, paprasčiausia versija atrodo viena.
rotate_extrude (kampas = 180, išgaubimas = 10)versti ([30,0,0])
skirtumas ()
apskritimas (20);
apskritimas (10);
Šis kodas sukuria tuščiavidurį ratą. Pastaba, su kuria turėtumėte būti atsargus, yra tai, kad vertimas yra būtinas, arba gausite klaidą: „KLAIDA: visi„ rotateextrude “() taškai turi turėti tą patį X koordinatės ženklą (diapazonas yra -2.09 -> 20.00) “. Skaičiai priklausys nuo apskritimo vertės. Tai sukuria tokią pačią formą kaip cilindras, todėl gali atrodyti nenaudinga. Tai nėra! Geriausias šios komandos naudojimas yra tam, kad plokščia forma būtų kažkaip funkcionali. Vadove kaip pavyzdys yra paprastas daugiakampis, jis sukuria apvalią formą, kur galite paleisti diržą. Taip pat galite jį pasukti. Žemiau pateiktas kodas sukuria kamščiatraukį.
versti ([- 80,0,0])line_extrude (80, sukimas = 900, mastelis = 2.0, griežinėliai = 100)
versti ([2, 0, 0])
kvadratas (10);
Vadovo pavyzdyje parodytas daugiakampis, kuris gali būti naudingas. Žemiau pateiktas kodas gali būti bet koks, kas jums patinka, bet iliustruoja galybę tai padaryti tokiu būdu.
versti ([0, -80, 0])rotate_extrude (kampas = 275)
versti ([12,3,2])
daugiakampis (taškai = [[0,0], [20,17], [34,12], [25,22], [20, 30]]);
Galite eksperimentuoti su daugiakampio forma, kol ją pritaikysite savo programai. Jei jaučiate šiek tiek bauginančią naudodami tik skaičius, galite sukurti profilį kitose CAD programose ir importuoti dxf rezultatą naudodami komandą import ().
Išvada
Padaryti cilindrą yra paprasta, bet tik proceso pradžia. Keblu yra pasigaminti ką nors naudingo. Jūs taip pat turite įtraukti jį į savo dizainą ir galbūt sukurti sudėtingesnes problemas nei cilindrai. Raskite būdų ir iššūkių, kaip nuolat plėsti žinias naudojant „openSCAD“. Nepamirškite naudoti dokumentacijos ir remtis kita programine įranga, kai to negalima lengvai pasiekti naudojant skaičius ir panašiai. Kažkas neaptariamas šiame įraše yra tai, kad galite piešti medžiagą „Inkscape“ ir „Blender“ ir importuoti į „OpenSCAD“. Eksportavimas iš „openSCAD“ į „stl“ ir kitus formatus yra gerai palaikomas. Jei jums tikrai įdomu, peržiūrėkite kūrinius „Thingiverse“. Jie turi daugybę entuziastų, prisidedančių prie savo svetainės.