给定纬度和经度以及距离,我想找到一个距离小于给定距离的边界框。
这里提出了这个问题:如何计算给定纬度/经度位置的边界框?
我不希望这特别准确,因此我对其进行了修改并简化为
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))
但我无法理解这是如何工作的,特别是这条线对我来说毫无意义halfSide = 1000*halfSideInKm