注意:GeoFeatures 目前正在用纯 Swift 重写。此项目将继续维护,直到 Swift 版本的生产发布。
请参见 https://github.com/tonystone/geofeatures2 了解 Swift 重写。
简介
GeoFeatures 是一个轻量级、高性能的 Objective-C 几何库。它支持像点、多边形和线串这样的完整几何原语,以及像 MultiPoint、MultiPolygon 和 MultiLineString 这样的集合类。
功能
- 易于使用。
- Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon、Box 和 GeometryCollection 实现。
- 面积、长度、边界框、质心、周长、相交、交集、差集、并集和 Within(点在多边形内)算法。更多即将到来。
- 所有类的不可变和可变版本(例如,GFPolygon 和 GFMutablePolygon)。
- WKT (Well-Known-Text) 输入输出。
- GeoJSON 输入输出。
- MapKit 表现和绘图。
- 支持所有集合类型的索引下标支持(例如:
GEPoint * point = multiPoint[0]
)。 - Swift:支持在Swift应用中直接使用。
- 支持CocoaPod框架(编译为Objective-C框架或静态库)。
- 在Apache License, Version 2.0下开源。
- 在github.io上提供库的全面的doxygen文档。
- 基于流行的快速开源C++ boost geometry库实现。
文档
doxygen文档可在github.io上在线访问。
源文件和二进制文件
您可以在github上找到最新的源文件和二进制文件。
通信和贡献
- 如果您找到了一个错误,并且可以提供可靠复现它的步骤,请提交问题。
- 如果您有一个功能请求,请提交问题。
- 如果您想贡献力量
- 给它分流!GeoFeatures 存储库
- 创建您的功能分支:
git checkout -b my-new-feature
- 提交您的更改:
git commit -am '添加一些功能'
- 将其推送到分支:
git push origin my-new-feature
- 提交一个拉取请求 :-)
安装
GeoFeatures可通过CocoaPods获得。要安装它,请简单地将以下行添加到您的Podfile中
pod "GeoFeatures"
有关更多信息,请参阅"使用CocoaPods"指南。
最小要求
构建环境
平台 | Xcode |
---|---|
OSX | 10.1 |
最低运行版本
iOS | OS X |
---|---|
8.0 | 10.10 |
作者
Tony Stone (https://github.com/tonystone)
许可证
GeoFeatures 采用Apache License, Version 2.0
集成的 Boost 库采用Boost Software License, Version 1.0