在VB.NET中用经纬度计算边界框

在VB.NET中用经纬度计算边界框,.net,vb.net,google-maps,geometry,coordinates,.net,Vb.net,Google Maps,Geometry,Coordinates,我需要得到一个纬度和经度的边界框,距离为xx公里 This point o................^ . | . 100km . | <---100km--- lat/lng ---100km---> | .

我需要得到一个纬度和经度的边界框,距离为xx公里

This point o................^
           .                |
           .              100km
           .                |
            <---100km--- lat/lng ---100km--->
                            |               .
                           100km            .
                            |               .
                            V...............o This point
然而,当我把点放在地图上时,我得到了这个 它更像一个长方形。 所以我认为这个公式是错误的


可能是重复的废话你又好又快。我用谷歌搜索了半个小时。我要去看看。
Function latlngToBox(lat As Double, lng As Double, km As Double) As boundingBox

    ' angle per km = 360 / (2 * pi * 6378) = 0.0089833458 (Found this fomula on the web
    Dim angle As Double = km * 0.0089833458
    Dim box As boundingBox = New boundingBox
    box.minLat = lat - angle
    box.minLng = lng - angle
    box.maxLat = lat + angle
    box.maxLng = lng + angle

    Return box

End Function