Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

POLITECHNIKA GDAŃSKA WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI

Podobne prezentacje


Prezentacja na temat: "POLITECHNIKA GDAŃSKA WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI"— Zapis prezentacji:

1 POLITECHNIKA GDAŃSKA WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI KATEDRA SYSTEMÓW GEOINFORMATYCZNYCH WYKORZYSTANIE JĘZYKÓW OPISU WIRTUALNEJ RZECZYWISTOŚCI DO TRÓJWYMIAROWEJ WIZUALIZACJI DANYCH PRZESTRZENNYCH Dr inż. Marek Moszyński Gdańsk, 2006

2 PLAN WYKŁADU Podstawy matematyczne trójwymiarowej wizualizacji
Rola kart graficznych w trójwymiarowej wizualizacji Interfejs programistyczny OpenGL i Java3D Język opisu wirtualnej rzeczywistości VRML jako język programowania Animacja w wirtualnej rzeczywistości Rodzaje danych przestrzennych GeoVRML jako roszerzenie standardu do wizualizacji danych przestrzennych Standard X3D Przykładowe zastosowania

3 PODSTAWY MATEMATYCZNE TRÓJWYMIAROWEJ WIZUALIZACJI
Skalowanie

4 PODSTAWY MATEMATYCZNE TRÓJWYMIAROWEJ WIZUALIZACJI
Przesunięcie

5 PODSTAWY MATEMATYCZNE TRÓJWYMIAROWEJ WIZUALIZACJI
Rotacja Względem osi x Względem osi y Względem osi z

6 DISPLAY ARCHITECTURE IN WIN95
Windows Application Graphics Device Interface (GDI) Realistic Display Mixer (RDX) Video for Windows (VFW) Active Movie (Win95) Direct3D Retained Mode Direct3D Immediate Mode DIBENG Emulator DirectDraw Hardware Emulation Layer (HEL) Direct Video Direct3D Hardware Emulation Layer (HEL) Windows Device Driver Interface (DDI) DirectDraw & Direct3D Hardware Abstraction Layer (HAL) / Device Driver Interface Graphics Device

7 ZASADA DZIAŁANIA KARTY GRAFICZNEJ
Screen space triangle stream Transformed vertex stream Vertex stream Triangle stream Vertex Program Triangle Assembly Clip/Cull/ Vieport Pamięć tekstur Rasteryzacja Processed fragment stream Fragment stream Pixel stream Fragment Program Composite Framebuffer Image

8 ARCHITEKTURA PROCESORA GRAFICZNEGO
Vertex Processing Fragment Processing

9 CPUs vs. GPUs Pentium Extreme Edition 840 GeForce 7800 GTX
3.2 GHz Dual Core 230M Transistors 90nm process 206 mm2 2 x 1MB Cache 25.6 GFlops GeForce 7800 GTX 430 MHz 302M Transistors 110nm process 326 mm2 313 GFlops (shader) 1.3 TFlops (total)

10 CPUs vs. GPUs Efficiency of FLOPs delivered PEE 840 7800GTX GPU/CPU
Graphics GFlops 25.6 1300 50.8 Shader GFlops 313 12.2 Die Area (mm2) 206 326 1.6 Die Area normalized 218 1.1 Transistors (M) 230 302 1.3 Power (W) 130 65 0.5 Graphics GFlops/mm 0.1 6.0 47.9 GFlops/tr 4.3 38.7 GFlpos/W 0.2 20.0 101.6

11 TESTY WYDAJNOŚCI KART GRAFICZNYCH

12 INTERFEJS PROGRAMISTYCZNY OpenGL I Java3D
OpenGL można zdefiniować jako „programowy interfejs sprzętu graficznego". Jest to biblioteka przeznaczona do tworzenia trójwymiarowej grafiki, bardzo szybka i łatwo przenaszalna pomiędzy różnymi systemami. W OpenGL zastosowano algorytmy opracowane przez Silicon Graphics (SGI), niekwestionowanego lidera w dziedzinie animacji i grafiki komputerowej. Java3D jest standardowym rozszerzeniem języka Java w wersji 1.2. Nie jest to jednak niezależna biblioteka w całości napisana w Javie. Do swego działania wymaga biblioteki OpenGL w wersji co najmniej 1.1, a więc Java3D wykorzystuje niskopoziomowe wywołania funkcji OpenGL'a, co daje gwarancję odpowiednio szybkiego renderowania scen w czasie rzeczywistym.

13 INTERFEJS PROGRAMISTYCZNY OpenGL I Java3D
Architektura OpenGL Per Vertex Operations & Primitive Assembly Polynomial Evaluator Display List Per Fragment Operations Frame Buffer CPU Rasterization Texture Memory Pixel Operations

14 INTERFEJS PROGRAMISTYCZNY OpenGL I Java3D
Architektura Java3D

15 INTERFEJS PROGRAMISTYCZNY OpenGL I Java3D
Zalety Intuicyjne programowanie Małe zasoby pamięci potrzebne do uruchomienia aplikacji Szybkie wykonywanie operacji graficznych Wbudowane funkcje grafiki 3D Łatwość w kodowaniu Mało „bugów” technologii Wady Brak prawdziwego API utrudnia programowanie Wolne wykonywanie operacji graficznych Pseudoobiektowość JOGLa Długi czas trwania inicjalizacji obiektów graficznych i interfejsu „pamięciożerny”

16 VRML Język VRML (ang. Virtual Reality Modeling Language) jest narzędziem pozwalającym opisywać obiekty i animacje na trójwymiarowej scenie. Dzięki niemu istnieje możliwość tworzenia interaktywnych wirtualnych światów, gdzie użytkownik ma możliwość poruszania się pomiędzy zdefiniowanymi obiektami (wyświetlanie obiektów trójwymiarowych w czasie rzeczywistym), definiowania dowolnej ilości czujników interakcyjnych zmieniających wygląd świata VRML. Wirtualne światy uruchamiane są na tej samej zasadzie co strony HTML - poprzez sieć Internet - trzeba jednak zaopatrzyć przeglądarkę internetową w odpowiedni dodatek (ang. plug-in). Język VRML charakteryzuje się trzema cechami, które odróżniają go od innych aplikacji do tworzenia grafiki trójwymiarowej, stanowiąc jednocześnie o jego atrakcyjności. dostępność – możliwość odwiedzenia wirtualnego świata za pomocą sieci Internet, możliwość poruszania się po wirtualnym świecie – wszystkie obiekty na scenie trójwymiarowej można obejrzeć z każdej strony, ale nie na zasadzie wyświetlania ich kolejnych rzutów, czy też animacji (chociaż to też jest możliwe), ale poprzez „chodzenie" wokół nich. Nie można uzyskać tego efektu w tradycyjnych aplikacjach do grafiki trójwymiarowej takich jak AutoCad czy 3DStudio, interakcyjność – każdy uczestnik świata wirtualnego może mieć wpływ na jego wygląd, jeśli twórca umieścił w opisie sceny różnego rodzaju czujniki.

17 VRML Koncepcja przeglądarki plików VRML

18 ARCHITEKTURA JĘZYKA VRML
Viewpoint #VRML V2.0 utf8 Viewpoint { position description "Start" } Shape { appearance Appearance { material Material { emissiveColor 1 0 0 transparency 0.2 }} geometry Cone { bottomRadius 4.2 height 8 }} Shape geometry Appearance Material

19 PRZYKŁADOWE ZASTOSOWANIA JĘZYKA VRML

20 ANIMACJA W WIRTUALNEJ RZECZYWISTOŚCI
W języku VRML istnieje możliwość tworzenia animacji. Do stworzenia animacji niezbędne są następujące elementy: zdefiniowany (za pomocą komendy DEF) węzeł którego pola będą na bieżąco modyfikowane w trakcie wykonywania animacji, zdefiniowany węzeł odpowiedzialny za początek, koniec oraz czas trwania animacji (TimeSensor), zdefiniowany węzeł interpolujący wartości pól modyfikowanych w czasie trwania animacji, zdefiniowanie ścieżek pomiędzy polami węzłów (powiązanie zdarzeń), opcjonalnie zdefiniowany węzeł czujnikowy (TouchSensor) Schemat blokowy elementów oraz ich powiązań przy tworzeniu animacji w języku VRML

21 ANIMACJA W WIRTUALNEJ RZECZYWISTOŚCI
Pętla symulacji Stworzenie świata Zainicjowanie sensorów i świateł Odczyt sensorów Renderowanie wyglądu świata Wywołanie funkcji akcji świata Wykonanie zadań obiektów graficznych Aktualizacja obiektów graficznych zależnie od odczytów sensora

22 PRZYKŁAD ANIMACJI WYKONANEJ W JĘZYKU VRML

23 RODZAJE DANYCH PRZESTRZENNYCH

24 GeoVRML GeoVRML is an official Working Group of the Web3D Consortium. It was formed on 27 Feb 1998 with the goal of developing tools and recommended practice for the representation of geographical data using the Virtual Reality Modeling Language (VRML). The desire is to enable geo-referenced data, such as maps and 3-D terrain models, to be viewed over the web by a user with a standard VRML plugin for their web browser. The GeoVRML Working Group has a mailing list where discussions and developments are posted. Currently, this list consists of over 200 members drawn from a wide gamut of backgrounds and nationalities, including members from industry, government, and academia; geographers, geologists, computer graphics developers, and of course interested hobbyists. The group has recently produced the GeoVRML 1.1 specification, providing a number of extensions to VRML for supporting geographic applications. There is also an accompanying Open Source Java sample implementation of these nodes. Finally, these nodes are part of Amendment 1 to the VRML97 ISO standard.

25 WŁAŚCIWOŚCI JĘZYKA GeoVRML
Możliwość bezpośredniego osadzania metadanych w kodzie VRML’a w formatach: GD – „<latitude> <longitude> <elevation>” „<longitude> <latitude> <elevation>” UTM – „<northing> <easting> <elevation>” „<easting> <northing> <elevation>” GC – „<x> <y> <z>” 43km 219m Gdańsk Malbork 54°21’N 18°40’E 54°02’N 19°03’E GD lat: lon: 18.67 lat: lon: 19.05 UTM (WGS84) N E Zone number: 34 N E

26 WŁAŚCIWOŚCI JĘZYKA GeoVRML
Zwiększenie precyzji prezentowanych danych Poprzez zdefiniowanie lokalnych kartezjańskich układów współrzędnych (ang. Local Cartesian Frame) UTM GC LCF E, N, 0m, zone 13 , , Punkt E, N, 0m, zone 13 , , Punkt - LCF 22.61, 26.44, 38.92

27 WŁAŚCIWOŚCI JĘZYKA GeoVRML
Zwiększenie precyzji prezentowanych danych Poprzez zapis liczb jako ciągu znaków Konwersji za pomocą Javy ciągu znaków na liczbę GeoCoordinate { geoSystem "GD" point [ " " ] } geoSystem [ "UTM", "Z11„] point [ " " ]

28 WŁAŚCIWOŚCI JĘZYKA GeoVRML
Modyfikacja węzła LOD (ang. Level of Detail) decydującego o poziomach szczegółowości umieszczanych obiektów na scenie (GeoLOD)

29 WŁAŚCIWOŚCI JĘZYKA GeoVRML
Zawiera dodatkowy węzeł do opisywania obiektów geograficznych (Metadata) Zawiera dodatkowy węzęł interpolacji umożliwiający poruszanie się po powierzchni kuli (GeoPositionInterpolator) Możliwość lokalizacji punktów odniesienia umieszczonych na scenie Zaimplementowane schematy nawigacji specyficzne dla aplikacji geograficznych

30 ARCHITEKTURA JĘZYKA GeoVRML
GeoCoordinate GeoViewpoint GeoLOD . . . Węzły GeoVRML’a GeoVRML Support Layer Implementacja węzłów GeoVRML’a za pomocą JAVY System do transformacji współrzędnych geograficznych (lat/lon, UTM, …) GeoTransform Package

31 PRZYKŁADY WYKORZYSTANIA JĘZYKA GeoVRML

32 JĘZYK X3D X3D jest następną, po VRML, generacją otwartego standardu dla grafiki 3D w sieci WWW. Jest rezultatem kilkuletniej pracy rozwojowej X3D Task Group i utworzonej niedawno Browswer Working Group, zrzeszonych w Web 3D Consorcium. Obie te grupy ściśle współpracują ze sobą w celu utworzenia nowej specyfikacji X3D, która łączy w sobie potrzeby ludzi korzystających z przeglądarek jak i wymagania całego społeczeństwa informatycznego. Wymagania stawiane X3D: Zgodność z istniejącym standardem VRML, przeglądarkami i narzędziami, Rozszerzone mechanizmy pozwalające na wprowadzanie nowych właściwości, szybka ocena przydatności i formalna adaptacja tych rozszerzeń w specyfikacji, Małe, proste "jądro" pozwala na szeroką dowolność adaptacji elementów 3D, Większy, w pełni kompatybilny profil VRML obsługujący istniejące bogactwo obiektów, Obsługa przez inne dekodery, włączając XML, dla ścisłej integracji z technologią i narzędziami Web.

33 ARCHITEKTURA JĘZYKA X3D

34 PRZYKŁADOWE ZASTOSOWANIA
Wizualizacja w języku VRML danych z sonarów wielowiązkowych

35 PRZYKŁADOWE ZASTOSOWANIA
Wizualizacja w języku VRML przemieszczania się ryb pelagicznych w wiązce echosondy Wirtualny echogram – widok z boku Echogram Implementacja w VRML’u

36 PRZYKŁADOWE ZASTOSOWANIA
Wizualizacja w języku VRML przemieszczania się ryb pelagicznych w wiązce echosondy Wirtualny echogram – widok z góry „Bulls – eye” Implementacja w VRML’u


Pobierz ppt "POLITECHNIKA GDAŃSKA WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI"

Podobne prezentacje


Reklamy Google