Vektorkartor för mobila terminaler Magnus Janlert 3 juni 2004
Introduktion Externt examensarbete, utfört VT2003 Visualiseringscentrum, c:a tio anställda, en del av Lantmäteriet Handledare: Jerry Eriksson (intern) och Peter Jacobson (extern) 1
Upplägg Problemspecifikation Mobila kartor Representation Arkitektur/implementation 2
Problemspec Syfte: Att lägga till funktionalitet för vektorbaserad grafik till Carteus Problemets tre huvuddelar: Kartserver Överföring Caching 3
(Mobila) kartor 4
Carteus/Mapmate Mapmate är produkten som Lantmäteriet säljer Carteus är systemet som Mapmate bygger på Skrivet i C++ och körs på PocketPC-platformen GPS, licensehantering, nätverk, caching, olika kartbaser 5
Koordinatsystem Projektionsplan och perspektiv 6
Objekt Kartans innehåll: vägar, städer, sjöar osv Objekten kan ha attribut Synliga, färg, stil, position, tjocklek Osynliga, trafikeringen på en väg, riktning på vattendrag 7
Nätverk Trådlöst Ger möjlighet till central server Alternativ: GSM (GPRS), UMTS, WaveLan, (Bluetooth) Avgörande egenskaper: Throughput och Round Trip Time (RTT) 8
Cacheing Data hämtas från en server och lagras lokalt hos klienten Viktigt för funktionaliteten, både hastighet och tillgänglighet Flera sekunders fördröjning. Möjligt att använda tjänsten utan kontakt med servern. 9
GPS Positioneringssystem, med hjälp av satelliter kan moduler beräkna sin egen position. Kartan vet var användaren befinner sig Upp till 10m noggrannhet för position, 0.5km/h för hastighet Nya funktioner för mobila kartor Kartan följer positionen Spara positioner Visar vägen till mål (riktning och avstånd) Överföra information till tredje part 10
Representation Det geografiska informationen skall lagras på något sätt: Raster- eller vektordata 11
Rastergrafik Den vanliga typen av grafik (och den som Carteus använde) Bilden byggs upp av pixlar som är ordnade i en matris Många operationer är enkla att utföra (tack vare den enkla uppbyggnaden) Ineffektivt för lagring av kartor, men går att komprimera, med (JPEG) eller utan (PNG) förlust Inte skalnings- eller rotationsinvariant! Eventuell skalning/rotation är dyr 12
Vektorgrafik Bilden byggs upp av objekt av olika typer Polygoner, cirklar, rektanglar osv Varje objekt har några attribut; färg och form (manér) Ger stor flexibilitet för användare, kan själv påverka kartans utseende Okänd komplexitet för ett givet område Dyrare att rendera till skärm och kostnaden varierar med bildens komplexitet Skalnings- och rotationsinvariant 13
Lager Varje typ av objekt bildar ett lager Kartan byggs upp av ett antal lager, ger möjlighet till personliga kartor Bakgrunden kan ofta vara rastergrafik och lagren ovan vektorgrafik Varje lager definieras för ett skalintervall 14
Open GIS Consortium Organisation för företag som utvecklar GIS-produkter Utvecklar standarder för att dela data mellan olika GIS-produkter Geography Markup Language (GML) Web Feature Service (WFS) Web Map Service (WMS) 15
ArcIMS ESRI är ett stort företag inom GIS-mjukvara med många produkter Detta system använder sig av ArcIMS från ESRI ArcIMS använder sig av språket AXL Extern connector tillhandahåller WFS/GML 16
Klienten Först visar klienten det som redan finns i cachen, om någon del saknas skickas en förfrågan iväg till servern. När svaret kommer fylls cachen på och den nya datan ritas på skärmen RTT gör att vi är måna om att begränsa antalet förfrågningar, så dessa samlas ihop i ett paket innan de skickas iväg 17
Caching Enklaste lösningen: dela in området i ett uniformt rutnät (celler) Problem: Hur stora/många ska cellerna vara Ojämn fördelning; många tomma celler och några få överfulla 18
Quad trees Rekursiv datastruktur som delar in rummet i fyra lika delar Anpassar sig efter mängden data Två tröskelvärden: N max och N min 19
20
Arkitektur 21
Begränsningar/vidareutveckling Prestanda Lagerhantering Uppdatering (pågående examensarbete) 22