2016-07-28 10 views
2

Wie findet man einen nahegelegenen Punkt mit einer GPS-Koordinate? Der neue Punkt kann nach dem Zufallsprinzip ausgewählt werden, muss jedoch 100 Meter vom Ursprung entfernt sein. Kollisionen sind auch gut.Wie finde ich Punkte in der Nähe eines GPS-Ursprungs?

dh

origin = (latitude, longitude) 

# prints one nearby point in (lat, lon) 
print "%s, %s" % get_nearby_point(origin) 

# prints another nearby point in (lat, lon) 
print "%s, %s" % get_nearby_point(origin) 

Antwort

1
import geopy.distance 
from random import random 

def get_nearby_point(origin): 
    dist = geopy.distance.VincentyDistance(kilometers = .1) 
    pt = dist.destination(point=geopy.Point(origin), bearing=random()*360) 
    return pt[0],pt[1] 

origin = (34.2234, 14.252) # I picked some mostly random numbers 

# prints one nearby point in (lat, lon)           
print "%s, %s" % get_nearby_point(origin) 

# prints another nearby point in (lat, lon)          
print "%s, %s" % get_nearby_point(origin) 

Ergebnisse:

$ python nearby.py 
34.2225717618, 14.2524285475 
34.2225807815, 14.2524529774 

ich gelernt, wie man dies von here zu tun. Es ist kein exaktes Duplikat, aber es reicht aus, diese Antwort zu formatieren. Sie definieren eine Entfernung mit der Entfernungsfunktion, dann bewegen Sie sich von einem Punkt, der Eingabe zur Funktion, in eine zufällige Richtung.

Verwandte Themen