Python 如何使用半径为1km的中心lat长点获取所有纬度和经度点?
我有一个中心纬度,长点,半径1公里。我想把1公里内所有的纬度和长度点都取出来 从输出列表中,我想将值与另一个lat、long值进行比较,以检查它是否匹配 例如,如果我有一个点是(51.42337159689999,-0.562302811958012)。我想获取半径为1公里的所有点Python 如何使用半径为1km的中心lat长点获取所有纬度和经度点?,python,location,coordinates,latitude-longitude,area,Python,Location,Coordinates,Latitude Longitude,Area,我有一个中心纬度,长点,半径1公里。我想把1公里内所有的纬度和长度点都取出来 从输出列表中,我想将值与另一个lat、long值进行比较,以检查它是否匹配 例如,如果我有一个点是(51.42337159689999,-0.562302811958012)。我想获取半径为1公里的所有点 哪种方法更好?有人能帮我吗 这是我的粗略尝试。。。希望这有助于你的大脑流动 import math def findpoints(lon, lat): radius = 1 N = 360
哪种方法更好?有人能帮我吗 这是我的粗略尝试。。。希望这有助于你的大脑流动
import math
def findpoints(lon, lat):
radius = 1
N = 360
# generate points
circlePoints = []
for k in range(N):
angle = math.pi*2*k/N
dx = radius*math.cos(angle)
dy = radius*math.sin(angle)
point = {}
point['lat']= lat + (180/math.pi)*(dy/6371) #Earth Radius
point['lon']= lon + (180/math.pi)*(dx/6371)/math.cos(lon*math.pi/180) #Earth Radius
# add to list
circlePoints.append(point)
return circlePoints
这是我的粗略尝试。。。希望这有助于你的大脑流动
import math
def findpoints(lon, lat):
radius = 1
N = 360
# generate points
circlePoints = []
for k in range(N):
angle = math.pi*2*k/N
dx = radius*math.cos(angle)
dy = radius*math.sin(angle)
point = {}
point['lat']= lat + (180/math.pi)*(dy/6371) #Earth Radius
point['lon']= lon + (180/math.pi)*(dx/6371)/math.cos(lon*math.pi/180) #Earth Radius
# add to list
circlePoints.append(point)
return circlePoints