Поиск ближайшего магазина по диагонали на карте - PullRequest
0 голосов
/ 30 января 2019

Во-первых, я хочу получить ближайший магазин из бэкэнда.Для этого я отправляю центр широты и долготы карты и диагональное расстояние карты.Таким образом, я получаю ближайший магазин, который находится под моим текущим окном просмотра.Но когда я увеличиваю это окно просмотра, я не получаю магазин со стороны сервера.Я использую mapkit, и на сервере mongo используется функция geonear для расчета.

Я очень запутался, как решить эту проблему.

Ниже приведен короткий фрагмент моего кода для вычисления диагонального расстояния.

    let topLeftCorner = mapView.convert(.zero, toCoordinateFrom: mapView)
    let cllocationTopLeftCorner = CLLocation(latitude: topLeftCorner.latitude, longitude: topLeftCorner.longitude)
    //Center viewPort lat, long  of map
    let centerPoint = mapView.centerCoordinate
    let cllocationOfCenter = CLLocation(latitude: centerPoint.latitude, longitude: centerPoint.longitude)

    //calculating air distance from two lat long
    let distanceFromCenter = cllocationTopLeftCorner.distance(from: cllocationOfCenter)
...