Google Maps api - 在关闭形状之前绘制库填充多边形

时间:2014-03-27 17:35:42

标签: google-maps-api-3 drawing polygons

我有一个谷歌地图,我正在使用绘图库让用户通过点击添加点在地图上绘制多边形。 作为比较,我看了trulia.com。我不知道如何在trulia上进行绘图库设置(使用主干和其他东西)。当我绘制一个形状时,我希望它在我有3个点时立即填充,即使我仍在绘制,并且填充应该随着我添加新点而改变(指示如果你的形状/区域将是什么在那一刻关闭它。)

在trulia.com上,只要你有第3个点,即使你还没有完成添加点,现有点指定的区域也会被填满。他们正在使用谷歌地图api,对吗?但我找不到像“添加点”这样填充形状的设置。我搜索了很多谷歌,没有运气。

有谁知道如何设置地图或绘图库以获得该行为?我不认为这个行为可以在polygonOptions中设置(我已经查看了developers.google.com上记录的所有选项)......所以,设置必须在其他地方...

1 个答案:

答案 0 :(得分:1)

MrCroft,似乎@ddtpoison777问a similar question并在一些Google Maps API示例中找到了the solution。这是从示例中获取的相关代码:

var poly;
var path = new google.maps.MVCArray;

function initialize() {
    poly = new google.maps.Polygon({
      strokeWeight: 3,
      fillColor: '#5555FF'
    });

    poly.setMap(map);
    poly.setPaths(new google.maps.MVCArray([path]));

    google.maps.event.addListener(map, 'click', addPoint);
}

function addPoint(event) {
    path.insertAt(path.length, event.latLng);

    var marker = new google.maps.Marker({
      position: event.latLng,
      map: map,
      draggable: true
    });
    markers.push(marker);
    marker.setTitle("#" + path.length);
}