Google maps api 3 如何绘制圆覆盖图,然后根据新标记单击更改其位置-避免多个圆?
我使用谷歌地图api v3,让它工作得很漂亮,在标记或外部链接上单击我让地图放大那个特定的标记,并在那个特定的标记上画一个圆圈。每次发生“单击”时,都会执行以下操作:Google maps api 3 如何绘制圆覆盖图,然后根据新标记单击更改其位置-避免多个圆?,google-maps-api-3,Google Maps Api 3,我使用谷歌地图api v3,让它工作得很漂亮,在标记或外部链接上单击我让地图放大那个特定的标记,并在那个特定的标记上画一个圆圈。每次发生“单击”时,都会执行以下操作: // DO CIRCLE... //circle.setMap(null); // CLEARS CIRCLE var circle = new google.maps.Circle({ map: map
// DO CIRCLE...
//circle.setMap(null); // CLEARS CIRCLE
var circle = new google.maps.Circle({
map: map,
center: marker.position,
fillColor: '#0000FF',
fillOpacity: 0.2,
strokeColor: '#FF0000',
strokeOpacity: 0.8,
strokeWeight: 1,
});
circle.setRadius(1609.344);
circle.bindTo('center', marker, 'position');
// END CIRCLE SECTION
我希望在任何给定的时间都只显示一个圆,因此,尽管当前单击4个不同的标记会生成4个不同的圆,但在绘制新圆之前,我希望先删除所有圆。我试过了,但它似乎禁用了在一起画圆圈的功能
circle.setMap(null);
我怎样才能做到这一点?如果可能的话,我希望在第一次单击时绘制一个圆,然后将其移动到最后一次单击的标记上。或者,如果这不可行,我希望清除任何圆覆盖,然后重新绘制绑定到上次单击的标记的新圆。如果您只想要一个圆,请将其设置为全局(在任何函数外使用“var”定义),然后销毁并重新创建它或将其移动到新位置(将其中心绑定到新标记)
您能提供一个能显示问题的JSFIDLE吗?谢谢,现在我想起来,它工作得很好,也很有意义。