2010-06-03 14 views

cevap

5

Benim Yeni Cevap :) Google Directions API

kullanın.

http://maps.google.com/maps/api/directions/<json|xml>?<params> isteğine ve origin ve destination parametrelerini belirtmek için birleştirme yapmak mümkün olmalıdır. Kısaca denedim ama sonuç vermedi. Dokümanları boyunca çalışmalı, ancak enlem ve boylamı nasıl belirleyeceklerini ayrıntılı olarak açıklamıyorlar. Ama mümkün olduğunu söylüyorlar. Alıntı:

[...] kökenli (gerekli) - adres veya

Yine Yol tariflerini hesaplamak istediğiniz dan metinsel enlem/boylam değeri [...] bu should Başlamana başla. JSON çıkış formatı ile gitmenizi öneririm. Ayrışmak çok daha basittir ve daha az bant genişliği kullanmalıdır (XML olarak daha az ayrıntılıdır).

Çalışıyor: düz bir çizgi uzaklık kolayca Haversine formül kullanılarak belirlenebilir

http://maps.google.com/maps/api/directions/json?origin=49.75332,6.50322&destination=49.71482,6.49944&mode=walking&sensor=false

Benim Önceki Cevap: İşte bir örnek URL'sidir. Google'dan rotayı alırsanız, her segmentin mesafesini hesaplayabilir ve bunları özetleyebilirsiniz.

from math import sin, cos, radians, sqrt, atan2 

    def lldistance(a, b): 
    """ 
    Calculates the distance between two GPS points (decimal) 
    @param a: 2-tuple of point A 
    @param b: 2-tuple of point B 
    @return: distance in m 
    """ 
    r = 6367442.5    # average earth radius in m 
    dLat = radians(a[0]-b[0]) 
    dLon = radians(a[1]-b[1]) 
    x = sin(dLat/2) ** 2 + \ 
     cos(radians(a[0])) * cos(radians(b[0])) *\ 
     sin(dLon/2) ** 2 
    #original# y = 2 * atan2(sqrt(x), sqrt(1-x)) 
    y = 2 * asin(sqrt(x)) 
    d = r * y 

    return d 

Çeviri:

bir geri yaparken, ben (tanınmış) bir blog yazısında algoritmayı (Haversine) (python ve pl/sql)

İşte piton kodunun kopyası yazdım Bu Java için önemsiz olmalıdır.

+0

Teşekkür ederiz! Ama özellikle yürüme mesafesindeyim. Şu anda sorun şu ki, google'dan yalnızca koordinatları olan rotayı nasıl elde edeceğimi bilmiyorum. URL'yi tarayıcıdaki koordinatlarla denedim, konumun anlamadığını söylüyor. – wei

+0

Yanıttaki düzenlemenin bir bildirimi tetikleyip tetiklemediğini bilmiyorum ... bu yüzden buna ek olarak bu yorumu da yazacağım. – exhuma

+0

Ve şimdi çalışıyor ... :) – exhuma

İlgili konular