【发布时间】:2017-02-03 16:13:52
【问题描述】:
我创建了一个缩放等于 4 的新地图:
map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: new google.maps.LatLng(39.9526, -98.5795),
mapType: 'terrain'
});
我监听 zoom_changed 事件,以便我可以用新的比例重新绘制我的标记:
google.maps.event.addListener(map, 'zoom_changed', function () {
var zoom = map.getZoom();
$log.debug("zoom: " + zoom);
我在这里创建我的新图标:
var greenMarkerIcon = {
path: google.maps.SymbolPath.CIRCLE,
fillOpacity: 1,
fillColor: "green",
strokeWeight: 1,
scale: map.getZoom()
}
当我放大时,一切看起来都很可爱。当我向下钻取时,图标的比例会变大。缩小是问题所在:
Click here for image of icon after reducing scale
圆圈的边框越来越大。我为 icon.strokeWeight 属性添加了一个调试语句,它始终保持为 1。我正在吹走我所有的旧标记并重新绘制它们,所以我不知道为什么单个标记 strokeWeight 显得更大。
有什么想法吗?
【问题讨论】:
-
请提供一个minimal reproducible example 来证明您的问题。
-
我在您的问题中没有看到任何会改变图标大小(或影响笔画)的代码。您确定要更改图标,而不仅仅是用新图标覆盖它吗(如果新图标较大,您将无法看到较小的图标)。
标签: javascript google-maps-api-3 icons google-maps-markers