我尝试了几种方法来确定给定的坐标是否代表陆地或海洋位置:
>大致构成世界海岸线的坐标系脱机数据库.确定给定点是否在轮廓内部或外部仍然是一个问题.
> 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对象上设置了海洋属性.
总结以上是内存溢出为你收集整理的ios – 了解CLLocation是否代表陆地或海洋全部内容,希望文章能够帮你解决ios – 了解CLLocation是否代表陆地或海洋所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)