Google Maps API v3使用缩放调整SVG路径图标大小

时间:2014-10-02 06:09:16

标签: google-maps-api-3 svg resize icons zoom

我在地图上放置了三个图标,它们代表地图上的建筑物,但是当我放大或缩小地图时,图标大小相同,并且它们不再与地图上的实际建筑物大小相对应。现在我知道如何按像素调整png图标的大小,但有没有办法在放大时保持vectoral图标与地图缩放成比例,或者我是否必须通过捕捉缩放事件来操纵Icon对象的scale属性?感谢。

for (var cnt = 0; cnt < pathArr.length; cnt++) {
    var path = {
        path: pathArr[cnt].Path,
        fillColor: "#CCCCCC",
        fillOpacity: 1,
        strokeColor: "#666666",
        strokeWeight: 4,
        scale: 1
    };

    var pos = new google.maps.LatLng(pathArr[cnt].Lat, pathArr[cnt].Lng);
    var marker = new google.maps.Marker({
        position: pos,
        icon: path,
        map: this.Gmap
    });

    this.MapMarkers.push(marker);
}

1 个答案:

答案 0 :(得分:0)

实现我想要的最好方法是使用自定义叠加层和svg:

https://developers.google.com/maps/documentation/javascript/customoverlays