0

我想获取标记的图标大小,这里是下面的代码,它返回的标题和图标名称是完美的返回。但是图标大小没有返回,请帮助如何从标记中获取图标大小。

var marker = new google.maps.Marker({
  position: new google.maps.LatLng(-25.363882,131.044922),
  map: map,
  title: 'Map',
  icon: "travel.png",
  size: new google.maps.Size(20, 16)
});
alert("Title"+marker.getTitle());
alert("Icon"+marker.getIcon()); 
alert("Title"+marker.getIcon().size);
var iconSize = marker.getIcon().size;
var w = iconSize.width;
var h = iconSize.height;
var p1 = projection.fromLatLngToPoint(marker.getPosition());
var p2 = marker.getIcon().anchor;
var sw = new google.maps.Point(p1.x-p2.x-pad,p1.y-p2.y+pad+h);
var ne = new google.maps.Point(p1.x-p2.x+pad+w, p1.y-p2.y-pad);
sw = projection.fromPointToLatLng(sw);
ne = projection.fromPointToLatLng(ne);
iconBounds = new google.maps.LatLngBounds(sw, ne); 

请帮忙!!如何解决这个问题?

4

1 回答 1

1

这是因为您没有将图标传递给标记选项,而只是一个 URL(API 支持但它只会返回一个字符串)

您应该创建一个具有size 属性的图标(否则 size 属性将保持未定义),这样的事情将起作用:

var myIcon = {
        网址:“图标.jpg”,
        尺寸:新 google.maps.Size(10,10)
    };
var marker_new google.maps.Marker({position: Latlng, icon: myIcon});
于 2013-06-21T13:06:37.087 回答