GKIW Moduł 4 - Przekształcenia geometryczne: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 332: | Linia 332: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M4_Slajd29.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M4_Slajd29.png|thumb|500px]] | ||
|valign="top"|Zestaw podstawowych operacji obejmował obroty, ale tylko wokół osi układu współrzędnych. Obrót wokół dowolnej osi musi być zatem zrealizowany jako złożenie operacji. Można przyjąć założenie, że generalnie celem operacji wstępnych jest takie przekształcenie przestrzeni, aby zadana oś obrotu (prosta l na rysunku) pokryła się z wybraną osią układu współrzędnych. Przy czym przyjęty zwrot osi obrotu powinien być zgodny ze zwrotem osi okładu. Takie warunki pozwolą obrót o kąt <math>\varphi,</math> wokół zadanej osi zrealizować bezpośrednio jako obrót o kąt <math>\varphi,</math> wokół osi układu. | |valign="top"|Zestaw podstawowych operacji obejmował obroty, ale tylko wokół osi układu współrzędnych. Obrót wokół dowolnej osi musi być zatem zrealizowany jako złożenie operacji. Można przyjąć założenie, że generalnie celem operacji wstępnych jest takie przekształcenie przestrzeni, aby zadana oś obrotu (prosta <math>l</math> na rysunku) pokryła się z wybraną osią układu współrzędnych. Przy czym przyjęty zwrot osi obrotu powinien być zgodny ze zwrotem osi okładu. Takie warunki pozwolą obrót o kąt <math>\varphi,</math> wokół zadanej osi zrealizować bezpośrednio jako obrót o kąt <math>\varphi,</math> wokół osi układu. | ||
Zadanie można rozwiązać na wiele sposobów. Przyjęto następujący zestaw operacji: | Zadanie można rozwiązać na wiele sposobów. Przyjęto następujący zestaw operacji: | ||
Linia 338: | Linia 338: | ||
#Przesunięcie, aby punkt <math>T_1\,</math> znalazł się w początku układu współrzędnych. | #Przesunięcie, aby punkt <math>T_1\,</math> znalazł się w początku układu współrzędnych. | ||
#Obrót wokół osi OX. | #Obrót wokół osi OX. | ||
#Obrót wokół osi OY. Obroty (etap 2. i 3. ) zapewniają, że zadana oś obrotu (prosta l) pokryje się (z uwzględnieniem zwrotów) z osią OX układu współrzędnych. | #Obrót wokół osi OY. Obroty (etap 2. i 3. ) zapewniają, że zadana oś obrotu (prosta <math>l</math>) pokryje się (z uwzględnieniem zwrotów) z osią OX układu współrzędnych. | ||
#Realizacja zadanego obrotu o kąt <math>\varphi,</math> wokół osi OX. | #Realizacja zadanego obrotu o kąt <math>\varphi,</math> wokół osi OX. | ||
#Obrót będący operacją odwrotną do operacji 3. | #Obrót będący operacją odwrotną do operacji 3. | ||
Linia 357: | Linia 357: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M4_Slajd31.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M4_Slajd31.png|thumb|500px]] | ||
|valign="top"|Po zrealizowaniu obrotu wokół OX prosta l znalazła się na płaszczyźnie XOZ. | |valign="top"|Po zrealizowaniu obrotu wokół OX prosta <math>l</math> znalazła się na płaszczyźnie XOZ. | ||
|} | |} | ||
Linia 364: | Linia 364: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M4_Slajd32.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M4_Slajd32.png|thumb|500px]] | ||
|valign="top"|Po zrealizowaniu obrotu wokół OY prosta l pokryje się z osią OX układu współrzędnych. Jednocześnie odpowiednio dobrane operacje zapewniły zgodność zwrotów obu osi. | |valign="top"|Po zrealizowaniu obrotu wokół OY prosta <math>l</math> pokryje się z osią OX układu współrzędnych. Jednocześnie odpowiednio dobrane operacje zapewniły zgodność zwrotów obu osi. | ||
|} | |} | ||
Linia 371: | Linia 371: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M4_Slajd33.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M4_Slajd33.png|thumb|500px]] | ||
|valign="top"|Teraz można wreszcie wykonać obrót o kąt <math>\varphi\,</math> wokół prostej l co, dzięki odpowiednim operacjom wstępnym, odpowiada obrotowi o kąt <math>\varphi\,</math> wokół osi OX układu współrzędnych. | |valign="top"|Teraz można wreszcie wykonać obrót o kąt <math>\varphi\,</math> wokół prostej <math>l</math> co, dzięki odpowiednim operacjom wstępnym, odpowiada obrotowi o kąt <math>\varphi\,</math> wokół osi OX układu współrzędnych. | ||
|} | |} | ||
Wersja z 23:31, 8 lis 2007
Wykład
![]() |
![]() |
![]() |
Można zaproponować pewien minimalny zestaw operacji: symetrie (względem osi układu współrzędnych i środkowa), obroty, przesunięcie (translacja), skalowanie oraz pochylenie. |
![]() |
![]() |
![]() |
![]() |
![]() |
Pochylenie jest rzadziej stosowanym przekształceniem. Daje możliwość zniekształcenia figury. Nie zachowuje odległości punktów. Figura i jej obraz w tym przekształceniu nie są podobne. |
![]() |
![]() |
Macierze opisujące symetrie płaszczyznowe względem pozostałych dwóch płaszczyzn (XOY i YOZ) mają analogiczną postać ze zmienionym znakiem przy 1 w odpowiedniej kolumnie. |
![]() |
Podobnie macierze opisujące symetrie osiowe względem pozostałych dwóch osi (OY i OZ) mają analogiczną postać ze zmienionymi znakami. |
![]() |
![]() |
Przesunięcie w układzie trójwymiarowym odbywa się w sposób analogiczny do przesunięcia na płaszczyźnie. |
![]() |
![]() |
Obiekt na rysunku został obrócony o kat wokół osi OX. |
![]() |
Obiekt na rysunku został obrócony o kat wokół osi OY |
![]() |
Obiekt na rysunku został obrócony o kat wokół osi OZ. |
![]() |
Rysunek pokazuje wynik pierwszej operacji – przesunięcia. Zadana oś obrotu zawiera teraz przekątną prostopadłościanu o bokach A, B, C. Ułatwi to definicje kątów obrotu. |
![]() |
Po zrealizowaniu obrotu wokół OX prosta znalazła się na płaszczyźnie XOZ. |
![]() |
Po zrealizowaniu obrotu wokół OY prosta pokryje się z osią OX układu współrzędnych. Jednocześnie odpowiednio dobrane operacje zapewniły zgodność zwrotów obu osi. |
![]() |
Teraz można wreszcie wykonać obrót o kąt wokół prostej co, dzięki odpowiednim operacjom wstępnym, odpowiada obrotowi o kąt wokół osi OX układu współrzędnych. |
![]() |
Jeśli przeanalizujemy algorytm naiwny, to okaże się, że wraz z powiększaniem wartości kąta dodajemy błędy. Błąd się nakłada wraz z postępowaniem obliczeń. |
![]() |
Suma i iloczyn są zdefiniowane tak jak na rysunku.
Dodawanie kwaternionów jest operacją łączną i przemienną. Mnożenie kwaternionów jest operacją łączną i nie jest operacją przemienną |
Literatura
![]() |