我有一个javascript,它可以在标记图标周围绘制一个圆圈,其中标记图标是键入地址的位置。我在excel文件中有几千个点的纬度和经度。我想在谷歌地图上显示这些点,但仅限于圆圈内。 任何javascript解决方案都将非常感激。
谢谢, Monir
答案 0 :(得分:0)
将您的观点转换为更友好的网络格式。 JSON很棒。然后,您可以将它们直接加载到您的页面中。从那里,您可以使用以下方法计算任何点与标记之间的距离:
function distance(lat1, lng1, lat2, lng2) {
var radius = 3956.0; // miles
var deltaLat = ToRadians(lat2 - lat1);
var deltaLng = ToRadians(lng2 - lng1);
var sinLat = Math.sin(0.5*deltaLat);
var sinLng = Math.sin(0.5*deltaLng);
var cosLat1 = Math.cos(ToRadians(lat1));
var cosLat2 = Math.cos(ToRadians(lat2));
var h1 = sinLat*sinLat + cosLat1*cosLat2*sinLng*sinLng;
var h2 = Math.sqrt(h1);
var h3 = 2*Math.asin(Math.min(1, h2));
var distance = radius*h3;
return distance;
}
function ToRadians(degree) {
return (degree * (Math.PI / 180));
}
如果距离小于您的半径,则显示它。
鲍勃