Zbierka: Rozdiel medzi revíziami

Zo stránky Parametrické a Generatívne 3D modelovanie
Bez shrnutí editace
Bez shrnutí editace
 
(165 medziľahlých úprav od rovnakého používateľa nie je zobrazených.)
Riadok 1: Riadok 1:
Príklad pg_twist_cylinder
Táto zbierka príkladov slúži na úvod do modelovacieho softvéru - Tinkercad Codeblocks, BlocksCAD, OpenSCAD, Blender a na precvičenie základov parametrického a generatívneho dizajnu v uvedených nástrojoch. Pri programovaní v týchto prostrediach užívatelia získavajú programovacie a modelovacie skúsenosti prechodom od blokového (Tinkercad Codeblocks, BlocksCAD) k textovému (OpenSCAD, Blender) programovaniu:<br>
* V Tinkercad Codeblocks majú užívatelia jednoduché prostredie založené na blokovom programovaní a postupným skladaním blokov vytvárajú svoje vlastné 3D modely, no nevidia žiaden kód za tým. Tinkercad Codeblocks sprístupňuje renderovanie len málo primitív a nie je v ňom umožnená rekurzia.
* V BlocksCADe je prostredie podobné, no niektoré bloky majú jemne rozdielnú funkcionalitu či poradie vyhodnocovania. Síce sme stále v blokovom programovaní, BlocksCAD umožňuje aj prehľad OpenSCAD kódu, ktorý vytvoril pri skladaní blokov na pozadí. <span style="color:red">!POZOR!</span> - nie je zaručené, že tento OpenSCAD kód bude fungovať správne. Občas sa stane, že preklad nie je dokonalý a obsahuje syntaktické či logické chyby, preto sa neodporúča naň spoliehať na 100%. BlocksCAD umožňuje vytvárať viac primitív a oproti Tinkercad Codeblocks obsahuje aj rekurziu.
* V OpenSCADe je prostredie využívajúce vlastnú prispôsobenú syntax, v ktorej užívatelia programujú bez blokov, iba textovo, no je zo všetkých predošlých CAD systémov najrýchlejší a umožňuje vytvárať komplexnejšie modely s množstvom primitív.
* V Blenderi máme zas prostredie, ktoré nám pomocou Python API umožňuje pracovať s modelmi v scéne. Blender má obrovskú škálu operácií a dokáže relatívne rýchlo pracovať s väčším množstvom primitív. V skriptoch, ktoré píšeme vieme pomerne priamočiaro implementovať parametrické aj generatívne modelovanie. Máme taktiež k dispozícii importovanie viacerých modelov, takisto exportovanie modelov vo viacerých formátoch.


'''OpenJSCAD'''
Všetky modely sú vytvorené čo najpodobnejšie vo viacerých nástrojoch pre predstavu a ľahší prechod medzi blokovým a textovým programovaním. Ku každému modelu je pripravený pracovný hárok, ktorý priblíži postup a koncepty riešiteľom.
[https://github.com/Achinys-out/ParametricAndGenerativeDesign/blob/main/OpenJSCAD/pg_twist_cylinder.jscad pg_twist_cylinder.jscad]
<br>
<h2>'''Potrebné materiály pre prácu:'''</h2>
*počítač s prístupom na internet
*nástroje na skicovanie a výpočty
*[https://www.tinkercad.com/codeblocks Tinkercad Codeblocks], [https://www.blockscad3d.com/ BlocksCAD], [https://openscad.org/ OpenSCAD], [https://www.blender.org/ Blender], [https://www.python.org/ Python]
*[https://kempelen.dai.fmph.uniba.sk/design/index.php/Odkazy_a_n%C3%A1vody návody, videá, atď.] a [https://kempelen.dai.fmph.uniba.sk/design/index.php/Te%C3%B3ria teória]


 
<h2>'''Pracovné hárky:'''</h2>
'''OpenSCAD'''
<p>Táto sekcia obsahuje pracovné hárky pre študentov obsahujúce konkrétne realizované príklady a úlohy s otvoreným koncom. Slúžia na osvojenie konceptov a zručností využívaných pri 3D modelovaní a programovaní všeobecne a v konečnom dôsledku aj pri parametrickom a generatívnom 3D modelovaní. V hárkoch nájdeme obrázky modelov, inštrukcie pre prácu, materiály alebo aj vzorové riešenia.</p>
[https://github.com/Achinys-out/ParametricAndGenerativeDesign/blob/main/OpenSCAD/pg_twist_cylinder.scad pg_twist_cylinder.scad]
<h3>'''Ľahké úlohy:'''</h3>
{{
Odkaz_harok
|difficulty_class=easy
|image_name=Hyperboloid_spinner
|alt=obrázok modelu rotovaného objektu
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Rotovan%C3%BD_objekt Rotovaný objekt]
|duration=30 min
|difficulty=ľahký
|skills=transformácie, cykly
|software=[https://www.tinkercad.com/codeblocks Tinkercad Codeblocks], [https://www.blockscad3d.com/ BlocksCAD] alebo [https://openscad.org/ OpenSCAD]
}}
{{
Odkaz_harok
|difficulty_class=easy
|image_name=Mandala OpenSCAD
|alt=obrázok modelu mandaly
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Mandala Mandala]
|duration=45 min
|difficulty=ľahký
|skills=transformácie, cykly
|software=[https://www.tinkercad.com/codeblocks Tinkercad Codeblocks], [https://www.blockscad3d.com/ BlocksCAD] alebo [https://openscad.org/ OpenSCAD]
}}
{{
Odkaz_harok
|difficulty_class=easy
|image_name=Twisted_stairs
|alt=obrázok modelu točených schodov
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_To%C4%8Den%C3%A9_schody Točené schody]
|duration=1.5 hod
|difficulty=ľahký
|skills=transformácie, cykly, CSG operácie
|software=[https://www.blockscad3d.com/ BlocksCAD] alebo [https://openscad.org/ OpenSCAD]
}}
{{
Odkaz_harok
|difficulty_class=easy
|image_name=Twist_cylinder
|alt=obrázok modelu rotovaného valca z polygónov
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Valec_z_polyg%C3%B3nov Valec z plygónov]
|duration=1 hod
|difficulty=ľahký
|skills=transformácie, cykly, CSG operácie, funkcie
|software=[https://www.tinkercad.com/codeblocks Tinkercad Codeblocks], [https://www.blockscad3d.com/ BlocksCAD] alebo [https://openscad.org/ OpenSCAD]
}}
<h3>'''Pokročilé úlohy:'''</h3>
{{
Odkaz_harok
|difficulty_class=medium
|image_name=Parametric_screw_1
|alt=obrázok modelu skrutky
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Skrutka Parametrická skrutka]
|duration=1.5 hod
|difficulty=pokročilý
|skills=transformácie, cykly, CSG operácie, funkcie
|software=[https://www.blockscad3d.com/ BlocksCAD] alebo [https://openscad.org/ OpenSCAD]
}}
{{
Odkaz_harok
|difficulty_class=medium
|image_name=Koch_cube
|alt=obrázok modelu kochovej kocky
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Kochova_kocka  Kochova kocka iteratívne]
|duration=1 hod
|difficulty=pokročilý
|skills=transformácie, cykly, CSG operácie
|software=[https://openscad.org/ OpenSCAD]
}}
{{
Odkaz_harok
|difficulty_class=medium
|image_name=Recursive_cubes
|alt=obrázok modelu rekurzívnych kociek
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Rekurz%C3%ADvne_kocky Rekurzívne kocky]
|duration=1 hod
|difficulty=pokročilý
|skills=transformácie, CSG operácie, podmienky, rekurzia
|software=[https://www.blockscad3d.com/ BlocksCAD] alebo [https://openscad.org/ OpenSCAD]
}}
{{
Odkaz_harok
|difficulty_class=medium
|image_name=Recursive_sphere
|alt=obrázok modelu rekurzívnych guličiek
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Rekurz%C3%ADvne_guli%C4%8Dky Rekurzívne guličky]
|duration=1 hod
|difficulty=pokročilý
|skills=transformácie, CSG operácie, podmienky, rekurzia
|software=[https://www.blockscad3d.com/ BlocksCAD] alebo [https://openscad.org/ OpenSCAD]
}}
{{
Odkaz_harok
|difficulty_class=medium
|image_name=L-system_tree
|alt=obrázok modelu l-systému
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_L-syst%C3%A9m L-systém]
|duration=1.5 hod
|difficulty=pokročilý
|skills=transformácie, cykly, CSG operácie, podmienky, funkcie, rekurzia
|software=[https://www.blockscad3d.com/ BlocksCAD] alebo [https://openscad.org/ OpenSCAD]
}}
{{
Odkaz_harok
|difficulty_class=medium
|image_name=Blender_object_generator
|alt=obrázok generovania modelov v Blenderi
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Generovanie_objektov_-_Blender Generovanie objektov]
|duration=1.5 hod
|difficulty=pokročilý
|skills=transformácie, cykly, podmienky, funkcie, práca s bpy
|software=[https://www.blender.org/ Blender] a [https://www.python.org/ Python]
}}
<h3>'''Ťažké úlohy:'''</h3>
{{
Odkaz_harok
|difficulty_class=hard
|image_name=Voronoi_object_1
|alt=obrázok voronoiovej gule v OpenSCADe
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Voronoiove_objekty_-_OpenSCAD Voronoiove objekty - OpenSCAD]
|duration=1.5 hod
|difficulty=ťažký
|skills=transformácie, cykly, CSG operácie, podmienky, funkcie
|software=[https://openscad.org/ OpenSCAD]
}}
{{
Odkaz_harok
|difficulty_class=hard
|image_name=Voronoi_object_0
|alt=obrázok voronoiovej gule v Blenderi
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Voronoiove_objekty_-_Blender Voronoiove objekty - Blender]
|duration=2 hod
|difficulty=ťažký
|skills=cykly, podmienky, funkcie, práca s bpy
|software=[https://www.blender.org/ Blender] a [https://www.python.org/ Python]
}}
<h3>'''Bonus: viacúčelová optimalizácia 3D modelov:'''</h3>
{{
Odkaz_harok
|difficulty_class=bonus
|image_name=MOEA_4
|alt=obrázok s ukážkou optimalizácie
|link=[https://kempelen.dai.fmph.uniba.sk/design/index.php/Zbierka_-_Viac%C3%BA%C4%8Delov%C3%A1_optimaliz%C3%A1cia_3D_modelov Viacúčelová optimalizácia 3D modelov]
|duration=∞
|difficulty=ťažký
|skills=cykly, podmienky, funkcie, práca s bpy a platypus
|software=[https://www.blender.org/ Blender] a [https://www.python.org/ Python]
}}

Aktuálna revízia z 13:24, 10. máj 2024

Táto zbierka príkladov slúži na úvod do modelovacieho softvéru - Tinkercad Codeblocks, BlocksCAD, OpenSCAD, Blender a na precvičenie základov parametrického a generatívneho dizajnu v uvedených nástrojoch. Pri programovaní v týchto prostrediach užívatelia získavajú programovacie a modelovacie skúsenosti prechodom od blokového (Tinkercad Codeblocks, BlocksCAD) k textovému (OpenSCAD, Blender) programovaniu:

  • V Tinkercad Codeblocks majú užívatelia jednoduché prostredie založené na blokovom programovaní a postupným skladaním blokov vytvárajú svoje vlastné 3D modely, no nevidia žiaden kód za tým. Tinkercad Codeblocks sprístupňuje renderovanie len málo primitív a nie je v ňom umožnená rekurzia.
  • V BlocksCADe je prostredie podobné, no niektoré bloky majú jemne rozdielnú funkcionalitu či poradie vyhodnocovania. Síce sme stále v blokovom programovaní, BlocksCAD umožňuje aj prehľad OpenSCAD kódu, ktorý vytvoril pri skladaní blokov na pozadí. !POZOR! - nie je zaručené, že tento OpenSCAD kód bude fungovať správne. Občas sa stane, že preklad nie je dokonalý a obsahuje syntaktické či logické chyby, preto sa neodporúča naň spoliehať na 100%. BlocksCAD umožňuje vytvárať viac primitív a oproti Tinkercad Codeblocks obsahuje aj rekurziu.
  • V OpenSCADe je prostredie využívajúce vlastnú prispôsobenú syntax, v ktorej užívatelia programujú bez blokov, iba textovo, no je zo všetkých predošlých CAD systémov najrýchlejší a umožňuje vytvárať komplexnejšie modely s množstvom primitív.
  • V Blenderi máme zas prostredie, ktoré nám pomocou Python API umožňuje pracovať s modelmi v scéne. Blender má obrovskú škálu operácií a dokáže relatívne rýchlo pracovať s väčším množstvom primitív. V skriptoch, ktoré píšeme vieme pomerne priamočiaro implementovať parametrické aj generatívne modelovanie. Máme taktiež k dispozícii importovanie viacerých modelov, takisto exportovanie modelov vo viacerých formátoch.

Všetky modely sú vytvorené čo najpodobnejšie vo viacerých nástrojoch pre predstavu a ľahší prechod medzi blokovým a textovým programovaním. Ku každému modelu je pripravený pracovný hárok, ktorý priblíži postup a koncepty riešiteľom.

Potrebné materiály pre prácu:

Pracovné hárky:

Táto sekcia obsahuje pracovné hárky pre študentov obsahujúce konkrétne realizované príklady a úlohy s otvoreným koncom. Slúžia na osvojenie konceptov a zručností využívaných pri 3D modelovaní a programovaní všeobecne a v konečnom dôsledku aj pri parametrickom a generatívnom 3D modelovaní. V hárkoch nájdeme obrázky modelov, inštrukcie pre prácu, materiály alebo aj vzorové riešenia.

Ľahké úlohy:

obrázok modelu rotovaného objektu
Trvanie:
30 min
Náročnosť:
ľahký
Zručnosti:
transformácie, cykly
obrázok modelu mandaly
Trvanie:
45 min
Náročnosť:
ľahký
Zručnosti:
transformácie, cykly
obrázok modelu točených schodov
Trvanie:
1.5 hod
Náročnosť:
ľahký
Zručnosti:
transformácie, cykly, CSG operácie
Nástroje:
BlocksCAD alebo OpenSCAD
obrázok modelu rotovaného valca z polygónov
Trvanie:
1 hod
Náročnosť:
ľahký
Zručnosti:
transformácie, cykly, CSG operácie, funkcie

Pokročilé úlohy:

obrázok modelu skrutky
Trvanie:
1.5 hod
Náročnosť:
pokročilý
Zručnosti:
transformácie, cykly, CSG operácie, funkcie
Nástroje:
BlocksCAD alebo OpenSCAD
obrázok modelu kochovej kocky
Trvanie:
1 hod
Náročnosť:
pokročilý
Zručnosti:
transformácie, cykly, CSG operácie
Nástroje:
OpenSCAD
obrázok modelu rekurzívnych kociek
Trvanie:
1 hod
Náročnosť:
pokročilý
Zručnosti:
transformácie, CSG operácie, podmienky, rekurzia
Nástroje:
BlocksCAD alebo OpenSCAD
obrázok modelu rekurzívnych guličiek
Trvanie:
1 hod
Náročnosť:
pokročilý
Zručnosti:
transformácie, CSG operácie, podmienky, rekurzia
Nástroje:
BlocksCAD alebo OpenSCAD
obrázok modelu l-systému
Trvanie:
1.5 hod
Náročnosť:
pokročilý
Zručnosti:
transformácie, cykly, CSG operácie, podmienky, funkcie, rekurzia
Nástroje:
BlocksCAD alebo OpenSCAD
obrázok generovania modelov v Blenderi
Trvanie:
1.5 hod
Náročnosť:
pokročilý
Zručnosti:
transformácie, cykly, podmienky, funkcie, práca s bpy
Nástroje:
Blender a Python

Ťažké úlohy:

obrázok voronoiovej gule v OpenSCADe
Trvanie:
1.5 hod
Náročnosť:
ťažký
Zručnosti:
transformácie, cykly, CSG operácie, podmienky, funkcie
Nástroje:
OpenSCAD
obrázok voronoiovej gule v Blenderi
Trvanie:
2 hod
Náročnosť:
ťažký
Zručnosti:
cykly, podmienky, funkcie, práca s bpy
Nástroje:
Blender a Python

Bonus: viacúčelová optimalizácia 3D modelov:

obrázok s ukážkou optimalizácie
Trvanie:
Náročnosť:
ťažký
Zručnosti:
cykly, podmienky, funkcie, práca s bpy a platypus
Nástroje:
Blender a Python