Rendering Interactive Maps on Mobile Devices Using Graphics Hardware
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Osmand - This Article Describes How to Use Key Feature
HowToArticles - osmand - This article describes how to use key feature... http://code.google.com/p/osmand/wiki/HowToArticles#First_steps [email protected] | My favorites ▼ | Profile | Sign out osmand Navigation & routing based on Open Street Maps for Android devices Project Home Downloads Wiki Issues Source Search for ‹‹ HowToArticles HowTo Articles This article describes how to use key features How To First steps Featured How To Understand vector en, ru Updated and raster maps How To Download data How To Find on map Introduction How To Filter POI This articles helps you to understand how to use the application, and gives you idea's about how the functionality could be used. How To Customize map view How To How To Arrange layers and overlays How To Manage favorite How To First steps places How To Navigate to point First you can think about which features are most usable and suitable for you. You can use Osmand online and offline for How To Use routing displaying a lot of online maps, pre-downloaded very compact so-called OpenStreetMap "vector" map-files. You can search and How To Use voice routing find adresses, places of interest (POI) and favorites, you can find routes to navigate with car, bike and by foot, you can record, How To Limit internet replay and follow selfcreated or downloaded GPX tracks by foot and bike. You can find Public Transport stops, lines and even usage shortest public transport routes!. You can use very expanded filter options to show and find POI's. You can share your position with friends by mail or SMS text-messages. -
Das Handbuch Zu Marble
Das Handbuch zu Marble Torsten Rahn Dennis Nienhüser Deutsche Übersetzung: Stephan Johach Das Handbuch zu Marble 2 Inhaltsverzeichnis 1 Einleitung 6 2 Marble Schnelleinstieg: Navigation7 3 Das Auswählen verschiedener Kartenansichten für Marble9 4 Orte suchen mit Marble 11 5 Routenplanung mit Marble 13 5.1 Eine neue Route erstellen . 13 5.2 Routenprofile . 14 5.3 Routen anpassen . 16 5.4 Routen laden, speichern und exportieren . 17 6 Entfernungsmessung mit Marble 19 7 Kartenregionen herunterladen 20 8 Aufnahme eines Films mit Marble 23 8.1 Aufnahme eines Films mit Marble . 23 8.1.1 Problembeseitigung . 24 9 Befehlsreferenz 25 9.1 Menüs und Kurzbefehle . 25 9.1.1 Das Menü Datei . 25 9.1.2 Das Menü Bearbeiten . 26 9.1.3 Das Menü Ansicht . 26 9.1.4 Das Menü Einstellungen . 27 9.1.5 Das Menü Hilfe . 28 10 Einrichtung von Marble 29 10.1 Einrichtung der Ansicht . 29 10.2 Einrichtung der Navigation . 30 10.3 Einrichtung von Zwischenspeicher & Proxy . 31 10.4 Einrichtung von Datum & Zeit . 32 10.5 Einrichtung des Abgleichs . 32 10.6 Einrichtungsdialog „Routenplaner“ . 34 10.7 Einrichtung der Module . 34 Das Handbuch zu Marble 11 Fragen und Antworten 38 12 Danksagungen und Lizenz 39 4 Zusammenfassung Marble ist ein geografischer Atlas und ein virtueller Globus, mit dem Sie ganz leicht Or- te auf Ihrem Planeten erkunden können. Sie können Marble dazu benutzen einen Adressen zu finden, auf einfache Art Karten zu erstellen, Entfernungen zu messen und Informationen über bestimmte Orte abzufragen, über die Sie gerade etwas in den Nachrichten gehört oder im Internet gelesen haben. -
OSM Datenformate Für (Consumer-)Anwendungen
OSM Datenformate für (Consumer-)Anwendungen Der Weg zu verlustfreien Vektor-Tiles FOSSGIS 2017 – Passau – 23.3.2017 - Dr. Arndt Brenschede - Was für Anwendungen? ● Rendering Karten-Darstellung ● Routing Weg-Berechnung ● Guiding Weg-Führung ● Geocoding Adress-Suche ● reverse Geocoding Adress-Bestimmung ● POI-Search Orte von Interesse … Travelling salesman, Erreichbarkeits-Analyse, Geo-Caching, Map-Matching, Transit-Routing, Indoor-Routing, Verkehrs-Simulation, maxspeed-warning, hazard-warning, Standort-Suche für Pokemons/Windkraft-Anlagen/Drohnen- Notlandeplätze/E-Auto-Ladesäulen... Was für (Consumer-) Software ? s d l e h Mapnik d Basecamp n <Garmin> a OSRM H - S QMapShack P Valhalla G Oruxmaps c:geo Route Converter Nominatim Locus Map s Cruiser (Overpass) p OsmAnd p A Maps.me ( Mapsforge- - e Cruiser Tileserver ) n MapFactor o h Navit (BRouter/Local) p t r Maps 3D Pro a Magic Earth m Naviki Desktop S Komoot Anwendungen Backend / Server Was für (Consumer-) Software ? s d l e h Mapnik d Garmin Basecamp n <Garmin> a OSRM H “.IMG“ - S QMapShack P Valhalla Mkgmap G Oruxmaps c:geo Route Converter Nominatim Locus Map s Cruiser (Overpass) p OsmAnd p A Maps.me ( Mapsforge- - e Cruiser Tileserver ) n MapFactor o h Navit (BRouter/Local) p t r Maps 3D Pro a Magic Earth m Naviki Desktop S Komoot Anwendungen Backend / Server Was für (Consumer-) Software ? s d l e h Mapnik d Basecamp n <Garmin> a OSRM H - S QMapShack P Valhalla G Oruxmaps Route Converter Nominatim c:geo Maps- Locus Map s Forge Cruiser (Overpass) p Cruiser p A OsmAnd „.MAP“ ( Mapsforge- -
Project „Multilingual Maps“ Design Documentation
Project „Multilingual Maps“ Design Documentation Copyright 2012 by Jochen Topf <[email protected]> and Tim Alder < kolossos@ toolserver.org > This document is available under a Creative Commons Attribution ShareAlike License (CC-BY-SA). http://creativecommons.org/licenses/by-sa/3.0/ Table of Contents 1 Introduction.............................................................................................................................................................2 2 Background and Design Choices........................................................................................................................2 2.1 Scaling..............................................................................................................................................................2 2.2 Optimizing for the Common Case.............................................................................................................2 2.3 Pre-rendered Tiles.........................................................................................................................................2 2.4 Delivering Base and Overlay Tiles Together or Separately..................................................................3 2.5 Choosing a Language....................................................................................................................................3 2.6 Rendering Labels on Demand.....................................................................................................................4 2.7 Language Decision -
The State of Open Source GIS
The State of Open Source GIS Prepared By: Paul Ramsey, Director Refractions Research Inc. Suite 300 – 1207 Douglas Street Victoria, BC, V8W-2E7 [email protected] Phone: (250) 383-3022 Fax: (250) 383-2140 Last Revised: September 15, 2007 TABLE OF CONTENTS 1 SUMMARY ...................................................................................................4 1.1 OPEN SOURCE ........................................................................................... 4 1.2 OPEN SOURCE GIS.................................................................................... 6 2 IMPLEMENTATION LANGUAGES ........................................................7 2.1 SURVEY OF ‘C’ PROJECTS ......................................................................... 8 2.1.1 Shared Libraries ............................................................................... 9 2.1.1.1 GDAL/OGR ...................................................................................9 2.1.1.2 Proj4 .............................................................................................11 2.1.1.3 GEOS ...........................................................................................13 2.1.1.4 Mapnik .........................................................................................14 2.1.1.5 FDO..............................................................................................15 2.1.2 Applications .................................................................................... 16 2.1.2.1 MapGuide Open Source...............................................................16 -
Building a 3D Graphic User Interface in Linux
Freescale Semiconductor Document Number: AN4045 Application Note Rev. 0, 01/2010 Building a 3D Graphic User Interface in Linux Building Appealing, Eye-Catching, High-End 3D UIs with i.MX31 by Multimedia Application Division Freescale Semiconductor, Inc. Austin, TX To compete in the market, apart from aesthetics, mobile Contents 1. X Window System . 2 devices are expected to provide simplicity, functionality, and 1.1. UI Issues . 2 elegance. Customers prefer attractive mobile devices and 2. Overview of GUI Options for Linux . 3 expect new models to be even more attractive. For embedded 2.1. Graphics Toolkit . 3 devices, a graphic user interface is essential as it enhances 2.2. Open Graphics Library® . 4 3. Clutter Toolkit - Solution for GUIs . 5 the ease of use. Customers expect the following qualities 3.1. Features . 5 when they use a Graphical User Interface (GUI): 3.2. Clutter Overview . 6 3.3. Creating the Scenegraph . 7 • Quick and responsive feedback for user actions that 3.4. Behaviors . 8 clarifies what the device is doing. 3.5. Animation by Frames . 9 • Natural animations. 3.6. Event Handling . 10 4. Conclusion . 10 • Provide cues, whenever appropriate, instead of 5. Revision History . 11 lengthy textual descriptions. • Quick in resolving distractions when the system is loading or processing. • Elegant and beautiful UI design. This application note provides an overview and a guide for creating a complex 3D User Interface (UI) in Linux® for the embedded devices. © Freescale Semiconductor, Inc., 2010. All rights reserved. X Window System 1 X Window System The X Window system (commonly X11 or X) is a computer software system and network protocol that implements X display protocol and provides windowing on bitmap displays. -
Android Map Application
IT 12 032 Examensarbete 15 hp Juni 2012 Android Map Application Staffan Rodgren Institutionen för informationsteknologi Department of Information Technology Abstract Android Map Application Staffan Rodgren Teknisk- naturvetenskaplig fakultet UTH-enheten Nowadays people use maps everyday in many situations. Maps are available and free. What was expensive and required the user to get a paper copy in a shop is now Besöksadress: available on any Smartphone. Not only maps but location-related information visible Ångströmlaboratoriet Lägerhyddsvägen 1 on the maps is an obvious feature. This work is an application of opportunistic Hus 4, Plan 0 networking for the spreading of maps and location-related data in an ad-hoc, distributed fashion. The system can also add user-created information to the map in Postadress: form of points of interest. The result is a best effort service for spreading of maps and Box 536 751 21 Uppsala points of interest. The exchange of local maps and location-related user data is done on the basis of the user position. In particular, each user receives the portion of the Telefon: map containing his/her surroundings along with other information in form of points of 018 – 471 30 03 interest. Telefax: 018 – 471 30 00 Hemsida: http://www.teknat.uu.se/student Handledare: Liam McNamara Ämnesgranskare: Christian Rohner Examinator: Olle Gällmo IT 12 032 Tryckt av: Reprocentralen ITC Contents 1 Introduction 7 1.1 The problem . .7 1.2 The aim of this work . .8 1.3 Possible solutions . .9 1.4 Approach . .9 2 Related Work 11 2.1 Maps . 11 2.2 Network and location . -
Opengl FAQ and Troubleshooting Guide
OpenGL FAQ and Troubleshooting Guide Table of Contents OpenGL FAQ and Troubleshooting Guide v1.2001.11.01..............................................................................1 1 About the FAQ...............................................................................................................................................13 2 Getting Started ............................................................................................................................................18 3 GLUT..............................................................................................................................................................33 4 GLU.................................................................................................................................................................37 5 Microsoft Windows Specifics........................................................................................................................40 6 Windows, Buffers, and Rendering Contexts...............................................................................................48 7 Interacting with the Window System, Operating System, and Input Devices........................................49 8 Using Viewing and Camera Transforms, and gluLookAt().......................................................................51 9 Transformations.............................................................................................................................................55 10 Clipping, Culling, -
GB: Using Open Source Geospatial Tools to Create OSM Web Services for Great Britain Amir Pourabdollah University of Nottingham, United Kingdom
Free and Open Source Software for Geospatial (FOSS4G) Conference Proceedings Volume 13 Nottingham, UK Article 7 2013 OSM - GB: Using Open Source Geospatial Tools to Create OSM Web Services for Great Britain Amir Pourabdollah University of Nottingham, United Kingdom Follow this and additional works at: https://scholarworks.umass.edu/foss4g Part of the Geography Commons Recommended Citation Pourabdollah, Amir (2013) "OSM - GB: Using Open Source Geospatial Tools to Create OSM Web Services for Great Britain," Free and Open Source Software for Geospatial (FOSS4G) Conference Proceedings: Vol. 13 , Article 7. DOI: https://doi.org/10.7275/R5GX48RW Available at: https://scholarworks.umass.edu/foss4g/vol13/iss1/7 This Paper is brought to you for free and open access by ScholarWorks@UMass Amherst. It has been accepted for inclusion in Free and Open Source Software for Geospatial (FOSS4G) Conference Proceedings by an authorized editor of ScholarWorks@UMass Amherst. For more information, please contact [email protected]. OSM–GB OSM–GB Using Open Source Geospatial Tools to Create from data handling and data analysis to cartogra- OSM Web Services for Great Britain phy and presentation. There are a number of core open-source tools that are used by the OSM devel- by Amir Pourabdollah opers, e.g. Mapnik (Pavlenko 2011) for rendering, while some other open-source tools have been devel- University of Nottingham, United Kingdom. oped for users and contributors e. g. JOSM (JOSM [email protected] 2012) and the OSM plug-in for Quantum GIS (Quan- tumGIS n.d.). Abstract Although those open-source tools generally fit the purposes of core OSM users and contributors, A use case of integrating a variety of open-source they may not necessarily fit for the purposes of pro- geospatial tools is presented in this paper to process fessional map consumers, authoritative users and and openly redeliver open data in open standards. -
Opengl Programming Gregor Miller Gregor{At}Ece.Ubc.Ca
Gregor Miller gregor{at}ece.ubc.ca OpenGL Programming Background Conventions Simple Program SGI & GL • Silicon Graphics revolutionized graphics in 1982 by implementing the pipeline in hardware • System was accessed through API called GL • Much simpler than before to implement interactive 3D applications OpenGL • Success of GL led to OpenGL (1992), a platform-independent API that was: • Easy to use • Level of abstraction high enough for simple implementation but low enough to be close to hardware to get better performance • Focus on rendering, no device contexts or any OS specific dependencies OpenGL Review • Originally controlled by Architecture Review Board (ARB) • Extensions named after this • ARB replaced by Khronos • Current version 4.3, previous versions stable • OpenGL ES 1.0 and 2.0 (Embedded Systems) in iPhone and PS3 OpenGL Libraries • Core library • OpenGL32.lib on Windows • libGL.a on *nix systems • Utility Library (GLU) • Provides higher-level functionality using the Core • Camera setup, etc. • OS GUI Drivers • GLX, WGL, AGL (useful for extensions) GLUT • OpenGL Utility Toolkit (GLUT) • Provides OS-level functionality in a cross-platform API • Open a window, set up graphics context • Get input from mouse and keyboard • Menus • Event-driven (common to GUIs) • Code is portable but options are limited in scope OpenGL Functions • Primitives • Points • Lines • Triangles / Quads / Polygons • Attributes • Colour / Texture / Transparency OpenGL Functions • Transformations • Viewing • Modelling • Control (GLUT) • Input (GLUT) • Query -
A Detailed Look at Cairo's Opengl Spans Compositor Performance
A Detailed Look at Cairo's OpenGL Spans Compositor Performance Bryce Harrington – Senior Open Source Developer Samsung Research America (Silicon Valley) [email protected] Open Source Group – Silicon Valley 1 © 2013 SAMSUNG Electronics Co. What is Cairo? 2D pen-based drawing model For both display and print Includes backends for acceleration and for vector output formats Open Source Group – Silicon Valley 2 © 2013 SAMSUNG Electronics Co. http://www.tortall.net/mu/wiki/CairoTutorialhttp://www.tortall.net/mu/wiki/CairoTutorial Open Source Group – Silicon Valley 3 © 2013 SAMSUNG Electronics Co. Where is Cairo Used on the Linux Desktop? GTK+/Pango GNOME, XFCE4 Gnuplot Gnucash $$ apt-cache apt-cache rdepends rdepends libcairo2 libcairo2 | |wc wc -l -l Mozilla 712712 Evince (xpdf) Scribus Inkscape : : : Open Source Group – Silicon Valley 4 © 2013 SAMSUNG Electronics Co. Cairo Backends Format backends Platform backends ps image pdf xlib svg xcb cairo-gl quartz win32 beos Open Source Group – Silicon Valley 5 © 2013 SAMSUNG Electronics Co. Cairo-gl on the Linux Desktop Cairo-gl is not enabled for some distros (e.g. Ubuntu): --enable-gl links cairo to libgl NVIDIA's libgl gets linked to every client app Enormous RAM increase per app running (300%) See Launchpad #725434 Several GL backends supported cairo-gl (OpenGL) - EGL, GLX, WGL glesv2 (OpenGL ES 2.0) - EGL glesv3 (OpenGL ES 3.0) - EGL vg (OpenVG) - EGL, GLX cogl - experimental Open Source Group – Silicon Valley 6 © 2013 SAMSUNG Electronics Co. Cairo-gl Compositors Compositing combines visual elements into a single scene The cairo-gl backend has multiple compositors: MSAA Spans Mask Traps cairo-gl heuristically selects best compositor for operation. -
Introduction to Opengl and GLUT What’S Opengl?
Introduction to OpenGL and GLUT What’s OpenGL? • An Application Programming Interface (API) • A low‐level graphics programming API – Contains over 250 functions – Developed by Silicon Graphics Inc. (SGI) in 1992 – Most recent version: 4.2, released on 08/08/2011 OpenGL Applications And more… Portability • Independent of display devices • Independent of window systems • Independent of operating systems • Device 1: (100, 50) Line(100, 50, 150, 80) (100 • Device 2: (150, 80) MoveTo(100, 50) LineTo(150, 80) OpenGL Basics • The main use: Rendering. Rendering is the process of generating an image from a model (or models in what collectively could be called a scene file), by means of computer programs. -----Wikipedia • OpenGL can render: – Geometric primitives – Bitmaps and images An Example void Display() { glClear(GL_COLOR_BUFFER_BITS); glColor4f(1, 1, 0, 1); glBegin(GL_POLYGON); glVertex2f(-0.5, -0.5); glVertex2f(-0.5, 0.5); glVertex2f( 0.5, 0.5); glVertex2f( 0.5, -0.5); glEnd(); glutSwapBuffers(); } Primitives • Primitives are specified as: glBegin(primType); // your primitive vertices here. // ... // ... glEnd(); • PrimType: – GL_POINTS, GL_LINES, GL_TRIANGLES, … Primitive Types An Example void Display() { glClear(GL_COLOR_BUFFER_BITS); (‐0.5, 0.5) (0.5, 0.5) glColor4f(1, 1, 0, 1); glBegin(GL_POLYGON); glVertex2f(-0.5, -0.5); glVertex2f(-0.5, 0.5); glVertex2f( 0.5, 0.5); glVertex2f( 0.5, -0.5); glEnd(); glutSwapBuffers(); (‐0.5, ‐0.5) (0.5, ‐0.5) } Vertices v stands for vectors glVertex2fv(x, y) glVertex2f(x, y) Number of dimensions/components Format 2: (x, y) b: byte 3: (x, y, z) or (r, g, b) ub: unsigned byte 4: (x, y, z, w) or (r, g, b, a) i: int ui: unsigned int f: float d: double An Example void Draw_Circle() { glColor4f(0, 0, 0, 1); int number = 20; //number of vertices float radius = 0.8f; //radius float twoPi = 2.0f * 3.14159f; glBegin(GL_POLGYON); for(int i = 0; i <number; i++) glVertex2f(radius*cosf(i*twoPi/number), radius*sinf(i*twoPi/number)); glEnd(); } Window‐Based Programming • Most modern operating systems are windows‐ based.