POLITECHNIKA GDAŃSKA WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI

Slides:



Advertisements
Podobne prezentacje
Migrating Desktop Podsumowanie projektu
Advertisements

Wprowadzenie do C++ Zajęcia 2.
PROGRAMOWANIE STRUKTURALNE
Implementacja algorytmów na procesory kart graficznych
Grafika komputerowa Wykład 2 Wykorzystanie podstawowych usług bibliotecznych (API) w operacjach graficznych.
Interaktywny edytor terenu
Technologie XML Mgr inż. Michał Jaros Technologie XML wykład 3.
Platforma .Net i Vs.Net.
Dokumentowanie wymagań w języku XML
Wykład nr 1: Wprowadzenie. Pojęcia podstawowe
Systemy operacyjne.
Systemy operacyjne Bibliografia:
Systemy operacyjne Bibliografia:
Pakiety i ATD 1 Definicja. Pakietem albo jednostką programową nazywamy grupę logicznie powiązanych elementów, które mogą być typami, podtypami, obiektami.
Koordynatorzy: Krzysztof BIKONIS Marek MOSZYŃSKI
mgr inż. Krzysztof Kluczek Katedra Inżynierii Wiedzy WETI PG
© 2006Marcin Nowak, Mateusz Pachocki1 Zastosowanie rękawicy cyfrowej oraz wyświetlacza 3D do manipulacji obiektami w wirtualnej rzeczywistości. TytułowyTytułowy.
Języki programowania obiektowego
Wstęp do programowania obiektowego
Systemów Operacyjnych
Budowa Komputera.
Multimedialne bazy danych
Przegląd ważniejszych bibliotek używanych przy projekcie Quall.
Zastosowanie technologii CUDA w sztucznej inteligencji
trójwymiarowy labirynt z fizyką i przeszkodami
Wykład 2 Cykl życia systemu informacyjnego
WebSphere Everyplace Micro Environment IBM Workplace Client Technology, Micro Edition Monika Nawrot, Tomasz Jadczyk, Tomasz Sadura KI, EAIiE, AGH.
Możliwości biblioteki logiczno-fizycznej opartej na systemie masa-sprężyna jako środowiska modelowania rzeczywistości wirtualnej. Projekt systemu Seminarium.
Wykonał: Tomasz Nocek kl. III B
Promotor: Dr inż. Grzegorz Wróbel
Łukasz Sobczak. 1)Co to jest Office 2010 Web Apps 2)SharePoint 2010 a narzędzia pakietu office 3)Integracja Office Web Apps z SharePoint )Problemy.
System webowy do tworzenia kolektywnych prototypów aplikacji sieciowych i mobilnych Łukasz Przywarty
Rozwój aplikacji. To zestaw narzędzi do budowania i optymalizacji złożonych aplikacji opartych na przeglądarce. To zestaw narzędzi do budowania i optymalizacji.
Instytut Tele- i Radiotechniczny WARSZAWA
Architektura Systemu Źródło:
Microsoft Expression Studio
Opracował : Przemysław Drzymała
Jaka jest wydajność najszybszego superkomputera na świecie? Gflopów procesorów Intel EM64T Xeon X56xx 2930 MHz (11.72 GFlops) GB.
Budowa systemu komputerowego
MDA – Model Driven Architecture
Jakub Wołczko W obiektowym świecie… Jakub Wołczko
XML – eXtensible Markup Language
Maszyna wirtualna ang. virtual machine, VM.
Tworzenie stron internetowych www World Wide Web
Gra komputerowa na komputer Raspberry Pi
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Projektowanie Aplikacji Internetowych Artur Niewiarowski Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska.
Treści multimedialne - kodowanie, przetwarzanie, prezentacjaOdtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Podstawy języka skryptów
Dokumentacja obsługi programów Kamil Smużyński Piotr Kościński.
Grafika komputerowa Graphics Image Manipulation Program (GIMP) - zaawansowany edytor grafiki rastrowej za darmo Virtual Reality Modelling Language (VRML)
Zakres wykładu Kierunki rozwoju oprogramowania systemów rozproszonych Własności wybranych architektur - problemy badawcze Przykładowe obszary zastosowań.
WYKORZYSTANIE JĘZYKÓW OPISU WIRTUALNEJ RZECZYWISTOŚCI DO TRÓJWYMIAROWEJ WIZUALIZACJI DANYCH PRZESTRZENNYCH Dr inż. Marek Moszyński Gdańsk, 2006 POLITECHNIKA.
Grafika komputerowa Dr inż. Piotr Gronek Wykład dla Studium Podyplomowego „Informatyka w Szkole”
Komputerowe wspomaganie projektowania Wydział Zarządzania i Ekonomii Politechnika Gdańska 2007 r.
Waldemar Bartyna 1 Programowanie zaawansowane LINQ to XML.
WSPM - Wirtualny System Plików Multimedialnych Igor BOKUN, Stanisław STRELNIK, Krzysztof ZIELIŃSKI Katedra Informatyki Akademia Górniczo-Hutnicza.
Platforma .Net.
Informatyka – szkoła gimnazjalna – Scholaris - © DC Edukacja Tworzenie stron WWW w programie Microsoft FrontPage Informatyka.
Podział sieci komputerowych
Temat: Porównanie technologii php,c# oraz javascript na przykładzie webaplikacji typu społecznościowy agregator treści Autor: Wojciech Ślawski.
Draver/GRK/cw3_result.jpg. Grafika 3D Wprowadzenie.
ASP.NET Dostęp do bazy danych z poziomu kodu Elżbieta Mrówka-Matejewska.
Metody analizy wydajności i precyzji oprogramowania Wojciech Matuszewski.
Akademia ETI 2016 LABORATORIUM 2 – OBSŁUGA WYŚWIETLACZA GRAFICZNEGO.
Augmented Reality na HoloLens
Hipertekst HTML WWW.
Tworzenie stron WWW w programie Microsoft FrontPage
Zapis prezentacji:

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

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

PODSTAWY MATEMATYCZNE TRÓJWYMIAROWEJ WIZUALIZACJI Skalowanie

PODSTAWY MATEMATYCZNE TRÓJWYMIAROWEJ WIZUALIZACJI Przesunięcie

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

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

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

ARCHITEKTURA PROCESORA GRAFICZNEGO Vertex Processing Fragment Processing

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)

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

TESTY WYDAJNOŚCI KART GRAFICZNYCH

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.

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

INTERFEJS PROGRAMISTYCZNY OpenGL I Java3D Architektura Java3D

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”

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.

VRML Koncepcja przeglądarki plików VRML

ARCHITEKTURA JĘZYKA VRML Viewpoint #VRML V2.0 utf8 Viewpoint { position 100 -20 300 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

PRZYKŁADOWE ZASTOSOWANIA JĘZYKA VRML

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

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

PRZYKŁAD ANIMACJI WYKONANEJ W JĘZYKU VRML

RODZAJE DANYCH PRZESTRZENNYCH

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.

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: 54.35 lon: 18.67 lat: 54.03 lon: 19.05 UTM (WGS84) 6024974N 348350E Zone number: 34 5988990N 372288E

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 310385.0E, 4361550.0N, 0m, zone 13 -1459877.12, -4715646.93, 4025213.19 Punkt 310400.0E, 4361600.0N, 0m, zone 13 -1459854.51, -4715620.48, 4025252.11 Punkt - LCF 22.61, 26.44, 38.92

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 [ "57.7 -3.1 0" ] } geoSystem [ "UTM", "Z11„] point [ "4361550.1 310385.2 1000" ]

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)

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

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

PRZYKŁADY WYKORZYSTANIA JĘZYKA GeoVRML

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.

ARCHITEKTURA JĘZYKA X3D

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

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 http://www.eti.pg.gda.pl/~marmo/vrmlfish

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 http://www.eti.pg.gda.pl/~marmo/vrmlfish