Grafika komputerowa Ćwiczenie R-2 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych Instrukcja laboratoryjna opracował: Marcin Skotnicki Człowiek - najlepsza inwestycja Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Warszawa 2009
2 Ćwiczenie 2 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych spis treści 2. Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 3 2.1. WPROWADZENIE 3 2.1.1. Interfejs - przypomnienie potrzebnych narzędzi 3 1) Submenu - Powierzchnia 3 2) Narzędzia tworzenia krzywych 3 2.1.2. Interfejs - właściwości obiektów, konwersja 4 1) Ustawienia materiału 4 2) Konwersja do innych formatów 5 2.2. WYKONANIE ĆWICZENIA 6 2.2.1. Zadanie 1 - bryła obrotowa 6 2.2.2. Zadanie 2: łódka 8 2.3. LITERATURA 16
Ćwiczenie 2 3 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 2. Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 2.1. WPROWADZENIE Istnieje wiele metod modelowania obiektów trójwymiarowych. Przy modelowaniu obiektów opisanych przez siatkę polygonów zazwyczaj jest to metoda subdivision. W przypadku powierzchni opisanych równaniami matematycznymi (NURBS) również można przyjąć jakąś prostą bryłę za punkt wyjściowy i dodając i modyfikując węzły uzyskać żądaną powierzchnię. Zdecydowanie wygodniejszą i szybszą metodą jest jednak utworzenie powierzchni z jednej, lub kilku krzywych NURBS. 2.1.1. Interfejs - przypomnienie potrzebnych narzędzi 1) Submenu - Powierzchnia: Tworzenie powierzchni z linii lub punktów. 1. Powierzchnia z krzywych krawędziowych - rozpięcie po-wierzchni pomiędzy 2-4 krzywymi, niekoniecznie tworzącymi zamknięty obwód. 2. Powierzchnia z płaskich krzywych - tworzy powierzchnię z jednej, lub kilku płaskich krzywych zamkniętych. 3. Wyciągnij prosto. Tworzy z krzywej powierzchnię prostopadle do płaszczyzny, na której znajduje się krzywa. 4. Wyciągnięcie po profilach (nazwa może być trochę myląca, chodzi o lofting, czyli rozpięcie powierzchni na krzywych) - pozwala na stworzenie dowolnej powierzchni opisanej krzywymi NURBS. 5. Powierzchnie obrotowe. 6. Powierzchnie z siatki punktów. 7. Wyciągnięcie po 2 ścieżkach - tworzy powierzchnię wyciągając krzywe przekroju poprzecznego wzdłuż 2 prowadnic. 2) Narzędzia tworzenia krzywych Zestaw narzędzi do rysowania linii łamanych, krzywych, okręgów łuków, spirali itd. Najczęściej używane z tych narzędzi, to: 1. Linia łamana. 2. Linia krzywa. Linia krzywa standardowo jest rysowana jako krzywa B- sklejana stopnia 3, a punkty stawiane w trakcie rysowania krzywej są wierzchołkami wieloboku kontrolnego. Stopień krzywej można zmienić z linii komend, natomiast z rozwijanego, poprzez dłuższe przytrzymanie przycisku myszy, podmenu można zmienić sposób rysowanej krzywej. (np. na krzywą interpolowaną przez stawiane punkty - przy zastosowaniach graficznych zazwyczaj jest to najwygodniejsza metoda)
4 Ćwiczenie 2 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 2.1.2. Interfejs - właściwości obiektów, konwersja 1) Ustawienia materiału Okno właściwości obiektu. Z listy rozwijanej na górze okna wybrać zakładkę Materiał. Można ustalić dziedziczenie materiału po warstiwe, rodzicu (obiekcie nadrzędnym) itd. Żeby nadać dowolny materiał wybranemu obiektowi - zaznaczyć Podstawa. W podstawowych opcjach materiału można wybrać jego kolor, kolor połysku, ilość połysku i przezroczystości (procentowo, od 0 do 100). Ustawienia połysku, od lewej do prawej: 0, 100, 100 z kolorem połysku zmienionym na zielony. Dalsze opcje pozwalają na wybór tekstury, mapowanie przezroczystości, wyboje (bump mapping) - za pomocą czarno-białej bitmapy, oraz środowisko (odbicie w obiekcie). Wyrenderowane obiekty: z połyskiem, oteksturowany, oraz przezroczysty: Wyrenderowaną bitmapę zapisuje się przez polecenie Plik -> Zapisz w menu renderera. Uwaga! Limit zapisów w testowej wersji Rhino dotyczy też zapisywania wyrenderowanych bitmap.
Ćwiczenie 2 5 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 2) Konwersja do innych formatów Standardowo przy zapisie plików Rhino używa własnego formatu (.3dm), jednak przy eksporcie modeli do innych programów graficznych, np. w celu wyrenderowania sceny, może być konieczny eksport do któregoś z innych formatów. Żeby wyeksportować całą scenę należy wybrać polecenie Zapisz Jako z menu Plik; polecenie Eksportuj Zaznaczone powoduje eksport tylko zaznaczonych obiektów. Powszechnie rozpoznawany jest format 3D Studio (.3ds), jednak wymaga on przekonwertowania powierzchni NURBS na siatkę polygonów. Zostanie to zrobione automatycznie przy próbie eksportu, ejdnak wtedy dla wszystkich obiektów na scenie zostanie użyte to samo ustawienie dokładności - przy ustawieniu standardowym niektóre złożone powierzchnie będą kańciaste (co będzie szczególnie widoczne, jeśli zostanie im nadana metaliczna tekstura) - z kolei proste bryły będą składać się z większej ilości wieloboków, niż jest to potrzebne do ich opisania - co wpłynie na czas wczytywania pliku i renderingu. Dlatego też przed eksportem dobrze jest ręcznie przekonwertować wszystkie obiekty na siatki, dla poszczególnych grup obiektów oddzielnie wybierając ilość polygonów. Służy do tego narzędzie Siatka z Powierzchni /Polipowierzchni. Okno narzędzia: Przycisk Kontrola Szczegółowa umożliwia precyzyjne ustawienie ilości polygonów w obiekcie, jednak w większości przypadków wystarczy suwak z podstawowych opcji narzędzia. Mniej wieloboków dla prostych brył i powierzchni (dla brył bez żadnych zaokrągleń, takich jak prostopadłościan, można przesunąć suwak całkowicie w lewo), więcej dla powierzchni, które mudzą być odwzorowane z większą dokładnością, lub których tekstura będzie odbijać światło. (Wszystkie powierzchnie, które w założeniu mają być metalowe, szklane itd.) Podsumowanie efektów pracy narzędzia będzie widoczne w linii komend: Po przekonwertowaniu stary obiekt (powierzchnia NURBS) nie zostanie automatycznie skasowany - pozostanie jednak zaznaczony, więc wystarczy nacisnąć przycisk delete.
6 Ćwiczenie 2 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 2.2. WYKONANIE ĆWICZENIA 1. Zapoznanie się z podstawowymi metodami tworzenia powierzchni trójwymiarowych z krzywych NURBS 2. Wykonanie 2 modeli: a) dzbanka lub butelki, w celu zapoznania się z metodami tworzenia brył obrotowych b) łódki, w celu zapoznania się z tworzeniem powierzchni rozpiętych na krzywych (lofting) 2.2.1. Zadanie 1 - bryła obrotowa Zamodelować wybraną bryłę obrotową (np. butelkę, lub dzbanek), korzystając z poniższej instrukcji. W instrukcji wykorzystany jest kształt dzbanka, jednak wymodelowanie dowolnej innej bryły obrotowej różnić się będzie tylko kształtem krzywej w pierwszym etapie. 1) Narysować linię stanowiącą krawędź boczną bryły obrotowej. W tym celu wybrać narzędzie Krzywa z punktów kontrolnych, aby utworzyć krzywą B-sklejaną trzeciego stopnia poprzez wskazywanie wierzchołków wieloboku kontrolnego, lub dłużej przytrzymując lewy przycisk myszy rozwinąć podmenu pod przyciskiem krzywej i wybrać narzędzie Krzywa: Interpoluj punkty, aby stworzyć krzywą interpolowaną przechodzącą przez zadane punkty. Kolejne punkty krzywej wskazywać klikając myszą w wybranym miejscu - jeszcze przed postawieniem punktu program pokaże podgląd tworzonej krzywej na podstawie pozycji kursora. Żeby mieć pewność, że oś obrotu będzie przechodzić przez początkowy punkt krzywej, można jego współrzędne wpisać w linii komend. (Np. 0 dla środka układu współrzędnych) W razie potrzeby można poprawić kształt utworzonej krzywej przy pomocy punktów kontrolnych. W tym celu nacisnąć przycisk Włącz edycję punktów, lub Włącz punkty kontrolne. Po skończeniu edycji wyłączyć punkty kontrolne, klikając prawym przyciskiem myszy na ten sam przycisk.
Ćwiczenie 2 7 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 2) Wybrać narzędzie Obrotowa. Program poprosi o zaznaczenie krzywych do obrócenia - wybrać utworzoną krzywą i potwierdzić poprzez naciśnięcie przycisku enter. Następnie wskazać początek osi obrotu. Jeśli początek krzywej znajdował się na którejś z osi układu współrzędnych, wystarczy ponownie wpisać 0 w linii komend, aby ustawić początek osi w środku układu współrzędnych. Po wskazaniu początku osi, należy wskazać jej kierunek, poprzez wskazanie kolejnego punktu, przez który ma ona przechodzić. Żeby ustawić oś pionowo, lub poziomo wystarczy wskazując drugi punkt trzymać wciśnięty klawisz shift. 3) Po wskazaniu osi obrotu program zapyta o kąt początkowy i końcowy. Dla pełnego obrotu kąt początkowy powinien wynosić 0, natomiast kąt końcowy 360. Takie też powinny być wartości domyślne, wystarczy je więc potwierdzić, dwukrotnie wciskając enter. Po włączeniu cieniowania w widoku 3D bryła jest gotowa.
8 Ćwiczenie 2 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 2.2.2. Zadanie 2: łódka Wymodelować kadłub łódki z wykorzystaniem loftingu. 1) Za pomocą krzywych narysować przekrój poprzeczny boków łódki w kilku wybranych miejscach wzdłuż jej długości (wystarczą 3-4). Ponieważ tworzona powierzchnia powinna być symetryczna - należy narysować tylko połowę każdego przekroju, uważając, żeby pierwszy punkt każdej linii leżał na osi Y. Zaznaczyć wszystkie utworzone krzywe i za pomocą narzędzia Lustro stworzyć ich odbicie symetryczne względem osi Y. Początek i koniec osi symetrii można wpisać z linii poleceń. 2) Za pomocą narzędzia Połącz połączyć utworzone krzywe, za każdym razem wybierając je parami i potwierdzając klawiszem enter.
Ćwiczenie 2 9 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 3) Wybrać narzędzie Wyciągnięcie po profilach (loft). Zaznaczać utworzone krzywe, zaczynając od pierwszej, lub ostatniej i zwracając uwagę na kolejność, a po zaznaczeniu wszystkich potwierdzić enterem. Pojawi się okno opcji loftingu. Styl zostawić jako Normalny, nie zaznaczać opcji Zamknięte wyciągnięcie po profilach. Jeśli na podglądzie wszystko wygląda poprawnie, potwierdzić przyciskiem OK. Narzędzie loft zwraca uwagę na kierunek zaznaczanych krzywych - jeśli któraś z nich narysowana była w drugą stronę, jest odbiciem lustrzanym, lub zaznaczona była poprzez kliknięcie przy innym końcu, niż pozostałe - krzywe kształtu będą skrzyżowane, co będzie odwzorowane w stworzonej powierzchni, jak widać na poniższym rysunku: Aby to naprawić, należy w opcjach loftingu kliknąć przycisk Wyrównaj krzywe, a następnie kliknąć punkty kontrolne w skręconej części krzywej, żeby zamienić je miejscami. (Jeżeli lofting był przeprowadzony na krzywych zamkniętych, punkty te można ustawić w dowolnym miejscu na obwodzie krzywej poprzez przeciąganie myszą. W przypadku krzywych otwartych, mogą znajdować się tylko na którymś z końców krzywej.) W razie potrzeby poprzestawiać też resztę punktów. Po zakończeniu potwierdzić poprzez naciśnięcie entera.
10 Ćwiczenie 2 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 4) Utworzyć przednią i tylną ściankę kadłuba. W tym celu wybrać narzędzie Powierzchnia z 2, 3 lub 4 Krzywych krawędziowych. Ponieważ krzywe określające powierzchnię boczną łódki były sklejone z 2 krzywych - krawędzie kadłuba nadal mogą być traktowane jako dwie niezależne krzywe na potrzeby działania tego narzędzia. Zaznaczyć jedną z tylnych krawędzi kadłuba. Ponieważ pokrywa się ona z narysowaną na początku linią, pojawi się menu z wyszczególnionymi pokrywającymi się liniami. Wskazać pozycję odpowiadającą połowie krawędzi powierzchni. (jak widać na poniższym rysunku) Następnie w ten sam sposób wskazać drugą połowę krawędzi i zakończyć poprzez naciśnięcie przycisku enter. Tak samo utworzyć ściankę w przedniej części kadłuba. 5) Za pomocą narzędzia Połącz skleić ze sobą główną powierzchnię kadłuba i 2 ścianki, tworząc jedną bryłę.
Ćwiczenie 2 11 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 6) Za pomocą narzędzia Walec stworzyć maszt - powinien wystawać pod dnem łódki. Z menu głównego wybrać Bryła -> Podział Boole a. Program poprosi o wskazanie powierzchni do podziału - wybrać maszt i potwierdzić klawiszem enter. Następnie program poprosi o wskazanie powierzchni tnącej - wybrać kadłub łódki i ponownie potwierdzić enterem. Maszt zostanie podzielony na 2 części. Zaznaczyć część pozostającą pod dnem łódki i skasować ją klawiszem delete. 7) Stworzyć pozostałe elementy omasztowania, również za pomocą narzędzia Walec.
12 Ćwiczenie 2 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 8) Stworzyć pierwszy żagiel. W tym celu narysować 2 krzywe tworzące boczne krawędzie żagla i jedną rozciągniętą między nimi, która będzie odpowiedzialna za jego wypełnienie - jak widać na poniższym rysunku. Żeby uzyskać odpowiedni kształt krzywych we wszystkich płaszczyznach może być konieczna ich edycja po włączeniu punktów kontrolnych. 9) Stworzyć powierzchnię żagla za pomocą narzędzia Wyciągnięcie po 2 ścieżkach. Kiedy program poprosi o wskazanie prowadnic, zaznaczyć kolejno obie pionowe krawędzie żagla, a jako krzywą przekroju poprzecznego wskazać łączącą je poziomą krzywą i potwierdzić za pomocą entera. Zostanie utworzona pierwsza powierzchnia.
Ćwiczenie 2 13 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 10) Narysować krzywe tworzące topsel i utworzyć jego powierzchnię, analogicznie do punktów 8-9. 11) Za pomocą krzywej i narzędzia Rura utworzyć kawałek liny łączącej żagiel z masztem. 12) Zaznaczyć utworzone żagle i elementy umasztowania i obrócić je o niewielki kąt wokół osi masztu.
14 Ćwiczenie 2 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 13) Analogicznie do punktu 8 - narysować linie tworzące sztaksel, razem z podtrzymującą go liną. 14) Analogicznie do punktu 9 utworzyć powierzchnię żagla poprzez rozpięcie na prowadnicach. Za pomocą krzywych i narzędzia Rura stworzyć przytrzymujące go liny.
Ćwiczenie 2 15 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 15) Za pomocą linii łamanej narysować zarys steru, po czym zamienić go na powierzchnię za pomocą narzędzia Powierzchnia z płaskich krzywych. 8) Wybrać materiał dla steru, omasztowania i kadłuba - celu zaznaczyć te bryły i kliknąć przycisk Właściwości obiektu. Z menu rozwijanego na górze okna właściwości wybrać Materał. W polu wyboru zaznaczyć Podstawa, a następnie wybrać kolor. (W tym przypadku: brązowy)
16 Ćwiczenie 2 Modelowanie w Rhino - metody tworzenia powierzchni z krzywych 9) Kliknąć prawym przyciskiem przycisk Renderuj, aby otworzyć opcje renderowania. Wybrać rozdzielczość i kolor tła. Potwierdzić wybór przyciskiem OK, a następnie kliknąć przycisk lewym przyciskiem myszy, aby wyrenderować scenę. 2.3. LITERATURA 1. www.rhino3d.com/tutorials.htm