是否有 API 可以让您检查一个地理位置是否存在于另一个地理位置?

Posted

技术标签:

【中文标题】是否有 API 可以让您检查一个地理位置是否存在于另一个地理位置?【英文标题】:Is there an API that allows you to check if one geographic location exists within another? 【发布时间】:2017-02-01 22:35:36 【问题描述】:

我正在寻找执行以下操作的 API:

给定以纬度/经度对表示的地理坐标列表,确定哪些坐标位于指定地理位置(例如加利福尼亚、布鲁克林、纽约都会区或欧洲)内。

据我所知,Mapbox 和任何 Google 的 Places API 都不提供此功能。

【问题讨论】:

谷歌反向地理编码这样做 this *** answer 的可能重复项。 @Coder 我在 Google 的 Reverse Geocoding API Documentation 中找不到对这个特定功能的引用。我能想到的使用此 API 来确定一个区域是否包含位置列表的唯一方法是独立地对每个位置进行反向地理编码,然后在单个 "address_components" 中查找相似之处。但是,这需要对每个位置进行 API 调用,这在我的情况下是不切实际的。 @MMiles 这个问题是关于反向地理编码的。我的问题是关于确定一组位置中的哪些项目包含在一个区域内。 @JakeZerrer Bing 地图对反向地理编码有特定限制,您可以指定因地址而异的实体类型,请点击链接msdn.microsoft.com/en-us/library/ff701710.aspx 我找不到可以发出多个地理编码请求的 API不过在一次通话中。 【参考方案1】:

这个问题是关于反向地理编码的。我的问题是关于确定一组位置中的哪些项目包含在一个区域内。

这就是反向地理编码的作用。如果您只有坐标列表,那么您需要对每个坐标进行反向地理编码并检查响应以查看该点是否位于您感兴趣的功能内。

如果您有该要素的多边形数据,那么您可以编写一个脚本来进行多边形点检查,而无需使用外部服务。 Quattroshapes 是此类数据的免费来源。使用ogr2ogr 将其转换为您选择的格式(例如geojson),然后使用Turf 之类的东西进行多点检查。

【讨论】:

以上是关于是否有 API 可以让您检查一个地理位置是否存在于另一个地理位置?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用oozie检查文件是不是存在于HDFS位置?

Actionscript 2 - 如何检查电影剪辑是不是存在于舞台的特定位置?

是否有任何可移植的云 API 可以让您轻松更改云主机? [关闭]

检查列中的值是不是存在于数据框行中的其他位置

如果某个值存在于某个数组索引处,我如何检查 JavaScript?

如何检查图像是不是存在于特定位置?