calculating a gps coordinate given a point, bearing and distance

前端 未结 4 438
粉色の甜心
粉色の甜心 2021-02-04 21:30

I have a problem which draws my back in some project for some time now.

I\'m basically looking to trap a polygon using x,y points drawn by some script I\'ve written. lat1

4条回答
  •  半阙折子戏
    2021-02-04 21:53

    With geopy v2.0.0 (+ kilometers instead miles)

    from geopy import Point                                                                                                                                                                       
    from geopy.distance import geodesic                                                                                                                                                           
                                                                                                                                                                                                  
    distKm = 1                                                                                                                                                                                    
    lat1 = 35.68096477080332                                                                                                                                                                      
    lon1 = 139.76720809936523                                                                                                                                                                     
                                                                                                                                                                                                  
    print('center', lat1, lon1)                                                                                                                                                                   
    print('north', geodesic(kilometers=distKm).destination(Point(lat1, lon1), 0).format_decimal())                                                                                                
    print('east', geodesic(kilometers=distKm).destination(Point(lat1, lon1), 90).format_decimal())                                                                                                
    print('south', geodesic(kilometers=distKm).destination(Point(lat1, lon1), 180).format_decimal())                                                                                              
    print('west', geodesic(kilometers=distKm).destination(Point(lat1, lon1), 270).format_decimal()) 
    

    result is

    center 35.6809647708 139.767208099
    north 35.6899775841, 139.767208099
    east 35.680964264, 139.778254714
    south 35.6719519439, 139.767208099
    west 35.680964264, 139.756161485
    

提交回复
热议问题