給定一個經緯度和距離,我想找到一個邊界框,其中的距離小於給定的距離。給定一個經緯度和距離,我想找到一個邊界框
這個問題,在這裏問:How to calculate the bounding box for a given lat/lng location?
我DONOT想這個partcularly準確,所以我已經修改和簡化它
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
張貼的代碼不遠距離工作或接近極點。 – 2009-10-30 10:12:13
Nicolai:只希望它可以在短距離內工作,所以可以假設一個平坦的地球等等。對於經度比較,我們正在做一個「pradius」的劃分,所以它沒有考慮到兩極附近的變化? – agiliq 2009-10-30 10:17:02
halfSideInKm是從點的距離還是不是?你能解釋一下在這裏要做什麼嗎? – 2016-06-06 11:22:42