Я хочу сохранить только те аннотации, которые находятся в моей области многоугольника вида карты. Как удалить оставшиеся аннотации с карты, используя swift 4.2.
вот мой код
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
mapView?.removeOverlays(mapView!.overlays)
if let touch = touches.first {
let coordinate = mapView!.convert(touch.location(in: mapView), toCoordinateFrom: mapView)
points.append(coordinate)
}
}
override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
if let touch = touches.first {
let coordinate = mapView!.convert(touch.location(in: mapView), toCoordinateFrom: mapView)
points.append(coordinate)
let polyline = MKPolyline(coordinates: points, count: points.count)
mapView!.addOverlay(polyline)
}
}
override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
let polygon = MKPolygon(coordinates: &points, count: points.count)
mapView?.addOverlay(polygon)
}
func mapView(_ mapView: MKMapView, rendererFor overlay: MKOverlay) -> MKOverlayRenderer {
if overlay is MKPolyline {
let polylineRenderer = MKPolylineRenderer(overlay: overlay)
polylineRenderer.strokeColor = .blue
polylineRenderer.lineWidth = 5
return polylineRenderer
} else if overlay is MKPolygon {
let polygonView = MKPolygonRenderer(overlay: overlay)
polygonView.fillColor = UIColor.black.withAlphaComponent(0.2)
return polygonView
}
return MKPolylineRenderer(overlay: overlay)
}