HTML and CSS Reference
In-Depth Information
In Ihrem Konzept steht jedoch, dass zusätzlich zum Restaurantnamen ein kleiner
Kartenausschnitt angezeigt werden soll. Nun können Sie mit Ihrem Wissen über die
Static Maps API glänzen - erweitern Sie den jQuery-Befehl um Folgendes:
var ausschnitt = 'http://maps.google.com/maps/api/staticmap?size=50x50&mar-
kers=color:blue|size:tiny|'+daten.Position.Latitude+','+daten.Position.Longi-
tude+'&sensor=true';
$('#uebersicht').find('ul').append('<li class="'+daten.Kategorie+'"><img src=
"'+ausschnitt+'">'+restaurant+'</li>');
Sie erzeugen jeweils einen kleinen Kartenausschnitt, der 50 × 50 Pixel groß ist, und
einen winzigen blauen Marker an der Position des Restaurants. Der Ausschnitt wird
als Bildelement in den Listenpunkt eingefügt.
Was jetzt noch fehlt, ist die Entfernung zwischen Benutzer und dem jeweiligen
Restaurant.
5.2.4 Den Abstand zwischen zwei Koordinaten berechnen
Um es gleich vorweg zu sagen: Die Entfernungsberechnung anhand von GPS-Koordi-
naten ist eine Wissenschaft für sich. Da sich die Erde leider nicht ganz rund, sondern
eher wie eine Clementine krümmt, gelten an allen Punkten auf dem Planeten andere
Regeln. Insbesondere bei der Berechnung zwischen weit entfernten Punkten, die z. B.
auf unterschiedlichen Halbkugeln liegen, wird es richtig kompliziert.
Die gute Nachricht ist: Für kurze Distanzen gibt es eine relativ einfache und ausrei-
chend genaue Formel. Alles was Sie benötigen, sind die Longitude und Latitude der
beiden Punkte. Diese rechnen Sie anhand des durchschnittlichen Erdradius in Dis-
tanzen vom Nullpunkt um, damit Sie anschließend, mithilfe des Satzes des Pythago-
ras, eine Entfernung der beiden Punkte berechnen können. Als JavaScript-Funktion
sieht das so aus:
var entfernungBerechnen = function(meineLongitude, meineLatitude, long1,
lat1) {
erdRadius = 6371;
meineLongitude = meineLongitude * (Math.PI/180);
meineLatitude = meineLatitude * (Math.PI/180);
long1 = long1 * (Math.PI/180);
lat1 = lat1 * (Math.PI/180);
x0 = meineLongitude * erdRadius * Math.cos(meineLatitude);
y0 = meineLatitude * erdRadius;
x1 = long1 * erdRadius * Math.cos(lat1);
y1 = lat1 * erdRadius;
Search WWH ::




Custom Search