我已经通过链接
Given a latitude and longitude, and distance, I want to find a bounding box
该链接提供了创建边界框的解决方案,但是我无法理解的事情很少。
def boundingBox(latitudeInDegrees, longitudeInDegrees, halfSideInKm):
lat = math.radians(latitudeInDegrees)
lon = math.radians(longitudeInDegrees)
halfSide = 1000*halfSideInKm
RADIUS_OF_EARTH = 6371
# Radius of the parallel at given latitude
pradius = radius*math.cos(lat)
latMin = lat - halfSide/radius
latMax = lat + halfSide/radius
lonMin = lon - halfSide/pradius
lonMax = lon + halfSide/pradius
rad2deg = math.degrees
return (rad2deg(latMin), rad2deg(lonMin), rad2deg(latMax), rad2deg(lonMax))
在上面的代码中,radius的值是什么?在
RADIUS_OF_EARTH
中用6371表示什么?有人可以解释吗?
谢谢
最佳答案
根据wikipedia 6371km是地球的平均半径。在您显示的代码段中看不到radius
的定义,但应将其设置为RADIUS_OF_EARTH
,因为pradius
是半径的水平投影(根据注释)。