1 / 14

Reprezentacja (opis) obiektów graficznych

Reprezentacja (opis) obiektów graficznych. Wstęp. Obiekt graficzny – jest to cokolwiek można narysować za pomocą komputera. Może być nim krzywa, płaska figura, powierzchnia, bryła trójwymiarowa.

hamlet
Download Presentation

Reprezentacja (opis) obiektów graficznych

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Reprezentacja (opis) obiektów graficznych

  2. Wstęp • Obiekt graficzny – jest to cokolwiek można narysować za pomocą komputera. Może być nim krzywa, płaska figura, powierzchnia, bryła trójwymiarowa. • Struktura obiektu nie musi być topologiczni jednorodna, np. można łączyć powierzchnie i bryły trójwymiarowe. • Liczba danych potrzebnych do opisu zależy nie tylko od geometrii (kształtu) ale również od sposobu wizualizacji. • Np. kula jest jednoznacznie określona za pomocą S(x,y,z) i r. Jeżeli mamy taki obiekt zwizualizować ,to te wielkości nie wystarczą. Możemy użyć wtedy modelu „drucianego szkieletu”, a w takiej sytuacji należy dodać jeszcze liczbę południków i równoleżników, np. oznaczając je przez n i m. Jeżeli chcemy dodać kolory to mamy jeszcze nowy parametr: kolor c. Jeżeli chcemy oddać trójwymiarowość, to wypełnienie płaskim kolorem nie będzie wystarczające, należy dodać oświetlenie, a więc podzielić kulę na wielokąty i dla każdego wielokąta wyznaczyć oświetlenie.

  3. Reprezentacja krzywych i powierzchni: • Krzywe będą przedstawiane jako: • x=x(t), y=y(t) dla t[t1,t2] – będzie to krzywa płaska, • a krzywa trójwymiarowa będzie postaci: • x=x(t), y=y(t), z=z(t) dla t[t1,t2] – będzie to krzywa przestrzenna. • Np. równania: • x=rcost, y=ht, z=rsint • opisują linię śrubową. • Mogą wystąpić sytuacje, kiedy dysponujemy informacjami o krzywej zapisanymi w postaci dyskretnej, wtedy należy przybliżyć krzywą zadanymi funkcjami, np. wielomianami, funkcjami sklejanymi itd. Spotykanym rozwiązaniem jest ustalenie funkcji bazowych i dobranie współczynników, by kombinacja liniowa była krzywą o podobnych własnościach, np. kształcie (jest to problem z dziedziny modelowania).

  4. Reprezentacja krzywych i powierzchni: • Natomiast powierzchnie będą reprezentowane przez następujący zapis parametryczny: • x=x(u,v), y=y(u,v), z=z(u,v), • gdzie u[u1,u2], v[v1,v2]. • Przykład: • x=u, y=v, z=u2+v2 • W przypadku powierzchni występuje również modelowanie powierzchni oraz różne metody wizualizacji z usuwaniem linii zasłoniętych.

  5. Opis obszarów płaskich • W opisie należy uwzględnić reprezentację brzegu obiektu i reprezentację jego wnętrza. • Jeżeli chodzi o reprezentację brzegu, to brzeg można definiować kawałkami za pomocą różnych krzywych. • Natomiast wnętrze można definiować za pomocą drzew czwórkowych lub za pomocą przecięcia, dodawania, odejmowania kilku ustalonych elementarnych klocków (prostokąt, okrąg). • W grafice komputerowej najczęściej spotykamy wielokąty (rozważamy wielokąty proste tj. takie które nie mają dziur w środku).

  6. Def. Drzewa czwórkowego • Drzewo czwórkowe jest zdefiniowane następująco: jest to niepusty skończony zbiór etykietowanych węzłów takich, że • Istnieje wyróżniony węzeł (korzeń drzewa), a pozostałe węzły są podzielone na n>=0 różnych poddrzew: D1, D2, ..., Dnz korzeniami. Węzły są nazywane liśćmi z których nie wychodzą żadne poddrzewa, natomiast pozostałe są nazywane węzłami wewnętrznymi. • Czasem używa się terminologii genealogicznej. Wszystkie węzły w drzewie lub poddrzewie są nazywane potomkami korzenia, a korzeń jest przodkiem wszystkich potomków. Rozważane drzewa będą drzewami uporządkowanymi, a więc istotne będzie uporządkowanie poddrzew każdego węzła.

  7. Def. Drzewa czwórkowego • Taka reprezentacja może być stosowana zarówno do opisu wnętrza jak i brzegu. Jeżeli chodzi o wnętrze, to: • rozważany obszar opisujemy kwadratem. Temu kwadratowi odpowiada korzeń drzewa czwórkowego. • Potomkowie drzewa będą związani z podziałem drzewa na coraz mniejsze kwadraty. • Początkowy kwadrat dzielimy na cztery kwadraty uporządkowane według następującego schematu: • Liśćmi są węzły odpowiadające jednorodnym fragmentom obszaru. • Jeżeli cały kwadrat jest zawarty wewnątrz obszaru, to węzłowi przyporządkowujemy umownie kolor czarny i biały, gdy cały kwadrat leży na zewnątrz. • Kwadraty leżące częściowo wewnątrz i częściowo na zewnątrz są wypełnione kolorem szarym, A B C D

  8. Def. Drzewa czwórkowego • Taki rekurencyjny podział kontynuujemy, aż wszyscy potomkowie drzewa są jednorodni albo gdy rozmiary odpowiednich kwadratów są odpowiednio małe (naturalnym małym rozmiarem jest rozmiar piksela – ma on rozmiar 1x1). • Przy takich założeniach drzewo czwórkowe reprezentujące obraz monitora o rozdzielczości 2nx2n będzie miało nie więcej niż n+1 poziomów {rysunek na tablicy}

  9. Obliczanie sumy i iloczynu dwu obszarów • Jeżeli dana jest reprezentacja obszaru w postaci drzewa czwórkowego to aby obliczyć sumę dwu obszarów U= ST należy wykorzystać następującą ideę: • Przeglądamy drzewa od korzenia w dół, • Jeśli jeden z węzłów drzewa S lub T jest liściem czarnym to w drzewie U umieszczamy liść czarny, • Gdy jeden z węzłów np. T jest biały, to w drzewie U umieszczamy węzeł drugiego drzewa, • Jeżeli w drzewach S i T występują węzły szare, to do U wstawiamy węzeł szary i powtarzamy rekurencyjnie to postępowanie dla potomków S i T. • Jeżeli przy sumowaniu synów dwu węzłów szarych otrzymamy cztery liście czarne, to zastępujemy ojca kolorem czarnym i sprawdzamy, czy takiego postępowania nie należy przeprowadzić wyżej {przykład na tablicy}

  10. Obliczanie sumy i iloczynu dwu obszarów • Natomiast obliczanie U= ST wykonujemy tak samo zamieniając jedynie rolami kolor czarny i biały ze sobą w stosunku do algorytmu obliczającego U= ST. Należy również uwzględnić sytuację, gdy oba węzły są szare, to ewentualne łączenie potomków dotyczy czterech białych synów. • Podobną ideę możemy stosować dla brzegu, takie postępowanie powtarzamy do końca, więc do otrzymania minimalnego rozmiaru. Otrzymane drzewa są duże i wymaga dużo pamięci. Istnieje modyfikacja tego algorytmu.

  11. Bryły • Często stosowanym sposobem opisu bryły jest stosowanie drucianego szkieletu. W przypadku brył wielościennych szkielet tworzą krawędzie ścian. Prowadzi to do przybliżonego charakteru. W tym przypadku każda ściana jest określona zbiorem swoich krawędzi, a te są zdefiniowane parami wierzchołków. Prowadzi to do utworzenia listy wierzchołków TW, w której zapisujemy ich współrzędne x,y,z. Natomiast w tablicy krawędzi TK zapisujemy parami numery wierzchołków, końców krawędzi. Kolejna struktura zawiera listę ścian LS, której elementami są skończone ciągi numerów krawędzi stanowiących boki wielokątów ścian. Kolejna tablica LK zawiera informacje o liczbie n1, n2, ..., ns krawędzi kolejnych ścian. Dodatkowo trzeba pamiętać: • w – liczba wierzchołków, • k – liczba krawędzi, • s – liczba ścian. • Przykład na tablicy: • Sprawdzenie poprawności danych: • Zachodzi twierdzenie Eulera: w-k+s=2

  12. Opis brył • Metodę opisu płaskich obszarów drzewami czwórkowymi można uogólnić na przypadek drzew ósemkowych. Obiekt przestrzenny można wpisać w sześcian, któremu odpowiada korzeń drzewa ósemkowego. Ten sześcian dzielimy na osiem mniejszych ponumerowanych następująco – rysunek na tablicy. • Gdy cały sześcian jest wewnątrz, to przypisujemy węzłowi kolor czarny a biały gdy cały jest na zewnątrz. Gdy jest szary, to dzielimy ten sześcian na mniejsze i proces powtarzamy do uzyskania jednolitego koloru lub do uzyskania minimalnego rozmiaru. • Operacje na drzewach ósemkowych wykonujemy tak samo.

  13. Konstruktywna geometria brył • Termin „Konstruktywna geometria brył” oznacza metodę budowania brył w wyniku składania ustalonych elementów „klocków”. Operacje te to dodawanie, odejmowanie i iloczyn dwu klocków. Klockiem może być dowolna półprzestrzeń punktów spełniających nierówność: • f(x,y,z)<0, gdzie f jest funkcjonałem ciągłym. • Brzeg klocka tworzą punkty, które spełniają f(x,yz)=0, a dopełnienie spełnia f(x,y,z)>0. • Np. dla walca: • x2+y2-r2=0, -y<0, y-h<0 • W praktyce bryłę budujemy z ograniczonych elementów. Powszechnie stosowane elementy to: sfera, walec, sześcian, klin, czasza i inne.

  14. Konstruktywna geometria brył • Opisany sposób konstrukcji opisuje się drzewem, którego liśćmi są elementy podstawowe lub wielkości określające transformacje, a węzły wewnętrzne odpowiadają operacjom na tych elementach (dodawaniu, odejmowaniu, część wspólna) albo transformacjom (obrót, przesunięcie, skalowanie itd.).

More Related