ViewController.swift
UIKit のインポート MapKit のインポート GEOSwift のインポート
クラスViewController:UIViewController、MKMapViewDelegate {
@IBOutlet weak var mapView: MKMapView!
override func viewDidLoad() {
mapView.delegate = self
super.viewDidLoad()
addBoundry()
}
func addBoundry()
{
if let geoJSONURL = NSBundle.mainBundle().URLForResource("multipolygon", withExtension: "geojson"),
let geometries = try! Geometry.fromGeoJSON(geoJSONURL),
let geo = geometries[0] as? MultiPolygon
{
geo
}
//mapView.addOverlay(geo)
}
func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer {
if overlay is MKPolygon {
let polygonView = MKPolygonRenderer(overlay: overlay)
polygonView.strokeColor = UIColor.magentaColor()
return polygonView
}
return MKOverlayRenderer()
}}
- Multipolygon.geojson は、イタリアのジオメトリで満たされてい ます https://github.com/andreacremaschi/GEOSwift/blob/master/GEOSPlayground.playground/Resources/multipolygon.geojson
穴のあるポリゴンを作成したいので、ライブラリを使用しようとしています。しかし、私は自分の問題を解決する方法を見つけることができません。
addoverlay でマルチポリゴンを追加しようとすると
それはエラーをスローします
Cannot invoke 'addOverlay' with an argument list of type '(MultiPolygon<Polygon>)'
私の問題を解決する方法を持っている人はいますか?