GEOSwiftMapKit
详见GEOSwift
需求
- iOS 9.0+
- Swift 5.1+
- CocoaPods 1.4.0+
- MapboxGL 6
安装
CocoaPods
-
按照Mapbox Maps SDK的安装说明配置您的
~/.netrc
文件。 -
更新您的
Podfile
以包含:use_frameworks! pod 'GEOSwiftMapboxGL'
-
运行
$ pod install
使用方法
import GEOSwift
import Mapbox
import GEOSwiftMapboxGL
...
let point = Point(longitude: 10, latitude: 45)
let polygon = try! Polygon(wkt: "POLYGON((35 10, 45 45.5, 15 40, 10 20, 35 10),(20 30, 35 35, 30 20, 20 30))")
let annotations = [
MGLShape.make(with: point),
MGLShape.make(with: polygon)
]
self.mapView.showAnnotations(annotations, animated: true)
...
在此表中,您可以找到在调用 MGLShape.make(with:)
时应期望的注释类
GEOSwift | MapboxGL |
---|---|
点 |
MGLPointAnnotation |
线字符串 |
MGLPolyline |
多边形 |
MGLPolygon |
多点 |
MGLPointCollection |
多线字符串 |
MGLMultiPolyline |
多边形 |
MGLMultiPolygon |
几何集合 |
MGLShapeCollection |
您还可以使用 MGLShape.makeFeature(with:)
GEOSwift | MapboxGL |
---|---|
点 |
MGLPointFeature |
线字符串 |
MGLPolylineFeature |
多边形 |
MGLPolygonFeature |
多点 |
MGLPointCollectionFeature |
多线字符串 |
MGLMultiPolylineFeature |
多边形 |
MGLMultiPolygonFeature |
几何集合 |
MGLShapeCollectionFeature |
这些 MapboxGL 类型也都接受接受相应 GEOSwift 类型的便捷初始化器。
贡献
要做出贡献
- 分支此仓库
- 从
main
分支开始,创建一个命名反映您贡献的内容的分支 - 按照Mapbox Maps SDK的安装说明配置您的
~/.netrc
文件。 - 运行
$ pod install
- 打开 GEOSwiftMapboxGL.xcworkspace 并进行更改。
- 从仓库根目录运行
$ swiftlint
并解决任何问题。 - 推送您的分支并创建一个 pushed 到
main
的拉取请求 - 维护者之一将审查您的代码,并可能要求您进行修改
- 如果您的拉取请求被接受,维护者应在合并之前更新变更日志。
- 由于需要秘密的 Mapbox 令牌以安装 Mapbox SDK,因此原始分支的 PR 不会运行 CI。维护者在接受任何更改之前应确保在本地运行测试套件。
维护者
- Andrew Hershberger (@macdrevx)
前任维护者
- Virgilio Favero Neto (@vfn)
- Andrea Cremaschi (@andreacremaschi) (原始作者)
许可证
- GEOSwiftMapboxGL是由Andrea Cremaschi(@andreacremaschi)发布的,采用MIT许可证。有关更多信息,请参阅LICENSE文件。
- GEOSwift是由Andrea Cremaschi(@andreacremaschi)发布的,采用MIT许可证。有关更多信息,请参阅LICENSE文件。
- GEOS代表几何引擎 - 开源,是一个从Java拓扑套件移植的C++库。GEOS实现了OpenGISSimple Features for SQL空间谓词函数和空间运算符。作为一个OSGeo项目,GEOS最初由加拿大的维多利亚的Refractions Research开发和维护。