根据一点的GPS坐标,方向和角度,计算另外一个点的GPS坐标

需求:根据一点的GPS坐标,方向和角度,计算另外一个点的GPS坐标。

解决方案:

import geopy

from geopy.distance import geodesic

def get_distance_point(lat, lon, distance, direction):
	"""
	根据经纬度,距离,方向获得一个地点
	:param lat: 纬度
	:param lon: 经度
	:param distance: 距离(千米)
	:param direction: 方向(北:0,东:90,南:180,西:360)
	:return:
	"""
	start = geopy.Point(lat, lon)
	d = geodesic(kilometers=distance)
	return d.destination(point=start, bearing=direction)

p = get_distance_point(39.90733345, 116.391244079988, 0.2, 90)

print(p.latitude, p.longitude)

# 验证:
dist = geodesic((39.90733345, 116.391244079988),p).km  
print(dist)
posted @ 2022-08-15 17:49  cold_moon  阅读(250)  评论(0编辑  收藏  举报