gps-anwendung entwicklung interaktiver karten mit microsoft virtual earth manuel hanke matr.-nr.:...
TRANSCRIPT
GPS-Anwendung
Entwicklung interaktiver Kartenmit
Microsoft Virtual Earth
Manuel Hanke Matr.-Nr.: 451259
Inhalte des Vortrags
• Kurzüberblick über Virtual Earth• Live Search Maps• MapPoint Web Service• Map Control API• Schrittweise Entwicklung einer interaktiven Karte• Quellen
Manuel Hanke 2Matr.-Nr.: 451259
Matr.-Nr.: 451259 3
Virtual Earth
• Virtual Earth ist eine Online-Mapping-Plattform von Microsoft
• Zugänglich über die Komponenten:• Live Search Maps• MapPoint Web Service• Map Control API
• Live Search Maps und die Map Control API sind frei nutzbar
• Weiterentwicklung von MSN Maps• Seit 2005 frei zugängliche Map Control API
Manuel Hanke
Matr.-Nr.: 451259 5
Live Search Maps
• Funktionen– Ortssuche– Branchensuche– Routenplanung– Umschalten zwischen Straßen- und Landkarte– Anlegen und erkunden von Collections*– 3D Karte (Beta)
* Sammlung von POI‘s (Point of Interest)
Manuel Hanke
Matr.-Nr.: 451259 6
MapPoint Web Service
• Kostenpflichtiger Geo-Koordinaten Service• Service für Mapping in Desktop Applikationen• Benötigt Windows Live ID• 30 Tage Evaluationskonto danach• Abrechnung über Zugrifftokens
– Jahreszugang: 4500 € für 500.000 Tokens– 0,30 € pro Token
Beispiele:
Manuel Hanke
(http://demo.mappoint.net)
Matr.-Nr.: 451259 7
• Kostenfrei und unbegrenzt nutzbar(privat & kommerziell)
• JavaScript API• Sehr gut dokumentierte interaktive SDK mit
vielen Anwendungs- und Codebeispielen• Eingeschränkte Funktionalität im Vergleich zum
MapPoint Web Service• relativ ungenau (nicht immer hausnummerngenau)• keine aktuellen Verkehrsinformationen
Manuel Hanke
Map Control API
Matr.-Nr.: 451259 8
Map Control API
• Ausschließlich für Web-Anwendungen konzipiert• Online abrufbar im MS Developer Network• Offline als CHM-Datei zum Download• Aktuelle Version 6.2
• Zentrale Klassen• VEMap (Kartenklasse)• VELatLong (Koordinatenpunkt)
Manuel Hanke
Matr.-Nr.: 451259 9
VELatLong Objekt
• Beschreibt einen Koordinatenpunkt auf der Karte• Koordinaten im WGS 84 System• Instanziierung:
var x = new VELatLong(latitude, longitude, altitude, altitudeMode);
• Mögliche Höhenmodi:• Absolute – Absolute Höhe über dem WGS 84 Ellipsoid• Relative (Default) – Höhe über Normal-Null
• Die Eigenschaften können nach Instanziierung über Methoden bearbeitet werden
Beispiel: x.SetAltitude(50,Relative)
Manuel Hanke
Matr.-Nr.: 451259 10
Entwicklung einer interaktiven Karte
Zuständigkeitsgebiete von Produktvertretern
Vorgehensweise:– Einbinden der API– Darstellen einer Karte– Anzeigen der Produktvertreter– Einzeichnen der Zuständigkeitsgebiete– Eingabeoption für Interessentenadresse
Manuel Hanke
Matr.-Nr.: 451259 11
Einbinden der API
• DOCTYPE-Deklaration<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN“ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
• META Element mit Charset: utf-8<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
• API Referenz Verweis<script charset="UTF-8" type="text/javascript" src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2&mkt=de-de"> </script>
• Platzhalter, wo die Karte später angezeigt wird<div id='Vertreterkarte' style="position:absolute; width:100%; height:100%"></div>
Manuel Hanke
Matr.-Nr.: 451259 12
Anzeigen der Karte
• Separater Scriptblock für den JavaScript Code
• Aufruf der Funktion beim Aufruf der Seite
Manuel Hanke
Matr.-Nr.: 451259 13
Anzeigen der Produktvertreter
• Vertreterklasse
• Vertreterarray anlegen
• Benötigte FunktionenVEMap.Find(what, where, findType, shapeLayer, startIndex, numberOfResults,
showResults, createResults, useDefaultDisambiguation, setBestMapView, callback);
VEShape(type, points);
Manuel Hanke
Matr.-Nr.: 451259 14
Anzeigen der Produktvertreter
• Resultat einer VEMap.Find() Anfrage– wird an eine Callback-Funktion als Parameter übergeben
oLayer– Gleich dem Anfragelayer (default VEMap)
oResultType– Gleich dem Anfragetyp (default null)
oResult[]– Array von Resultobjekten mit den Eigenschaften Name,
Description, und einem VELatLong Koordinatenpunkt
sError– Fehlermeldung bei einer ungültigen Suchanfrage
Manuel Hanke
Matr.-Nr.: 451259 15
Anzeigen der Produktvertreter
Manuel Hanke
Matr.-Nr.: 451259 16
Einzeichnen der Zuständigkeitsgebiete
• Zusätzliche Funktion addShape()
Manuel Hanke
Matr.-Nr.: 451259 17
Eingabeoption der Interessentenadresse
• HTML-Input Elemente hinzufügen
• Funktion zum Anzeigen des Pins
Manuel Hanke
Matr.-Nr.: 451259 18
Quellen
• Microsoft Developer Network» http://msdn.microsoft.com/en-us/library/bb429619.aspx
• VE Live SDK» http://dev.live.com/virtualearth/sdk/
• Via Virtual Earth Portal» http://viavirtualearth.com/vve/Dashboard/Default.ashx
• MapPoint Demonstration» http://demo.mappoint.net/
• Microsoft Live Services» http://dev.live.com/
Manuel Hanke