WedX - журнал о программировании и компьютерных науках

Выделите между двумя точками на MapKit swift 5

Я изо всех сил пытаюсь выделить дорогу между двумя точками с помощью MapKit. Все, что мне не нужно, я просто хочу попробовать и выделить дорогу между этими двумя точками.

Мой код:

import UIKit
import MapKit
class ViewController: UIViewController {

@IBOutlet weak var mapView: MKMapView!


struct Points {
  var name: String
  var lattitude: CLLocationDegrees
  var longtitude: CLLocationDegrees
}



override func viewDidLoad() {
    super.viewDidLoad()


    let points = [
    Points(name: "Point 1", lattitude: 52.100525, longtitude: -9.623071),
    Points(name: "Point 2", lattitude: 52.07241, longtitude: -9.575299)
    ]

    fetchPointsOnMap(points)

}


func fetchPointsOnMap(_ points: [Points]) {
  for points in points {
    let annotations = MKPointAnnotation()
    annotations.title = points.name
    annotations.coordinate = CLLocationCoordinate2D(latitude:
      points.lattitude, longitude: points.longtitude)
    mapView.addAnnotation(annotations)
  }
}

}`
19.02.2020

Ответы:


1

Вы можете нарисовать линию:

   directionsRequest.transportType = MKDirectionsTransportType.automobile

        //Draw polyline by using MKRoute so it follows the street roads...
        for (k, item) in arrayarrayPlacemarks.enumerated() {
            if k < (arrayarrayPlacemarks.count - 1) {
                directionsRequest.source = item
                directionsRequest.destination = arrayarrayPlacemarks[k+1]

                let directions = MKDirections(request: directionsRequest)
          directions.calculate { (response:MKDirections.Response!, error: Error!) -> Void in
                    if error == nil {
                        self.locRoute = response.routes[0] as? MKRoute
                        let geodesic:MKPolyline = self.locRoute!.polyline
                        self.mapView.addOverlay(geodesic)
                    }
                }
            }
        }

Делегировать:

  func mapView(_ mapView: MKMapView, rendererFor overlay: MKOverlay) -> MKOverlayRenderer {
        if overlay.isKind(of: MKPolyline.self){
                var polylineRenderer = MKPolylineRenderer(overlay: overlay)
                polylineRenderer.fillColor = UIColor.blue
                polylineRenderer.strokeColor = UIColor.blue
                polylineRenderer.lineWidth = 2

            return polylineRenderer
     }
        return MKOverlayRenderer(overlay: overlay)
    }
19.02.2020
  • Я не мог реализовать это в своем коде, не могли бы вы помочь? 21.02.2020
  • Новые материалы

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..


    Для любых предложений по сайту: [email protected]