我正在尝试对可编辑多边形的移动进行限制。我想防止内部路径被拉到外部路径之外。我正在使用谷歌地图 google.maps.geometry.poly.containsLocation 函数来检查新点是否在外部边界内,但如果它在外部,我找不到阻止动作发生的方法。
我已尝试返回 false 但多边形仍会转到新位置
google.maps.event.addListener(poly.getPaths().getArray()[1], 'set_at', function() {
return keepInside(this, arguments[0], arguments[1]);
});
function keepInside(polygon, index, new_point)
{
outer_edge = new google.maps.Polygon({
paths: polygon.getArray(),
});
is_in = google.maps.geometry.poly.containsLocation(new_point,outer_edge);
if(!is_in)
{
return false;
}
return true;
}