Nacházíte se zde: Rhino3D.cz > Články > Modelování > Učíme se modelovat v programu Rhinoceros 3.0, 1. díl


Učíme se modelovat v programu Rhinoceros 3.0, 1. díl

Publikováno: 11.6.2005 | Autor: Jan Slanina | Rubrika: Modelování | Komentáře: 6 - Doporučit

Rhino ikona modelujemeJistě znáte mnoho dobrých a nerozlučných kamarádů - třeba Boba a Bobka, krtečka a jeho kalhotky nebo grafika a jeho odpor k práci, abych vybral alespoň ty nejznámější. V tomto seriálu vás seznámím s dalšími. Jmenují se Rhino a NURBS a budete překvapeni, jaké kousky spolu dokážou.

Pár slov úvodem

Tento seriál je „remake" mého starého seriálu, který jsem psal v letech 2000 až 2001 pro časopis Pixel. Bohužel byl psán pro tehdy aktuální verzi 1.1 a dnes je tedy již zastaralý. Proto jsem se jej rozhodl oprášit, aktualizovat pro verzi 3.0 a kde to bude možné, tak i rozšířit a doplnit. Prioritně bude popisována česká lokalizovaná verze, u příkazů a položek menu budou v závorce uvedeny i jejich anglické ekvivalenty.

Takže... začínáme!

NURBS - no jistě, znám, to je... to je... ehm...?

NURBS geometrie - každý o ní mluví (a téměř každý 3D program už NURBS „alespoň trochu" podporuje, na prospektech to slovo totiž vypadá tak hezky, že?) ale méně lidí už ví, co to vlastně je a jak se s tím pracuje. Filosofie práce s NURBS je totiž dost odlišná od polygonového modelování, na které jste asi většinou zvyklí. Nemám nic proti polygonům (které jsou v určitých oblastech dokonce lepší volbou než NURBS), ale teď to prostě nebude naše téma.

Existuje několik dobrých důvodů, proč se začít o NURBS modelování zajímat:

  • nejdůležitější je, že NURBS geometrie je standardem ve všech oblastech profesionálního nasazení - ať už se jedná o programy pro 3D grafiku a animaci, design, konstrukci, inženýrskou analýzu atd. Pokud to s 3D grafikou myslíte vážně, časem se NURBS geometrii stejně nevyhnete.
  • modelování pomocí NURBS poskytuje grafikům, designérům a CAD/CAM/CAE operátorům nepoměrně větší volnost než polygonové modelování. NURBS modely jsou navíc při jakkoliv blízkém pohledu dokonale hladké - na rozdíl od polygonových modelů, kde jsou při přiblížení viditelné plošky - polygony. Existují sice různé triky, jak vizuálně vyhladit plošky uvnitř ploch, vnější obrysy objektů však zůstanou i nadále zubaté.
  • matematické pozadí NURBS geometrie je velice dobře „prozkoumáno" a popsáno. Odpovídající literatura se sporadicky vyskytuje i v českém jazyce, i když je určena spíše matematikům a programátorům. Ale nebojte se, tento seriál bude určen počítačovým grafikům a praktickým uživatelům.
  • NURBS geometrie je dobře přenositelná mezi různými programy a platformami. Rhino disponuje filtry, umožňujícími výměnu dat s mnoha high-end aplikacemi (například přes IGES, SAT nebo Parasolid X_T, pracuje se na VDA). NURBS reprezentace uchovává modely v geometricky ideálním stavu - z NURBS modelu můžete udělat jakékoliv množství libovolně komplexních polygonových modelů (na rozdíl od polygonového modelu, který vytvoříte s určitou mírou hustoty sítě polygonů a další zvyšování této hustoty při současném vyhlazování tvaru je problematické a ne vždy uspokojivé.)

Pomocí NURBS geometrie můžete přesně definovat jakýkoliv tvar - od základních křivek (čáry, kuželosečky) po komplexní plochy volného tvaru (karosérie auta, trup letadla, oslintané tělíčko vetřelce apod.). NURBS modely jsou rovněž méně náročné na objem dat ve srovnání s modely, tvořenými množstvím aproximačních polygonů. A co je neméně důležité - vaše modely mohou být natolik přesné (z hlediska hladkosti ploch, tolerancí a spojitostí), že z nich můžete vyrábět prototypy (Rapid Prototyping) nebo formy pro sériovou výrobu.

Na následujícím obrázku vidíte rozdíl mezi NURBS a polygonální reprezentací objektu. NURBS geometrie je od pohledu méně „datově náročná" a očividně bude i hladší, než objekt „otesaný" z polygonových plošek. Nicméně polygonové sítě zastupují NURBS objekty při stínování a renderování, protože by tyto činnosti byly s NURBS geometrií neúměrně časově i výpočetně náročnější než s polygony. Odtud taky pramení četné zděšení začátečníků při prvním vystínování modelu, neboť se domnívají, že vytvořili zubatý model. Nikoliv, model byl pouze při stínování aproximován hrubou polygonovou sítí a po vhodné změně parametrů dojde k jeho vyhlazení.

Rozdíl mezi NURBS a polygonální reprezentací objektu

Rhinoceros alias Rhino

Rhino je plošný 3D NURBS modelář pracující pod Windows. Umožňuje vytvářet, editovat, analyzovat a převádět NURBS modely. Mezi jeho přednosti patří spojení přesného a volného modelování, to znamená, že v něm můžete vymodelovat prakticky cokoliv od příšerek do her až po přesné strojírenské součásti. Výhodou je i možnost napojení na různé CAD/CAM/CAE procesy. Některé CAM programy podporují dokonce už i nativní formát Rhina (3DM).

Uživatelé Rhina se dělí zhruba na dvě hlavní skupiny - jednu tvoří designéři a grafici, druhou pak strojaři a technické profese obecně (v ČR duhá skupina jasně převažuje a asi nejvíce užovatelů Rhina pracuje v oblasti výroby forem a Rhino používají jako doplněk high-end objemových modelářů). Zajímavostí je, že v přímořských oblastech je Rhino také často používán pro návrh lodí, což je částečně dáno i sídlem výrobce (Seattle) a historickým vývojem Rhina.

Trocha historie nikoho nezabije

V roce 1980 založil Robert McNeel společnost TLM, Inc. Ta se po intermezzu s vývojem účetních programů a portování programů pro výpočty metodou konečných prvků do UNIXu vrhla v roce 1985 na vývoj nadstaveb pro AutoCAD, tentokrát již pod svým současným názvem Robert McNeel & Associates. Uživatelé stále častěji požadovali podstatně výkonnější 3D nástroje (zejména pro modelování lodí) a tento tlak je také prvním impulsem pro úvahy nad vývojem předchůdce Rhina.

V květnu 1992 došlo k první schůzce mezi McNeelem a Applied Geometry (AG), vlastníkem geometrického jádra - NUBS knihovny AGLib. Není bez zajímavosti, že Applied Geometry byla v podstatě skupina matematiků od Boeingu. Mezi zákazníky AG v této době patřila taková velká jména jako Alias Research, Spatial nebo Honda. Nutno podotknout, že tehdy vlastně šlo o začlenění knihovny od AG do AutoCADu. Jak vidíte, to, že má Rhino v sobě kus Aliasu, to není jenom fáma. Ale to byl teprve začátek, Rhino bude mít s Aliasem ještě několik osudových setkání...

V listopadu 1992 uzavírá McNeel s AG smlouvu o vývoji NURBS modeláře AccuModel pro AutoCAD. Ten ale v roce 1997 zcela uvolnil místo Rhinu, programu s neuvěřitelně raketovým nástupem. Ale nepředbíhejme. Na jaře roku 93 byl zveřejněn program Sculptura a brzy poté Sculptura 2 s podporou NURBS. Na podzim roku 1994 byla Sculptura přejmenována na Rhinoceros (byla to spíše jen přezdívka z recese, ale název se později ujal a dnes na něj nedá nikdo dopustit). V dubnu 94 byl vůbec poprvé zveřejněn Rhino na Alternative BBS.

V květnu 1994 přešel z AG k McNeelovi doktor Dale Lear, návštěvníkům diskusní skupiny Rhina dobře známý matematický mág a vývojový tým tak získal mocnou podporu. Mimochodem, odtud možná pramení dohady že se na Rhinu podílí vývojáři Aliasu. V té době je ale také AG zakoupena firmou Alias Research. McNeel už asi tuší, že mu Alias brzo zavře kohoutek s životodárnou knihovnou a spoléhá se naplno na vlastní vývojový tým. V červnu 95 nakonec dojde k odkoupení Aliasu firmou Silicon Graphics a McNeel dostává poslední update AGLib, ale to už jede interní vývoj naplno. Když se nosorožec rozeběhne, nic ho už nezastaví...

V červnu 96 byla poprvé zveřejněna beta Rhina na internetu. McNeel očekával 500 testerů během tří měsíců. Místo toho si během několika málo týdnů stáhlo betu 3000 lidí. Teď si trochu zopakujeme rostoucí číselné řady: listopad 96: 5.000 uživatelů, září 97: 50.000 uživatelů, červenec 98: 110.000 uživatelů. Již během prosince 1998, kdy došlo k oficiálnímu vydání Rhina 1.0, bylo prodáno prvních 5.000 kopií.

Následovala verze 1.1 a poté 2.0. Hladinu poklidného vývoje rozčeřil až konec roku 2002, kdy byl McNeel nucen urychleně vypustit na trh verzi 3.0, protože v tom roce končila licence na původní jádro, jehož zbytky v sobě verze 2.0 nesla. Naštěstí už McNeel pár let pracoval na vlastním jádru a to již bylo v době vypršení licence na AGLib prakticky hotové. K práci na vlastním jádru ho nutily dvě závažné okolnosti. Za prvé - licenci na AGLib stále vlastnil Alias a pokud vlastní váš konkurent něco, na čem jste životně závislí, není to zrovna skvělý byznys. A za druhé - knihovna AGLib měla uzavřený kód, ke kterému McNeel neměl přístup. Pokud tedy obsahovala AGLib nějakou chybu, byla tato chyba i v Rhinu a nedalo se s tím nic dělat. Tedy dalo - vytvořit vlastní jádro - a to taky McNeel udělal.

První verze 3.0 byly bohužel z časových důvodů šité horkou jehlou a byly poměrně hodně chybové. Od 1. ledna 203 byl totiž přísný zákaz šíření jakéhokoliv produktu, ve kterém je obsažena libovolná část knihovny AGLib, tedy Rhino 2.0, veškeré updaty, servisní balíčky, dema atd... vše muselo být do tohoto data nahrazeno verzí 3.0, včetně skladů v distribučních kanálech. Mnoho uživatelů bylo rozčarováno nestabilitou prvních verzí Rhina 3.0. Vývojáři se pustili do heroické práce na odladění „trojky" a o jejich úsilí svědčí i fakt, že webový seznam opravených chyb je dlouhý několik desítek stran. Verze 3.0 tedy byla „stabilizační", nebylo vyvíjeno mnoho nových funkcí, ale důraz byl kladen na doladění vlastního jádra a obnovení stability jako ve verzi 2.0, která byla pevná jako skála a mnozí uživatelé ji používají dosud (částečně i proto, že byli odrazeni problémy v počátcích vývoje 3.0). Verze 3 však již dostatečně prokázala svoji stabilitu a tak se může McNeel pochlubit počtem cca. 60 - 70 000 celosvětově prodaných kopií Rhina, což je jistě velice slušný výsledek.

Minulý rok konečně nadešla doba, na kterou se těšili uživatelé i sami vývojáři - práce na Rhinu 4.0. Pokud bylo Rhino 3.0 stabilizační, pak o Rhinu 4.0 můžeme říct že bude přelomové, revoluční, plné nových technologií... Konstrukční historie, volná deformace těles, kompletně přepracovaný tisk, přepracované OpenGL s podporou OpenGL 2.0, druhy a typy čar a desítky drobných vylepšení - to jsou jen některé atraktivní funkce z dostupných betaverzí Rhina 4.0. Dokonce se objevil i nový vestavěný render Toucan (mimochodem velice slibný), kterému se budeme věnovat v jednom z příštích článků na tomto serveru.

Jak je vidět, jsou před námi zajímavé časy. My si ale teď spustíme staré dobré Rhino 3.0 a vrhneme se do práce... tedy do učení :-)

Navigace v pohledech

Obrazovka Rhina je standardně rozdělena na několik částí, viz. následující obrázek:

Základní obrazovka Rhina

Nahoře je roletové menu, pod ním příkazová oblast. Ta se skládá z historie příkazů, kterou můžete zvětšit klávesou F2 do samostatného okna a z příkazového řádku, kde vypisujete příkazy a objevují se různá hlášení. Pokud kliknete do příkazové oblasti pravým tlačítkem myši, zobrazí se historie příkazů, ze které můžete vybrat nějaký již dříve použitý příkaz. Menu s historií příkazů se zobrazí také tehdy, když kliknete kamkoliv do pohledu Rhina prostředním tlačítkem myši (tuto funkci však musíte mít nastavenou ve volbách Rhina, viz. níže). Pod příkazovou oblastí a na levé části obrazovky jsou standardně umístěny palety s nástroji, ale můžete si je přesunout či ukotvit kamkoliv jinam. Některá tlačítka mají v pravém dolním rohu bílý trojúhelníček; pokud je chvíli podržíte stisknutá, objeví se paleta s dalšími nástroji. Všimněte si, že bublinkové nápovědy tlačítek většinou obsahují dva příkazy - každé tlačítko myši totiž většinou spouští jiný příkaz.

Největší část obrazovky zabírají okna s pohledy, jejichž počet a rozmístění můžete podle potřeby měnit. V těchto pohledech se bude odehrávat veškeré modelování v Rhinu. Zcela dole se nachází stavový řádek, na který se podíváme podrobněji na konci tohoto dílu. V Rhinu si můžete prakticky vše uživatelsky přizpůsobit pomocí dialogového okna Volby Rhina, které najdete v menu Nástroje > Volby... (Tools > Options...). Pokud se vám zdá, že se Rhino chová jinak, než byste čekali nebo než jste zvyklí z jiných programů, projděte si pozorně okno Volby Rhina a budete překvapeni, co všechno se dá nastavit a změnit.

Okno s volbami Rhina

Scénu s objekty si můžete zobrazit mnoha způsoby, jak vidíte na následujícím obrázku. Nejzákladnější je drátový model neboli wireframe, kterému většina lidí neřekne jinak než „drátovka". Mnohem lepší představu o objemu modelu vám ovšem poskytne stínované zobrazení. Pěkná vychytávka je poloprůhledné zobrazení, které je velice elegantní a poskytuje průhled skrze objekty, což se může hodit zejména tehdy, když modelujete architekturu, objekty s dutinami a podobně. Ale hlavně je to pěkná frajeřina ;-)

Někde mezi stínovaným a poloprůhledným zobrazením se nachází rentgenové zobrazení, při kterém jsou objekty sice vystínované jako plné, ale dráty za sebou ležících objektů prosvítají skrz všechny objekty. To může být vhodné pokud chcete vybrat objekt, který je krytý nějakým jiným objektem a nechcete přitom otáčet se scénou.

Na žádost uživatelů byla do Rhina 3.0 přidána další volba zobrazení - jednoduché stínování jako v Rhinu 2.0, bez zobrazení drátů. Pokud si chcete udělat představu o tom, jak vypadá polygonová síť, zvolte konstantní stínování a polygony budou zobrazeny bez zaoblení jako viditelné plošky. Velice atraktivní režim je náhled renderu, který zobrazuje scénu s materiály včetně průhlednosti, textur, odlesků a nasvícení světelnými zdroji.

Způsoby zobrazení v Rhinu

Počet, rozmístění a další vlastnosti pohledů můžete změnit v roletovém menu Pohled (View). Pokud kliknete dvakrát na titulek pohledu, dojde k jeho zvětšení na celou obrazovku. Mezi zvětšenými pohledy se můžete přepínat klávesami Ctrl+TAB, resp. Ctrl+Shift + TAB (opačný pohyb). Když kliknete na titulek pohledu pravým tlačítkem myši, rozvine se menu, kde si například můžete vybrat některý z výše popsaných režimů stínování nebo zde můžete změnit nastavení různých parametrů pohledu.

Parametry pohledu

Každý pohled má svou konstrukční rovinu (angl. construction plane neboli Cplane, česká zkratka KRov), vizuálně reprezentovanou mřížkou. Konstrukční rovina je v oknech s paralelní projekcí (Shora, Zepředu a Zprava) kolmá na směr pohledu, v perspektivním okně je shodná s pohledem Shora. Konstrukční rovina udává lokální souřadnice daného pohledu, mimo to existují i globální souřadnice celého modelovacího prostoru a není-li pomocí konstrukčních pomůcek vynuceno jiné chování, probíhá veškeré kreslení v konstrukční rovině právě aktivního pohledu. Chcete-li během kreslení aktivovat jiný pohled, jednoduše do něj přesuňte myš a pohled se aktivuje (jeho titulek se zvýrazní).

Navigace v panelech

V pohledech se můžete pohybovat pomocí kombinace tlačítek myši a různých kláves. Následuje seznam některých základních transformací (LT je levé tlačítko myši, PT pravé):

Akce Klávesová zkratka
Posun v 3D pohledu Shift + PT, v 2D pohledu jen PT
Rotace v 3D pohledu PT, v 2D pohledu kurzorové šipky
Plynulý zoom Ctrl+PT
Undo a redo pohledu Home a End

Pokud máte myš s kolečkem, můžete plynule zoomovat tímto kolečkem. Využito je i třetí tlačítko myši - můžete jím vyvolat menu s naposledy použitými nebo oblíbenými příkazy, paletu s nástroji nebo příkazové makro (vše lze nastavit ve vlastnostech Rhina v panelu Myš).

Zajímavé je, že můžete transformovat pohledy i během vykonávání nějakého příkazu nebo zobrazení oken s parametry, což značně ulehčuje orientaci v 3D prostoru a navigaci v modelu.

Užitečné jsou i příkazy Zoomovat VšechnyObjekty (Zoom Extents) a Zoomovat VybranéObjekty (Zoom Selected). První z nich přiblíží nebo oddálí pohled tak, aby byly v okně viditelné všechny objekty, druhý provede totéž, ovšem jen s objekty, které jsou vybrané. Volba VšechnyPohledy rozšiřuje účinnost předchozích příkazů na všechny pohledy, tedy nejen na aktivní.

Když spustíte nějaký příkaz, všímejte si, co Rhino vypisuje v příkazovém řádku. Příkazy totiž mají často různé upřesňující a doplňující volby, které jsou v příkazovém řádku vypsány ve formě odkazů, na které lze kliknout myší. To je třeba případ příkazu Zoomovat - podívejte se, jaké možnosti vám v příkazovém řádku nabízí. Vyberte nějaký objekt a vyzkoušejte si je jednu po druhé.

Kliknutím pravého tlačítka myši v některém z pohledů zopakujete naposledy provedený příkaz. Tuto funkci si zapamatujte, velice často vám urychlí práci.

Modelovací a konstrukční pomůcky

Síla Rhina spočívá v modelování volných tvarů, stejný důraz je ale kladen na přesnost modelování. Základní pomůcky pro přesné modelování najdete ve spodním stavovém řádku. Teď se na ně podíváme jen letmo, v dalších dílech si je ale probereme podrobněji, protože pro seriózní modelování jsou naprostou nezbytností.

Široké políčko zobrazuje název a barvu aktivní vrstvy. Když na něj kliknete levým tlačítkem, rozvine se menu, ve kterém můžete zvolit jinou aktivní vrstvu. Pokud na něj kliknete pravým tlačítkem, objeví se dialogové okno Vrstvy, ve kterém můžete vrstvy vytvářet, přeskupovat a měnit jejich vlastnosti.

Políčko Krok (Snap) přepíná režim krokování po uzlových bodech mřížky - jinými slovy, terčík (malý čtvereček, nezávislá část kurzoru) „skáče" po mřížce. Díky tomu můžete kreslit rychle a přesně.

Políčko Orto (Ortho) přepíná ortogonální režim, který způsobí, že se bude terčík pohybovat jen po přímkách s úhlovým krokem 90°, tento úhel však můžete změnit v okně Volby Rhina (Rhino options) v panelu Modelovací pomůcky (Modeling Aids). Tento režim můžete aktivovat i držením klávesy Shift během kreslení. Políčko Rovinný (Planar) aktivuje rovinný režim, při kterém se terčík drží v té výšce, v jaké jste začali kreslit daný objekt (čáru, křivku atd).

Nejzajímavější je políčko Uchop (Osnap), neboli uchopování objektů. Vlastně se jedná o „přiskakování" terčíku kurzoru k určitým geometricky definovaným částem objektů - např. ke koncům, středům, kvadrantům, uzlům, průsečíkům, kolmicím, tečnám a podobně. Tato pomůcka je skutečně neocenitelná, zvláště při přesném modelování a práci ve 3D pohledu.

Další významnou pomůckou je zdvihový režim - elevator mode. Jak známo, má každý 2D pohled jen dvě souřadnice (stejně jako plocha obrazovky), vy však modelujete ve 3D. A právě tu třetí, chybějící souřadnici vám v 2D pohledu umožní zadat tento režim. Postup je následující: držte klávesu Ctrl a klikněte levým tlačítkem myši. Stále držte Ctrl jezděte myší nahoru a dolů. Změna třetí souřadnice bude indikována pozicí terčíku a bílou vodicí čarou. Někdy příště si ukážeme, jaká kouzla jdou s tímto režimem provádět.

Dobrá rada na konec - snažte se často využívat nápovědu Rhina. Je to neocenitelný a podrobný zdroj informací o všech příkazech. Když spustíte nějaký příkaz, stiskněte klávesu F1 a zobrazí se nápověda právě k tomuto příkazu včetně vysvětlení všech jeho možností a voleb.

Dnes to byla trochu nuda, ale základy jsou nutné. Tak se těšte na příští díl - konečně začneme modelovat. Vlastně mám pro vás ještě jednu radu - pokud to už nemůžete vydržet, podívejte se v Rhinu do menu Nápověda > Výuka Rhina > Začínáme (Help > Learning Rhino > Getting started). Najdete zde základní informace o Rhinu a několik tutoriálů pro začátečníky.

Související články

Nahoru ↑

Diskuse k článku

  • [6] Jarduk – 12. 05. 2010, 16:41

    reagovat

    Dobrý den, mohu ve své práci použít Váš obrázek součásti, kde je rozdíl mezi NURBS a trojúhelníkovou sítí?

  • [5] Pif06. 08. 2006, 14:33 – reakce na [4]

    reagovat

    old_Mr_Grim: projekt určitě po smrti není, spíš jsem skoro po smrti já z přepracování :)) Prostě není čas... Ale je to na dobré cestě, mám skoro hotovej další díl, takže se tu snad objeví za pár dnů.

  • [4] old_Mr_Grim – 06. 08. 2006, 12:49

    Reaguje: [5] - reagovat

    Ahoj, no měl sem radost, že se tu rýsuje pěknej návod, nebo příručka. Jak to ale bude s dalšími díly??? jsou v přípravě, nebo je tento projekt už "po smrti" ???

  • [3] delph – 16. 08. 2005, 00:22

    reagovat

    no výborně s rhinem se potýkám už asi rok a půl, ale jen ve stylu klikni na to a uvidíš co se stane ( mám bohužel anglickou verzi) a už teda zvládám i pár docela dobrých věcí i když někde mi dělá něco problémi a i přečtení tohoto článku pro úplné začátečníky mi něco dalo hlavně to tlačítko ctr je děsně dobrej help :-D

  • [2] DarkLight21. 06. 2005, 23:09

    reagovat

    Cool clanek... Jen k te mysi - ze se da nastavit click stredniho tlacitka nebo scrollka a hodi to bud makro co si nastavim nebo popup - funguje to pokud softem nemenim "hodnotu" stisku scrollka (ze tam je na stisk scrollka nastavena fce AutoScroll) Mam mys od Microsoftu a k tomu jejich soft Intellimouse 4.1, ale v nem nastavene scrollko jako doubleclick (bez toho uz nemuzu zit) problem ale je, ze Rhino to nebere, takze po stisku scrollka v Rhinu se nic nestane.. Neda se to nejak obejit mimo metody pokazde pro Rhino menit Doubleclick na Autoscroll? Dik

  • [1] vladoportos21. 06. 2005, 08:30

    reagovat

    Juj stranka aj clanky su, super!!!!!!!!