Grafika komputerowa Wykład 7 Krzywe na płaszczyźnie

Slides:



Advertisements
Podobne prezentacje
OBLICZENIA NUMERYCZNE
Advertisements

Sterowanie – metody alokacji biegunów II
Metody numeryczne część 3. Całkowanie metodą Eulera i Simpsona.
Sprawdziany: Postać zespolona szeregu Fouriera gdzie Związek z rozwinięciem.
IV Tutorial z Metod Obliczeniowych
Grażyna Mirkowska PJWSTK, 10 stycznia 2001
Krzywe parametryczne x = fx(t); y = fy(t) funkcje liniowe x = 20t + 5
Macierzowa reprezentacja sieci
Interpolacja Cel interpolacji
STATYSTYKA WYKŁAD 03 dr Marek Siłuszyk.
Różniczkowanie numeryczne
Metody rozwiązywania układów równań liniowych
Kategorie systemów czasu rzeczywistego
Metody numeryczne wykład no 2.
Metody Numeryczne Wykład no 3.
Wykład no 3.
Interpolacja funkcji Dane wartości funkcji y n w punktach x n, gdzie n=0,1,2,....N-1. x y x0x0 y0y0 xnxn ynyn x N-1 y N-1.
Obliczenia macierzowe cz.2
Rozwiązywanie układów
Animacja Animacja jest procesem automatycznego generowania serii obrazów, gdy kolejny obraz przedstawia pewną zmianę w stosunku do poprzedniego. Ta definicja.
Usuwanie zakłóceń Rysowanie w przestrzeni dyskretnej powoduje powstanie w obrazie zakłóceń (Aliasing) Metody odkłócania (Antyaliasing) zwiększenie rozdzielczości.
Sterowanie robotem mobilnym w zastosowaniu do ligi RoboCup
Metoda simpleks opracowanie na podstawie „Metody wspomagające podejmowanie decyzji w zarządzaniu” D. Witkowska, Menadżer Łódź Simpleks jest uniwersalną.
Redukcja sieci Petriego
Obiekt bryła obrotowa (ang lathe = „tokarka”)
Analiza porównawcza ZESPOŁÓW SZKÓŁ W POWIECIE EŁCKIM.
Dane do obliczeń.
Dodatkowe własności funkcji B-sklejanych zawężenie f do K Rozważmy funkcjeIch zawężenia do dowolnego przedziałutworzą układ wielomianów. Dla i=k ten układ.
Gramatyki Lindenmayera
ETO w Inżynierii Chemicznej MathCAD wykład 4.. Analiza danych Aproksymacja danych.
AUTOMATYKA i ROBOTYKA (wykład 6)
Metody numeryczne SOWIG Wydział Inżynierii Środowiska III rok
Podstawy analizy matematycznej II
Równowaga gospodarcza w warunkach giętkich cen. Ekonomia podażowa
Inflacja Makroekonomia 7/T1 Ryszard Rapacki.
Wprowadzenie do makroekonomii
Grafika komputerowa Wykład 11 Analiza widoczności
Grafika komputerowa Wykład 6 Podstawowe algorytmy grafiki 2D
II. Matematyczne podstawy MK
Początek, koniec lub przerwanie algorytmu
Sterowanie – metody alokacji biegunów II
Modelowanie konstrukcyjne form spódnicy damskiej podstawowej
MOiPP Wykład 3 Matlab Przykłady prostych metod obliczeniowych.
Spheroidator coded by Adam Piechna
Elementy geometrii analitycznej w przestrzeni R3
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
RUCH KULISTY I RUCH OGÓLNY BRYŁY
Metody numeryczne szukanie pierwiastka metodą bisekcji
Grafika Komputerowa i wizualizacja
Grafika i komunikacja człowieka z komputerem
PLAN WYKŁADÓW Podstawy kinematyki Ruch postępowy i obrotowy bryły
Grafika i komunikacja człowieka z komputerem
Wspomaganie Decyzji IV
FRAKTALE FIGURY LISSAJOUSA Magdalena Szorc
GRANICE FUNKCJI I CIĄGŁOŚĆ
Ćwiczenia 8 Aproksymacja funkcji
Całkowanie różniczkowego równania ruchu metodą Newmarka
Metody nieinkluzyjne: Metoda iteracji prostej.
Wykład 6 Dr Aneta Polewko-Klim
ELEMENTY METOD NUMERYCZNYCH
Pakiety numeryczne Interpolacja i aproksymacja
IFS, IFSP I GRA W CHAOS ZBIORY FRAKTALNE I WYBRANE SPOSOBY ICH GENEROWANIA.
Grafika 2d - Podstawy. Kontakt Daniel Sadowski FTP: draver/GRK - wyklady.
Wstęp do metod numerycznych
Fundamentals of Data Analysis Lecture 12 Approximation, interpolation and extrapolation.
1.problem próbkowania (sampling problem) dobór charakterystycznych punktów powierzchni w celu uzyskania najlepszego efektu przy minimalizacji ilości danych.
Metody optymalizacji Wykład /2016
Metody matematyczne w Inżynierii Chemicznej
Obliczenia w Matlabie Interpolacja i aproksymacja
Sterowanie procesami ciągłymi
Zapis prezentacji:

Grafika komputerowa Wykład 7 Krzywe na płaszczyźnie

Krzywe parametryczne: Krzywa składa się ze wszystkich punktów P(t) dla parametru t z przedziału <tP, tK> Jeśli funkcje x(t),y(t),z(t) są ciągłe to i krzywa jest ciągła Rysowanie krzywej polega zwykle na jej przybliżeniu łamaną o wierchołkach:

Krzywe parametryczne: Najprostsza krzywa parametryczna – odcinek o końcach PP i PK W praktyce chcemy mieć możliwość łatwego intuicyjnego kształtowania krzywej Zwykle odbywa się to przez wskazanie punktów kontrolnych P0, P1,…,Pn Punkty na krzywej wyznaczamy wówczas stosując do punktów kontrolnych wagi Bi(t): Wagi Bi(t) zwykle przyjmują postać wielomianów

Krzywa interpolacyjna z wielomianami Lagrange’a: Zadanych jest n+1 punktów kontrolnych P0, P1,…,Pn oraz n+1 odpowiadających im wartości parametru skalarnego: t0=tP, t1, t2,…, tn=tK, ti<ti+1 i=1,…,n-1 Dla t=ti : Czynnik wagowy przy Pi równy 1 Czynniki wagowe przy Pj , j != i równe 0 Wniosek 1: dla t=ti P(t) = Pi Wniosek 2: krzywa przechodzi przez wszystkie swoje punkty kontrolne

Krzywa interpolacyjna z wielomianami Lagrange’a: Zaleta: Można wymusić przechodzenie przez zadane punkty kontrolne Wada: Przy modelowaniu skomplikowanych kształtów wymagany jest wysoki stopień wielomianu (wiele punktów kontrolnych) Przebieg krzywej pomiędzy punktami kontrolnymi jest w tym przypadku trudny do przewidzenia Krzywa wykazuje znaczne oscylacje pomiędzy punktami kontrolnymi

Krzywa Beziera: Wielomian Bernsteina: Krzywa Beziera (def): dla t z przedziału

Krzywa Beziera: Dla Łatwo zauważyć, że: P1 : P2 P3 P0

Krzywa Beziera – własności: (1) Punkty P0 i Pn leżą na krzywej (2) dla Krzywa leży w całości w powłoce wypukłej punktów (3) Pochodna . Stąd: Krzywa w punktach 0 i 1 jest styczna do odcinków

Krzywa Beziera – obliczanie wielomianu: Obliczanie pozycji punktu na krzywej z definicji może prowadzić do problemów obliczeniowych ze względu na występowania we wzorze bardzo dużych (wartości symbolu Newtona) i bardzo małych (ti) Wykorzystując zależności: Pierwszy nawias: wielomian Beziera dla punktów Drugi nawias: wielomian Beziera dla punktów Wielomian o n punktach kontrolnych można wyrazić jako kombinację dwóch wielomianów o n-1 punktach kontrolnych

Krzywa Beziera – obliczanie wielomianu: Punkty na krzywej Beziera można wyznaczyć jako interpolację punktów krzywych wielomianów niższego stopnia. Algorytm obliczania wielomianu: for t=0 to 1 step t { for i=0 to m Ri = Pi; n = m; while (n > 0) for i = 0 to n - 1 n = n – 1; for i = 0 to n Ri = Qi; } P(t) = R0; Wyznaczyć położenie punktu na krzywej dla t=1/3. P1 P2 P3 P0

Sklejana krzywa Beziera: Krzywa Beziera nie przechodzi przez wszystkie swoje punkty kontrolne W niektórych zastowaniach potrzebujemy krzywej gładkiej przechodzącej przez zadane punkty Stopień wielomianu krzywej powinien być możliwie niski Krzywą o wymaganych własnościach można uzyskać łącząc odpowiednio dobrane segmenty Beziera np. trzeciego stopnia (4 punkty kontrolne) Zasada tworzenia krzywej sklejanej: Punkt końcowy segmentu poprzedniego i punkt początkowy segmentu następnego są sobie równe – ciągłość krzywej Punkty końcowe P0,k i P3,k są jawnie wskazywane – krzywa będzie przechodziła przez te punkty Pozostałe punkty kontrolne P1,k,P2,k dla każdego k-tego segmentu są wyznaczane automatycznie tak aby zachować gładkość krzywej – wykorzystujemy to własność styczności krzywej do odcinków P0,kP1,k i Pn-1,k,Pn,k

Sklejana krzywa Beziera: P3,1=P0,1 P1,1 P2,1 P1,2 : P1,1 P1,3 P0,1 Przykład krzywej sklejanej o dwóch segmentach - punkty wskazane - punkty wyznaczone automatycznie

Konstrukcja odpowiednich funkcji wagowych – funkcje B-sklejane Krzywe B-sklejane: W przypadku krzywych o wielu punktach kontrolnych pożądane byłoby aby położenie punktu kontrolnego nie wpływało na przebieg całej krzywej a tylko na jej niewielki fragment. W tym celu współczynnik wagowy Bi dla punktu Pi powinien być niezerowy tylko dla przedziału ΔT(i) = <tP(i),tK(i)> zawartym w przedziale <tP, tK> . Chcemy aby na pozycję określonego punktu na krzywej wpływały tylko położenia m+1 kolejnych punktów kontrolnych Konstrukcja odpowiednich funkcji wagowych – funkcje B-sklejane :

Krzywe B-sklejane: Funkcja B–sklejana m-tego rzędu – funkcja Ni,m(t) mająca wartość 0 we wszystkich podprzedziałach z wyjątkiem m+1 podprzedziałów (i – indeks punktu kontrolnego, dla którego definiujemy funkcję) 1 ti ti+1 funkcja B–sklejana stopnia m w przedziale 1 ti ti+1 ti+2 funkcja liniowa (m = 1 )

Krzywe B-sklejane: t0,..tm-1 oraz tn+2,…tn+m+1 – punkty brzegowe P0 P1 ti ti+1 ti+2 ti+3 funkcja kwadratowa (m = 2 ) P0 P1 P2 P3 P4 P5 t0 t1 t2 t3 t4 t5 t6 t7 t8 t0,..tm-1 oraz tn+2,…tn+m+1 – punkty brzegowe

Krzywe B-sklejane: P0 P1 P2 P3 P4 P5 t t0 t1 t2 t3 t4 t5 t6 t7 t8 Tak zdefiniowana krzywa zaczyna się i kończy w punkcie (0,0) – dla t = t0 i t = tn+m+1 y P1 P2 P0 P4 P3 P5 x Wygodniej byłoby manipulować krzywą gdyby zaczynała się i kończyła we wskazanych punktach

Krzywe B-sklejane: P0 P1 P2 P3 P4 P5 t t0 t1 t2 t3 t4 t5 t6 t7 t8 Dodajemy m-1 sztucznych punktów kontrolnych na początku i na końcu sekwencji punktów kontrolnych – łącznie k+2m-2 punktów: P’0 =P’1=…=P’m-2=P0 oraz P’k+m-1=…=P’k+2m-3=PK P’i=Pi-m dla i=m-1, m, m+1,…,k+m-2 tj+1-tj=1, t0=-m, tm=0 Generujemy krzywą dla t z przedziału (0,k) y P1 P2 P0 P4 P3 P5 x

Krzywe B-sklejane – własności: dla dla t(tm, tn) Wnioski: Funkcja bazowa dla Pi jest niezerowa tylko w m+1 przedziałach t więc zmiana pojedynczego punktu Pi ma wpływ na krzywą tylko w m+1 przedziałach. Krzywa B–sklejana leży wewnątrz powłoki wypukłej punktów wiodących. Ponieważ na każdy punkt ma wpływ co najwyżej m+1 punktów to krzywa leży również wewnątrz sumy powłok wypukłych kolejnych ciągów m+1 punktów wiodących.