abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:22 | Zajímavý software

    BreadboardOS je firmware pro Raspberry Pi Pico (RP2040) umožňující s tímto MCU komunikovat pomocí řádkového rozhraní (CLI). Využívá FreeRTOS a Microshell.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 24.05. Přehled novinek i s náhledy a videi v oficiálním oznámení. Do balíku se dostalo 5 nových aplikací: Audex, Accessibility Inspector, Francis, Kalm a Skladnik.

    Ladislav Hagara | Komentářů: 2
    včera 12:55 | Nová verze

    Byla vydána (𝕏) nová verze 18.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    22.5. 23:44 | Pozvánky

    V neděli 26. května lze navštívit Maker Faire Rychnov nad Kněžnou, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    22.5. 16:33 | Nová verze

    Byla vydána nová stabilní verze 3.20.0, tj. první z nové řady 3.20, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou počáteční podporu 64bitové architektury RISC-V.

    Ladislav Hagara | Komentářů: 0
    22.5. 14:11 | IT novinky

    Společnost Jolla na akci s názvem Jolla Love Day 2 - The Jolla comeback představila telefon se Sailfish OS 5.0 Jolla Community Phone (ve spolupráci se společností Reeder) a počítač Jolla Mind2 Community Edition AI Computer.

    Ladislav Hagara | Komentářů: 7
    22.5. 12:33 | Nová verze

    LibreOffice 24.8 bude vydán jako finální v srpnu 2024, přičemž LibreOffice 24.8 Alpha1 je první předběžnou verzí od začátku vývoje verze 24.8 v prosinci 2023. Od té doby bylo do úložiště kódu odesláno 4448 commitů a více než 667 chyb bylo v Bugzille nastaveno jako opravené. Nové funkce obsažené v této verzi LibreOffice najdete v poznámkách k vydání.

    ZCR | Komentářů: 0
    21.5. 23:33 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 141 (pdf) a HackSpace 78 (pdf).

    Ladislav Hagara | Komentářů: 0
    21.5. 21:22 | Nová verze

    Byla vydána verze 2.0.0 programovacího jazyka Kotlin (Wikipedie, GitHub). Oficiálně bude představena ve čtvrtek na konferenci KotlinConf 2024 v Kodani. Livestream bude možné sledovat na YouTube.

    Ladislav Hagara | Komentářů: 2
    21.5. 12:55 | Nová verze

    Byla vydána nová major verze 27.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (82%)
     (4%)
     (7%)
     (7%)
    Celkem 522 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    BRL-CAD – Základy modelování

    22. 12. 2011 | Pavel Jansa | Návody | 4284×

    Povšechné informace o BRL-CADu už máme, takže je na čase začít ho trochu oťukávat po funkční stránce. Obecné schéma lze popsat nejlépe sekvencí hlava -> klávesnice -> myš, čím více toho zvládnete vymyslet, tím méně musíte ťukat, a čím lépe to naťukáte, tím více klikání si ušetříte. K modelování v BRL-CADu slouží již minule ukázaná utilitka „Multi-devige Geometry EDitor“, kterou kdykoliv zavoláte pomocí mged, ale vězměme to pěkně popořádku.

    Obsah

    Constructive solid geometry a BRL-CAD

    link

    Stará geeky moudrost praví, že CSG začnete chápat, v momentě, kdy si prohlédnete libovolný objekt na ulici a tušíte, jak ho vymodelovat pomocí CSG, případně vám v hlavě rovnou vytane kompletní CSG strom. Pokud to chcete trénovat, nechoďte do lesa a vůbec si moc nevšímejte organických – nedejbože živých – předmětů. Základní princip spočívá v knihovně základních těles, anglicky zvaných „primitives“, v BRL-CADu potom „solids“, které kombinujeme pomocí základních operací: součet, rozdíl a průnik. Více najdete na Wikipedii. Vyvstává tedy otázka, jaká základní tělesa nám dává BRL-CAD k dispozici? Lakonicky řečeno, mnoho.

    Komfortně můžete pracovat se čtyř- až šestistěny, libovolný mnohostěn samozřejmě můžete vytvořit také, jen to dá trochu více práce, dále máme k dispozici rotační tělesa (elipsoidy, anuloidy, para- a hyperbolodidy) a několik vychytávek, které usnadňují život s těmi vyloženě základními. Z mnohých si zmiňme primitiva jménem „ebm“, což neznačí electronic body music, ale extruded bitmap, tedy těleso vytvořené trasováním obrázku a vytažením vzniklé plochy o zadanou hodnotu. Další užitečný primitiv jest „dsp“ (i. e. displacement map) užívaný například k reprezentaci terénu a jako poslední si zmiňme „pipe“, neboli trubku, což je přesně to, co si myslíte. Ušetří spousty kombinačního opruzu při modelování vedení, vinutí a rour všeho druhu. Kompletní výčet základních těles najdete zde, nejužitečnější tělesa s obrázky potom "http://brlcad.org/gallery/s/diagrams/diagram.png.html">tady. Sluší se podotknout, že základní tělesa postupně přibývají, jak vývojáři implementují nové funkce.

    Primitiva můžete v BRL-CADu, resp. mgedu, vytvořit několika způsoby. Textově zadáním všech potřebných parametrů (příkaz in), textově z výchozích hodnot (příkaz create) a pomocí GUI z nabídky Create.

    Co potřebujeme vědět do začátku

    link

    Nejprve si připomeneme, co všichni známe z deskriptivy. Karteziánský trojrozměrný prostor nám určují tři navzájem kolmé osy x, y a z, od nichž odvozujeme polohu bodu v prostoru. Průmětna je rovina, na níž promítáme body, tělesa a vůbec, co nám libo. Pokud učiníme průmětnu rovnoběžnou s rovinou danou osami x a y, získáme půdorys (klávesa t), pokud nám průmětna rovnoběží s rovinou xz, čučíme na nárys. Ostatní pohledy rovnoběžné s rovinami xy, xz a yz už vykoukáte zde, ostatní pohledy, resp. situace, kdy je průmětna vůči základním rovinám orientována zcela libovolně vysvětluje tento obrázek.

    Abych si ušetřil ťukání, budu používat stejné zkratky jako v minulém díle. Mged má dvě okna: Command Window (CW) a Graphics Window (GW), prvé slouží k zadávání příkazů, druhé k zobrazování a grafické editaci.

    Primitiva můžete v BRL-CADu, resp. mgedu, vytvořit několika způsoby. Textově zadáním všech potřebných parametrů (příkaz in), textově z výchozích hodnot (příkaz create) a pomocí GUI z nabídky Create.

    Nejprve si dobře prohlédněte spodní lištu CW. Najdete tam výčet hodnot, které určují, co a jak je zobrazeno v GW. Vezměme ty nejdůležitější hezky popořádku:

    • cent=(0.000 0.000 0.000) cent značí střed GW a hodnoty v závorce potom souřadnice. Tady se dozvíte, kam koukáte.
    • sz=2000 jest velikost GW v aktuální jednotkách. Tato hodnota má vliv například na zadávání těles pomocí výchozích hodnot.
    • mm jsou milimetry, tedy aktuální platné jednotky v nichž model vytváříme. K dispozici jsou mikro- až kilometry, pokud vám metrický systém nelahodí, můžete použít palce, stopy, yardy a míle.
    • az=35 určuje hodnotu azimutu. Mrkněte na tento obrázek.
    • el=25 značí úhel sevřený přímkou kolmou na průmětnu s rovinou xy. Mrkněte na tento obrázek.

    Levý klik do GW zvětší velikost zobrazené scenérie o jeden krok, pravý klik ho zmenší.

    Nultý model, aneb jak se dělá CSG

    link

    Na tomto modelu si procvičíme všechny CSG operace, zjistíme jak vytvořit pravoúhlý šestistěn pomocí souřadných souřadných rovin, naučíme se vyrobit pravoúhlý kruhový válec a ještě do modelu prskneme jednu kouli. Cílem našeho snažení je tento model.

    Zalezte si do libovolného adresáře a spusťte mged:

    > cd /libovolný/adresář
    > mged csg-cube.g
    

    Vyskočí okénko s dotazem, zda si přejeme vytvořit databázi jménem primitives.g. Ničeho se neděste, žádné SQL se nekoná, BRL-CAD zkrátka každému modelu říká databáze.

    Nejprve vytvoříme krychli o hraně 10 mm (na jednotkách v tomto případě nezáleží, prostě pracujeme s výchozími) a to pomocí souřadných rovin, to jest rovin kolmých na osy x y z.

    mged> in cube.s rpp 0 10 0 10 0 10
    

    Přeloženo do lidské řeči to znamená: vytvoř těleso třídy rpp jménem cube.s, minimum na ose x je 0, maximum na ose x je 10, minimum na ose y je 0, maximum na ose y je 10, minimum na ose z je 0 a maximum na ose z je 10. Rychlé a praktické, co říkáte?

    Teď vyrobíme kouli.

    mged> in sphere.s sph 5 5 5 6.5
    

    Opět říkáme, že chceme těleso třídy sph, tedy kouli, chceme ji pojmenovat sphere.s, její střed bude na souřadnicích 5, 5, 5 a poloměr 6.5. Zatím brnkačka, už nám zbývají jen tři válce. Hurá na ten první.

    in cyl1.s rcc 0 5 5 10 0 0 3.5
    

    Až po rcc je vám to už určitě jasné, mrkněme na ta čísla. První tři (0, 5, 5) určují střed podstavy. Druhý triplet (10, 0, 0) nám říká, jak je položen střed druhé podstavy vzhledem k prvnímu středu, čili v tomto případě 10 mm ve směru osy x. A konečně poslední číslo určuje poloměr válce.

    Pro jistotu si to ještě dvakrát zopakujeme na zbývajících válcích.

    mged> in cyl2.s rcc 5 0 5 0 10 0 3.5
    mged> in cyl3.s rcc 5 5 0 0 0 10 3.5
    

    Pokud si to nemodelujete, vězte, že vaše GW by nyní vypadalo zhruba jako na přiloženém obrázku.

    brlcad

    Máme základní tělesa, hurá na jejich kombinace. Ty se vytvářejí pomocí příkazu c a lze použít také comb, jediný rozdíl jsou tři údery do klávesnice navíc. Začneme součtem válců.

    mged> c -c cyls.c cyl1.s u cyl2.s u cyl3.s
    

    Parametr -c určuje, že se bude jednat o kombinaci. Druhou alternativou je -r, který říká, že to bude region, ale to teď necháme stranou. Kombinace se bude jmenovat cyls.c a sestává se z těles cyl1.s, cyl2.s a cyl3.s. Bystrý čtenář dovodí, že u (od union) znamená součet.

    Teď uděláme průnik krychle a koule.

    mged> c -c roundcube.c cube.s + sphere.s
    

    Ano ano, může to působit zmatečně, ale rychle se na to zvykne, znaménko + se používá pro průnik.

    A nyní poslední operace, rozdíl dvou předchozích kombinací.

    mged> c -r csg-cube.r roundcube.c - cyls.s
    

    Nyní je asi na místě zmínit se o rozdíl mezi kombinací (-c) a regionem (-r). Základní rozdíl tkví v přidaných atributech, zatímco v regionu všechna dílčí tělesa sdílejí jeden materiál a jeden shader (vizte níže), v kombinaci tomu tak není. Záleží na modelu a praxi, kdy použít kombinaci a kdy region. Necháme to prozatím stranou a zobrazíme náš výrobek.

    mged> B csg-cube.r
    

    "B" pochází od „blast“ a mgedu tím říkáte: ukliď ten bordel a ukaž mi těleso/kombinaci/region jménem csg-cube.r. Moc se nezměnilo, že? Zkuste si, ale model vyrenderovat zadáním rt do CW.

    brlcad

    Pár poznámek k modelování

    link

    Všimněte si názvů těles, co je nalevo od tečky, je na vás, ovšem napravo od ní je dobré držet se určitého úzu. Základní tělesa dostávají příponu s, kombinace bez vlastního významu pro celý model příponu c, regiony příponu r. Vyšší celky, kterých už je méně a je tedy snadnější udržet si v nich přehled, dostávají příponu g, nebo taky žádnou. Vyšší hierarchické celky vypíšete příkazem tops, stromovou strukturu celé databáze potom příkazem tree, kterému též můžete zadat jméno nějaké kombinace/regionu a tím poznat jen dílčí část CSG stromu.

    Chcete-li získat podrobné informace o tělese, použijte příkaz l jméno_tělesa.s. Funguje to i na kombinace, ale dozvíte se totéž co příkazem tree. Podívejme se na těleso cube.s:

    mged> l cube.s
    

    Výstup bude vypadat takto:

     cube.s:  ARB8
    	1 (10, 0, 0)
    	2 (10, 10, 0)
    	3 (10, 10, 10)
    	4 (10, 0, 10)
    	5 (0, 0, 0)
    	6 (0, 10, 0)
    	7 (0, 10, 10)
    	8 (0, 0, 10)
    

    Nejprve máme jméno tělesa a za dvojtečkou je jeho třída. Všimněte si, že ačkoliv jsme zadávali těleso jako rpp, nikoliv arb8, jak je zde vypsáno. Je to tím, že rpp – pravidelný pravoúhlý šestistěn – je zvláštním případem obecného šestistěnu a dosti nám šetří práci, jelikož nemusíme zadávat souřadnice všech osmi bodů.

    U koule bude situace podobná:

    mged> l sphere.s
    sphere.s:  ellipsoid (ELL)
    	V (5, 5, 5)
    	A (6.5, 0, 0) mag=6.5
    	B (0, 6.5, 0) mag=6.5
    	C (0, 0, 6.5) mag=6.5
    	A direction cosines=(0, 90, 90)
    	A rotation angle=0, fallback angle=0
    	B direction cosines=(90, 0, 90)
    	B rotation angle=90, fallback angle=0
    	C direction cosines=(90, 90, 0)
    	C rotation angle=0, fallback angle=90
    

    Jak vidíte, koule je stejně jako v reálném světě analytické geometrie jen zvláštním elipsoidem a když si vypíšete parametry některého z válců, zjistíte, že to je vlastně jen komolý kužel, který má shodou okolností obě podstavy stejné.

    Na závěr si ještě řekneme pár maličkostí.

    • e těleso.s zobrazí těleso.s
    • d těleso.s odstraní těleso.s z GW
    • kill těleso.s vymaže těleso.s z databáze (se všemi důsledky co z toho plynou)
    • Z vyklidí GW
    • B těleso.s vyklidí GW a zobrazí těleso.s
    • v (v aktivním GW) zobrazí osový kříž uprostřed výřezu
    • m (v aktivním GW) zobrazí osový kříž zobrazeného/editovaného modelu
    • x, y nebo z (v aktivním GW) začne rotovat výřezem podle dané osy, ukončíte to klávesou 0

    A nyní první reálný model

    link

    Nyní si vyrobíme jednoduché autíčko. Ukážeme si základní postupy a jelikož výsledný model bude barevný, naučíme se i něco více o regionech. A už budeme i trochu klikat.

    Vytvořte si databázi auticko.g a v ní dva hranoly:

    > mged auticko.g
    mged> in podvozek.s rpp 0 100 0 40 0 20
    mged> in kabina.s rpp 30 80 0 40 20 45
    

    Vaše GW nyní vypadá podobně jako na přiloženém obrázku.

    brlcad

    Nejprve si zobrazte protoautíčko hezky zprava (klávesa r, event. v menu View > Right), přidejte si k němu mřížku (Modes > Draw Grid) a nastavte jí velikost na milimetry (Settings > Grid Spacing > Milimeter).

    Nyní posuneme horní hrany kabiny, aby autíčko mělo jakž takž aerodynamický tvar. Editaci tělesa můžeme začít buď v CW jednoduše sed kabina.s, nebo skrze GUI: Edit > Primitive Selection a ve vyskočivším okně kliknout na kýženého primitiva. Takže už editujeme kabinu.s, co dál? Rozbalte nabídku Edit, uvidíte, že se změnila. Nás zajímá nabídka Move Edges. Víte kterou hranu vybrat? Jestli ne, skočte do View > az35,el25, situace se vyjasní. Opět se podívejte na model zprava, zvolte přichytávání k mřížce (Modes > Snap To Grid) a nazoomujte (levé myšítko zoom-out, pravé myšítko zoom-in, prostřední myšítko umístí střed, resp. posune výřez) na roh vlevo nahoře. Teprve nyní zvolte z menu Edit > Mode Edges > Mode Edge 78. Prostředním myšítkem klikněte co nejblíže bodu vzdálenému 10 mm ve směru osy x. Podobně jen opačným směrem posuňte hranu 34. Váš model by nyní měl vypadat zhruba jako na obrázku.

    brlcad

    Nyní buď zadejte do CW accept, nebo zvolte Edit > Accept. Provedné změny budou zaneseny do databáze a octnete se zpět v zobrazovacím režimu.

    Teď vytvarujeme karoserii, aby měla nějaké podběhy.

    mged> in cyl1.s rcc 20 0 0 0 7 0 12
    

    Tím získáme válec, jehož odečtením od podvozku.s získáme díru pro levé přední kolo. Ovšem ještě budeme potebovat tři další kola, co teď? Samozřejmě je můžeme zadat stejně jako první, ale to bychom si nijak nerozšířili repertoár modelovacích technik. Nejprve uděláme tři kopie tělesa cyl1.s.

    mged> cp cyl1.s cyl2.s
    mged> cp cyl1.s cyl3.s
    mged> cp cyl1.s cyl4.s
    

    Nyní můžeme vybrat každé kolo k editaci a na místo ho pomocí volby Edit > Translate přesunout na požadovené místo. Ale když víme kam přesně chceme celé těleso posunout, je váhodnější udělat to textově, pomocí příkazu tra .

    mged> e cyl2.s # zobrazíme těleso
    mged> sed cyl2.s # začneme ho editovat
    mged> tra  60 0 0 # přesuneme ho o 60 mm ve směru osy x (a 0 ve směru osy y a 0 ve směru z)
    mged> accept # přijmeme změny
    

    Zbývající dvě tělesa přesuneme analogicky:

    mged> e cyl3.s
    mged> sed cyl3.s
    mged> tra 60 33 0
    mged> accept
    mged> e cyl4.s
    mged> sed cyl4.s 
    mged> tra 0 33 0
    mged> acccept
    

    Podobnou technikou vytvoříme zesílení podvozku v místech, kudy budou procházet osy náprav:

    mged> in zes1.s rpp 15 25 7 33 -5 0
    mged> cp zes1.s zes2.s
    mged> e zes2.s
    mged> sed zes2.s
    mged> tra 60 0 0
    mged> accept
    

    A stejně tak vyrobíme válce, ze kterých záhy uděláme otvory pro osy:

    mged> in vrt1.s rcc 20 7 0 0 26 0 2
    mged> cp vrt1.s vrt2.s
    mged> sed vrt2.s
    mged> e vrt2.s
    mged> sed vrt2.s
    mged> tra 60 0 0
    mged> accept
    

    Nyní máme všechna tělesa potřebná na podvozek a přichází chvíle, kdy z nich uděláme region.

    mged> c -r podvozek.r \ # vytvoříme region podvozek.r
      ( podvozek.s u zes1.s u zes2.s ) \ # sečteme základní kvádr a obe zesílení
      - ( vrt1.s u vrt2.s ) \ # odečteme součet otvorů pro osy
      - ( cyl1.s u cyl2.s u cyl3.s u cyl4.s) \ # odečteme součet otvorů pro kola
    

    Odpočineme si na chvilku od těles a CSG a dáme našemu výtvoru nějakou barvu. Zobrazte si region podvozek.r.

    mged> B podvozek.r
    

    Zvolte z menu Edit > Combination editor. Do kolonky Name buď můžete jméno regionu vepsat, nebo z pomocí tlačítka na konci textového pole rozbalit menu a Select From All Displayed. Z vyskočivšího dialogu si potom vyberte požadovaný region. Nomen omen, combination editor slouží k editaci vyšších celků. V políčku Boolean můžete upravit jednotlivé operace (můžete kombinaci klidně kompletně předělat), zajímavější ovšem je, co se stane po kliknutí na tlačítko Show Shader.

    Nyní můžete nastavit, jak se bude kombinace/region chvoat, když na ní dopadne paprsek. Je to na samotný článek, takže se tomu někdy příště budeme věnovat podrobněji, dnes pouze Zozbalíme menu vedle textového pole Shader a zvolíme Plastic, a z kolonky Color vybereme třeba zelenou. Tím máme zatím hotovo, takže klikneme na OK.

    Hurá zpátky k tělesům, vyrobíme přední nápravu.

    mged> in lpkolo.s  rcc 20 -1 0 0 6 0 10 # Vytvoříme levé přední kolo.
    mged> cp lpkolo.s ppkolo.s # Zkopírujeme ho
    mged> e ppkolo.s # Zobrazíme ho
    mged> sed ppkolo.s # Začneme ho editovat
    mged> tra 0 36 0 # Posuneme ho tam, kde má být
    mged> accept # A toť vše, pokud jde o pravé přední kolo.
    mged> in osap.s rcc 20 5 0 0 30 0 1 # Vytvoříme osu přední nápravy
    mged> c -r napravap.r lpkolo.s u ppkolo.s u osap.s # Součtem práve vytvořených těles vytvoříme přední nápravu.
    

    Abychom vytvořili zadní nápravu, můžeme postupovat humpolácky a všechny předchozí kroky zopakovat, jen o 60>mm dál ve směru osy x. Alternativní řešení pro kopírování a posouvání kombinací je použití mocného nástroje zvaného Build Pattern Tool. Najdete ho v horní liště GW Tools > Build Pattern Tool.

    Vyskočí na vás poměrně komlikovaný dialog, ve kterém se nebudeme příliš vrtat. Nejprve nastavte Depth of Duplication na primitives (protože chcem kopie jednotlivých základních těles) a do políčka Objects vepište jméno regionu, který chcete rozmnožit, tedy napravap.r. Do políčka Source string můžete vyplnit textový řetězec, který chcete přepsat a do políčka Replacement String šoupněte nový řetězec. Teď mrkněte do pravého sloupce. Políčka No. in X/Y/Z Direction určují počet kopií v tom kterém směru a políčka Delta in X/Y/Z Direction udávají vzdálenost mezi jednotlivými kopiemi. Nás zajímají hodnoty na ose x, chceme jednu kopii o 60 mm vedle.

    brlcad

    Až vyplníte formulář jako na přiloženém obrázku kliněte na OK a je hotovo (vpravo dole vyskočí modrý progress bar). Oknu zavelte odchod (Dismiss) a mrkněte, co přibylo do databáze.

    mged> ls
    cyl1.s              lpkolo.s_1          osap.s_2            ppkolo.s_2
    cyl2.s              lpkolo.s_2          podbehy.c/          vrt1.s
    cyl3.s              napravap.r/R        podvozek.r/R        vrt2.s
    cyl4.s              napravaz.r/R        podvozek.s          zes1.s
    kabina.s            osap.s              ppkolo.s            zes2.s
    lpkolo.s            osap.s_1            ppkolo.s_1
    
    mged> tree napravaz.r
    napravaz.r/R
    	u lpkolo.s_2
    	u ppkolo.s_2
    	u osap.s_2
    

    Teď už jen obě nápravy šoupneme do jednoho regionu a podobně jako u kapoty mu nastavíme Shader na plastic a zvolíme černou barvu.

    mged> c -r napravy.r napravap.r u napravaz.r
    

    brlcad

    Pokud chcete procvičovat, zkuste výše užitými technikami vytvořit žlutá přední kulatá světla a obdélná zadní červená světla. Až to budete mít, vrhneme se na kabinu, naučíme se tam tělesa škálovat.

    Naším cílem je zelená kabina s modrými okénky. Udělejte si kopii tělesa kabina.s (já jí nazval kabina_cut1.s), zobrazte ji společně s původní kabinou a pusťte se do její editace.

    mged> cp kabina.s kabina_cut1.s 
    mged> sed kabina_cut1.s 
    

    Použijte Edit menu a v půdorysu posuňte jednotlivé stěny podle obrázku, boční zatáhněte dovnitř, přední a zadní vytáhněte ven.

    brlcad

    Poté zvolte pohled zleva nebo zprava a posuňte horní stěnu o něco níže.

    brlcad

    Tím máme připravený terén pro přední a zadní okénko, čili změny akceptujeme a připravíme si metriál pro boční okénka.

    mged> cp kabina_cut1.s kabina_cut2.s
    mged> sed kabina_cut2.s
    mged> e kabina_cut2.s
    mged> sed kabina_cut2.s
    

    Opět pomocí Edit menu posuňte v půdorysu jednotlivé stěny podobně jako na přiloženém obrázku.

    brlcad

    Nejprve pomocí odečtení předchozích dvou těles od původní kabiny vytvoříme karoserii střechy.

    mged> c -r kabina.r kabina.s - ( kabina_cut1.s u kabina_cut2.s) 
    

    Vzniklému regionu dejte stejnou barvu, jako podvozku.

    Už nám toho moc nezbývá, ještě vyrobíme okna.

    mged> c -r okna.r kabina.s + ( kabina_cut1.s u kabina_cut2.s) 
    

    Regionu okna.r dáme nějakou modravou barvu a máme skoro hotovo.

    brlcad

    Vytvoříme asambláž celého dosavadního snažení a zobrazíme ji.

    mged> c -c auticko.g podvozek.r u napravy.r u kabina.r u okna.r u psvetla.r u zsvetla.r
    mged> B auticko.g
    

    Pokud bychom vytvořili region (-r), tak bychom tím převálcovali všechna dosavadní nastavení shaderů a tím by autíčko ztratilo barevnost. Pokud si ho chcete vyrenderovat, vyberte v menu File > Raytrace a dialogy vyberte Raytrace. Kresbu schováte pomocí menu Framebuffer > Overlay.

    brlcad

    Závěr

    link

    V dnešním díle jsme prošli všechny CSG operace, ale možnosti BRL-CADu jsme sotva nakousli. V příštím pokračovaní si rozšíříme repertoár těles a detailněji se podíváme na renderování a osvětlení vůbec. Snad nebude prodleva tak dlouhá. Oba modely, které jsme dnes vytvořili si můžete stáhnout zde a zde.

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    Slavko avatar 23.12.2011 12:23 Slavko
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    Tak som to začal skúšať, došiel som až po:
    c -r csg-cube.r roundcube.c - cyls.s
    kde mi napísalo:
    WARNING: 'cyls.s' does not actualy exists
    nemá v tom príkaze byť cyls.c ako o pár riadkov vyššie? Prípadne naopak...
    pawleeq avatar 23.12.2011 15:00 pawleeq | skóre: 19 | blog: pawlixblg
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    Má tam být cyls.c, omlouváms e za chybu.
    Overground against monoculture.
    26.12.2011 13:21 Petr Ježek | skóre: 10
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    Já bych měl drobnost k renderování: Spojité křivky to neumí, nebo...?
    Archlinux for your comps, faster running guaranted!
    pawleeq avatar 26.12.2011 14:16 pawleeq | skóre: 19 | blog: pawlixblg
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    Nevím jestli jsem dotaz pochopil správně.

    BRL-CAD umí beziérovy křivky, ale moc se s nimi nepracuje. Nejprve musíte vytvořit 2d nákres pomocí nástroje sketch a z něj potom těleso "vytáhnout", nebo z něj vyrobit těleso rotační.

    Možná ještě máte na mysli NURBS, tady je situace horší, podpora v zásadě je, ale ani v aktuální verze 7.20.4 ještě nejsou nástroje pro práci s těmito tělesy.

    Netuším jak to souvisí s renderováním, ale pokud vládnete angličtinou, tady je k němu vyřerpávající zdroj.

    Renderování bude věnován samostatný článek, tak se neváhejte ozvat, ať ho mohu napsat podle požadavků publika :)
    Overground against monoculture.
    27.12.2011 16:22 tomo
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    Dobry, prva cast serialu ma nakopla ku vyrobeniu balicku pre moj system. Trocha som sa pokochal rendererom pri pohlade na stary nakladak a cakal som co prinesie pokracovanie.

    Druha cast uz ukazala zaklady modelovania a nanasania materialov. Popravde konecne som si nasiel cas a za BRL-CAD som sadol a z jasnym planom som sa pustil do experimentovaia. CSG modelovanim som pred rokmi zacal svoju pracu v 3d (truespace 3) takze som nemal az taky problem zvolit vhodny objekt. Vysledok si mozete pozret tu . Jedine co by ma zaujimalo a narychlo som sa ku tomu nepreklikal a ani googlu sa nechcelo - ako sa vytvaraju polia objektov?

    S pozdravom tomo a tesim sa na dalsiu cast. PS:Ak by sa dalo zamerajte ju na nejake pokrocile modelovacie metody, popripade ako model z BRL dostat do nejakeho ineho cadu popripade simulacneho nastroja.
    pawleeq avatar 27.12.2011 22:40 pawleeq | skóre: 19 | blog: pawlixblg
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    Děkuji za pozitivní ohlas.

    Nanášení materiálů jsem jen nakousnul, aby autíčko bylo nějak barevné, možnosti jsou ovšem daleko širší.

    Konverzím z a do ostatních formátů se budu věnovat, zatím nabízím anglický zdroj přímo od autorů.

    Omlouvám se, ale trochu nerozumím termínu "polia objektov". Máte na mysli "pole objektů"? pokud ano, rozveďte to prosím trochu.

    PS: Co to máte za destop/správce oken?
    Overground against monoculture.
    27.12.2011 22:58 tomo
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    V autocade to je oznacene ako array, v Maya sa to riesi cez dialog v copy v nom sa nastavi vysledny pocet prvkov.

    V podstate je to dobre na to ked chcem urobit pole 20 x 30 prvkov z jednoho objektu, tak aby som ho rucne nemusel kopirovat, posuvat a otacat 600x. V tomto konkretnom pripade som ale myslel "circular array" - zadate stred, uhol a pocet prvkov a ono to prvky pekne nasklada na kruznicu.

    Spravca okien sa vola afterstep http://www.afterstep.org/ - osobne pouzivam zlahka upravenu verziu 1.8.11 ktora uz ma daky ten patek.
    pawleeq avatar 27.12.2011 23:08 pawleeq | skóre: 19 | blog: pawlixblg
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    Už tomu rozumím, je na to vcelku komfortní nástroj a pokreju to v příštím díle.

    Afterstep jsem zkoušel, ale byl defaultně plný spousty pičičáren, asi na něj ještě mrknu :)
    Overground against monoculture.
    28.12.2011 06:57 tomo
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    Presne uspech pouzivania afterstepu je o tom co vypnut...
    Grunt avatar 1.1.2012 15:33 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BRL-CAD – Základy modelování
    Wow, tak to je vcelku masakr. Původně jsem myslel, že je BRL-CAD jen nějaký otevřený dávno mrtvý projekt z 80let, ale ono se to podle všeho docela používalo. Naprosto mě dostala prezence FEM, včetně balistického testování.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.