3D modelování v Rhinu - díl druhý - Grafika.cz - vše o počítačové grafice

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



3D grafika

3D modelování v Rhinu - díl druhý

11. března 1999, 00.00 | Zkoušeli jste včera vymodelovat umyvadlo? Dnes přinášíme druhé pokračování, které vám na tomto úkolu předvede tvorbu ploch.

V dnešním pokračování našeho miniseriálu o modelování umyvadla se podíváme na vytváření ploch. Samozřejmě budeme předpokládat, že čtenář pozorně četl první část a používá výsledný model.

Následuje vytvoření hlavních ploch umyvadla. K tomu použiji dvě funkce pro tvorbu ploch: šablonování po dvou trasách (Sweep2) a rotace po trase (Rail revolve).

Vytvoření vnější plochy umyvadla

  1. V roletovém menu vyberu příkaz Surface/Rail revolve.
  2. Na výzvu Select profile curve (Vyberte profil) vyberu křivku č. 3
  3. Na výzvu Select path curve (Vyberte trasu) vyberu křivku č. 1
  4. Zapnu režim uchopování konců objektu (ve stavovém řádku kliknu na Osnap a zatrhnu End).
  5. Na výzvu Start of revolve axis (Počátek osy rotace) vyberu zadní konec křivky č. 3
  6. Na výzvu End of revolve axis (Konec osy rotace) provedu následující operaci: držím klávesu Ctrl a kliknu na stejný bod, jako v bodě 5 (pracuji v perspektivním okně). Stále držím Ctrl a pohnu myší nahoru. Mezi aktuální pozicí markeru (nezávislá část kurzoru) a dříve vybraným bodem vznikne vodicí čára (tzv. tracking line), která je kolmá k aktuální konstrukční rovině (v perspektivním okně). Posunu koncový bod osy rotace trochu nahoru (vodicí čára může mít libovolnou délku, důležité je, že tvoří kolmici ke konstrukční rovině) a kliknu myší. Tím jsem vytvořil osu rotace profilu.
  7. Plocha je vytvořena, měla by vypadat stejně jako na obr. 3 (pokud váš náhled vypadá jinak, bude to tím, že pracuji ve verzi 1.1 Beta, která podporuje interaktivní OpenGL stínování včetně zobrazování křivek a drátěného modelu).

vnější plocha umyvadla

Vytvoření vnitřní plochy umyvadla

  1. V roletovém menu vyberu příkaz Surface/Sweep 2 rails
  2. Na výzvu Select 2 rail curves (Vyberte dvě trasy) vyberu postupně křivky č. 4 a 5.
  3. Na výzvu Select cross-section curves (Vyberte řezy) vyberu křivku č. 2 a zmáčknu pravé tlačítko myši.
  4. V dialogovém okně Sweep 2 rails options klikněte na OK.
  5. Plocha je vytvořena a měla by vypadat jako na následujícím obrázku:

vnitřní a vnější plocha umyvadla

Obě hlavní plochy jsou hotové. Teď potřebuji vytvořit poslední, horní plochu umyvadla. Na tu je kladeno několik požadavků: mám zadány dva profily (přední hrana a zadní plocha, kde je umístěna baterie), kterými musí tato plocha procházet. Navíc musí být tečná na vnitřní i vnější plochu, které jsem vytvořil v předchozích krocích.

Horní plochu si nejprve zkusím vytvořit pomocí šablonování dvou profilových křivek č. 6 a 7 po dvou trasách č. 1 a 2. Když jsem si plochu zkušebně vytvořil, nelíbilo se mi, že kraj umyvadla v přední části je sice pěkně zaoblený (podle tvaru křivky č. 6), směrem k zadnímu kraji umyvadla se však toto zaoblení postupně měnilo na hranu, definovanou křivkou č. 7. Chtěl bych, aby zaoblení bylo plynulé téměř až k zadní straně umyvadla. Zmíněná situace je patrná na následujícím obrázku:

přechod pěkného zaoblení do nepěkné hrany

Řešení spočívá v tom, že přidám další profil, který bude podobný křivce č. 6 a bude zajišťovat, aby byla horní plocha plynulá "delší dobu", než přejde do zadní hrany. Tento profil umístím zhruba podle obrázku č. 5. Musím však vyřešit dva problémy: jak kopii křivky číslo 6 "napasovat" na jiné místo mezi křivky č. 1 a 2 (musí se jich stále dotýkat) a jak zajistit, aby byl tento profil tečný k vnitřní a vnější ploše, které jsem si v předchozích krocích vytvořil.

Nejdříve vyřeším umístění kopie křivky č. 6 (vlastně se jedná o vytvoření křivky č. 8 podle obr. 6):

  1. Vyberu křivku č.6. V roletovém menu vyberu příkaz Edit/Copy a poté Edit/Paste. Tím jsem si vytvořil kopii křivky č. 6 na identické pozici.
  2. V roletovém menu vyberu příkaz Transform/Orient/2 points.
  3. Ve stavovém řádku kliknu na políčko Osnap a poté End. Tím zapnu uchopování konců křivek.
  4. Na výzvu Reference point 1 (1. referenční bod) vyberu bod č.1.
  5. Na výzvu Reference point 2 (1. referenční bod) vyberu bod č.2.
  6. V okně Osnap zruším zatržení políčka End. Zatrhnu políčko Near.
  7. Na výzvu Target point 1 (1. cílový bod) vyberu přibližně bod č. 3 přibližně podle obrázku č. 6.
  8. V okně Osnap zruším zatržení políčka Near. Zatrhnu políčko Perp.
  9. Vyberu bod č. 4 - marker k němu automaticky přiskočí (mám zapnuto uchopování kolmic - Perp).

umístění kopie křivky č. 6 mezi křivky č. 1 a 2

Jak ale zajistit, aby tato profilová křivka tangenciálně navazovala na vnitřní i vnější plochu umyvadla? Jednoduše - z ploch vyjmu hlavní křivku (isoparm) v bodě, kde se plochy dotýká profilová křivka a zajistím tangenciální návaznost těchto křivek. Postup je následující:

  1. Zapnu režim uchopování konců objektu (v okně Osnap zatrhnu End, zruším zatržení Perp).
  2. V roletovém menu vyberu příkaz Curve/From Objects/Extract Isoparm.
  3. Na výzvu Select surface for isoparm extraction (Vyberte plochu pro vyjmutí hlavní křivky) vyberu vnější plochu.
  4. Na výzvu Select isoparm to extract (Vyberte hlavní křivku, která se má vyjmout) ukážu pomocí uchopování na koncový bod křivky č. 8 (bod č. 3) a kliknu myší.
  5. Stisknu Esc nebo pravé tlačítko myši a opakuji od bodu 2 s tím rozdílem, že vyberu vnitřní plochu a uchopím opačný konec křivky č. 8, než v předchozím bodě. Když mám obě hlavní křivky vyjmuty z ploch, stisknu Esc nebo pravé tlačítko myši.
  6. Vypnu režim uchopování konců objektu (ve stavovém řádku kliknu na Osnap a zruším zatržení End).
  7. V roletovém menu vyberu příkaz Curve/Edit Tools/Match.
  8. Na výzvu Select curve to change - pick near end (Vyberte poblíž konce křivku, kterou chcete změnit) vyberu křivku č. 8 poblíž vnějšího okraje umyvadla.
  9. Na výzvu Select curve to match - pick near end (Vyberte poblíž konce křivku, které se má první křivka přizpůsobit) vyberu hlavní křivku, která leží na vnější ploše umyvadla. Objeví se dialogové okno, ve kterém u parametru Continuity zatrhnu Tangency (G1 spojitost). Pozor, Average curves a Join musí být vypnuty. Parametr Average curves by upravil (zprůměroval) tvar obou křivek, takže by se už nedotýkaly křivky č. 1. Join by zase obě křivky spojil, což se mi v tomto případě nehodí (potřebuji křivku č. 8 jako samostatnou). Pak kliknu na OK.
  10. Celý postup opakuji od bodu 7 pro křivku č. 8 a hlavní křivku, ležící na vnitřní ploše umyvadla. V dialogovém okně mohu pro jistotu zatrhnout navíc parametr Preserve other end (ochrana opačného konce), aby nedošlo ke změně tvaru křivky na tom konci, který jsem už tangenciálně navázal.
  11. Obě hlavní křivky už můžu smazat, nebudu je už potřebovat.

Křivku č. 8 si ozrcadlím příkazem Transform/Mirror podél osy, procházející středem (k přesné definici osy mi pomůže režim uchopování Snap, který zapnu ve spodní liště). Tímto ozrcadlením jsem dostal křivku č. 9. Ještě provedu jedno vylepšení zadní hrany umyvadla. Ta je definovaná pouze křivkou č. 7. S touto křivkou provedu stejné operace, jako s kopií křivky č. 6 v předchozím textu. Křivku č. 7 (tedy ne její kopii) si pomocí příkazu Transform/Orient/2 points přizpůsobím mezi křivky č. 1 a 2 zhruba 3 jednotky napravo od původní pozice, zajistím tangenciální návaznost na hlavní křivky, vyjmuté z vnitřní a vnější plochy a nakonec ji ozrcadlím podle osy umyvadla. Nebudu to podruhé podrobně rozepisovat, výsledné křivky 7 a 10, jakožto i ostatní profily horní plochy vidíte na následujícím obrázku:

profily definující horní plochu umyvadla

Zbývá vytvořit poslední, horní plochu.

  1. V roletovém menu vyberu příkaz Surface/Sweep 2 Rails.
  2. Na výzvu Select 2 rail curves (Vyberte dvě trasy) vyberu postupně křivky č. 1 a 2.
  3. Na výzvu Select cross-section curves (Vyberte řezy) vyberu postupně křivky č. 6, 8, 7, 10, 9 a zmáčknu pravé tlačítko myši.
  4. V dialogovém okně Sweep 2 Rails Options kliknu na OK.
  5. Příkazem Render/Shade si zobrazím vystínovaný náhled.

OpenGL náhled na umyvadlo

Teď si vytvořím další vrstvu, do které uložím výsledné plochy. Provedu to následovně:

  1. Ve spodním stavovém řádku klapnu pravým tlačítkem myši na políčko s modrou barvou a s nápisem "krivky"
  2. Objeví se dialogové okno Edit Layers. Zde kliknu na New a nabídnutý název "Layer 01" změním na "keramika".
  3. Kliknu na OK. Pak vyberu pomocí klávesy Shift všechny tři vytvořené plochy.
  4. V roletovém menu vyberu příkaz Edit/Layers/Change Object Layer. Objeví se výpis dostupných vrstev, klapnu na políčko "keramika" a OK.
  5. Plochy se přesunuly do vrstvy "keramika", jejich drátový model na sebe převzal barvu této vrstvy.

Tímto je hlavní tvar umyvadla hotov. Na první pohled to vypadá komplikovaně, ale ve skutečnosti je to pár minut práce. Na příště nám zbývá vytvořit odtok a špunt, ale to opravdu až příště.

--

Autor je spolumajitelem společnosti Dimensio s.r.o., která produkt Rhinoceros na našem území distribuuje.

Tématické zařazení:

 » Rubriky  » 3dscena  

 » Rubriky  » Go verze  

 » Rubriky  » 3D grafika  

 

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: