Как я могу получить список точек или полигональный объект с помощью LineString.buffer () в GEOSwift? - PullRequest
0 голосов
/ 15 мая 2019

В MKMapView я хочу обнаружить Действие касания с той стороны (линии) многоугольника. Экземпляр MKMapView может иметь только один полигон. Итак, моя идея состоит в том, чтобы вычислить каждую сторону многоугольника в маленький многоугольник с помощью буферного метода LineString Instance в GEOSwift Framework. Это означает, что каждые две точки преобразуются в плавный прямоугольник Ploygon. Когда пользователь коснулся (Tap), проверил точку касания, если один маленький многоугольник содержится. Таким образом, он может вычислить, какая сторона большого касания полигона пользователем. Тем не менее, я могу получить очки LineString.buffer (), поэтому я не могу сделать маленький многоугольник. любой другой метод может решить мою проблему тыс ~~

Я не могу найти метод, который обеспечивает точки буферного метода

let firstMapPoint = MKMapPoint(x: bound.lng.value!, y: bound.lat.value!)
let nextMapPoint = MKMapPoint(x: nextBound.lng.value!, y: nextBound.lat.value!)
let firstCoordinate = Coordinate(x: firstMapPoint.x, y: firstMapPoint.y)
let nextCoordinate = Coordinate(x: nextMapPoint.x, y: nextMapPoint.y)
let lineString = LineString(points: [firstCoordinate, nextCoordinate])
guard let bufferPolygon = lineString?.buffer(width: 5) else {
}
...