Javascript 谷歌地图圆形覆盖-固定大小

Javascript 谷歌地图圆形覆盖-固定大小,javascript,google-maps-api-3,Javascript,Google Maps Api 3,在我的mvc项目中,我试图在地图上添加一个圆圈覆盖,但是如果用户放大或缩小地图,我希望圆圈的大小保持不变——有人知道这是否可行吗?目前,这是我如何显示我的圆圈给每一个不同的颜色 var mapCircle; var count = 0; var colours = []; @foreach (string s in arrColours) { <text>colours.push('@s');</text>; } for (var point in map)

在我的mvc项目中,我试图在地图上添加一个圆圈覆盖,但是如果用户放大或缩小地图,我希望圆圈的大小保持不变——有人知道这是否可行吗?目前,这是我如何显示我的圆圈给每一个不同的颜色

var mapCircle;
var count = 0;

var colours = [];
@foreach (string s in arrColours)
{
    <text>colours.push('@s');</text>;
}

for (var point in map) {   
    var circle = {
        strokeColor: '#777777',
        strokeOpacity: 0.8,
        strokeWeight: 1,
        fillColor: colours[count],
        fillOpacity: 0.8,
        map: map,
        center: pointMap[point].coords,
        radius: 70000
    };
    mapCircle = new google.maps.Circle(circle);
    count++;
}
var映射圈;
var计数=0;
var颜色=[];
@foreach(带颜色的字符串)
{
颜色。按('@s');;
}
对于(映射中的var点){
变量圆={
strokeColor:“#777777”,
笔划不透明度:0.8,
冲程重量:1,
填充颜色:颜色[计数],
填充不透明度:0.8,
地图:地图,
中心:点地图[点]。坐标,
半径:70000
};
mapCircle=新的google.maps.Circle(圆圈);
计数++;
}
我有多段线连接这些点,当你在地图上放大时,它们保持固定的宽度,但是当你放大时,圆会增加,这不起作用。我知道我可以用图像做标记,但如果可以的话,我宁愿用圆圈


谢谢

这是可能的,但可能不容易做到。您需要检查地图缩放更改,并使用大圆距离公式重置圆的半径(以米为单位)

 google.maps.event.addListener(map, 'zoom_changed', resetRadius);
下面的问题和答案描述了如何对地图执行此操作,但应适用于圆形。圆具有getBounds()和setRadius()方法