Google maps api 3 使用谷歌地图API检查点是否位于多边形内
我正在使用Google Maps API v3开发一个应用程序,我正在努力了解如何确定X坐标是否位于多边形内。您可以使用Google Maps JS API的。有一个名为Google maps api 3 使用谷歌地图API检查点是否位于多边形内,google-maps-api-3,polygon,Google Maps Api 3,Polygon,我正在使用Google Maps API v3开发一个应用程序,我正在努力了解如何确定X坐标是否位于多边形内。您可以使用Google Maps JS API的。有一个名为containsLocation的函数,它告诉您给定的板条是否在多边形中。请注意,它是一个多边形,而不是多段线。多段线(如名称中所述)是一条线。因此,不存在点位于多段线内的情况。您可以使用containsLocation函数检查点是否位于多边形内 google.maps.geometry.poly.containsLocatio
containsLocation
的函数,它告诉您给定的板条是否在多边形中。请注意,它是一个多边形,而不是多段线。多段线(如名称中所述)是一条线。因此,不存在点位于多段线内的情况。您可以使用containsLocation
函数检查点是否位于多边形内
google.maps.geometry.poly.containsLocation(somePoint, somePolygon)
在iOS中,可以使用
GMSGeometryContainsLocation
只需创建一个GMSMutablePath
,然后用多边形的顶点填充并测试该点
示例(Swift 4.0):
注意:如果
gmsGeometryContainesLocation
的最后一个参数设置为true,则gmsTablePath
由大圆段组成,否则它是rhumb(loxodromic)段。可能重复,但对于JavaScript,如何使用Objective C Google Maps SDk对iOS执行相同操作??
func isWithin(_ point: CLLocationCoordinate2D) -> Bool {
let p = GMSMutablePath()
p.add(CLLocationCoordinate2D(latitude:30.02356126, longitude: -90.07047824))
p.add(CLLocationCoordinate2D(latitude:30.02501037, longitude: -90.0614231))
p.add(CLLocationCoordinate2D(latitude:30.03321034, longitude: -90.0617981))
p.add(CLLocationCoordinate2D(latitude:30.03192855, longitude: -90.07342815))
return GMSGeometryContainsLocation(point, p, true)
}