我使用谷歌地图API搜索城市(任何位置)的房屋。在地图中,默认情况下,将根据数据库结果加载标记,并且用户需要选择他们感兴趣的位置。如果用户在标记周围绘制多个多边形,则这些标记应该是可见的,其他标记应该变为不可见。我几乎完成了大部分工作。
现在的问题是,当我绘制多个多边形时,只有一个带有一个多边形的标记可见。其他选定的标记变得不可见。我正在尝试过去两天,能够完成它。任何人都可以指导我解决这个问题。
提到的问题保存在jsfiddle中,看看并告诉我
答案 0 :(得分:2)
在drawFreeHand方法的末尾添加:polygons.push(poly);
并更改您的isPointInside方法,如下所示。
function isPointInside(position){
for(var i=0;i<polygons.length;i++)
{
if(google.maps.geometry.poly.containsLocation(position, polygons[i]))
return true;
}
return false;
}
你正在与同一个聚合物进行比较,这就是问题所在。