我有一个 google maps api v3,它使用“The Di Lab”的插件来绘制多边形:
http://www.the-di-lab.com/?p=219
然后使用 tparkins 插件进行光线投射。
https://github.com/tparkin/Google-Maps-Point-in-Polygon
但是,我需要从多边形插件访问多边形对象。多边形插件中实际在地图上绘制多边形的部分是:
this.polygonObj= new google.maps.Polygon({
paths: this.coords,
strokeColor: "#FF0000",
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: "#FF0000",
fillOpacity: 0.35,
map:this.map
});
我会创建地图:
var creator = new PolygonCreator(map);
然后我必须通过调用来做多边形中的点:
var isWithinPolygon = polygonObj.containsLatLng("52,0");
例如:
var coordinate = new google.maps.LatLng(40,90);
var polygon = new google.maps.Polygon([], "#000000", 1, 1, "#336699", 0.3);
var isWithinPolygon = polygon.containsLatLng(coordinate);
基本上我需要的是第一个脚本中的多边形对象。两个javascript文件如下:
http://80.229.168.62/guild_service/server/js/polygon.min.js
http://80.229.168.62/guild_service/server/js/latlngcontains.js
运行脚本的页面是: