Grafika, fizyka, metody numeryczne : symulacje fizyczne z wizualizacją 3D / Jacek Matulewski [et al.]. Warszawa, Spis treści.

Podobne dokumenty
Spis treści. Wstęp... 11

Symulacje komputerowe

OpenGL i wprowadzenie do programowania gier

Mechanika ogólna / Tadeusz Niezgodziński. - Wyd. 1, dodr. 5. Warszawa, Spis treści

Grafika 3D na przykładzie XNA 3.1

Jan Awrejcewicz- Mechanika Techniczna i Teoretyczna. Statyka. Kinematyka

Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania.

Animacja komputerowa : algorytmy i techniki / Rick Parent. Warszawa, 2011 Spis treści Przedmowa

GRK 4. dr Wojciech Palubicki

Plan wykładu. Akcelerator 3D Potok graficzny

Grafika Komputerowa Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38

Załącznik KARTA PRZEDMIOTU. KARTA PRZEDMIOTU Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 KOMPUTEROWA

Zaawansowana Grafika Komputerowa

Śledzenie promieni w grafice komputerowej

Dowiedz się, jak tworzyć zapierające dech w piersiach gry 3D i efektowne, trójwymiarowe wizualizacje!

Spis treści. Wstęp Część I STATYKA

Rozszerzony konspekt preskryptu do przedmiotu Podstawy Robotyki

GRAKO: ŚWIATŁO I CIENIE. Modele barw. Trochę fizyki percepcji światła. OŚWIETLENIE: elementy istotne w projektowaniu

Julia 4D - raytracing

Karta (sylabus) modułu/przedmiotu INŻYNIERIA MATERIAŁOWA Studia pierwszego stopnia

1. Kinematyka 8 godzin

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

Zastosowanie GeoGebry w realizacji zagadnień związanych z trygonometrią 13. Wykresy funkcji sin x i cos x Paweł Perekietka 13

Równa Równ n a i n e i ru r ch u u ch u po tor t ze (równanie drogi) Prędkoś ędkoś w ru r ch u u ch pros pr t os ol t i ol n i io i wym

Modelowanie Fizyczne w Animacji Komputerowej

a. Czym różni się sposób liczenia odbicia zwierciadlanego zaproponowany przez Phonga od zaproponowanego przez Blinna?

PRZEWODNIK PO PRZEDMIOCIE

Symulacje komputerowe

Zadanie polega na zbudowaniu i wyświetleniu przykładowej animowanej sceny przedstawiającej robota spawalniczego typu PUMA.

Kryteria oceniania z matematyki Klasa III poziom rozszerzony

Microsoft Visual C : praktyczne przykłady / Mariusz Owczarek. Gliwice, cop Spis treści

Mgr inż. Wojciech Chajec Pracownia Kompozytów, CNT Mgr inż. Adam Dziubiński Pracownia Aerodynamiki Numerycznej i Mechaniki Lotu, CNT SMIL

RUCH OBROTOWY- MECHANIKA BRYŁY SZTYWNEJ

Bartosz Bazyluk SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok

Feynmana wykłady z fizyki. [T.] 1.1, Mechanika, szczególna teoria względności / R. P. Feynman, R. B. Leighton, M. Sands. wyd. 7.

RUCH OBROTOWY- MECHANIKA BRYŁY SZTYWNEJ

I. Potęgi. Logarytmy. Funkcja wykładnicza.

Informatyka I Lab 06, r.a. 2011/2012 prow. Sławomir Czarnecki. Zadania na laboratorium nr. 6

Kryteria oceniania z matematyki Klasa III poziom podstawowy

Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30

GRAFIKA KOMPUTEROWA podstawy matematyczne. dr inż. Hojny Marcin pokój 406, pawilon B5 Tel.

2 Przygotował: mgr inż. Maciej Lasota

1. Potęgi. Logarytmy. Funkcja wykładnicza

Wstęp Podstawy Pierwszy program Definiowanie sceny 3D Przekształcenia geometryczne... 47

Metoda elementów skończonych w mechanice konstrukcji / Gustaw Rakowski, Zbigniew Kacprzyk. wyd. 3 popr. Warszawa, cop

Ćwiczenia nr 4. TEMATYKA: Rzutowanie

STEREOMETRIA CZYLI GEOMETRIA W 3 WYMIARACH

Wymagania edukacyjne z matematyki - klasa III (poziom rozszerzony) wg programu nauczania Matematyka Prosto do matury

PDM 3 zakres podstawowy i rozszerzony PSO

Tomasz Tobiasz PLAN WYNIKOWY (zakres podstawowy)

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

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

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

Obiekty trójwymiarowe AutoCAD 2013 PL

Wyznaczanie momentów bezwładności brył sztywnych metodą zawieszenia trójnitkowego

Spis treści. Przedmowa do wydania piątego

1 Wstęp teoretyczny. Temat: Manipulowanie przestrzenią. Grafika komputerowa 3D. Instrukcja laboratoryjna Układ współrzędnych

GEOMETRIA PRZESTRZENNA (STEREOMETRIA)

WYMAGANIA EDUKACYJNE Z MATEMATYKI 2016/2017 (zakres podstawowy) klasa 3abc

83 Przekształcanie wykresów funkcji (cd.) 3

Techniki animacji komputerowej

ZAGADNIENIA DO EGZAMINU Z FIZYKI W SEMESTRZE ZIMOWYM Elektronika i Telekomunikacja oraz Elektronika 2017/18

1. Prymitywy graficzne

Wymagania na poszczególne oceny szkolne z. matematyki. dla uczniów klasy IIIa i IIIb. Gimnazjum im. Jana Pawła II w Mętowie. w roku szkolnym 2015/2016

MINIMUM PROGRAMOWE DLA SŁUCHACZY CKU NR 1

OpenGL przezroczystość

Spis treści. Tom 1 Przedmowa do wydania polskiego 13. Przedmowa 15. Wstęp 19

Mechanika ogólna. Kinematyka. Równania ruchu punktu materialnego. Podstawowe pojęcia. Równanie ruchu po torze (równanie drogi)

FIZYKA klasa 1 Liceum Ogólnokształcącego (4 letniego)

WYMAGANIA EDUKACYJNE Rok szkolny 2018/2019

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Metody rozwiązania równania Schrödingera

18. Siły bezwładności Siła bezwładności w ruchu postępowych Siła odśrodkowa bezwładności Siła Coriolisa

Temat: Transformacje 3D

Grafika Komputerowa Wykład 6. Teksturowanie. mgr inż. Michał Chwesiuk 1/23

1.1. Rachunek zdań: alternatywa, koniunkcja, implikacja i równoważność zdań oraz ich zaprzeczenia.

Wyznaczenie współczynnika restytucji

Rozszerzony konspekt preskryptu do przedmiotu Teoria Maszyn i Mechanizmów

Rozkład materiału nauczania

Trójwymiarowa grafika komputerowa rzutowanie

Studentom zostaną dostarczone wzory lub materiały opisujące. Zachęcamy do wykonania projektów programistycznych w postaci apletów.

wymagania programowe z matematyki kl. III gimnazjum

Podstawy elektrodynamiki / David J. Griffiths. - wyd. 2, dodr. 3. Warszawa, 2011 Spis treści. Przedmowa 11

Mechanika Teoretyczna Kinematyka

Geometria analityczna

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

Zygmunt Wróbel i Robert Koprowski. Praktyka przetwarzania obrazów w programie Matlab

Sphere tracing: integracja z klasycznymi metodami symulacji i renderingu

Podstawy fizyki sezon 1 IV. Pęd, zasada zachowania pędu

Katalog wymagań programowych na poszczególne stopnie szkolne. Matematyka. Poznać, zrozumieć

VII.1 Pojęcia podstawowe.

Model oświetlenia. Radosław Mantiuk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wymagania edukacyjne z matematyki : Matematyka z plusem GWO

Symulacja samochodu z kamerą stereowizyjną. Krzysztof Sykuła 15 czerwca 2007

Ustawienia materiałów i tekstur w programie KD Max. MTPARTNER S.C.

GRAFIKA KOMPUTEROWA 7: Kolory i cieniowanie

Bryła sztywna. Wstęp do Fizyki I (B+C) Wykład XXI:

Transformacje obiektów 3D

Nazwisko i imię: Zespół: Data: Ćwiczenie nr 1: Wahadło fizyczne. opis ruchu drgającego a w szczególności drgań wahadła fizycznego

Transkrypt:

Grafika, fizyka, metody numeryczne : symulacje fizyczne z wizualizacją 3D / Jacek Matulewski [et al.]. Warszawa, 2010 Spis treści Wstęp 11 Część I. Grafika trójwymiarowa w OpenGL 13 Rozdział 1. Inicjacja okna dla grafiki 3D generowanej za pomocą OpenGL 15 Visual C++ i WinAPI/WGL 17 Tworzenie projektu i dostosowywanie go do współpracy z OpenGL 17 Tworzenie okna za pomocą funkcji WinAPI 19 Przystosowanie okna do współpracy z OpenGL za pomocą funkcji biblioteki WGL 25 Przygotowanie i rysowanie sceny (wreszcie OpenGL!) 27 Visual C++ i MFC 31 C++Builder i VCL 35 Tryb pełnoekranowy 36 Rozdział 2. Macierze w OpenGL 41 Macierz rzutowania 42 Macierz model-widok 44 Stosy macierzy 48 Współrzędne jednorodne 51 Odczytywanie wartości macierzy 56 Rozdział 3. Rysowanie i animacja figur i brył 59 Wyodrębnianie metody słuŝącej do budowania aktorów 63 Kolor 66 Funkcja glcolor 66 Cieniowanie 66 Kolor tła 67 Model 1: Prostopadłościan 68 Unikanie rysowania tylnych powierzchni 72 Model 2: Niszczyciel gwiazd 74 PodłoŜe 77 Listy wyświetlania 79 Animacja 81 Rozdział 4. Kontrola połoŝenia kamery 85 Rozglądanie się", czyli kamera w centrum (FPP) 86 Ruch w poziomie kontrolowany klawiszami 90 Ruch kamery po sferze z wyróŝnioną płaszczyzną (TPP) 93 Przesuwanie kamery myszą 94 Kontrola odległości kamery od modelu za pomocą rolki myszy 95 Rotacja sferyczna 96 Implementacja rotacji sferycznej 98 UŜycie klasy ArcBall 105 Wektor połoŝenia kamery 110 Swobodne obroty kamery 111 Jeszcze raz o rzutowaniu 117

Rozdział 5. Oświetlenie 119 Trójwymiarowa przestrzeń barw 119 System oświetlenia OpenGL. Światło tła 121 Model oświetlenia Phonga 124 Model Lamberta światła rozproszonego 125 Model rozbłysku Phonga 127 Uśrednianie normalnych 129 Definiowanie wektorów normalnych 130 Definiowanie źródła światła rozproszonego 134 Uśrednianie i interpolacja normalnych 138 Rozbłysk 140 Mieszanie kolorów (alpha blending) 142 Sortowanie ścian 145 Rozdział 6. Odwzorowywanie tekstur 153 Proste teksturowanie 154 Wiązanie tekstur (współrzędne teksturowania) 158 Wiele tekstur 160 Przezroczyste tekstury 163 Wczytywanie tekstur z plików (bitmap) 165 Czytanie tekstur z zasobów aplikacji 172 Lakierowanie tekstur 173 Układanie tekstur obok siebie 175 Rozdział 7. Napisy 177 Tworzenie czcionek do wyświetlania napisów 177 UŜywanie czcionek bitmapowych 179 UŜywanie czcionek 3D 183 Rozdział 8. Biblioteka GLU 185 Kwadryki 185 Teksturowanie kwadryki 188 Inne kwadryki 190 GLU i macierze 194 glulookat 194 gluperspective 195 Inne 196 Rozdział 9. Bufor szablonowy 199 Przygotowanie sceny 199 Płaszczyzny obcinające 201 Przygotowanie szablonu 203 UŜycie szablonu do przycięcia odbicia 205 Rozdział 10. Szablon projektów korzystających z grafiki OpenGL 209 Zadania 213

Część II. Wizualizacja danych 215 Rozdział 11. Wizualizacja obiektów przestrzennych na przykładzie molekuł białek 217 Zadanie 217 Format PDB 217 Odczyt danych z pliku PDB 219 Klasa Atom 220 Klasa PDB 222 Wizualizacja 224 PołoŜenie atomów 225 Wiązania chemiczne 229 Wybór atomu i wyświetlanie etykiety, czyli interakcja z uŝytkownikiem w OpenGL 232 Stos nazw 233 Renderowanie w trybie zaznaczania 235 Odczytywanie informacji z bufora zaznaczania 237 WyróŜnianie wybranego atomu 238 Rozdział 12. Wizualizacja funkcji dwóch zmiennych 241 Format plików z danymi 242 Klasy reprezentujące wczytywane dane 244 Czytanie danych 247 Wczytywanie parametrów programu z pliku 247 Wczytywanie parametrów sieci z pliku 250 Wczytywanie danych 252 Przygotowanie wykresu 253 Wyznaczenie zakresu tablicy, w którym znajdują się dane do wyświetlania 253 Wyznaczenie wartości minimalnej i maksymalnej 254 Wyznaczenie współczynnika skalowania 255 Wyznaczenie koloru odpowiadającego wartości funkcji 255 Wyświetlenie danych 257 Destruktor klasy 263 Osie układu współrzędnych 264 Rysowanie osi 264 Opis osi 266 Oświetlenie 268 Źródło światła 268 Sterowanie pozycją źródła światła 270 Rozdział 13. Trójwymiarowa wizualizacja z wykorzystaniem teksturowania przeźroczystego 275 Tomografia optyczna 275 Wczytywanie danych 276 Metoda wizualizacji za pomocą przeźroczystego teksturowania 279 Mapy kolorów 281 Przygotowanie powierzchni do teksturowania 285 Przygotowanie tekstur 288 Regulacja jasności, kontrastu i przezroczystości 296

Część III. Świat modelowany zbiorem punktów materialnych 299 Rozdział 14. Dynamika punktu 301 Ruch 301 Siła 302 Równania ruchu 303 Przykładowe rozwiązanie 304 Zamiana na równania pierwszego stopnia 305 Rozdział 15. Metody numeryczne, czyli dyskretyzacja równań ruchu 307 Szereg Taylora 307 Algorytm Eulera 309 Algorytm Verleta 311 Rozdział 16. Implementacja 313 Klasa TPunktMaterialny 313 Implementacja algorytmów Eulera i Verleta 317 Klasa ZbiorPunktowMaterialnych 320 Definiowanie układu punktów materialnych 324 Wizualizacja punktów 325 Dynamika punktów 327 Wstrzymywanie symulacji 330 Mechanizm odświeŝania sceny w symulacjach 330 Rozdział 17. Modelowanie układów elastycznych 333 Zbiór oscylatorów 333 Rysowanie linii 337 Tłumienie 339 Sztywność 342 Lina 346 Dalsi sąsiedzi 348 Włos 349 PodłoŜe 351 Rozdział 18. Siły kontaktowe 357 Reakcja na kontakt z obszarem niedostępnym 357 Wzory 359 Tarcie 360 Implementacja obszaru niedostępnego 361 Abstrakcyjny typ danych 361 PodłoŜe 363 Kula 364 Dwa inne przykłady 365 Zbiór punktów materialnych z obszarem niedostępnym 370 Przykłady układów z obszarami niedostępnymi 375 Punkty uderzające w kulę 375 Lina na podłoŝu 378 Lina opadająca na stolik 379 Łączenie dwóch obszarów zabronionych 383 Układy dwuwymiarowe 384 Siatka, czyli kawałek tkaniny 384 Pierwszy test i metody rysowania siatki 388 Siatka w kontakcie z obszarem niedostępnym 392 Układ trójwymiarowy, czyli dynamika brył miękkich 393

Rozdział 19. Zderzenie dwóch punktów 399 Fizyka zderzenia dwóch kuł 399 Zasady zachowania energii i pędu w zderzeniach 400 Dynamika niecentralnego zderzenia dwóch kuł 403 Projekt testu 405 Uproszczenia 406 Implementacja zderzenia dwóch kuł 407 Pudło 412 Dwa testy obnaŝające wady naiwnej implementacji 413 Implementacja zderzeń niecentralnych 415 Symulacja ruchów Browna 417 Rozdział 20. Zderzenia punktów z tkaniną 419 Wykrywanie kolizji punktu z trójkątem 419 Czy odcinek przecina płaszczyznę? 419 Gdzie odcinek przecina płaszczyznę? 421 Czy punkt przecięcia znajduje się wewnątrz trójkąta? 422 Modelowanie reakcji tkaniny i punktów na zderzenie 424 Implementacja wody i tkaniny 425 Implementacja wykrywania zderzeń 428 Implementacja reakcji na zderzenia 432 Rozdział 21. Sterowanie 435 Przeciąganie punktu myszą 435 Kontrola obiektu za pomocą klawiatury, czyli trening intuicji fizycznej 442 Bilard 447 Klasa Bilard 447 Rysowanie bil, stołu i kija 451 Implementacja kija 452 Implementacja łuz 456 Rozdział 22. O dwóch trikach uŝywanych w symulacjach cząsteczkowych 461 Jakie problemy chcemy rozwiązać? 461 Grawitacja 461 Dwa triki 462 Odcięcie i podział na komórki 462 Periodyczne warunki brzegowe 463 Implementacja 464 Klasa Galaktyka 464 Wizualizacja 467 Naiwna implementacja oddziaływań 468 Podział obszaru na komórki" 469 Implementacja periodycznych warunków brzegowych 474 Przejście przez granicę 474 Obliczanie odległości 475 Zadania 477

Część IV. Obiekty modelowane zespołem brył sztywnych 481 Rozdział 23. Dynamika bryły sztywnej 483 Środek masy 483 Kinematyka bryły sztywnej 485 Prędkość liniowa i prędkość kątowa 485 Korujący układ odniesienia 485 Dynamika bryły sztywnej, czyli równania Newtona w ruchu postępowym i obrotowym 489 Moment pędu 489 Moment bezwładności 490 Moment siły i równanie ruchu 493 Czego brakuje w równaniach ruchu? 495 Moment bezwładności prostopadłościanu 496 Macierz obrotu 498 Całkowanie prędkości kątowej 499 Rozdział 24. Implementacja metody Eulera dla dynamiki bryły sztywnej 503 Metoda numeryczna 503 Implementacja klas opisujących bryły sztywne 504 Szablon klasy TBrylaSztywna 504 Przykład bryły sztywnej: klasa Prostopadloscian 509 MenedŜer zbioru brył sztywnych 510 Zbiór prostopadłościanów 514 Wizualizacja 515 Rozdział 25. Kwaterniony 519 Algebra kwaternionów 520 Kwaterniony jednostkowe 524 Konwersja między kwaternionem i macierzą 528 Pochodna kwaternionu i równanie ruchu 531 Implementacja dynamiki opartej na kwaternionach 533 Dwa testy 537 Kąty Eulera, kwaterniony i macierze obrotu 538 Rozdział 26. Detekcja kolizji: obszary ograniczające 541 Sfery ograniczające (BS) 541 Prostopadłościany ograniczające ustawione wzdłuŝ osi sceny (AABB) 546 Twierdzenie SAT 551 Twierdzenie SAT w przypadku prostopadłościanów OBB 553 Czytelna implementacja SAT dla prostopadłościanów OBB 556 Optymalizacja implementacji SAT 558 Rozdział 27. Detekcja kolizji: wyznaczanie punktu styku oraz normalnej i stycznej zderzenia 567 Normalna zderzenia dwóch prostopadłościanów 569 Punkt zderzenia dwóch prostopadłościanów 573 Zderzenie wierzchołka ze ścianą 573 Zderzenie dwóch krawędzi 574 Odległość dwóch prostych 578 Podsumowanie 581 Styczna zderzenia dwóch prostopadłościanów 582

Rozdział 28. Fizyka zderzeń brył sztywnych 585 Popęd liniowy, czyli zasada zachowania pędu 585 Popęd kątowy, czyli zasada zachowania momentu pędu 586 Współczynnik restytucji, czyli zasada (nie)zachowania energii 587 Rozwiązanie 587 Tarcie 589 Implementacja 590 Zadania 593 Wybrana literatura tematu 595 Mechanika 595 Geometria obliczeniowa (w tym detekcja kolizji) 596 OpenGL i grafika 3D 596 Metody numeryczne 597 Prace inŝynierskie i dyplomowe wykorzystane w ksiąŝce 598 Dodatek A. Korzystanie z biblioteki GLUT do zarządzania oknem w projektach przenośnych 599 GLUT (Visual C++) 600 Tworzenie okna OpenGL za pomocą GLUT 600 Interakcja z uŝytkownikiem 606 GLUT w C++Builder 611 Kompilacja projektu korzystającego z GLUT za pomocą g++ w systemie Linux i powłoce Cygwin 612 Dodatek B. Macierz rzutowania punktu na płaszczyznę 613 Dodatek C. Wczytywanie modelu z pliku OBJ 619 Opis formatu Wavefront OBJ 619 Klasy CScena i CModel 622 Rysowanie wczytanej sceny. Klasa CScenaRysowana 634 Przykładowy projekt 637 Dodatek D. Klasy implementujące wektor, macierz i kwaternion 643 Wektor 643 Projekt interfejsu 643 Definicja klasy i jej pola 644 Operator indeksowania 645 Konwersja do tablicy 646 Operatory relacji 647 Operatory arytmetyczne 647 Iloczyny wektorów 649 Metody 651 Konkretyzacja 652 Testy 653 Macierz kwadratowa 3x3 656 Przechowanie i dostęp do elementów macierzy 657 Operatory 660 Metody 663 Testy 668

Kwaternion 670 Pola i konstruktory 670 Operatory 671 Metody 673 Testy 677 Funkcja TworzMacierzObrotuZKatalOsiObrotu 679 Dodatek E. Animacja szkieletowa 681 Kości i stawy 683 Projektowanie szkieletu 685 Rysowanie ręki 687 Modelowanie ułoŝenia 690 Modelowanie animacji 691 Indeks 695 oprac. BPK