SwiftUI地图路线和额外站点

SwiftUI地图路线和额外站点,swift,swiftui,mapkit,mkdirection,Swift,Swiftui,Mapkit,Mkdirection,我如何实现一些额外的停止。现在,我的代码引导用户从req.source到req.destination。如何获得req.source->req.firstStop->req.destination这样的内容? 使用MKDirections是正确的吗 struct MapView: UIViewRepresentable { @Binding var showCompass: Bool @Binding var centerOnMe: Bool var location

我如何实现一些额外的停止。现在,我的代码引导用户从req.source到req.destination。如何获得req.source->req.firstStop->req.destination这样的内容? 使用MKDirections是正确的吗

struct MapView: UIViewRepresentable {

    @Binding var showCompass: Bool
    @Binding var centerOnMe: Bool

    var locationManager = CLLocationManager()
    func setupManager() {
      locationManager.desiredAccuracy = kCLLocationAccuracyReduced
      locationManager.requestWhenInUseAuthorization()
    }

    func makeUIView(context: Context) -> MKMapView {
        let mapView = MKMapView()
        setupManager()
        mapView.isRotateEnabled = true
        mapView.delegate = context.coordinator
        mapView.showsUserLocation = true
        mapView.userTrackingMode = MKUserTrackingMode.follow
        
        
        let latDelta:CLLocationDegrees = 0.1
        let lonDelta:CLLocationDegrees = 0.1
        let span = MKCoordinateSpan(latitudeDelta: latDelta, longitudeDelta: lonDelta)
        let region = MKCoordinateRegion(center: locationManager.location!.coordinate, span: span)
        mapView.setRegion(region, animated: true)
        
        let destinationCoordinate = CLLocationCoordinate2D(latitude: 47.55, longitude: 8.29629555)

        let sourceCoordinate = locationManager.location!.coordinate

        let destinationPin = MKPointAnnotation()
        destinationPin.coordinate = destinationCoordinate
        destinationPin.title = "Migros"
        mapView.addAnnotation(destinationPin)

        let req = MKDirections.Request()
        req.transportType = .walking
        req.source = MKMapItem(placemark: MKPlacemark(coordinate: sourceCoordinate))
        req.destination = MKMapItem(placemark: MKPlacemark(coordinate: destinationCoordinate))

        let directions = MKDirections(request: req)

        directions.calculate {(direct, err) in
            if err != nil {
                print((err?.localizedDescription)!)
                return
            }

            let polyline = direct?.routes.first?.polyline
            mapView.addOverlay(polyline!)
        }
        return mapView
    }