0
我想有一個方程來計算,每個縮放級別在地球的標準平面地圖投影上,地圖標記可以放置的最小間距(以米爲單位)不重疊,給定標記的尺寸。唉,我不是數學家。任何接受者?最小地圖標記間隔方程
例如: 縮放級別5(相當遠,約大陸級),標記變暗:30×30 =80000米
我想有一個方程來計算,每個縮放級別在地球的標準平面地圖投影上,地圖標記可以放置的最小間距(以米爲單位)不重疊,給定標記的尺寸。唉,我不是數學家。任何接受者?最小地圖標記間隔方程
例如: 縮放級別5(相當遠,約大陸級),標記變暗:30×30 =80000米
使用haversine公式用於在地圖上計算兩個點之間的距離。然後,根據您的縮放比例來應用最小距離/您的地圖上的針腳有多大。
function haversine(lat1, lon1, lat2, lon2) {
var R = 6371000; // m
var dLat = (lat2-lat1)* Math.PI/180;
var dLon = (lon2-lon1)* Math.PI/180;
var lat1 = lat1* Math.PI/180;
var lat2 = lat2* Math.PI/180;
var a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.sin(dLon/2) * Math.sin(dLon/2) * Math.cos(lat1) * Math.cos(lat2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c;
return d;
}
請注意,R以米爲單位,您需要將其更改爲以英里/公里爲單位的距離。 – hkf 2012-03-22 22:26:04