Google maps api 3 绘制多边形并检测标记是否在内部

Google maps api 3 绘制多边形并检测标记是否在内部,google-maps-api-3,geolocation,latitude-longitude,bounding-box,Google Maps Api 3,Geolocation,Latitude Longitude,Bounding Box,我将这些坐标存储在数据库的一个字段中,用于在谷歌地图上绘制多边形。我想检测标记是否在此多边形内: (37.15730677081955, -3.7892532348632812), (37.13486648362684, -3.7593841552734375), (37.16059015678727, -3.7027359008789062) 有人知道如何获取它吗?您可以将google map geometry library containsLocation()方法用于以下内容: for

我将这些坐标存储在数据库的一个字段中,用于在谷歌地图上绘制多边形。我想检测标记是否在此多边形内:

(37.15730677081955, -3.7892532348632812),
(37.13486648362684, -3.7593841552734375), 
(37.16059015678727, -3.7027359008789062)

有人知道如何获取它吗?

您可以将google map geometry library containsLocation()方法用于以下内容:

for (var j=0; j < allMarkers.length; j++){
        for (var i=0; i < createdShapes.length; i++) {
            var latlong = allMarkers[j].getPosition();;
            if(google.maps.geometry.poly.containsLocation(latlong, createdShapes[i]) == true) {
                allMarkers[j].setOptions({
                    icon : "http://labs.google.com/ridefinder/images/mm_20_white.png",
                });
            }
        }
for(var j=0;j
以下是一些用Java编写的代码,用于检测GPS坐标是否位于lat/长边界框内,这是一个数学问题,因此可能会被翻译成其他语言


看看google.maps.geometry.poly.containsLocation():参见