Jacek Jarnicki Politechnika Wrocławska



Podobne dokumenty
MODELE OBIEKTÓW W 3-D3 część

GRAFIKA KOMPUTEROWA. Plan wykładu. 1. Początki grafiki komputerowej. 2. Grafika komputerowa a dziedziny pokrewne. 3. Omówienie programu przedmiotu

ALGEBRA rok akademicki

WPROWADZENIE DO GRAFIKI KOMPUTEROWEJ

Grupa obrotów. - grupa symetrii kuli, R - wszystkie możliwe obroty o dowolne kąty wokół osi przechodzących przez środek kuli

METODA MATEMATYCZNEGO MODELOWANIA PŁATAMI BÉZIERA KSZTAŁTU ZIARNA PSZENŻYTA

Przykład 3.1. Projektowanie przekroju zginanego

WYKŁAD 7. MODELE OBIEKTÓW 3-D3 część Koncepcja krzywej sklejanej. Plan wykładu:

Kompresja fraktalna obrazów. obraz. 1. Kopiarka wielokrotnie redukująca 1.1. Zasada działania ania najprostszej kopiarki

Przestrzeń liniowa R n.

Algebra z geometrią 2012/2013

Tomasz Grębski. Liczby zespolone

WYKŁAD 6. MODELE OBIEKTÓW 3-D3 część Powierzchnie opisane parametrycznie. Plan wykładu: Powierzchnie opisane parametrycznie

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

Strukturalne elementy symetrii. Krystalograficzne grupy przestrzenne.

Macierze hamiltonianu kp

Ruch kulisty bryły. Kąty Eulera. Precesja regularna

TRANSFORMACJE 2-D2 PROCEDURA WIZUALIZACJI 2-D2

POTENCJALNE POLE SIŁ. ,F z 2 V. x = x y, F y. , F x z F z. y F y

Rozdział 9. Baza Jordana

KRZYWA BÉZIERA TWORZENIE I WIZUALIZACJA KRZYWYCH PARAMETRYCZNYCH NA PRZYKŁADZIE KRZYWEJ BÉZIERA

1. REDUKCJA DOWOLNYCH UKŁADÓW SIŁ. Redukcja płaskiego układu sił

ZŁOŻONE RUCHY OSI OBROTOWYCH STEROWANYCH NUMERYCZNIE

Rozważa się dwa typy odwzorowań: 1. Parametryzacja prosta

Algebra WYKŁAD 2 ALGEBRA 1

P K. Położenie punktu na powierzchni kuli określamy w tym układzie poprzez podanie dwóch kątów (, ).

Elementy symetrii makroskopowej w ujęciu macierzowym.

1. Podstawy rachunku wektorowego

Graficzne modelowanie scen 3D. Wykład 4

napór cieczy - wypadkowy ( hydrostatyczny )

Opis układu we współrzędnych uogólnionych, więzy i ich reakcje, stopnie swobody

Środek ciężkości bryły jednorodnej

A B - zawieranie słabe

J. Szantyr - Wykład 7 Ruch ogólny elementu płynu

J. Szantyr - Wykład 4 Napór hydrostatyczny Napór hydrostatyczny na ściany płaskie

; -1 x 1 spełnia powyższe warunki. Ale

Projekt 6 6. ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH CAŁKOWANIE NUMERYCZNE

; -1 x 1 spełnia powyższe warunki. Ale

0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do

ZESTAW ZADAŃ Z INFORMATYKI

OKRES ZWROTU JAKO JEDNA Z METOD OCENY OPŁACALNOŚCI PRZEDSIĘWZIĘĆ INWESTYCYJNYCH

I. Rachunek wektorowy i jego zastosowanie w fizyce.

Wektory. P. F. Góra. rok akademicki

Geometria analityczna w przestrzeni. Kierunek. Długość. Zwrot

x od położenia równowagi

ĆWICZENIE 6. Mimośrodowe rozciąganie. Redukcja do środka ciężkości PROJEKT

Ruch kulisty bryły. Kinematyka

KONWENCJA ZNAKOWANIA MOMENTÓW I WZÓR NA NAPRĘŻENIA

EPR. W -1/2 =-1/2 gµ B B

Diagonalizacja macierzy kwadratowej

RUCH OBROTOWY Można opisać ruch obrotowy ze stałym przyspieszeniem ε poprzez analogię do ruchu postępowego jednostajnie zmiennego.

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 1. Układy równań liniowych

Mechanika Robotów. Wojciech Lisowski. 2 Opis położenia i orientacji efektora Model geometryczny zadanie proste

Pochodna kierunkowa i gradient Równania parametryczne prostej przechodzącej przez punkt i skierowanej wzdłuż jednostkowego wektora mają postać:

BADANIA OPERACYJNE. Podejmowanie decyzji w warunkach niepewności. dr Adam Sojda

PRÓBNY EGZAMIN MATURALNY

Zestaw zadań 4: Przestrzenie wektorowe i podprzestrzenie. Liniowa niezależność. Sumy i sumy proste podprzestrzeni.

Ile wynosi suma miar kątów wewnętrznych w pięciokącie?

PRAWIDŁOWE ODPOWIEDZI I PUNKTACJA

[ ] D r ( ) ( ) ( ) POLE ELEKTRYCZNE

Postać Jordana macierzy

Egzamin poprawkowy z Analizy II 11 września 2013

Animowana grafika 3D. Opracowanie: J. Kęsik.

TWIERDZENIA O WZAJEMNOŚCIACH

WYKŁAD 4 TRANSFORMACJE 2-D, 2 PROCEDURA WIZUALIZACJI 2-D2. Plan wykładu: 1. Transformacje 2-D2

Funkcje wielu zmiennych

GRUPY SYMETRII Symetria kryształu

Wymagania na poszczególne oceny z przedmiotu Informatyka kl. IV

STATYSTYKA MATEMATYCZNA

Zadania z AlgebryIIr

3. Metody rozwiązywania zagadnień polowych

nauczyciel Media społecznościowe i praca w chmurze oraz przygotowanie na ich potrzeby materiałów graficznych i zdjęciowych Artur Kurkiewicz

cz.2 Dr inż. Zbigniew Szklarski Katedra Elektroniki, paw. C-1, pok.321

WikiWS For Business Sharks

PRÓBNY EGZAMIN MATURALNY

Wykład 1 Podstawy projektowania układów logicznych i komputerów Synteza i optymalizacja układów cyfrowych Układy logiczne

Naprężenia wywołane ciężarem własnym gruntu (n. geostatyczne)

OpenGL przezroczystość

DryLin T System prowadnic liniowych

gdzie: L( G ++ )- współczynnik złożoności struktury , -i-ty węzeł, = - stopień rozgałęzienia i-tego węzła,

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Odbicie lustrzane, oś symetrii

2.1. Określenie i rodzaje wektorów. Mnożenie wektora przez skalar

Powierzchnie stopnia drugiego

Przykład 6.3. Uogólnione prawo Hooke a

cz. 2. Dr inż. Zbigniew Szklarski Katedra Elektroniki, paw. C-1, pok.321

Zginanie ukośne LABORATORIUM WYTRZYMAŁOŚCI MATERIAŁÓW. Katedra Wytrzymałości Materiałów i Metod Komputerowych Mechaniki

Laboratorium grafiki komputerowej i animacji. Ćwiczenie IV - Biblioteka OpenGL - transformacje przestrzenne obiektów

Analiza danych OGÓLNY SCHEMAT. Dane treningowe (znana decyzja) Klasyfikator. Dane testowe (znana decyzja)

Zestaw zadań 12: Przekształcenia liniowe. z z + 2 2x + y. x y z. x y + 2t 2x + 3y + 5z t x + z t. x y + 2t 2x 3y + 5z t x z t

ver ruch bryły

VIII. ZBIÓR PRZYKŁADOWYCH ZADAŃ MATURALNYCH

Plan wykładu. Akcelerator 3D Potok graficzny

Prawdziwa ortofotomapa

Wyznaczanie reakcji dynamicznych oraz wyważanie ciała w ruchu obrotowym wokół stałej osi 8

ANALIZA KONSTRUKCJI POWŁOKOWEJ. CIENKOŚCIENNY ZBIORNIK CIŚNIENIOWY

lim = 0, gdzie d n oznacza najdłuższą przekątną prostokątów

W praktyce często zdarza się, że wyniki obu prób możemy traktować jako. wyniki pomiarów na tym samym elemencie populacji np.

Macierze normalne. D : Dowolną macierz kwadratową można zapisać w postaci A = B + ic gdzie ( ) B = A + A B = A + A = ( A + A)

Definicje ogólne

Transkrypt:

Informacje organacjne. Układ predmotu Grafka komputerowa Doc. dr nż. Jacek Jarnck Insttut Informatk, Automatk Robotk p. 6 C-3, tel. 7-3-8-3 jacek.jarnck@pwr.wroc.pl www.sk.ar.pwr.wroc.pl semestr VI -, semestr VII -. Lteratura J. D. Fole, A. van Damm nn: Wprowadene do grafk komputerowej, WNT Warsawa 995. Grafka komputerowa metod naręda, pod red. J. Zabrodkego, WNT Warsawa 994. R. S. Wrght, B Lpchak: OpenGL ksęga eksperta, Helon 5. IEEE Computer Graphcs and Applcaton - casopsmo. Plan wkładu. Pocątk grafk komputerowej. Grafka komputerowa a dedn pokrewne 3. Omówene programu predmotu Pocątk grafk komputerowej 96- Sketchpad Ivan Sutherland (MIT) perws sstem do rsowana pr pomoc komputera pórem śwetlnm t fotoelement f (t -t ) f (t -t ) (, ) t do komputera t - chwla ropocęca wberana ramk obrau t - chwla arejestrowana plamk pre cujnk póra

Pocątk grafk komputerowej 96- Spacewar Steve Russell (MIT) perwsa gra vdeo (komputer PDP-) Pocątk grafk komputerowej Wektorow sstem wśwetlana U U U cosωt U U snωt 963 - Smulaton of a two-gro gravt atttude control sstem E. Zajac (Bell Telephone), perws flm anmowan (komputer IBM 79) U Pocątk grafk komputerowej Charakterstka sstemu wektorowego Pocątk grafk komputerowej Rastrow sstem wśwetlana Magstrala Ekran rodelcość - bardo duża (496496), lne cągłe, cenke, łożoność obrau - ograncona casem pośwat ekranu, wpełnane konturów - trudne, kolor - brak, cena - bardo wsoka. VIDEO RAM Sterownk grafcn pksel

Pocątk grafk komputerowej Charakterstka sstemu rastrowego Grafka komputerowa a dedn pokrewne Pretwarane obrau rodelcość - duża (9) prekątna 4 lne schodkowe, łożoność obrau bardo duża, wpełnane konturów - łatwe, kolor 6.7 mln cena 4 PLN Grafka komputerowa obra A[a j ] ops. Roponawane obrau Samsung SncMaster 44T sphere(,,, r) Program predmotu Program predmotu wualacja -D. Wstęp. Rasteracja (rsowane odcnka łuku) 3. Wpełnane konturów 4. Transformacje ogólna procedura wualacj -D 5. Modele obektów 3-D (satk weloboków, równana) 6. Modele obektów 3-D (krwe Hermta Beera) 7. Modele obektów 3-D (powerchne Beera, splne, NURBS) 8. Rutowane 9. Transformacje 3-D, usuwane elementów newdocnch. Modele ośwetlena lokalnego scen 3-D. Tekstura. Metoda śledena promen, metoda energetcna 3. Kolokwum alcenowe - test 4. Podstaw teor barw, modele lcbowe kolorów Narsowane obrau wśwetlanego w ssteme rastrowm. Obekt opsane w geometr płascn R treba narsować na płascźne N. Ne awse jest to take proste, jak poorne może sę wdawać. Proste w R precnają sę w jednm punkce a ch obra narsowane w N w trech punktach.

Program predmotu - wualacja -D Program predmotu wualacja 3-D Zagadnena wualacj -D rsowane dskretnego obrau odcnka rsowane dskretnego obrau łuku okręgu wpełnane weloboku wpełnane konturu adanego jako bór pksel transformacje elementarne w prestren -D współrędne jednorodne składane transformacj, transformacje łożone ogólna procedura wualacj -D algortm obcnana (clppng) Wgenerowane obrau któr w maksmalnm stopnu prpomna to, co wdm gd patrm na śwat realn. budowa modelu scen 3-D rutowane usuwane elementów newdocnch generacja efektów wnkającch ośwetlena scen teksturowane powerchn obektów metod ośwetlena globalnego (ra tracng, radost) Program predmotu wualacja 3-D Program predmotu wualacja 3-D Modele obektów 3-D Modele skeletowe (wre frame representaton) modele skeletowe modele w postac równań matematcnch konstrukcjna geometra brłowa (sold modelng) modele wkorstujące geometrę frakatalną nne modele V, V, - werchołk (verte) E, E, - krawęde (edge) S, S, - ścan (polgon-surface)

Program predmotu wualacja 3-D Program predmotu wualacja 3-D Modele w postac równań analtcnch równane uwkłane Konstrukcjna geometra brłowa (sold modelng) (,,) f równana parametrcne (powerchne Beera, B-splne, NURBS), f f f ( u,v) ( u,v) ( u,v) u,v Program predmotu wualacja 3-D Program predmotu wualacja 3-D Modele fraktalne (prkład) Kwaternon ogólnejsa lcba espolona q q () + q () + j q ( ) + k q ( 3) Rutowane (projecton) rutna (ekran) obekt obserwator qj+ qj + qc q dane Rut perspektwcn Na ekrane pojaw sę satka ln, odpowadającch wsstkm krawędom modelu skeletowego.

Program predmotu wualacja 3-D Program predmotu wualacja 3-D Usuwane obrau elementów newdocnch Welobokom satk modelu skeletowego prpsano kolor a następne usunęto obrau element newdocne dla obserwatora. rutna (ekran) obekt Ośwetlene scen Wprowadono źródło śwatła prpsano welobokom satk charakterstk śwetlne powerchn. źródło śwatła rutna (ekran) obserwator algortm sortowana ścan algortm -bufora obserwator źródła roprosone źródła punktowe powerchne matowe powerchne lustrane obekt prerocste Program predmotu wualacja 3-D Program predmotu wualacja 3-D Tekstura Welobokom satk prpsano bardej subtelne charakterstk powerchn (teksturę). Metoda śledena promen (ra-tracng) źródło śwatła źródło śwatła chropowatość obekt obekt rutna (ekran) ekran obserwator generacja tekstur odworowana geometrcne tekstur fltracja tekstur obserwator pksel ( p, p ) Dwa obekt, kula płascna ora jedno źródło śwatła

Program predmotu wualacja 3-D Metoda energetcna (radost) v płat -t E v ra-tracng E j płat j-t n j j j v E ρ F E W radost

Pewen problem rsowana w N RYSOWNIE ODCINKA I ŁUKU OKRĘGU W PRZESTRZENI DYSKRETNEJ Plan wkładu: Pewen problem rsowana w N Rsowane odcnka prostej Rsowane łuku okręgu Specjalne agadnena rsowana w N Obekt opsane w geometr płascn R treba narsować na płascźne N. Prkład : (rsowane odcnka prostej) Założena: a+ b a b 6 5 4 3 a >, 3 4 5 6 a < Pewen problem rsowana w N Algortm rsowana odcnka Rowąane problemu: Jeżel a > analujem równane rsujem punkt Jeżel b (, a, ) ( rsujem punkt + round ( b )) Algortm (bepośredn) Krok Rsujem punkt (, ). Krok t Dla oblcam a,round ( )) rsujem Ocena łożonośc rsowana punktu: - jedno mnożene mennoprecnkowe, - jedno aokrąglene. (

Algortm rsowana odcnka Algortm rsowana odcnka Algortm (prrostow) Algortm DDA ( Dgtal Dfferental Analer ) a a( + a ) a + a + a Krok Rsujem punkt (, ). Krok t Oblcam + a rsujem (,round ( )) Ocena łożonośc rsowana punktu: - jedno dodawane mennoprecnkowe, - jedno aokrąglene. Algortm rsowana odcnka Algortm rsowana odcnka Algortm 3 (Bresenhama) Bresenham J. E., Algorthm for Computer Control of Dgtal Plotter, IBM Sstems Journal, 4, 965. Założena: t T ( - +, - + ) s a +b a+ b a b d a d d,d N P - ( -, - ) S ( - +, - ) Punkt P - ostał wnacon. Należ podjąć decję co do wboru następnego punktu: Jeżel s < t ( ( s - t ) < ) to wberam punkt S, Jeżel s t ( ( s - t ) ) to wberam punkt T.

Algortm rsowana odcnka Algortm rsowana odcnka Z rsunku d s ( d a węc, T ( - +, - + ) t a +b s P - ( -, - ) S ( - +, - ) + ) d t + ( d d s t ( + ) d + ) Inacej krterum wboru punktu można wrać jako d( s t ) ( d d ) + d d Po podstawenu d d( s t) uskuje sę d d d+ d d Zwęksając w formaln sposób ndeks otrmuje sę ( + ) ( ) d+ d d+ d d ( ) Algortm rsowana odcnka Odejmując stronam od równana () równane () uskuje sę wąek męd wartoścam krterum wboru dla - tego + - go kroku d d( ) d( ) d+ Wadomo, że węc: d+ d + d d( ) ( 3 ) Algortm rsowana odcnka. Jeżel d ( s t ) to wbera sę T, wted ora + d+ d + ( d d ) d ( s< t ) <. Jeżel to wbera sę S, wted ora d + d + d 3. Podstawając do () (, ) (, ) uskuje sę krterum wboru dla kroku d d d 3

Algortm rsowana odcnka Prkład Algortm rsowana odcnka d 5, d 3 ( d d ) ( 3 5 ) 4 d 6 Krok Rsujem punkt (, ) oblcam d d d Krok - t Dla krterum d oblconego w kroku poprednm jeżel:. d rsujem T ( punkt "wżs" ) oblcam d + d + ( d d ). d < rsujem S ( punkt równ" ) oblcam d + d + d d 3 d 5, d d d 6 5 T d d+ ( d d ) 4 3 d 3 d + d 3+ 6 3 T d4 d 3+ ( d d ) 3 4 3 d5 d4 + d 3+ 6 3 T S S Algortm rsowana odcnka Algortm rsowana odcnka Ocena łożonośc rsowana punktu: - jedno dodawane stałoprecnkowe, - jedno badane naku. Algortm 4 ( podwójnm krokem) W algortme podwójnm krokem wbera sę następną parę punktów. Możlwe są cter prpadk. Wu X., Ronke J.G, Double-Step Incremental Generaton of Lnes and Crcles, CVGIP, (37), 987. W algortme Bresenhma dokonuje sę w każdm kroku wboru następnego punktu. Możlwe są dwa prpadk. 3 4 4

Algortm rsowana okręgu Założena: środek okręgu w punkce (, ), promeń okregu wnos r. Algortm (bepośredne użce równana okregu): + ± r r Algortm rsowana okręgu Algortm (użce równań parametrcnch): Rsujem punkt: ( φ ) r cosφ ( φ ) r snφ φ π ( round( ( φ )),round( ( φ ))),,,... φ f ( r )? Złe dobrane sposobu nkrementacj kąta może prowadć do: powstawana w rsunku dur (skok kąta bt duż), rsowana klkakrotne tch samch punktów (skok bt mał). Algortm rsowana okręgu Algortm 3 (Bresenhama): Bresenham J. E., A Lnear Algorthm for Incremental Dgtal Dspla of Arcs, Communcatons of ACM,, 977. Patent USA 4 37 933 ( nowsa wersja algortmu, 983 ). (-,) (,) (-,) (-,-) (-,-) (,-) (,) (,-) Rsowana jest /8 okręgu od punktu (, r ). Ab uskać pełn okrąg należ punkt odpowedno powelać wkorstując smetrę. Algortm rsowana okręgu Punkt P - ( -, - ) T - ( - +, - ) (, + ) t s S - ( - +, - -) określon jest równanem. + ) r ( Zakładam, że punkt P - ostał wnacon. Odległośc prawdwego,, punktu okręgu (, - + ) od punktów satk T S ocenam pr pomoc wrażeń. 5

Algortm rsowana okręgu Algortm rsowana okręgu s P - ( -, - ) T - ( - +, - ) t s S - ( - +, - -) t r + ( + ) ( ) r ( + ) ( ) Krterum decjne dla -tego kroku wraża sę jako: p t s Należ podjąć decję co do wboru następnego punktu. P - ( -, - ) T - ( - +, - ) t s S - ( - +, - -) Jeżel p ( s t ) to wberam punkt S, Jeżel p < ( s > t ) to wberam punkt T. Wadomo, że p t - s węc p ( + ) + + ( ) r ( ) Zwęksając w formaln sposób ndeks ( + ) otrmuje sę Algortm rsowana okręgu p p ( + ) + + ( [( + ) + ] + + ( ) r + Odejmując stronam od równana () równane () wkonując proste prekstałcena uskuje sę wąek męd wartoścam krterum wboru dla - tego +- go kroku w postac: p+ p + 4 + 6+ ( ) ( ) ) r ( ) ( ) Algortm rsowana okręgu. Jeżel p < to wbera sę T, wted - cl p + p + 4 +. Jeżel p to wbera sę S, wted - - cl p + p + 4( ) + 3. Podstawając do () (, ) (, r), uskuje sę krterum wboru dla kroku p 3 r 6 6

Algortm rsowana okręgu Inne problem rsowana w N Krok Rsujem punkt (, r ) oblcam p 3 r Krok - t Dla krterum p oblconego w kroku poprednm jeżel:. p < rsujem T ( punkt "równ" ) oblcam p + p + 4 +. p rsujem S ( punkt nżs" ) oblcam p + p + 4( ) + 6 Zmana jasnośc odcnka w funkcj nachlena odcnek odcnek Odcnek jest ra dłużs od odcnka. Punkt odcnka należ wśwetlć punkt odcnka. ra jaśnej nż Inne problem rsowana w N Inne problem rsowana w N Usuwane akłóceń alasngowch Alasng - efekt nekstałcena powstając w wnku próbkowana e bt małą cęstotlwoścą obrau, awerającego składowe o wsokej cęstotlwośc. łota kula nad sachowncą (obserwator blsko) łota kula nad sachowncą (obserwator daleko), wdocn efekt alasngu 7

Inne problem rsowana w N Inne problem rsowana w N Rsowane odcnka Metod elmnacj nekstałceń alasngowch węksene cęstotlwśc próbkowana próbkowane bewagowe (prkład rsowana prostokąta) cęstotlwość średna cęstotlwość bt mała jasność pksela jest proporcjonalna do pokrtej pre pksel powerchn rsowanego (próbkowanego) prostokąta OpenGL twor perwotne (prmtves) OpenGL twor perwotne Jak narsować odcnek korstając funkcj bblotek OpenGL? glcolor3f(.,.,.); glbegn(gl_lines); glvertefv(a); glvertefv(b); glend(); 8

OpenGL twor perwotne Jak narsować okrąg? const float DEGRAD 3.459/8; vod Crcle(float, float, float radus) { nt ; float deginrad; glcolor3f(.,.,.); } glbegn(gl_line_loop); for (; < 36; ++) { deginrad *DEGRAD; glvertef( + cos(deginrad)*radus, + sn(deginrad)*radus); } glend(); Crcle(.,.,.); 9

Wpełnane weloboku WYPEŁNIANIE OBSZARÓW Zasada parstośc: Prosta, która ne prechod pre werchołek precna welobok parstą lość ra.. Plan wkładu: Wpełnane weloboku Wpełnane konturu danego w postac obrau Pewne problem wąane wpełnanem Rsowane pogrubonch tworów perwotnch położene 6 precęć położene 3 precęca położene 3 6 precęć położene 4? precęć 3 4 Wpełnane weloboku Wpełnane weloboku Algortm preglądana ln (scan lne algorthm) Założene: Dan jest welobok ( be krawęd poomch ) opsan jako bór kolejnch krawęd. krawędź AB BC CD DE EF FA mn ma mn 7 9 9 5 5 7 9 9 4 7 7 ma 4 4 4 6 4 8 6 4 F A E B D C 4 6 8 4 6 Podstawowa asad dałana algortmu: presuwać poomą lnę skanującą od dołu do gór, dla danego położena ln należ rsować punkt pomęd poscególnm param krawęd. Dla ln skanującej w położenu należ wpełnć punkt (narsować poome odcnk) pomęd krawędam AF FE ora DE CD. 6 4 8 6 4 D F A E B C 4 6 8 4 6

Wpełnane weloboku Wpełnane weloboku Ops algortmu: Krok Utworć globalną tablcę krawęd (ET). Krok Ustawć na najmnejsej wartośc współrędnej globalnej tablc krawęd (ET), cl dla perwsej nepustej grup krawęd Krok Werować aktwną tablcę krawęd (AT). Krok 3 Powtarać tak długo, dopók tablca globalna (ET) tablca aktwna (AT) ne będą puste. Preneść grup tablc globalnej (ET) do tablc aktwnej (AT) te krawęde, dla którch posortować je e wględu na. mn Wpełnć pksele w ln, wkorstując par tablc aktwnej (AT). Usunąć tablc aktwnej (AT) te krawęde, dla którch ma. Zwęksć o (następna lna). Dla każdej par krawęd, która ne jest ponowa wlcć wstawć do tablc aktwnej (AT) nowe wartośc. Tablca globalna (ET) krawęde Tablca aktwna (AT) Wpełnane weloboku Krok - Tworene globalnej tablc krawęd (ET) EF 6 DE... 9...... 7...... 5...... mn 7-5/ * CD 4 * FA * AB 7 7/3 * BC 5 9-7/4 * 7 9 5/6 * ma /a 4 8 6 4 F A E B D C 4 6 8 4 6 mnmum mn - prpsane do grup mnmum mn - porądkowane w grupe mnmum ma - porądkowane w grupe mnmum ma - porądkowane w grupe Wpełnane weloboku Krok Ustawam na najmnejsej wartośc współrędnej globalnej tablc krawęd. Krok Zerujem aktwną tablcę krawęd (AT). Krok 3 Prenosm grup tablc globalnej (ET) do tablc aktwnej (AT) te krawęde, dla którch mn sortujem krawęde e wględu na. AB BC (AT) mn 5 9-7/4 * 7 9 5/6 * ma /a

Wpełnane weloboku Wpełnam pksele w ln, wkorstując par tablc aktwnej (AT) asadę parstośc. 6 4 8 6 4 D F E C A B 4 6 8 4 6 Usuwam tablc aktwnej (AT) te krawęde, dla którch ( brak takch krawęd ) ma Zwęksam o ( ). Wpełnane weloboku Dla każdej par krawęd, która ne jest ponowa wlcam wstawam do tablc aktwnej (AT) nowe wartośc. Sposób oblcana nowch wartośc ; a) ( ) ( ) + a ( algortm DDA ) b) algortm Bresenhama (AT) mn AB BC 5 7-7/4 * 7 5/6 * ma /a Konec perwsego prebegu dla kroku 3 Wpełnane weloboku W kolejnm prebegu kroku 3 uskam rsunek : 6 4 8 6 4 D F E C A B 4 6 8 4 6 Postępujem analogcne aż do osągnęca 5 Wpełnane weloboku Dla 5 rsunek wgląda następująco: Dla krawęd AB achod ( konec krawęd ). ma Usuwam AB tablc aktwnej (AT). Prenosm do tablc aktwnej tablc globalnej (ET) krawędź FA, dla której mn Porądkujem tablcę (AT) e wględu na. Tablca aktwna prbera postać: 6 4 8 6 4 F A E B D C 4 6 8 4 6 5 3

Wpełnane weloboku Wpełnane weloboku (AT) mn FA BC 6 * 7 5 5/6 * ma /a Kontnuujem wpełnane aż osągnem konec krawęd wstępującej w tablc aktwnej (AT), lub pocątek krawęd tablc globalnej (ET). W roważanm prpadku dla 7, osągam konec krawęd BC. Uskan efekt wpełnena pokauje rsunek. 4 6 8 4 6 6 4 8 6 4 F A E B D C Po usunęcu tablc aktwnej (AT) krawęd BC, węksenu prenesenu tablc globalnej (ET) krawęd CD tablca aktwna prjmuje postać: FA CD (AT) Wpełnając dalej, osągam wartość 9. Rsunek wgląda tera tak: 8 * 4 * 6 4 8 6 4 F A E B D C 4 6 8 4 6 Wpełnane weloboku Stwerdam, że dla 9 para krawęd EF DE spełna warunek mn W wąku tm prenosm krawęde EF DE do tablc aktwnej (AT), która po uporądkowanu elementów e wględu na wgląda tak: (AT) 9 FA DE Tablca globalna (ET) staje sę pusta. EF * 7-5/ 7 7/3 * 4 * Kontnuujem wpełnane męd param krawęd tablc (AT), aż do osągnęca. Uskujem efekt jak na kolejnm rsunku: CD * Wpełnane weloboku 6 4 D F E 8 C 6 A 4 B 4 6 8 4 6 Usuwam tablc (AT) parę krawęd FA, EF. DE CD (AT) 7/3 * 4 * 4

Wpełnane weloboku Wpełnam następną lnę osągam końce krawęd DE CD. Usuwan krawęde tablc AT. Tablca (AT) jest już pusta, cl końcm wpełnane. Ostatecn efekt pokauje rsunek. 6 4 8 6 4 F A E B D C 4 6 8 4 6 Wpełnane weloboku Problem krawęd poomch: Na pocątku, prjęto ałożene, że wpełnan welobok ne ma krawęd poomch. G F Jak pobć sę tego ałożena? Rowąane: Pomjane krawęd poomch w tablc (AT). Prkład: - w tablc (AT) najde sę AJ BC, - w tablc (AT) najde sę IJ DE, 3 - w tablc (AT) najde sę IJ EF, 4 - w tablc (AT) najde sę GH FE, 4 3 I J A B C H D E Wpełnane konturu danego w postac obrau Wpełnane konturu danego w postac obrau Założene: Dan jest kontur w postac boru różnch od tła pksel punkt leżąc wewnątr konturu. Prpadek gd kontur jest wpukł: Dla dowolnej par punktów, leżącch wewnątr konturu odcnek, którego końcam są te punkt leż w całośc wewnątr konturu. Prost algortm wpełnana konturu wpukłego wpełnam w ln pocnając od punktu startowego, aż do prawej granc konturu, najdujem " nżs " punkt konturu wpełnam lnę do lewej granc konturu, powtaram tak długo, dopók możem naleźć punkt " nżs ", wracam do punktu startowego kontnuujem proces porusając sę " w górę ". 5

Wpełnane konturu danego w postac obrau Prpadek gd kontur ne jest wpukł: Algortm wpełnana pre spójność Pewne problem wpełnana Problem bregu weloboku: Treba narsować klka wpełnonch weloboków o wspólnch krawędach. Każd weloboków jest wpełnon nnm kolorem. W 3 W 3 arno. Wpełnane jest arno, arno sąsad. Sprawdan są kolejno sąsed, jeżel sprawdan sąsad ne należ do konturu, prjmowan jest jako nowe arno następuje powrót do punktu. W W W 4 W 5 pksel Jak rsować obra krawęd weloboków? W W 5 W W 4 Pewne problem wpełnana Pewne problem wpełnana Problem weloboków "bardo wąskch" : W 3 W 3 W W W 4 W W W 4 Wkorstano popredno opsaną konwencję rsowana. Obra weloboku W składa sę tlko dwóch punktów. W 5 W 5 pksele kanddac pksele wpełnone Cęsto stosowane rowąane: rsować pksele leżące wewnątr weloboku, ale ne na bregu, rsować pksele należące do lewej krawęd, rsować pksele należące do dolnej krawęd. Nestet brak adawalającego rowąana pr tm sposobe rsowana. Należ astosować wpełnane welotonowe. W W 6

Rsowane pogrubonch tworów perwotnch Metoda powelana pksel : Rsowane pogrubonch tworów perwotnch Jak dała metoda powelana pksel dla krwej? rsunek podstawow pksele powelone pksele powelone rsunek podstawow Dla każdego pksela rsunku podstawowego, rsowane są dodatkowe pksele pogrubające. gd a < w kolumne, w prpadku precwnm w wersu. Zaleta - prost algortm Wada - grubość rsunku dla różnch fragmentów krwej jest różna Rsowane pogrubonch tworów perwotnch Metoda prostokątnego póra: ślad póra porusa sę wdłuż krwej ślad póra rsowana krwa pksel rsunku podstawowego najduje sę w centrum śladu OpenGL wpełnane Jak narsować wpełnon trójkąt? glcolor3f((float)67/55,(float)5/55,(float)4/55); glbegn(gl_triangles); glvertefv(a); glvertefv(b); glvertefv(c); glend(); Zaleta - lepse nż w poprednej metode rsunk Wada - wstępuje powelane pksel 7

OpenGL wpełnane OpenGL wpełnane tpedef float pont[]; pont ver[]{{.,.},{-., -.},{.,.}, {., -.}}; vod polgon( pont a, pont b, pont c, pont d) { glcolor3f((float)55/55, (float)/55, (float)6/55); glbegn(gl_polygon); glvertefv(a); glvertefv(b); glvertefv(c); glvertefv(d); glend(); } polgon(ver[], ver[], ver[], ver[3]); OpenGL wpełnane OpenGL wpełnane tpedef float pont[]; pont ver[]{{-.,-.}, {.,.}, {.,-.}, {.,.}}; vod polgon( pont a, pont b, pont c, pont d) { glcolor3f((float)55/55, (float)/55, (float)6/55); glbegn(gl_polygon); glvertefv(a); glvertefv(b); glvertefv(c); glvertefv(d); glend(); } Co ostane narsowane gd każd werchołek trójkąta będe mał nn kolor? glbegn(gl_triangles); glcolor3f(.,.,.); glvertefv(a); glcolor3f(.,.,.); glvertefv(b); glcolor3f(.,.,.); glvertefv(c); glend(); polgon(ver[], ver[], ver[], ver[3]); Wnosek wmagana jest wpukłość!!! 8

Transformacje elementarne w prestren -D TRANSFORMACJE -D, PROCEDURA WIZUALIZACJI -D Plan wkładu: Transformacje elementarne presunęce, mana skal, obrót wokół środka układu współrędnch. Presunęce ( translaton ) : 6 4 t 8 t 4 Transformacje elementarne w prestren -D Składane transformacj Ogólna procedura wualacj w -D Obcnane w okne prostokątnm + t + t 8 6 (, ) 4 (, ) 4 6 8 4 6 Transformacje elementarne w prestren -D Transformacje elementarne w prestren -D Zmana skal ( scalng ) : Obrót wokół środka układu współrędnch (rotaton): 6 4 s. s.5 6 4 φ 3 s s 8 6 4 cosφ snφ cosφ+ snφ 8 6 (, ) (, ) (, ) 4 6 8 4 6 4 φ (, ) 4 6 8 4 6

(, ) φ rsn(φ + α) (, ) rsnα α rcos(φ + α) rcosα r cos( α+ φ ) r cosα cosφ r snα snφ r sn( α+ φ ) r snα cosφ r cosα snφ r cosα, r snα cosφ snφ cosφ+ snφ Transformacje elementarne w prestren -D Inn sposób apsu transformacj elementarnch - współrędne jednorodne ( homogeneous coordnates ) August Ferdnand Möbus ( 79-868 ) współrędne pred transformacją (, ) (,, ) współrędne po transformacj [ ] [ ] (, ) (,, ) (, ) (,, ) Transformacje elementarne w prestren -D Transformacje elementarne w prestren -D Zwąek pomęd określonm wżej wektoram można apsać w postac [ ] [ ] m m m 3 m m m 3 m m m 3 3 33 Presunęce: Równane astępujem równanem + t + t [ ] [ ] t t

3 Transformacje elementarne w prestren -D Transformację presunęca opsuje węc macer presunęca t t ),t t T( Parametram transformacj presunęca są dwe lcb t t.. Transformacje elementarne w prestren -D Zmana skal: Równane s s astępujem równanem [ ] [ ] s s Transformacje elementarne w prestren -D Transformację skalowana opsuje tera macer s s ),s s ( S Parametram transformacj skalowana są dwe lcb s s.. Transformacje elementarne w prestren -D Obrót wokół środka układu współrędnch: Równane φ φ φ φ sn cos sn cos + astępujem równanem [ ] [ ] cos sn sn cos φ φ φ φ

Transformacje elementarne w prestren -D Obrót opsuje w konsekwencj macer cosφ R( φ ) snφ snφ cosφ Parametrem transformacj obrotu jest lcba φ (kąt obrotu).. Transformacje elementarne w prestren -D Wnosek: Po wprowadenu współrędnch jednorodnch wsstke tr transformacje elementarne opsane ostał w ten sam sposób. Współrędne punktu po wkonanu transformacj można wnacć mnożąc, wektor opsując współrędne punktu pred transformacją, pre odpowedną macer. gde [ ] [ ] M M T, S lub R Składane transformacj Składane transformacj Prkładowe adane: Obrócć obekt wokół punktu ( c, c ) o kąt φ, pomnejsając go dwukrotne. 6 4 φ 8 6 4 ( c, c ) 4 6 8 4 6 Opsać określoną wżej transformację pr pomoc woru. Posukwana transformacja ostane wnacona w klku krokach. Krok Presunęce obektu tak, ab punkt obrotu ( c, c ) nalał sę w punkce (, ). p [ ] [ ] p p p T( c, c ) 6 4 8 6 4 ( c, c ) t - c t - c 4 6 8 4 6 4

Składane transformacj Składane transformacj Krok Preskalowane obektu parametram skalowana s /, s /. 6 4 8 6 s / 4 s / 4 6 8 4 6 p p T(, ) S( s,s c c ) Krok 3 Obrócene obektu wokół środka układu współrędnch o kąt φ. φ 6 4 8 6 4 4 6 8 4 6 p p T(, ) S( s,s c c ) R( φ ) Składane transformacj Składane transformacj Krok 4 Presunęce obektu tak, ab punkt (, ) nalał sę w punkce ( c, c ). 6 Transformacja ostała naleona. Jej macer może ostać wlcona po pomnożenu cterech macer transformacj elementarnch. p p T(, ) S( s,s c c 4 8 6 4 ( c, c ) 4 6 8 4 6 ) R( φ )T(, ) c c Transformacja ogólnejsa M T(, ) S( s,s Można pokaać, że c c m M m m m m m ) R( φ )T(, Oblcane nowch współrędnch punktu; 4 dodawana mennoprecnkowe, 4 mnożena mennoprecnkowe. 3 3 d d ) 5

Składane transformacj Składane transformacj Inne transformacje (prkład): Ne wsstke transformacje mogą bć wrażone jako łożena trech, defnowanch upredno transformacj elementarnch. Cęsto stosuje sę, dla prkładu: Odbce ( reflecton ) : Ścnane ( shear ) : SH (, ) (, ) (, ) (, ) [ ] [ ] (, ) (, ) [ ] [ ] SH Ogólna procedura wualacj -D Ogólna procedura wualacj -D Okno obserwatora (Wndow) Okno urądena (Vewport) Algortm wualacj -D. Zdefnować obekt w układe współrędnch obserwatora. wma vma. W układe współrędnch obserwatora określć okno obserwatora wm n wm wma vmn vmn vma 3. W układe współrędnch urądena określć okno urądena. 4. Zmodfkować ops obektu usuwając te element, które najdują sę poa oknem obserwatora (obcnane). n Układ współrędnch obserwatora (World Coordnates) Układ współrędnch uradena (Devce Coordnates) 5. Pretransformować ops obektu wnętra okna obserwatora do wnętra okna urądena, stosując transformację: 6

Ogólna procedura wualacj -D Obcnane (clppng) p v p w T( w mn, w mn )S( s,s )T( v mn, v mn ) Okno obserwatora (Wndow) Okno urądena (Vewport) pr cm s v ma w ma v mn w mn s v ma w ma v mn w mn 6. Narsować obra obektu na ekrane Obcnane odcnka - algortm Cohena Sutherlanda Założene: W prestren obserwatora dan jest bór odcnków. Każd odcnek opsan jest pre punkt pocątkow końcow. Obcnane Obcnane Kodowane obsarów w prestren obserwatora: P wma P Okno obserwatora wmn wmn wma Prkładow układ odcnków w prestren obserwatora bt - na lewo od okna obserwatora, bt - na prawo od okna obserwatora, bt3 - w dół od okna obserwatora, bt4 - w górę od okna obserwatora. 7

Obcnane Krok Dla każdego punktu końcowego odcnka oblcć różnce współrędnch punktu końcowego granc okna obserwatora. Krok α α α α w mn w ma 3 w mn 4 w ma Zakodować wsstke punkt końcowe odcnków według reguł: jeżel α > to bt jeżel α to bt Obcnane Krok 3 Sprawdć kod par punktów końcowch dla wsstkch odcnków. Jeżel:. kod P kod P - odcnek leż całkowce wewnątr okna obserwatora.. bt dla P bt dla P - odcnek leż całkowce na ewnątr okna obserwatora. poostawć odcnk leżące wewnątr okna, usunąć odcnk leżące na ewnątr okna, jeśl wcerpano w ten sposób wsstke odcnk akońcć algortm, w precwnm prpadku wkonać krok 4. Obcnane Obcnane wma wmn P wmn P wma Efekt dałana algortmu po wkonanu kroku 3 Krok 4 Dla poostałch odcnków, którch punkt końcowe leżą na lewo, lub na prawo od granc okna oblcć nowe współrędne tch punktów według worów: wmn dla punktów leżącch na lewo od okna, wma dla punktów leżącch na prawo okna, gde k + m(, - nowe współrędne punktu końcowego, k, k - popredne współrędne punktu. Zakodować nowe punkt końcowe według reguł opsanej w kroku. Powtórć krok 3. k ) 8

Obcnane Obcnane wma P Dla poostałch odcnków, którch punkt końcowe leżą pod, lub ponad grancam okna oblcć nowe współrędne tch punktów według worów: wmn dla punktów leżącch ponżej okna, wmn P wmn wma wma dla punktów leżącch powżej okna, k + ( k ) / m gde, - nowe współrędne punktu końcowego, k, k - popredne współrędne punktu. Efekt po wkonanu perwsego prebegu kroku 3 Zakodować nowe punkt końcowe według reguł opsanej w kroku. Powtórć krok 3. Obcnane OpenGL wualacja -D Zadane: P wma 3 P.5 wmn wmn wma -.5-5 5 3 Końcow efekt dałana algortmu obcnana - - - -.5.5 Układ obserwatora Układ urądena 9

OpenGL wualacja -D OpenGL wualacja -D W kode programu pownn sę naleźć męd nnm następujące funkcje. glutintwndowse(3, 3); glvewport(5, 5,, ); glortho(-.5,.5,-.5,.5,., -.);.5 -.5 - - - - -.5.5 glortho(-.5,.5,-.5,.5,., -.); 3 5 5 3 glutintwndowse(3, 3); glvewport(5, 5,, );

Modele skeletowe (wre frames) MODELE OBIEKTÓW 3-D cęść V, V, - werchołk (verte) E, E, - krawęde (edge) V E E E 4 P P Plan wkładu: P, P, - ścan (polgon surface) V E 5 V 4 E 3 V 3 Modele skeletowe Równane powerchn w postac uwkłanej Model skeletow - bór werchołków, krawęd ścan (weloboków) połąconch tak, że każda krawędź jest wspólna prnajmnej dla dwóch ścan. Modele skeletowe Problem: Jak budować model skeletow? Jak efektwne apsać budowan model? Metod budow model skeletowch pretworene adanego w postac równana matematcnego opsu modelowanej powerchn, nterakcjne sposob tworena modelu, wkorstujące realn obekt w postac brł, urądene do wnacana współrędnch punktu w prestren (skaner 3-D) odpowedne algortm, łącące uskane w wnku skanowana punkt krawędam. Modele skeletowe - budowa Pretwarane opsu adanego w postac równana Najcęścej pretwarane są w równana powerchn apsane w postac parametrcnej. f f f ( u,v) ( u,v) ( u,v) u,v (u,v) v u dedna parametrcna prestreń 3-D Budowa modelu skeletowego powerchn polega na: podale dedn parametrcnej na welobok, oblcenu dla werchołków weloboków punktów w 3-D, połącenu wlconch punktów w welobok w 3-D. (,, )

Modele skeletowe - budowa Jednorodn podał dedn parametrcnej: Dedna parametrcna jest delona na take same welobok np. prostokąt, kwadrat lub trójkąt. Modele skeletowe - budowa Nejednorodn podał dedn parametrcnej (trangulacja nejednorodna): Dedna parametrcna jest delona według specjalnego algortmu na trójkąt o różnej welkośc. Efekt uskan pr podale dedn parametrcnej na równe kwadrat podał dedn parametrcnej model skeletow powerchn Modele skeletowe - budowa Modele skeletowe - budowa Trangulacja 3-D brła apswana jest jako seć cworoścanów Trangulacja nejednorodna powala na uskane modelu łożonego e nacne mnejsej lcb trójkątów nż podał jednorodn, pr achowanu tej samej dokładnośc. Zapreentowane wżej trangulacje wkonał dr Jarosław Suger, pr pomoc własnego algortmu. Metoda elementów skońconch ( Fnte Eelement Analss FEA)

Modele skeletowe - budowa Skanowane powerchn stnejącego obektu Skaner laserowe: a) skaner dalmerem (rangng scanner) Pre laser wsłan jest mpuls śwetln. Mer sę cas od wsłana mpulsu do arejestrowana sgnału odbtego od obektu w odbornku. Powala to na wnacene odległośc badanego punktu od wercadła. Znając aktualne położene wercadła, można wlcć (,, ). laser odbornk wercadło (ruchome) obekt (,, ) Modele skeletowe - budowa b) skaner trangulacjne jedną kamerą wercadło (ruchome) sensor CCD baa laser obektw obekt (,, ) Laser wsła wąkę śwatła. Mer sę odchlene obrau ośwetlonego punktu od os sensora CCD. Pr najomośc położena wercadła ba ( jest awse stała) można wlcć (,, ). Modele skeletowe - budowa c) skaner trangulacjne dwema kameram Modele skeletowe - budowa dokładność asęg skanerów laserowch sensor CCD obektw błąd baa laser obekt (,, ) sensor CCD obektw Laser wsła wąkę śwatła. Rejestruje sę jednoceśne dwe klatk obraam meronego punktu. Presunęce obraów punktu pomęd klatkam ora najomość ba powala wlcć (,, ). odległość punktu skaner dalmerem skaner trangulacjn (mała baa) skaner trangulacjn (duża baa) 3

Modele skeletowe - budowa Prkład : Modele skeletowe - budowa Prkład : Anmacja twar mówącego cłoweka Goddess Orgnal se: 9 3 cm Ponts: 7475 Rotatng Stage: es Polgons: 48546 Completon tme: 4 hours Author: Mchael Bassett, Mnolta Europe GmbH, German Fragment prac dplomowej Krstofa Moskw Modele skeletowe - aps Metod apswana danch dla model skeletowch Repreentacja bepośredna: V P P V V 3 Każda ścana opsana jest lstą współrędnch werchołków. V 4 ((,, )(,,, )(,,, )) ( V,V, ) P 4 4 4 V4 ((,, )(,,, )(,,, )) ( V,V, ) P 3 3 3 4 4 4 3 V4 Modele skeletowe - aps Repreentacja bepośredna: Własnośc opsu: werchołk na lstach ścan powtarają sę, modfkacja opsu jest trudna ( presunęce werchołka wmaga naleena wsstkch ścan wspólnch dla werchołka modfkacj odpowednej trójk współrędnch), pr rsowanu krawęde wspólne dla dwóch ścan będą rsowane dwukrotne. 4

Modele skeletowe - aps Modele skeletowe - aps Repreentacja pr pomoc wskaźnków na lstę werchołków:. Każd werchołek apsan jest na lśce werchołków.. Ścan apswane są jako lst wskaźnków na element lst werchołków. V V P P V 4 ((,, ),...,(,, )) ( V,V,V, ) V 4 4 4 3 V4 V 3 P (,,4) P (,3,4) Repreentacja pr pomoc wskaźnków na lstę werchołków: Własnośc opsu: werchołek jest apswan tlko jeden ra, modfkacja współrędnch werchołka jest łatwa, trudno naleźć ścan o wspólnej krawęd, pr rsowanu krawęde wspólne dla dwóch ścan będą rsowane dwukrotne, trudno wpełnać obra ścan. Modele skeletowe - aps Modele skeletowe - aps Repreentacja pr pomoc wskaźnków na lstę krawęd:. Każd werchołek apsan jest na lśce werchołków.. Tworona jest lsta krawęd. 3. Ścan apswane są jako lst wskaźnków na element lst krawęd. V V,,,...,,, V,V,V, (( ) ( )) ( ) 4 4 4 3 V4 ( V,V,P, λ) (,,,) ( V,V3,P, λ) (,3,,) ( V3,V4,P, λ) ( 3,4,,) ( V4,V,P,P ) ( 4,,,) ( V,V,P, λ ) ( 4,,,) E E E3 E4 E 5 4 V E E E 4 P P ( E,E,E ) (,4,5) ( E,E,E ) (,3,4) P 4 5 E 5 P 3 4 V 4 E 3 V 3 Repreentacja pr pomoc wskaźnków na lstę krawęd: Własnośc opsu: werchołek jest apswan tlko jeden ra, modfkacja współrędnch werchołka jest łatwa, trudno naleźć ścan o wspólnej krawęd, 5

Modele skeletowe - geometra Welobok a płascna Element rachunku wektorowego: wektor - P [ ] Punkt w prestren 3-D będe dalej traktowan jako wektor. Suma wektorów [ + + ] P + Ilocn wektora lcb + P ap [ a a a ] Modele skeletowe - geometra Ilocn skalarn P P + + Ilocn wektorow u [ ] u [ ] u [ ] P P [,, ] u det u u Modele skeletowe - geometra Równane płascn wnacanej pre werchołk weloboku, wektor normaln dla tej płascn: Równane płascn A + B+ C+ D. Wnacane wektora normalnego [ A, B, C ] do płascn Dla trech werchołków weloboku P, P, P 3 oblcć: [ A B C] ( P P ) ( P ) 3 P Jeżel [ A, B, C ] [,, ] to werchołk są współlnowe ne określają płascn. Należ w takm prpadku wbrać nne werchołk ponowne oblcć wektor normaln. Modele skeletowe - geometra. Oblcene współcnnka D Oblcone wceśnej współcnnk A, B, C współrędne dowolnego werchołka wstawć do równana płascn wlcć D. Dla różnch trójek werchołków możem otrmać różne równana płascn w prpadku gd welobok ne jest płask. Ab otrmać welobok lub układ weloboków płaskch można:. Podelć welobok na mnejse welobok płaske.. Zmodfkować współrędne werchołków tak, ab nowe werchołk leżał na płascźne możlwe najblżsej (w sense pewnego krterum) werchołkom pred modfkacją. 6

Równane powerchn w postac uwkłanej Postać uwkłana równana powerchn f (,, ) Powerchne drugego stopna ( kwadrk ): lub f (,, ) A + B + C + D+ E+ + F+ G+ H+ J+ K A D G H [ ] F G D B E H F E C J J K Równane powerchn w postac uwkłanej - kwadrk Prkład:. Płascna A B C... F. Sfera f (,, ) G+ H+ J+ K f (,, ) + + r Równane powerchn w postac uwkłanej - kwadrk 3. Elpsoda, ) a + + b c f (, Równane powerchn w postac uwkłanej - kwadrk 5. Stożek (,, ) a b c f 4. Clnder (,, ) a + b f 6. Hperboloda (,, ) a + b c f 7

Równane powerchn w postac uwkłanej - kwadrk 7. Paraboloda (,, ) a + c f 4 f Zalet stosowana kwadrk w grafce komputerowej: Łatwe oblcane wektora normalnego do powerchn r f N f f Wektor normaln można wnacć analtcne. Równane powerchn w postac uwkłanej - kwadrk Łatwe oblcane punktów precęca powerchn prostą (ważne w algortmach metod śledena promen ). Łatwe testowane c dan punkt leż na powerchn ( podstawć współrędne punktu do równana sprawdć c wnk jest blsk era ). Łatwe oblcane dla danch, (ważne w algortmach realującch usuwane powerchn newdocnch ) Stosunkowo łatwe oblcane krwej precęca jednej kwadrk drugą. Równane powerchn w postac uwkłanej - kwadrk Wad opsu w postac kwadrk: Trudna generacja punktu leżącego na powerchn Trudna generacja fragmentu powerchn np. połow c ćwartk sfer Równane powerchn w postac uwkłanej Powerchna opsane równanam nnm nż kwadrk: Powerchna trecego stopna f (,, ) 3 + 3 + 3 3 ( + + ) 8

Powerchne opsane parametrcne MODELE OBIEKTÓW 3-D cęść Plan wkładu: Powerchne opsane parametrcne Krwe parametrcne w 3-D (krwa Hermte a) Interakcjne modelowane kstałtu krwej (krwa Beera) v mn ( u,v ) ( u,v ) ( u,v ) v ma f ( u,v ) f ( u,v ) f ( u,v ) (u,v) v u mn u ma dedna parametrcna u u v mn mn u u v v ma ma (,, ) prestreń 3-D Powerchne opsane parametrcne Powerchne opsane parametrcne Prkład: Sfera o promenu r środku (,, ) ( u,v ) r sn( π u )cos( πv ) ( u,v ) r sn( π u )sn( πv ) ( u,v ) r cos( π u ) u v Łatwa generacja punktu leżącego na powerchn (dla par parametrów u, v łatwo jest wnacć ( u,v ),( u,v ),( u,v ) ). Łatwa generacja fragmentu powerchn np. prowadm oblcena punktów dla predałów u, v uskujem tlko cęść powerchn sfer. Powerchna o równanu ( u,v ) u sn( u )cos( v ) ( u,v ) ucos( u )cos( v ) ( u,v ) u sn( v ) u π v π Jak napsać równane powerchn, której kstałt sobe wobrażam?

Krwe parametrcne w 3-D Krwe parametrcne w 3-D Równana parametrcne krwej: (u) (u) Prkład: ( u ) f ( u ) ( u ) f ( u ) ( u ) f ( u ) u mn u u Krwa opsana welomanam 4-go stopna. 4 3 75 3 ( u ) u + 75u u + u 4 3 5 4 ( u ) u + 5u u + u 9 9 ( u ) ma u u ( u ) f ( u ) ( u ) f ( u ) ( u ) ( u ) ( u ) f ( u ) f ( u ) u u u Krwe parametrcne w 3-D Krwe parametrcne w 3-D Jak napsać równane krwej welomanowej, której kstałt sobe wobrażam? Problem :. Jak wbrać stopeń welomanów? nsk stopeń - mała elastcność wsok stopeń - trudne do opanowana osclacje funkcj wrost łożonośc oblcenowej Parametrcne krwe trecego stopna: Krwa adana jest równanem: gde Q ( u ) [ ( u ) ( u ) ( u )] T 3 ( u ) a u + b u + c u+ d 3 ( u ) a u + b u + c u+ d 3 ( u ) a u + b u + c u+ d u. Jak doberać współcnnk welomanów, ab w prewdwaln sposób wpłwać na kstałt modelowanej krwej? jeżel podstawć ora U 3 [ u u u ] T

Krwe parametrcne w 3-D Krwe parametrcne w 3-D to Q( u ) a C a a b b b c c c d d d T [ ( u ) ( u ) ( u )] C U Krwa Hermte a : Charles Hermte (8-9) Krwa określona jest pre cter ograncena: dwa punkt krwej ( pocątkow końcow), dwa wektor stcne do krwej (pochodne) w tch punktach. Jednonacne określene krwej wmaga podana wartośc parametrów. Wektor stcn w punkce pocątkowm P punkt pocątkow R P punkt końcow R Wektor stcn w punkce końcowm Krwe parametrcne w 3-D Jak współcnnk równana krwej ależą od ogranceń? Można napsać, że lub nacej Q( u ) Q( u ) ( u ) G ( u ) G ( u ) G C U G M U m m m m 3 4 m m m m 3 4 m m m m 3 3 33 34 m m m m 4 4 43 44 3 u u u Krwe parametrcne w 3-D gde M - macer baowa Hermte a (na rae nenana) G - macer geometr ( awera wmenone ograncena ) G P P R R G G P P R R G P P R R ( P,P,P ), ( P,P,P ) - współrędne punktu pocątkowego końcowego, ( R,R,R ),( R,R,R ) - wektor stcne (pochodne) w punktach, pocątkowm końcowm. Jak wnacć macer M? 3

Krwe parametrcne w 3-D Można auważć, że gde ( u ) Jeśl tak, to a 3 [ u u u ] T 3 u + bu + cu+ d G M G [ P P R R ] ( u ) G [ 3u u ] T M Uwględnając nałożone wceśnej ograncena uskuje sę ( ) ( ) ( ) ( ) P P R R G M G M G M G M T [ ] T [ ] T [ ] [ 3 ] T Krwe parametrcne w 3-D Sformułowane wżej cter równane apsane w postac macerowej prjmuje formę 3 [ P ] P R R G G M Ab równane bło spełnone mus achodć M 3 3 3 Krwe parametrcne w 3-D Krwe parametrcne w 3-D Ostatecne, równane krwej Hermte a można apsać jako Q( u ) lub w postac rownętej T [ ( u ) ( u ) ( u )] G M U ( u ) P P ( u ) 3 P ( u 3u + ) + P ( u ( u ) P P R R 3 3 + R ( u u + u ) + R ( u u ) R R 3 + 3u ) + Krwą można apsać węc jako kombnację lnową wektorów składowch macer geometr G funkcj baowch Hermte`a B(u). Q( u ) P B ( u ) + P B ( u ) + R B( u ) + RB3 ( u ) Poscególne weloman baowe mają następując prebeg. 3 B ( u ) u 3u + B + 3 ( u ) u 3u Weloman w nawasach nosą nawę funkcj baowch Hermte a. 3 B ( u ) u u + u B 3 3( u ) u u 4

Krwe parametrcne w 3-D Krwe parametrcne w 3-D Krwa Hermte`a (prkład, własnośc): Dla krwej o pocątku w punkce (P o, P o, P o ) końcu w (P, P, P ), sterowane prebegem krwej realuje sę pre dobór wektorów stcnch (R o, R o,r o ) (R, R, R ) (pochodnch) aceponch w tch punktach. R R R R R o R o R R R R R R Krwe parametrcne w 3-D Interakcjne modelowane kstałtu krwej (krwa Beera) Perre Beer (9-999) (Renault Automobles) R R R R Beer, P., Numercal Control - Mathematcs and Applcatons, Wle, London, 97 Podsumowane:. Krwa Hermte a jest określona pr pomoc welomanów 3-go stopna.. Jako dane, projektant podaje dwa punkt (pocątkow końcow) dwa wektor (cter lcb) określające pochodne w tch punktach. 3. Sterowane prebegem krwej odbwa sę pre manpulacje wektoram pochodnej. 4. Ne awse łatwo jest uskać pożądan kstałt krwej. Krwa określona jest pre tw. punkt kontrolne: - punkt pocątkow końcow (należą do krwej), - nne punkt (ne należą do krwej). 5

Interakcjne modelowane kstałtu krwej (krwa Beera) Defncja krwej Beera: Dan jest bór n+ punktów kontrolnch P k P P P P k,,..., ( ) n k k k k gde P k,p k, P k są współrędnm,, punktu kontrolnego. Krwa Beera opsana jest układem równań parametrcnch ( u ) ( u ) n P k n P k n ( u ) P k k k k B B B kn kn kn ( u ) ( u ) ( u ) u Interakcjne modelowane kstałtu krwej (krwa Beera) gde n k n k Bkn ( u ) u ( u ) k,,...,n k pr cm n n! k k!( n k )! Weloman B kn (u) nosą nawę welomanów Bernstena. Stopeń welomanów B kn (u) ależ od lcb punktów kontrolnch. Wektor stcne do krwej w punktach, pocątkowm końcowm spełnają warunk Q ( ) n( P P ) Q ( ) n( Pn Pn ) Interakcjne modelowane kstałtu krwej (krwa Beera) Prkład: n 3, (cter punkt kontrolne) Q( u ) P B3( u ) + P B3( u ) + P B3( u ) + P3 B33( u ) Interakcjne modelowane kstałtu krwej (krwa Beera) Własnośc krwch Beera:. B 3 3 ( u ) ( u ) B 3 ( u ) 3u( u ). Krwa dla pewnego układu punktów kontrolnch, n 3 B3( u ) 3u ( u ) B 3 33( u ) u Zmenono położene punktu kontrolnego P 6

Interakcjne modelowane kstałtu krwej (krwa Beera) 3. Interakcjne modelowane kstałtu krwej (krwa Beera) 5. 4. Krwa dla nnego układu punktów kontrolnch, n 3 6. Welokrotn punkt kontroln, n 5 Krwa dla węksej lcb punktów kontrolnch, n 4 Zamknęt układ punktów kontrolnch, n 5 Interakcjne modelowane kstałtu krwej (krwa Beera) Interakcjne modelowane kstałtu krwej (krwa Beera) 6. Podsumowane:. Krwa Beera jest określona welomanam o stopnu ależnm od lcb punktów kontrolnch.. Jako dane projektant podaje tlko punkt kontrolne. 3. Sterowane prebegem krwej odbwa sę pre manpulacje położenem punktów kontrolnch. 4. Premescene jednego punktu kontrolnego, mena kstałt całej krwej (wada!). Gładke połącene dwóch krwch Beera: 7

Interakcjne modelowane kstałtu krwej (krwa Beera) Prkład astosowana krwej Beera: 5 5 P P P 3 P P 5 P 4 - -5 5 Interakcjne modelowane kstałtu krwej (krwa Beera) Równana uskanej krwej mają postać: 5 4 3 ( u ) 9u + 5u 7u + 8u 45u 4 3 ( u ) 6u 3u + 6u u ( u ) Jeśl skorstać smetr obrócć krwą wokół os, można otrmać równana parametrcne powerchn 5 4 3 ( u,v ) ( 9u + 5u 7u + 8u 45u )cos( πv ) 4 3 ( u,v ) 6u 3u + 6u 5 4 3 ( u,v ) ( 9u + 5u 7u + 8u 45u )sn( πv ) u v Interakcjne modelowane kstałtu krwej (krwa Beera) Powerchna wgląda tak: 8

Koncepcja krwej sklejanej MODELE OBIEKTÓW 3-D cęść 3 Plan wkładu: Koncepcja krwej sklejanej Jednorodne krwe B-sklejane Nejednorodne krwe B-sklejane Powerchne Beera, B-sklejane NURBS Istotną praktcnego punktu wdena wadą krwej Beera bł fakt, że manpulacja położenem jednego punktu kontrolnego powodowała manę kstałtu całej krwej. Można tą nedogodność usunąć, budując krwą segmentów połąconch (sklejonch) tak, że punkt ch połącena ne są dla obserwatora wdocne. Krwa parametrcna budowana segmentów ( u ) ( u ) ( u ) f ( u ) f ( u ) f ( u ) u u u s u u (,, ) u u s dedna parametrcna prestreń 3-D Koncepcja krwej sklejanej Funkcje f (u), f (u), f (u) ostaną apsane tera w trochę bardej skomplkowan sposób f ( u ) u u< u... f ( u ) f k ( u ) uk u< uk f ( u ), f( u ) podobne... f s( u ) us u us Dednę parametrcną, cl predał [u o, u s ] podelono na podpredał[u o, u ),[u, u ) [u s-, u s ] dla każdego nch defnowano funkcje f (u), f (u), f (u) osobno. Punkt podału u o, u, u,,u s-, u s nawam węłam krwej. Koncepcja krwej sklejanej Prkład: ( u ) u ( u ) ( u ) u ( u ) ( u ) 3 u< u u< u ( u ) f ( u ) ( u ) f ( u )

Koncepcja krwej sklejanej Koncepcja krwej sklejanej ( u ) ( u ) f f ( u ) ( u ) u Jak achowuje sę parametrcn wektor stcn krwej w punkce połącena segmentów ( dla poprednego prkładu w punkce u )? Cągłość męd segmentam krwej: Krwa opsana jest równanem Q( u ) T [ ( u ) ( u ) ( u )] u u us Pochodna Q (u) wana jest parametrcnm wektorem stcnm do krwej jest węc określona jako Cągłość geometrcna:. Jeżel dwa segment krwej łącą sę e sobą, to krwa ma cągłość geometrcną G.. Jeżel kerunk (lec nekonecne długośc) wektorów stcnch segmentów w punkce połącena są równe, to krwa ma cągłość geometrcną G. Q ( u ) T [ ( u ) ( u ) ( u )] u u us Koncepcja krwej sklejanej Jednorodne krwe B-sklejane (B-splne) Cągłość parametrcna:. Jeżel wektor stcne dwóch segmentów w punkce połącena są równe (kerunk długośc wektorów są równe), to krwa ma w tm punkce cągłość parametrcną C.. Jeżel kerunk długośc wektorów stcnch segmentów n d du n [ Q( u )] są do n-tej pochodnej równe, to krwa ma cągłość parametrcną C n. Duck Splne Zdjęca pochodą wkładu CS 445 / 645 Introducton to Computer Graphcs, wgłasanego na Unverst of Vrgna

Jednorodne krwe B-sklejane (B-splne) Jednorodne krwe B-sklejane (B-splne) Dan jest bór n + (n 3) punktów kontrolnch P k P P P P k,.,,,. ( ) n k k k k gde P k, P k, P k są współrędnm,, punktu kontrolnego. Krwa B-sklejana składa sę n - segmentów welomanowch trecego stopna Q ( u ), Q ( u ),...,Q ( u ),...,Q ( u ) 3 4 Punkt u połącena segmentów Q (u) Q + (u) ora punkt u 3 u n nawa sę węłam krwej. Krwa B-sklejana jest jednorodna jeśl węł są w jednakowch odstępach, cl u 3 ora u + u n Konstrukcja krwej B- sklejanej: Każd segment krwej określon jest pre cter punkt kontrolne: segment Q 3 (u), pre punkt P, P, P, P 3 dla u <, segment Q 4 (u), pre punkt P, P, P 3, P 4 dla u <, segment Q (u), pre punkt P -3, P -, P -, P dla - 3 u <. Jednorodne krwe B-sklejane (B-splne) Macer geometr dla - tego segmentu krwej B- sklejanej można apsać jako G P P P P B [ ] 3 Jeżel defnuje sę wektor, U 3 [( u u ) ( u u ) ( u u ) ] T to t segment krwej można wrać w postac Q ( u ) GB M B U u u< u+ Określene krwej B-sklejanej można sprowadć tera do wnacena macer M B (podobne jak to mało mejsce dla krwej Hermte a). Pr wnacanu macer M B należ prjąć, że w punktach połącena segmentów spełnone jest, że: Jednorodne krwe B-sklejane (B-splne) krwa ma cągłość parametrcną C. Pr prjęcu tego warunku można pokaać, że rowąanem adana posukwana macer M B, jest macer M B 3 6 3 3 6 4 3 3 3 3

Jednorodne krwe B-sklejane (B-splne) Tak węc, t segment krwej jest opsan tera, (po astąpenu u u pre u) worem Q ( u u ) G P + P B 3 M B U 3 3 ( u ) 3u 6u + 4 + P 6 6 3 3 3u + 3u + 3u+ u + P 6 6 u< Jednorodne krwe B-sklejane (B-splne) Własnośc jednorodnch krwch B-sklejanch:. Krwa dla pewnego układu punktów kontrolnch, n 3 Jednorodne krwe B-sklejane (B-splne) Jednorodne krwe B-sklejane (B-splne). 4. 3. Krwa budowana dwóch segmentów, n 4 5. Podwójn punkt kontroln, n 4 Krwa budowana trech segmentów, n 5 Zamknęt układ punktów kontrolnch, n 5 4

Jednorodne krwe B-sklejane (B-splne) Nejednorodne krwe B-sklejane Podsumowane:. Krwa B - sklejana jest określona pr pomoc welomanów 3-go stopna.. Jako dane, projektant podaje punkt kontrolne. 3. Manpulacja punktem kontrolnm ne mena kstałtu całej krwej (w prpadku węksej lcb punktów). 4. Krwa ne acna sę ne końc w perwsm w ostatnm punkce kontrolnm (wada!). Dan jest bór n + (n 3) punktów kontrolnch P k P P P P k,.,,,. ( ) n k k k k gde P k, P k, P k są współrędnm,, punktu kontrolnego. Nejednorodna krwa B-sklejana, budowana welomanów stopna t adana jest równanam ( u ) n P k k n ( u ) P k k n ( u ) P k k N N N k,t k,t k,t ( u ) ( u ) ( u ) u n t+ Nejednorodne krwe B-sklejane pr cm, weloman baowe N k,t (u) określone są rekurencjne równanam N k, uk u< uk+ ( u ) w prpadku precwnm u uk uk+ t u N k,t ( u ) N k,t ( u ) + N k+,t ( u ) u u u u k+ t k k+ t Wartośc parametru u j (węł krwej) generowane są natomast według reguł u j j t+ n t+ j< t t j n j> n k+ j,,...,n + t Nejednorodne krwe B-sklejane Prkład: Pęć punktów kontrolnch n 4. Weloman trecego stopna t 3. Układ węłów, generowan na podstawe powżsej ależnośc ma postać { 7 u,u,...,u } {,,,,, 3, 3, 3 } Oblcone dla tch węłów na podstawe ależnośc rekurencjnej, weloman baowe mają następując prebeg N, 3 ( u ) N 3 ( u ), 5

Nejednorodne krwe B-sklejane Nejednorodne krwe B-sklejane Własnośc nejednorodnch krwch B-sklejanch: (cenką lną anacono krwą Beera ). N 3 (, u ) N 3, 3 ( u ) Można auważć, że N 3 ( u ) 4, N 3,3( u ) + N,3( u ) + N,3( u ) + N,3( u ) + N 4, ( u ) Krwa dla welomanów trecego stopna, n 3, t 3 Nejednorodne krwe B-sklejane Nejednorodne krwe B-sklejane. 4. 3. Krwa dla welomanów cwartego stopna, n 3, t 4 5. Krwa dla pęcu punktów kontrolnch, n 4, t 3 Krwa dla pęcu punktów kontrolnch, n 4, t 3 Zmenono położene punktu kontrolnego P 6

Nejednorodne krwe B-sklejane Nejednorodne krwe B-sklejane 6. Podsumowane: 7. Dałane podwójnego punktu kontrolnego. Stopeń welomanów opsującch nejednorodną krwą B-sklejaną jest doberan (dodatkow stopeń swobod).. Jako dane, projektant podaje punkt kontrolne, punkt pocątkow, końcow punkt pośredne. 3. Krwa ropocna sę w punkce pocątkowm końc w punkce końcowm. 4. Sterowane prebegem krwej odbwa sę pre manpulacje położenem punktów kontrolnch. Zamknęt układ punktów kontrolnch Nejednorodne krwe B-sklejane Podsumowane c.d. 5. Premescane punktu kontrolnego powoduje lokalną manę kstałtu krwej. 6. Łatwo można tworć krwe gładko amknęte. 7. Wor opsujące nejednorodne krwe B-sklejane są stosunkowo skomplkowane. 8. Istneją specjalne algortm numercne prspesające oblcane punktów na krwej. Powerchne Beera, powerchne B-sklejane NURBS Pr konstruowanu krwej Beera, projektant jako dane podawał cąg punktów kontrolnch P, P, P, P P P P 3 P ( P, P, P ) W prpadku budow powerchn Beera, jako dane podawać należ satkę punktów kontrolnch P, P, P, P P P P P P P P P P jk ( P jk, P jk, P jk ) 7

Powerchne Beera, powerchne B-sklejane NURBS Powerchna Beera: Dana jest satka bór (m+) (n+) punktów kontrolnch P jk P P P P j,,...,m k,.,,,. ( ) n jk jk jk jk gde P jk, P jk, P jk są współrędnm,, punktu kontrolnego. Powerchna Beera opsana jest układem równań gde B j,m ( u,v ) ( u,v ) ( u,v ) ( u ), B m P m P m n jk j k n jk j k n P k, n jk j k B B B j,m j,m j,m ( u )B ( u )B ( u )B k,n k,n k,n ( v ) ( v ) ( v ) ( v ) - weloman Berenstena u v Powerchne Beera, powerchne B-sklejane NURBS Prkład: Dana jest satka 5 5 5 punktów kontrolnch (,,4) (,,4) (,,4) ( 3,,4) ( 4,,4) (,,3) (,,3) (,,3) ( 3,,3) ( 4,,3) [ P jk ] (,,) (,,) (,6,) ( 3,,) ( 4,,) (,,) (,,) (,,) ( 3,,) ( 4,,) ( ) ( ) ( ) ( ) ( ),,,,,, 3,, 4,, (,, 4) (,, 4) (,, 4) (,, 3) (,, ) (,, ) (, 6, ) (4,, ) (4,, ) (3,, ) (,, ) (,, ) (4,, ) Powerchne Beera, powerchne B-sklejane NURBS Powerchna Beera ropęta na satce wgląda tak: Powerchne Beera, powerchne B-sklejane NURBS Nejednorodna powerchna B-sklejana: Dana jest satka bór (m+) (n+) punktów kontrolnch P jk P P P P j,,...,m k,.,,,. ( ) n jk jk jk jk gde P jk, P jk, P jk są współrędnm,, punktu kontrolnego. Nejednorodna powerchna B-sklejana opsana jest równanam ( u,v ) ( u,v ) ( u,v ) m P m P m n jk j k n jk j k n P jk j k N N N j,s j,s j,s ( u )N ( u )N ( u )N k,t k,t k,t ( v ) ( v ) ( v ) u m s+ v n t+ gde s t są stopnam welomanów N j,s (u) N k,t (v) 8

Powerchne Beera, powerchne B-sklejane NURBS Prkład: Ten sam, co w poprednm prkłade układ 5 punktów kontrolnch (, 6, ) Powerchne Beera, powerchne B-sklejane NURBS Nejednorodna powerchna B-sklejana ropęta na satce wgląda tak: (,, 4) (,, 4) (,, 4) (,, 3) (,, ) (,, ) (4,, ) (4,, ) (3,, ) (,, ) (,, ) (4,, ) Powerchne Beera, powerchne B-sklejane NURBS Porównane: Powerchne Beera, powerchne B-sklejane NURBS Powerchne NURBS (Non-Unform Ratonal B-Splne): Powerchna Beera Nejednorodna powerchna B - sklejana ( u,v ) ( u,v ) ( u,v ) m w jkpjkn j,s( u )N k,t ( v ) j k m n w N ( u )N ( v ) m j k w jkpjkn j,s( u )N k,t ( v ) j k m n w N ( u )N ( v ) m j k w jk Pjk N j,s( u )N k,t ( v ) j k m n w N ( u )N ( v ) j k j,s w jk - wag punktów kontrolnch P jk n n n jk jk jk j,s j,s k,t k,t k,t u m s+ v n t+ 9

Układ współrędnch, asad rutowana Lewoskrętn układ współrędnch rutna: RZUTOWANIE Plan wkładu: Układ współrędnch, asad rutowana Rutowane równoległe Rutowane perspektwcne Ogóln prpadek rutowana rutna (ekran) obserwator oś oś oś Jeśl patrm dodatnego kerunku os w stronę środka układu współrędnch, to obrót o 9 w kerunku godnm ruchem wskaówek egara, prekstałc jedną dodatną oś w drugą. Wartośc współrędnej są wękse dla punktów leżącch dalej od obserwatora. Układ współrędnch, asad rutowana Układ współrędnch, asad rutowana Zadane rutowana: Rutowane równoległe Dane: ops obektu w układe współrędnch. płascna rutowana (rutna Π ). Jak uskać obra obektu na rutn? P P P P Π rutna Stosuje sę wkle jeden dwóch sposobów rutowana.. Rutowane równoległe. Rutowane perspektwcne obserwator Punkt P P ostał prenesone na rutnę, wdłuż prostch równoległch. Punkt precęca prostch rutowana rutną są obraam rutowanch punktów.

Układ współrędnch, asad rutowana Rutowane perspektwcne P P P P Π rutna obserwator (środek projekcj) Punkt P P ostał prenesone na rutnę, wdłuż prostch precnającch sę w jednm punkce (środku projekcj). Punkt precęca prostch rutowana rutną są obraam rutowanch punktów. Rutowane równolegle Wróżna sę wkle dwa prpadk : proste rutowana precnają rutnę pod kątem prostm (rut ponow), proste rutowana precnają rutnę pod kątem nnm nż kąt prost (rut ukośn).. Rut ponow Proste rutowana precnają rutnę pod kątem prostm. Prkład: Obekt - seścan jednostkow Rutna Π - płascna (-) (,,) (,,) (,,) (,,) (,,) (,,) (,,) Rutowane równolegle Rutowane równolegle Jeśl proste rutowana precnają rutnę pod kątem prostm, to rut obektu wgląda następująco. (,,) (,,) (,,) (,,) (,,) (,,) (,,) Jeśl rutnąπ jest płascna (-), to równana opsujące wąek męd współrędnm rutowanego punktu (,, ) a współrędnm jego rutu ( p, p, p ) prjmują postać: p p p Własnośc obraów wkonanch technką rutu ponowego: rut odcnków równoległch do rutn mają taką samą długość jak te odcnk, rut odcnków prostopadłch do rutn są punktam.

Rutowane równolegle Zastosowane rutu ponowego - rsunek techncn. Defnując rutne jako płascn (-), (-), (-), bądź płascn do nch równoległe, można uskać rut produ, boku, gór td. Dla prkładu: Rutowane równolegle. Rut ukośn Proste rutowana precnają rutnę pod kątem nnm nż kąt prost. Jak jednonacne orentować proste rutowana wględem rutn? Π rut boku rut gór (,, ) ( p, p ) α L Φ (, ) Rutowane równolegle Rutowane równolegle Ab jednonacne orentować prostą rutowana wględem rutn, próc kąta α treba adać dodatkow parametr np. kąt Φ. Z rsunku wdać, że p p + LcosΦ + LsnΦ podstawając tg α L L uskuje sę równana dalej (,, ) L L α L Φ (, ) Π ( p, p ) p p + ( L + ( L cosφ cosφ ) + tgα snφ snφ ) + tgα Parametram defnującm rut ukośn są wec kąt Φ L / tgα odległość lub para kątów Φ α. 3

Rutowane równolegle Dla prkładu seścanu jednostkowego, można pokaać nterpretację parametrów rutowana na utworonm obrae. L Powżs rsunek wjaśna także metodę konstrukcj rsunkowej rutu ukośnego seścanu. Φ Π Rutowane równolegle Prkład: Wprowadone wceśnej równana powalają na wkonwane rutów ukośnch dla dowolnch estawów parametrów L Φ. W praktce stosuje sę jednak najcęścej pewne tpowe estaw parametrów rutowana. Wkonane ostaną cter rut ukośne seścanu jednostkowego. (,,) (,,) (,,) (,,) (,,) (,,) (,,) Rutowane równolegle Rutowane równolegle o. L / tgα, α 45 (rut kawalerjsk) o. L / tgα /, α 63 (rut gabnetow) o Φ 3 o Φ 45 o Φ 3 o Φ 45 4

Rutowane perspektwcne Rutowane perspektwcne Jak na płascźne obraować obekt trójwmarowe, ab obserwator patrąc na tak obra odnósł wrażene, że wd śwat trójwmarow? Prkład (mnatura średnowecna): Nektóre cnnk jake należ uwględnć pr próbe osągnęca wrażena prestrennośc na obrae płaskm: Geometra obrau - obekt, które są w recwstośc dalej, wdają sę mnejse, - lne, które są w recwstośc równoległe, wdają sę beżne. Wpłw ośwetlena scen na to, co wd obserwator - ośwetlene powerchn obektów scen, - nterakcje śwetlne pomęd obektam, cene. La Somme le Ro (9) Brtsh Museum, London Rutowane perspektwcne Rutowane perspektwcne Flp Brunellesch (377-446) - archtekt, reźbar Paweł Uccello (397-475) - malar Kopuła katedr we Florencj Baptsterum św. Jana Flp Brunellesch jest uważan a odkrwcę śwadome stosowanej metod rutu perspektwcnego. Narsował on obra perspektwcn baptsterum św. Jana, posługując sę sstemem dwóch wercadeł. P. Uccello Btwa pod san Romano 5

Rutowane perspektwcne Masacco (4-48) - malar Rutowane perspektwcne Rafael Sant (483-5) - malar Masacco Gros cnsow Rafael Skoła ateńska Rutowane perspektwcne Rutowane perspektwcne Urądene do wkonwana rutów perspektwcnch: Albrecht Dürer (47-58) Poucene o merenu crklem lną - 55 r. Pr pomoc trech nc możes preneść na obra każdą rec, którą [tm nćm] można dosęgnąć narsować na desce. Cń ted tak: jeśl jesteś w sal, wbj w ścanę dużą splę dużm ucham prjmj, że to jest oko. Pre to [ucho] precągnj mocną nć aweś u dołu na nej ołowan cężarek: Potem postaw stół lub deskę tak daleko jak echces od ucha spl, w której jest nć. Ustaw na tm [stole] prostą [ponową] ramę poprecne do ucha spl, wżej lub nżej, w jaką echces stronę, a w tej rame nech będą drwck, które można b otwerać amkać. Prbj do nch dwe nc, które b bł tak długe jak ponowa rama jest seroka długa, u gór pośrodku ram ostaw b tak wsał. Potem rób dług metalow stft, któr na prede, na ostru małb uch gelne; prewlec preeń długą nć, która precągnęta jest pre ucho spl w ścane preneś głę długą nć pre ramę na ewnątr. Daj ją komuś nnemu do ręk plnuj dwóch nnch nc, które wsą pr rame. A tera użwaj ch tak: połóż lutnę c cokolwek c sę podoba tak daleko od ram, jak echces bleb leżała be man tak długo jak będes jej potrebował. Każ tera pomocnkow nacągać głę ncą do najbardej stotnch punktów lutn. A le ra atrma sę ona na którmś tch punktów napne długą nć, nacągnj awse dwe nc pr rame na krż, w mejscu [gde prechod] długa nć, prlepaj je w obu mejscach woskem do ram, a do pomocnka wołaj b popuścł długą nć. Wted amkaj drwck wrsowuj na desce ten sam punkt w mejscu gde nc sę krżują. Potem otweraj nów drwck cń tak samo nnm punktem - aż wpunktujes całą upełne lutnę na desce. Potem połąc lnam wsstke punkt lutn, które najdują sę na desce - wówcas obacs, co tego wjde. Możes w ten sposób odrsować nne rec. 6

Rutowane perspektwcne Rutowane perspektwcne rama drwck ucho Zależność pomęd współrędnm punktu (,, ) a punktu (,, ) opsuje układ równań parametrcnch: długa nć (,, ) ( p, p ) krótke nc (,, ) ( p, p, ) (,, ) u u ( + d )u u cężarek Jak wrać wąek męd współrędnm punktu (,, ) a współrędnm jego rutu ( p, p ) pr pomoc równań? d środek projekcj Rutowane perspektwcne Rutowane perspektwcne Ab wnacć współrędne punktu rutu ( p, p, ) należ węc oblcć u, dla którego ( + d )u Rowąanem równana jest u + d Podstawając oblcone u do układu równań parametrcnch opsującch współrędne punktu (,, ) otrmuje sę równana d p + d d p + d Jak wglądają obra perspektwcne? Prkład: d 3 (,,) (,,) (,,) (,,) (,,) (,,) (,,) d Gd d rut perspektwcn staje sę rutem ponowm. 7

Ogóln prpadek rutowana Ogóln prpadek rutowana W poprednch roważanach rutna leżała na płascźne (-). Model sntetcnej kamer: w Co robć gd rutna jest ustuowana nacej? Jak będe w takm prpadku efekt rutowana? w, w, w układ ewnętrn obekt v v Sformułowane problemu:. Dan jest układ prostokątn współrędnch ewnętrnch (world coordnates) opsan w tm układe obekt.. W układe współrędnch ewnętrnch opsan jest drug układ współrędnch prostokątnch wan układem obserwatora (vewng coordnates). v, v, v układ obserwatora Rowąane:. Zapsać obekt w układe współrędnch obserwatora (prelcć współrędne obektu układu ( w, w, w ) na układ ( v, v, v ).. Wkonać rutowane (np. perspektwcne) na płascnę ( v - v ). w v w Ogóln prpadek rutowana Ab wkonać krok najlepej jest określć transformacje łożoną ( transformacj elementarnch). Składane transformacj elementarnch może odbwać sę według następującej procedur:. Presunęce środka układu obserwatora do środka układu współrędnch ewnętrnch. Ogóln prpadek rutowana Zastosowane dla rutu perspektwcnego: Klasfkacja rutów perspektwcnch Krterum klasfkacj - lcba os układu współrędnch ewnętrnch ( w, w, w ), które precnają rutnę ( v - v ).. Obrót presunętego układu obserwatora wokół os w, tak ab oś v nalała sę na płascźne ( v - v ). obekt v w obekt w v v 3. Obrót układu obserwatora wokół os v, tak b oś v pokrła sę osą w. v w v w 4. Obrót układu obserwatora wokół os w, ab ose v v pokrł sę osam w w. w v jedna oś ( w ) precna rutnę w tr ose precnają rutnę 8

Ogóln prpadek rutowana Ogóln prpadek rutowana Jak wglądają obra perspektwcne dla różnch położeń rutn?. Perspektwa jednopunktowa (rutna ( v - v ) leż na płascźne ( w - w ) ). Poorn punkt beżnośc Na obrae perspektwcnm proste, na którch leżą obra nektórch krawęd seścanu begają sę w jednm punkce (poorn punkt beżnośc, vanshng pont). Canaletto (735-45) - Plac św. Marka w Wenecj Ogóln prpadek rutowana Ogóln prpadek rutowana. Perspektwa dwupunktowa. Dwe ose układu współrędnch ewnętrnch ( w, w, w ) precnają rutnę ( v - v ) P P Seścan jednostkow w perspektwe dwupunktowej Na obrae perspektwcnm seścanu pojawł sę dwa poorne punkt beżnośc. E. Hopper (93) - The Mansard Roof 9

Ogóln prpadek rutowana Ogóln prpadek rutowana 3. Perspektwa trójpunktowa. Tr ose układu współrędnch ewnętrnch ( w, w, w ) precnają rutnę ( v - v ) Seścan jednostkow w perspektwe trójpunktowej Na obrae perspektwcnm seścanu można anacć tr poorne punkt beżnośc. G. O'Keefe (96) - Ct Nght Ogóln prpadek rutowana Prkład: Petro Lorenett (43) - Brth of Mar Hans Memlng (49) - Flower stll-lfe

Transformacje elementarne w 3-D TRANSFORMACJE W 3-D, USUWANIE ELEMENTÓW NIEWIDOCZNYCH Plan wkładu: Transformacje elementarne w 3-D Składane transformacj Wnacane powerchn wdocnch Algortm sortowna ścan Algortm -bufora Prawoskrętn układ współrędnch: oś oś oś Jeśl patrm dodatnego kerunku os w stronę środka układu współrędnch, to obrót o 9 w kerunku precwnm do ruchu wskaówek egara, prekstałc jedną dodatną oś w drugą. Transformacje elementarne w 3-D Transformacje elementarne w 3-D Transformacje elementarne: presunęce, mana skal, obrot wokół poscególnch os układu. Współrędne jednorodne ( ) ( ) ( ) ( ) [ ] [ ] m m m m 3 4 m m m m 3 4 m m m m 3 3 33 43 m4 m 4 m34 m 44 Presunęce: Skalowane: [ ] [ ] [ ] [ ] t s t s t s

Transformacje elementarne w 3-D Transformacje elementarne w 3-D Obrot wokół os: Jeśl patrm dodatnego kerunku os w stronę środka układu współrędnch, a obrót o kąt dodatn uważa sę obrót w kerunku precwnm do ruchu wskaówek egara. Obrót wokół os : Obrót wokół os : [ ] [ ] cosθ snθ snθ cosθ [ ] [ ] cosθ snθ snθ cosθ Obrót wokół os : [ ] [ ] cosθ snθ snθ cosθ Składane transformacj Składane transformacj Obrót punktu (obektu) wokół dowolne adanej os : Sformułowane adana: Dane: ops os obrotu (,, ), (,, ), ops obektu (np. satka weloboków), kąt obrotu Θ oś obrotu Θ (,, ) (,, ) obekt Należ wnacć macer transformacj realującej obrót obektu o kąt Θ. Repreentacja os obrotu: oś obrotu Θ obekt (,, ) u (,, ) u Oś obrotu repreentowana będe pre wektor u [ a b c] acepon w punkce (,, ), pr cm v a v v b ( ) + ( ) + ( ) v c

Składane transformacj Krok procedur obrotu obektu wokół os:. Presunęce os obektu, tak ab oś obrotu prechodła pre środek układu współrędnch.. Obrócene os obektu, tak ab oś obrotu stała sę współlnowa jedną os układu współrędnch (np. osą ). - położene os na płascźne (-), - obrót wokół os 3. Obrót obektu wokół os o kąt Θ. 4. Transformacja odwrotna do wkonanej w kroku. 5. Transformacja odwrotna do wkonanej w kroku. Składane transformacj Krok Presunęce os obektu, tak ab oś prechodła pre środek układu współrędnch. Wkonane presunece opsuje macer T u (,, ) Θ Składane transformacj Składane transformacj Krok Obrócene os obektu, tak ab oś stała sę współlnowa osą. Położene os obrotu na płascźne (-). b u α u a u c u u u [ a b c] [ b c] [ ] Położene os obrotu na płascźne (-) jest równoważne obrotow wektora u o kąt α. Jak wnacćα, lub jesce lepej snα cosα? Ilocn skalarn u u + b + c c u u u u cosα u b + c d u c d cosα c cos α d b u α u a u c 3

Składane transformacj Składane transformacj Ilocn wektorow u u u det u b u c u b u u u u u snα u d snα b sn α d b u α u a u c Położene os obrotu na płascźne (-) można wkonać pre obrót wokół os o kąt α. Obrót ten opsuje macer. R ( α) c d b d b d c d Istotne jest w mejsce funkcj trgonometrcnch w macer udało sę wprowadć łatwejse do oblcena lora. Składane transformacj Składane transformacj Położene os obrotu na os. Ilocn skalarn u u [ a d] u u d β a u d u [ ] [ ] u u a + + d d u u u u cosβ u a + d u u u a β u d Położene os obrotu na os jest równoważne obrotow wektora u o kąt β. cos β d 4

5 Składane transformacj Ilocn wektorow a d β u u u ( ) a u d a u u u det u u β snβ u sn u u u u u sn a β Składane transformacj Położene os obrotu na os można preprowadć pre obrót wokół os o kąt β. Obrót ten opsuje macer. ( ) d a a d R β Podobne jak popredno w mejsce funkcj trgonometrcnch w macer udało sę wprowadć łatwejse do oblcena element. Składane transformacj Krok 3 Obrócene obektu wokół os o kąt Θ. Obrót ten opsuje macer. ( ) cos sn sn cos R Θ Θ Θ Θ Θ ( ) ( ) α β R R Krok 4 Transformacja odwrotna do wkonanej w kroku Macer transformacj: Składane transformacj Krok 5 Transformacja odwrotna do wkonanej w kroku Macer transformacj: ( ),, T Ostatecne, macer realująca transformację obrotu obektu wokół adanej os o kąt Θ prjmuje postać ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ),, T R R R R R,, T R α β Θ β α Θ Jak wdać, jest to locn sedmu macer.

Wnacane powerchn wdocnch Wnacane powerchn wdocnch Jak pokaać na rutn tlko te element scen, które są wdocne dla obserwatora? Prkład: Rs. Wnosek: Rs. Rs.3 Rut pokaując wsstke krawęde ścan obektu (tak jak na perwsm rsunku), może bć nejednonacn. Algortm wnacana ścan wdocnch: Założena:. Scena trójwmarowa jest opsana jako bór ścan S { s,s,...,s,..., } s n. Ścan są płaskm welobokam. 3. Każdej e ścan prpsana jest lcba określająca jej stopeń sarośc lub kolor s v 4. Wśwetlane rutów ścan (według ustalonego sposobu projekcj) odbwa sę w ssteme rastrowm. Wnacane powerchn wdocnch Wnacane powerchn wdocnch Rodaje algortmów wnacana ścan wdocnch: algortm analujące scenę algortm analujące obra Algortm analujące scenę:. Porądkuje sę bór ścan, tak ab uskać punktu wdena obserwatora, useregowane od najdalsej do najblżsej ścan.. Dokonuje sę projekcj ścan według ustalonego wceśnej porądku. Algortm analujące obra:. Dla każdego pksela ekranu wnaca sę najblżej leżącą ścanę.. Za stopeń sarośc lub kolor analowanego pksela prjmuje sę stopeń sarośc lub kolor wnaconej ścan. Dla każdego pksela należ porównać n ścan. Lcba porównań jest proporcjonalna do n N, pr cm N jest lcbą pksel ekranu. Każdą e ścan należ porównać poostałm. Lcba porównań jest proporcjonalna do n. 6

Algortm sortowana ścan Algortm sortowana ścan Algortm sortowana wględem głębokośc (Depth-sortng) Ogóln schemat algortmu: Krok. Wstępne uporądkowane boru ścan. Slajd 9 Krok. Wstępne uporądkowane boru ścan Dla każdej e ścan należącej do boru S { s,s,...,s,..., } s n Krok. Krok 3. Porównwane wstępne uporądkowanch ścan param poprawa uporądkowana. Projekcja ścan na ekran według porądku uskanego w kroku. wnaca sę maksmalną wartość współrędnej werchołka. Ścan e boru S porądkuje sę według upredno wnaconej wartośc od wartośc najwęksej, do najmnejsej. Algortm sortowana ścan Algortm sortowana ścan Prkład: s s v p s v s p s s s s s s s v Wstępne uporądkowane dało właścw reultat. s v Wstępne uporądkowane ne dało właścwego reultatu. Krok. Porównane wstępne uporądkowanch ścan param poprawa uporądkowana Poscególne par ścan cągu, wstępne uporądkowane w kroku, poddaje sę pęcu testom. Jeśl kolejn test daje wnk potwn, końc sę testowane poostawa sę element par na poprednch mejscach. Test są uporądkowane według rosnącej skal trudnośc. 7

Algortm sortowana ścan Test. Porównwane współrędnch Jeżel dla par ścan s s predał,, [ ] [ ] mn ma są rołącne, to wnk testu jest potwn. mn ma Algortm sortowana ścan Test. Porównwane współrędnch Jeżel dla par ścan s s predał,, [ ] [ ] mn ma są rołącne, to wnk testu jest potwn. mn ma v mn s ma s p s s mn ma v Test 3. Badane położena ścan s wględem płascn, na której leż ścana s Jeżel (patrąc wdłuż kerunku obserwacj) ścana s leż całkowce poa płascną wnaconą pre ścanę s, to wnk testu jest potwn. Algortm sortowana ścan Algortm sortowana ścan v s s p s s Kerunek obserwacj Inacej mówąc, wnk testu jest potwn jeśl dla wsstkch werchołków,, ścan s spełnona jest nerówność v Test 4. Badane położena ścan s wględem płascn, na której leż ścana s Jeżel (patrąc wdłuż kerunku obserwacj) ścana s leż całkowce pred płascną wnaconą pre ścanę s, to wnk testu jest potwn A + B + C + D > gde A, B, C, D są współcnnkam równana płascn, na której leż ścana s. v s p s s s Kerunek obserwacj v 8

Algortm sortowana ścan Algortm sortowana ścan Inacej mówąc, wnk testu jest potwn jeśl dla wsstkch werchołków,, ścan s spełnona jest nerówność A + B + C + D < gde A, B, C, D są współcnnkam równana płascn, na której leż ścana s. v s p s s s Test 5. Porównane rutów ścan s s na płascnę (-) Jeżel rut ścan s s na płascnę (-) są boram rołącnm, to wnk testu jest potwn. Praktcne, wkonane testu polega na sprawdenu c poscególne par odcnków rutów ścan precnają sę. Preprowada sę go rowąując odpowedne par układów równań lnowch badając ch rowąana. v Algortm sortowana ścan Algortm -bufora (Depth-buffer) Jeśl żaden pęcu testów ne dał wnku potwnego, prestawa sę element badanej par ścan powtara testowane. Gd kolejne pęć testów ne prnosło wnku potwnego, uporądkowane par ścan ne jest możlwe. Prkład: v Ogóln schemat algortmu: s s v v (, ) s rutna v s s Jak postąpć w takm prpadku? prosta rutowana v Można podelć (precąć) jedną e ścan. Sposób precęca ne jest jednak obojętn. Pksel (, ) ostane wśwetlon w kolore (stopnu sarośc) tej ścan, dla której współrędna punktu precęca ścan prostą rutowana jest najmnejsa. 9

Algortm -bufora Ops algortmu: Dostępne są dwe pamęc: pamęć obrau (refresh buffer) pamęć głębokośc (depth buffer) Obe pamęc mają tle słów, le jest pksel obrau. Krok. Incjalacja pamęc obrau głębokośc Dla każdego pksela obrau o współrędnch (, ) podstawć refresh (, ) v t depth (, ) ma refresh(, ) - awartość pamęc obrau dla pksela (,), depth(, ) - awartość pamęc głębokośc dla pksela (,), v t - kolor tła, ma - maksmalna wartość współrędnej. Algortm -bufora Krok. Porównane głębokośc (dla każdego pksela ekranu) Dla pksela o współrędnch (, ), wlcć wartość (, ), dla ścan s (, ) < depth(, ) Jeżel to podstawć: refresh (, ) depth (, ) Krok powtarać dla kolejnch ścan s, s 3, aż do wcerpana lst ścan. Podstawowm problemem oblcenowm algortmu - bufora jest oblcane (,). v Algortm -bufora Algortm -bufora Algortm oblcana (,) dla ścan. Wbrać tr punkt newspółlnowe ścan (np. tr werchołk). Oblcć współcnnk A,B,C,D, równana płascn, na której leż ścana. Oblcć wartość e woru A B D C Oblcane wartośc można uproścć, bowem struktura ekranu w rastrowm ssteme wśwetlana jest dskretna - Oblcane (w ln). stąd v A( + ) B D C + A C v A B D C A C

Algortm -bufora Oblcane (w kolumne). v stąd - + A B( ) D A B D B + C C C + B C v

Sformułowane problemu MODELOWANIE OŚWIETLENIA LOKALNEGO SCEN 3-D Plan wkładu: v źródło śwatła obekt v pksel ( p, p ) (,, ) Sformułowane problemu Funkcja BRDF Podstawowe modele ośwetlena (emprcne) Algortm generacj obraów scen ośwetlonch prosta rutowana Od cego ależ stopeń jasnośc lub kolor punktu (pksela) ( p, p ), będącego rutem punktu (,, ), gd na scene wstępuje źródło śwatła? v Sformułowane problemu Sformułowane problemu Stopeń jasnośc lub kolor punktu (pksela) ( p, p ) ależ od welu cnnków. W scególnośc może ależeć od: geometr układu (wajemnego ustuowana obektu źródła śwatła, kstałtu obektu, sposobu rutowana), charakterstk źródła śwatła (ntenswnośc śwecena, koloru, tłumena śwatła w prestren, kerunkowośc), charakterstk powerchn obektu (odbjana, roprasana, pochłanana, prepuscana, koloru powerchn), charakterstk rochodena sę śwatła odbtego, ośwetlana obektu śwatłem odbtm (np. od nnch obektów najdującch sę na scene), Jake prjąć ałożena? Jak dla prjętch ałożeń oblcć stopeń jasnośc lub kolor punktu (pksela) ( p, p )? Jak redukować lość oblceń?

l Ω r Funkcja BRDF pojęca podstawowe Funkcja BRDF - pojęca podstawowe BRDF Bdrectonal Reflectance Dstrbuton Functon Półsfera kerunek kerunek Θ Kąt brłow, radancja kąt płask kąt brłow r θ Φ - amut Θ elewacja (nachlene) Ω r l l Ω r [ rd] Ω r A A Ω r [ sr] półsfera Φ Radancja (lumnancja energetcna) moc dostarcana pre jednostkę powerchn źródła promenowana do obsaru prestren określonego pre kąt brłow [W/(sr m )] Funkcja BRDF - defncja Funkcja BRDF - pomar Funkcja BRDF stosunek radancj odbtej w punkce w kerunku Θ r do radancj dochodącej do punktu kerunku Θ dl( Θ r ) Θ r śwatło po odbcu od punktu f r θ r (, Θ Θ ) r N θ dl de de( Θ ) ( Θr) ( Θ ) Θ śwatło pada na punkt Gonoreflektometr prrąd do pomaru funkcj BRDF detektor Θ r θ r próbka Φ θ źródło śwatła Θ θ - - 9 θ r - - 9 Φ - - 8 kolor - RGB (3 składowe) Zakładając pomar kątów co, do apsana funkcj BRDF dla punktu na powerchn potreba tablc o 9 9 8 3 4.374. elementach.

Podstawowe modele ośwetlena (emprcne) Model dla ośwetlana śwatłem otocena, Model dla obektów o odbcu dfujnm, Model dla obektów o odbcu wercadlanm, Model dla obektów prerocstch, Podstawowe modele ośwetlena model ośwetlena śwatłem otocena Założena: Na scene wstępuje jedne śwatło roprosone (bekerunkowe) Powerchne obektów odbjają śwatło Model ośwetlena: I I a k a I - ntenswność ośwetlena punktu powerchn, I a - ntenswność dla śwatła roprosonego, k a - współcnnk odbca śwatła roprosonego pre powerchnę, współcnnk ależ od materału jakego k a, wkonan jest obekt, [ ] Podstawowe modele ośwetlena model dla powerchn dfujnch Podstawowe modele ośwetlena model dla powerchn dfujnch Założena: I p źródło śwatła Na scene wstępuje punktowe źródło śwatła emtujące śwatło tak samo we wsstkch kerunkach. Powerchne obektów roprasają śwatło (są matowe). I I p k d cosθ L Θ N k d Model ośwetlena: Model wnka prawa cosnusów Lamberta. I I p k d cosθ I - ntenswność ośwetlena punktu powerchn, I p - ntenswność śwecena punktowego źródła śwatła, k d - współcnnk odbca pre powerchnę, współcnnk ależ od materału jakego wkonan jest obekt, k d Θ - kąt męd kerunkem padana śwatła a prostopadłą o do ośwetlanej powerchn w badanm punkce, Θ 9, 9 [,] o [ ] 3

Podstawowe modele ośwetlena model dla powerchn dfujnch Jeśl odpowedne kerunk opsać normalowanm wektoram, to model można apsać też jako: N I I p k d ( N L ) I p źródło śwatła - jednostkow wektor normaln do powerchn w badanm punkce, L - jednostkow wektor opsując kerunek padana śwatła. L Θ N k d Podstawowe modele ośwetlena model dla powerchn dfujnch Model ne uwględna klku stotnch cnnków. Modfkacja : Uwględnene śwatła roprosonego Te element scen, na które ne padają bepośredno promene wsłane pre punktowe źródło śwatła ne będą wdocne. Modfkacja polega na połącenu modelu opartego na prawe cosnusów modelem dla śwatła roprosonego. gde I I a k a + I p k d ( N L ) I a - ntenswność dla śwatła roprosonego, k a - współcnnk odbca śwatła roprosonego pre powerchnę. Podstawowe modele ośwetlena model dla powerchn dfujnch Modfkacja : Uwględnene tłumena śwatła emtowanego pre źródło Z dośwadcena wadomo, że obekt położone dalej od źródła śwatła, są ośwetlane słabej. Modfkacja polega na uwględnenu jawska tłumena pre wprowadenu współcnnka tłumena f att. I I a k a + f att I p k d ( N L ) Jak uależnć współcnnk f att, od odległośc męd źródłem śwatła a badanm punktem powerchn? Podstawowe modele ośwetlena model dla powerchn dfujnch Z fk wadomo, że f att d gde d L jest odległoścą pomęd źródłem śwatła a punktem ośwetlanej powerchn. W praktce powżs wór ne daje bt dobrch wnków, bowem: jeśl d L jest duże, f att mena sę nenacne nawet dla daleko położonch od sebe powerchn, jeśl d L jest małe, f att mena sę bardo nacne nawet dla blsko położonch od sebe powerchn, L 4

Podstawowe modele ośwetlena model dla powerchn dfujnch W grafce komputerowej stosuje sę węc bardej ogólną ależność w postac: f mn, c + c d + c d att L 3 L gde c, c, c 3 są stałm doberanm emprcne. Modfkacja 3: Uwględnene odległośc ośwetlonego obektu od obserwatora Z dośwadcena wadomo, że obekt położone dalej od obserwatora, są postregane jako ośwetlane słabej. Zjawsko to uwględna sę w prost sposób, modfkując wnaconą pr pomoc popredno omówonch model ntenswność I następująco: Podstawowe modele ośwetlena model dla powerchn dfujnch I I α( d d v - odległość ośwetlanego punktu powerchn od obserwatora, α(d v ) - funkcja o prebegu pokaanm na rsunku (prkład takej funkcj) v ) α(d v ) d d d v Podstawowe modele ośwetlena model dla powerchn o odbcu kerunkowm Założena: Na scene wstępuje punktowe źródło śwatła emtujące śwatło tak samo we wsstkch kerunkach. Powerchne obektów odbja śwatło (różne w różnch kerunkach). Prkład: Idealne wercadło I p L źródło śwatła Θ N Θ α R V kerunek obserwacj Podstawowe modele ośwetlena model dla powerchn o odbcu kerunkowm Wdaje sę sensowne posukwane modelu powerchn, któr łąc własnośc roprasana odbjana śwatła. Model ośwetlena Phonga: (Phong Bu Tuong) I I k + f a a att I p n [ k cosθ + W( Θ) cos α] d W(Θ) - pewna funkcja kąta Θ (ależ od własnośc materału), n - stała n [, ] Cęsto funkcję tą astępuje sę stałą k s, cl parametr ne ależ wted od kąta pod jakm śwatło pada na analowan punkt powerchn, 5

Podstawowe modele ośwetlena model dla powerchn o odbcu kerunkowm Podstawowe modele ośwetlena model dla powerchn o odbcu kerunkowm Model Phonga można wted apsać w postac: I I k + f a a att I p [ k ( N L) + k ( V R) ] n d s Prebeg funkcj cos n α n n I p L Θ N Θ α R V kerunek obserwacj α α źródło śwatła W modelu podstawową rolę odgrwa składnk cos n α, któr uależna ntenswność ośwetlena punktu powerchn od kąta obserwacj α. Wjaśnć można to badając prebeg funkcj cos n α. n α Podstawowe modele ośwetlena model dla powerchn o odbcu kerunkowm Podstawowe modele ośwetlena model dla obektów prerocstch Wnosek jest następując: Podstaw fcne: małe n serok stożek wdocnośc duże n wąsk stożek wdocnośc Pr prejścu jednego ośrodka prerocstego do drugego promeń śwetln ulega ałamanu. Zjawsko jest opsane pre prawo Snella. L Θ Θ R L Θ Θ R v Θ Θ snθ v snη v v η Jeżel n uskuje sę prawe dealne wercadło. gde v v są odpowedno prędkoścam rochodena sę śwatła w perwsm drugm ośrodku. 6

Podstawowe modele ośwetlena model dla obektów prerocstch Pr prejścu pre prerocstą płtkę następuje podwójne ałamane, które powoduje równoległe presunęce promena. Podstawowe modele ośwetlena model dla obektów prerocstch Najprosts model prerocstośc: Prerocstość nterpolowana v welobok (neprerocst) welobok (prerocst) Presunęce promena ależ od popredno wmenonch parametrów grubośc płtk. Omówone podstaw fcne stosuje sę do budow model prechodena śwatła pre obekt. Dla prkładu, nane są modele opsujące prechodene śwatła pre sb, są one wkorstwane w smulatorach lotu. kerunek obserwacj v I ( k I - ntenswność ośwetlena weloboku, I - ntenswność ośwetlena weloboku, k t - współcnnk prerocstośc weloboku, k t [,]. k t - welobok neprerocst, k t - welobok całkowce prerocst, t ) I + k t I Algortm generacj obraów scen ośwetlonch Renderng - Algortm bepośredn: cenowane, oblcane jasnośc (koloru) poscególnch pksel obrau scen uwględnenem męd nnm efektów ośwetlena.. Dla punktu obrau (pksela) o współrędnch ( p, p ) oblcć odpowedn punkt wdocnej powerchn obektu (,, ).. Dla punktu (,, ) astosować wbran model ośwetlena oblcć ntenswność I analowanego punktu. 3. Wpełnć pksel ( p, p ) godne oblconą ntenswnoścą. Zaleta: dokładność. Wada: nacna lość oblceń. Algortm generacj obraów scen ośwetlonch Algortm cenowana jednotonowego: Założena: Obekt scen opsane są jako satk weloboków. Dla wdocnej ścan obektu scen, akłada sę stałą ntenswność ośwetlena. Algortm:. Dla dowolnego punktu wdocnej ścan, wlcć ntenswność ośwetlena.. Rutować ścanę, wpełnając odpowedn welobok stałą, godne oblconą ntenswnoścą. Zaleta: stosunkowo mało oblceń. Wada: jeśl satka weloboków aproksmuje obekt o płnnch kstałtach wdocne będą krawęde. 7

Algortm generacj obraów scen ośwetlonch Algortm nterpolacj ntenswnośc (algortm Gourauda): Założene: Obekt scen opsane są jako satk weloboków. Algortm:. Dla każdego werchołka satk weloboków wlcć wektor normaln, jako średną artmetcną wektorów normalnch dla ścan, do którch należ analowan werchołek. N + N + N 3+ N 4 N 4 N 3 N N 4 N Algortm generacj obraów scen ośwetlonch. Dla każdego werchołka satk stosując wbran model ośwetlena oblcon wektor normaln, oblcć ntenswność ośwetlena I j. 3. Wpełnać rut wdocnch weloboków, użwając algortm ln skanującej, w następując sposób I lna skanująca I4 I I 5 6 I I 3 4 I4 I 6 I6 I3 3 6 4 + I 3 + I 4 3 6 4 5 5 4 I5 I4 + I6 6 4 Algortm generacj obraów scen ośwetlonch Zaleta: ograncene lośc oblceń, obekt aproksmowane satkam weloboków wglądają gładko, bowem krawęde satk prestają bć wdocne. Wada: nenaturalne obra w prpadkach odbca śwatła od powerchn lustranch. Algortm nterpolacj wektorów normalnch (algortm Phonga): Założene: Algortm generacj obraów scen ośwetlonch. Wpełnać rut wdocnch weloboków użwając algortmu ln skanującej, lec nterpolując ne ntenswnośc a wektor normalne oblcone dla werchołków. Zaleta: nacne lepse obra nż dla poprednego algortmu. Wada: dość dużo oblceń (dla każdego pksela obrau wkorstwan jest model ośwetlena). Obekt scen opsane są jako satk weloboków. Algortm:. Oblcć wektor normalne do werchołków weloboków satk tak samo jak w poprednm algortme. 8

Algortm generacj obraów scen ośwetlonch Algortm generacj obraów scen ośwetlonch Cęsto w astosowanach można posługwać sę obektem wanm smooth trangle. N 3 model satka weloboków metoda jednotonowa N V 3 V 3 N V V N V V metoda Gourauda metoda Phonga trójkąt wkł trójkąt smooth trangle Algortm generacj obraów scen ośwetlonch Algortm generacj obraów scen ośwetlonch Metoda Phonga prkład obraów scen budowanej dwóch trójkątów dwa trójkąt wkłe dwa trójkąt smooth trangle Metoda Phonga - obekt (model bałka) budowan jest 44.8 trójkątów tpu smooth trangle 9

Co to jest tekstura? MODELOWANIE I WIZUALIZACJA TEKSTURY Plan wkładu: v obekt T(,,) v (,, ) t(... tn(,,,, ) ) Co to jest tekstura? Generowane worców tekstur Wualacja tekstur Fltracja tekstur Co może opswać funkcja T(,, )? v Tekstura jest funkcja T(,, ) (w ogólnośc wektorowa) określona dla punktów leżącch na powerchn obektu. Co to jest tekstura? Prkład:. Kolor punktu (,, ) na powerchn obektu T,, r(,, ) g(,, ) b(,, ) ( ) [ ] T r(.), g(.), b(.) - składowe, cerwona, elona nebeska koloru punktu w modelu RGB. Funkcja T(,, ) może opswać w tm prpadku dowoln obra naneson na powerchnę obektu.. Wektor normaln do powerchn w punkce (,, ) T,, N,, + N,, N(,,) N (,,) ( ) ( ) ( ) - wektor normaln oblcon danch o geometr powerchn, - składnk losow Co to jest tekstura? 3. Współcnnk materałowe dla model ośwetlena k a (,,) k d (,,) k s (,,) (,,) [ k (,, ) k (,, ) k (,, ] T T a d s ) - współcnnk odbca śwatła roprosonego, - współcnnk odbca dfujnego, - współcnnk odbca wercadlanego. 4. Różnego rodaju kombnacje popredno wmenonch model Jak wglądają obra obektu uwględnenem tekstur?

Co to jest tekstura? Co to jest tekstura? Co to jest tekstura? Co to jest tekstura? Odworowana parametrcne w agadnenach wualacj tekstur: Określane funkcj tekstur T(,, ) w prestren, w której ostał opsan obekt jest trudne newgodne. Zawcaj stosuje sę odworowana parametrcne. v T(u,v) u T((u,v), (u,v), (u,v)) Funkcja tekstur defnowana w prestren parametrów Roważa sę dwa tp odworowań:. Parametracja prosta v T(u,v) u ( p, p ) (,, ) Dla danego punktu (u, v) prestren parametrów, stosując równana parametrcne oblca sę odpowedn punkt (,, ) na powerchn obektu. Rutuje sę punkt (,, ), a pksel ( p, p ) wpełna godne funkcją tekstur T(u, v).

Co to jest tekstura? Generowane worców tekstur. Parametracja odwrotna Jak uskać funkcję T(,, )? Stosuje sę różne metod apsu algortm generacj funkcj tekstur. v T(u,v) u ( p, p ) (,, ) Dla danego pksela ( p, p ), posukuje sę punktu (,, ) na powerchn wdocnego obektu. Stosując odwrotne równana parametrcne oblca sę odpowedn punkt (u, v) w prestren parametrów. Pksel wpełna godne funkcją tekstur T(u, v) dla wlconch wartośc.. Wkorstuje sę postać analtcną funkcj T(u, v).. Twor sę tablcę opsującą funkcję T(u, v) określoną dokładnoścą, np. tablcę opsującą kolorow obra uskan metodą fotograf cfrowej. 3. Funkcję T(u,v) komponuje sę elementarnch worców. W lterature opsuje sę różne modele tworena tekstur pre powelane worców. Cęsto stosuje sę modele wkorstujące lcb lub proces losowe. Generowane worców tekstur Generowane worców tekstur Modele okresowe Pewen elementarn worec jest powelan według ustalonego porądku. Metodą tą można uskać np. rsunk sachownc c muru cegł. Modele bombowe W prestren parametrów romesca sę losowo obekt o ustalonm kstałce (bomb). Romescane polega na losowanu punktu umescena środka bomb jej orentacj. Bomba może bć ponadto w trakce romescana skalowana. v u Modele oparte na procesach Markowa Proces losowana wkorstuje własność procesów Markowa, która polega na tm, że stan procesu w pewnm punkce ależ jedne od stanów w bepośrednm jego otocenu. Modele fraktalne Wkorstuje sę różnorodne odworowana terowane (welokrotne powtara sę dość proste odworowana). 3

Generowane worców tekstur Generowane worców tekstur Prkład: Fraktal plamow (plasma fractal) v c c Założena: Prestreń parametrów (prostokąt w układe współrędnch u,v) należ pokrć prostokątną satką n n punktów. Każdemu punktow satk należ w pewen sposób prpsać stopeń sarośc lub kolor adanej, dskretnej, lnowo uporądkowanej skal. Algortm generacj fraktala plamowego: Krok W narożnch punktach prostokąta satk umesca sę punkt o losowo wbranm (pr pomoc adanego dskretnego rokładu prawdopodobeństwa) kolore. c 3 Krok Wlca sę kolor dla pęcu nowch punktów satk. Nowe punkt są generowane w środkach boków w środku prostokąta. u c 4 Generowane worców tekstur Generowane worców tekstur v c c c 3 c c34 4 u c c c c 3 c 4 W() Oblcene koloru punktu w środku boku (np. c ). Losuje sę kolor. Oblca sę kolor c e woru c c ( W ( )) c + W ( ) c+ W ( ) c Oblcene koloru punktu c c. Losuje sę kolor c. Oblca sę kolor c c e woru c c c ( 4W ( )) c + W ( ) c gde funkcja W c () ma następując prebeg: W c () c c 4 c gde funkcja W() ma prebeg pokaan na rsunku powżej. 4

Generowane worców tekstur Krok 3. Otrmano cter nowe prostokąt. Dla każdego nch, powtara sę krok wnk del sę nów na mnejse prostokąt, aż do osągnęca granc rodelcośc satk. Uskan tą metodą worec tekstur można prawe dowolne kstałtować, menając rokład użwan pr losowanu kolorów, ora funkcje W() W c (). Prkład: Generowane worców tekstur Algortm generacj fraktala plamowego może służć też do nnch celów, np. do generacj reźb terenu. Prkład: Każde uruchomene algortmu daje nn efekt. Fraktal plamow Obra scen 3-D, na której poom sarośc fraktala plamowego, ostał amenon w wsokość Generowane worców tekstur 3. Wualacja tekstur (odworowana geometrcne) Jak pokaać na ekrane obra obektu uwględnenem tekstur? Parametracja w prestren obektu Założene: Obekt scen defnowane są we własnch układach współrędnch. Prkład: welobok. Welobok Zakłada sę, że prestreń tekstur pokrwa sę płascną-. v u prestreń tekstur 5