我正在考虑创建一个位置感知 iPhone 应用程序,该应用程序可以通过与兴趣点 (POI) 列表打包来离线工作。该应用程序将从中读取用户的当前位置CoreLocation
并按照距用户当前位置的远近顺序生成 POI 列表。
我需要两个基本的地理空间函数来启动这个应用程序。第一个是测试点(用户当前位置)是否位于某些地理空间边界内的函数。第二个函数可以给出两个纬度/经度点之间的距离。我将使用第二个函数根据与用户当前位置的接近程度对 POI 列表进行排序。
据我所知,这个问题领域已经得到了广泛的关注,并且有开源选项。 (据我所知)领先的候选人是GEOSC++ 库。我想象我使用它的方式是将 GEOS 编译为静态库(并作为项目依赖项链接,就像您所做的那样包含three20图书馆。)
我的问题是:
将这两个必要的功能添加到我的应用程序中的最佳方法是什么?
如果问题 1 的最佳答案是将 GEOS 编译为静态库并将其链接到我的项目,那么以前做过此操作的人可以提供一些指导吗?我是编译、静态库构建等方面的新手。我希望看到一些示例代码或教程,了解如何编译 GEOS 并将其包含在具有简单示例用法的项目中。
好吧,我花了一些时间,但现在我认为我能够正确地为 iPhone 构建静态库或 GEOS(模拟器和真实设备均使用 x86 和 ARM):libgeos.a
and libgeos_c.a
:实现及其 API。
您可以在那里获取二进制文件(对于 GEOS 版本 3.1.1,这不是最后一个):
http://bit.ly/aTKsI6
(那里还有一些其他的二进制文件,其余的是spatialite)
这项工作主要是通过了解交叉编译的完成方式来实现的.sh
脚本。为此,这个博客是必看的:http://robertcarlsen.net/2009/07/15/cross-compiling-for-iphone-dev-884
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)