我尝试了几种方法来确定给定的坐标是否代表陆地或海洋位置:
>大致构成世界海岸线的坐标系脱机数据库.确定给定点是否在轮廓内部或外部仍然是一个问题.
> png tile资源的颜色分析(必须是更好的方法!还需要大量的离线数据可用,以便成为有效的方法)
还有(在处理上述内容之后)是否有一种有效的方式来决定给定瓦片坐标(x,y,z)是否是陆/海/海岸瓦片?
如果有人曾经在这个问题上奋斗,我会在这里感谢一些建议.
解决方法
如果您看看CLGeocoder类(CoreLocation),则有一个reverseGeocodeLocation:completionHandler:method.
在完成处理程序中,您可以检索一个CLPlacemark对象数组
CLPlacemark有两个有趣的属性:
[地标内陆水域]
For coordinates that lie over an inland body of water,this property contains the name of that water body—the name of a lake,stream,river,or other waterway.
和[地标海洋]
coordinates that lie over an ocean,this property contains the name of the ocean.
因此,您只需要对您的位置进行反向地理编码,并检查是否在所生成的CLPlacemark对象上设置了海洋属性.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。