我们正在使用谷歌地图通过angularjs' NgMap。标记需要是圆形,并处理点击事件。所以我们使用的是google.maps.Circle。放大时,标记会快速增长并且可能非常大。它可以通过添加侦听器来映射缩放更改来阻止这种情况:
google.maps.event.addListener(map, 'zoom_changed', function (markers, newRadius) {
markers.forEach(function(marker) {
marker.setRadius(newRadius);
});
});
但问题是有一系列标记,似乎地图重新标记了标记'在此更改之前的前一个大小,然后使用新大小更新标记。这意味着在更改缩放级别一次后,地图重新绘制了两次。
如何在缩放后仅使标记渲染一次?或者是否可以配置圆形,所以当它被绘制时,它的半径是由与缩放级别相关的某些公式确定的?
感谢您的帮助!