我想得到标记的图标大小,这里是下面的代码,返回标题和图标名称完全返回。但图标大小没有返回,请帮助如何从标记中获取图标大小。
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);
请帮忙!!如何解决这个问题??
答案 0 :(得分:1)
这是因为你没有将一个Icon传递给标记选项,只是一个URL(API支持但是它只会返回一个字符串)
你应该用大小属性创建一个Icon (否则size属性将保持未定义),这样的东西会起作用:
var myIcon = { url: "icon.jpg", size: new google.maps.Size(10,10) }; var marker_ new google.maps.Marker({position: Latlng, icon: myIcon});