0

我有一个 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

运行脚本的页面是:

http://80.229.168.62/guild_service/server/map_view.php

4

2 回答 2

1

如果您通过creator.pen.drawPloygon()(不,这不是我的错字——该函数在 polygon.min.js 中确实是这样拼写的)创建多边形,那么您应该能够从creator.pen.polygon.getPolygonObj().

于 2011-08-12T14:39:50.383 回答
1

嗨,请注意多边形创建者 URL 已移至 http://www.startutorial.com/articles/view/google-map-api-v3-polygon-shape-creator

:)

问候 XD
www.the-di-lab.com

于 2013-02-07T02:05:11.370 回答