Swift: конвертируйте MKPolygon в UIBeizerpath и рисуйте путь в UIView - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть файл geojson, содержащий FeatureCollection of Features.Я анализирую json с помощью GEOSwift и в итоге получаю объекты MKPolygon.

Мне удалось нарисовать полигоны как наложение на MKMapView, но производительность действительно низкая!

Файл geojson, который у меня естьсодержит путь к каждой стране в мире.Так что мне на самом деле карта не нужна, так как я просто хочу рисовать полигоны непосредственно в UIView.Вот мой код для получения MKPolygon:

func drawPolygonsFromFeatures(_ features: Features) {
    var i = 0
    for feature in features {
        if let geometries = feature.geometries {
            for geometry in geometries {
                if let shapesCollection = geometry.mapShape() as? MKShapesCollection {
                    let shapes = shapesCollection.shapes
                    for shape in shapes {
                        if let polygon = shape as? MKPolygon {
                            if let identifier = feature.id as? String,  self.countryDict.count > 0 {
                                // Set title in order to set color on country
                                polygon.title = self.countryDict[identifier]
                            }

                            main {
                                // TODO: Draw polygons on view
                            }
                        }
                    }
                }
            }
        }
        i += 1
    }
}

Я знаю, что можно рисовать фигуры с помощью UIBeizerPath, но я не знаю, как преобразовать мой MKPolygon во что-то, что могло бы отображать фигуру в UIView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...