2016-07-28 11 views
2

gps座標の場合、近くのポイントをどのように見つけるか?新しいポイントはランダムに選択できますが、起点から100メートル以内になければなりません。衝突もうまくいきます。gps起源の近くの点を見つけるには?

すなわち、

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) 

答えて

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) 

結果:

$ python nearby.py 
34.2225717618, 14.2524285475 
34.2225807815, 14.2524529774 

私はhereからこれを行う方法を学びました。これは正確な複製ではありませんが、この回答をフォーマットするだけで十分です。距離関数を使用して距離を定義した後、関数への入力点をランダムな方向に移動します。

関連する問題