사용자의 좌표와 좌표 배열 사이에서 가장 가까운 위치 찾기

아르투로

가장 가까운 위치를 얻기 위해 다음 코드가 있습니다.

내 데이터 :

let coord1 = CLLocation(latitude: 52.45678, longitude: 13.98765)
let coord2 = CLLocation(latitude: 52.12345, longitude: 13.54321)
let coord3 = CLLocation(latitude: 48.771896, longitude: 2.270748000000026)


closestLocation(locations: [coord1, coord2, coord3], closestToLocation: coord3)

 // This calculates closest location giving out 1 point
    func closestLocation(locations: [CLLocation], closestToLocation location: CLLocation) -> CLLocation? {
        if let closestLocation = locations.min(by: { location.distance(from: $0) < location.distance(from: $1) }) {
            print("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@")
            print("Closest location: \(closestLocation), \n distance: \(location.distance(from: closestLocation))")
            return closestLocation
        } else {
            print("coordinates is empty")
            return nil
        }
    }


    func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {

        var userLocation:CLLocation = locations[0]
        let long = userLocation.coordinate.longitude;
        let lat = userLocation.coordinate.latitude;

        userLocation = CLLocation(latitude: lat, longitude: long)

        print("My location: \(userLocation)")
    }

비교하기 위해 4 번째 배열에 가장 가까운 2 개를 계산하려면 어떻게해야합니까?

내 생각은 사용자의 현재 위치를 가져 와서 DB에 저장 한 다음 일부 게시물을 위치별로 정렬하는 것입니다. 그렇다면 사용자 위치와 게시물 위치가 있으면 사용자와 가장 가까운 2를 어떻게 찾을 수 있습니까?

감사

양치기 데이비드

최소값을 찾는 데 사용한 것과 동일한 클로저를 기준으로 배열을 정렬하는 sorted(by:)대신 호출 min(by:)만하면됩니다. 그런 다음 첫 번째 n요소 n를 사용하여 사용자에게 가장 가까운 좌표를 얻을 수 있습니다 .

extension Array where Element == CLLocation {
    func sortedByDistance(to location: CLLocation) -> [CLLocation] {
        return sorted(by: { location.distance(from: $0) < location.distance(from: $1) })
    }
}

let coord1 = CLLocation(latitude: 52.45678, longitude: 13.98765)
let coord2 = CLLocation(latitude: 52.12345, longitude: 13.54321)
let coord3 = CLLocation(latitude: 48.771896, longitude: 2.270748000000026)
let coords = [coord1, coord2, coord3]

let sortedCoordinates = coords.sortedByDistance(to: coord3)
print(sortedCoordinates)
let closestTwoCoordinates = sortedCoordinates.prefix(2)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

좌표 배열에서 가장 큰 십자 모양 찾기

분류에서Dev

Halcon-가장 작은 Col 좌표와 가장 큰 Col 좌표를 가진 2 점의 행 좌표 찾기

분류에서Dev

MongoDB에서 좌표에 가장 가까운 전체 찾기

분류에서Dev

pandas 데이터 프레임의 좌표에서 국가 이름을 찾기 위해 geopy 사용

분류에서Dev

2D 좌표와 관련된 데이터 배열에서 최대 값의 좌표 찾기

분류에서Dev

NumPy 배열에서 주어진 좌표 위치 찾기

분류에서Dev

위도 경도 좌표를 사용하여 위성 이미지에서 가장 가까운 픽셀 값 가져 오기

분류에서Dev

OnItemClickListener를 사용하여 GridView에서 2D 배열 좌표 가져 오기

분류에서Dev

사용자 위치에서 배열에서 가장 가까운 경도 및 위도 찾기

분류에서Dev

좌표를 사용하여 가장 가까운 위치를 정렬 하시겠습니까?

분류에서Dev

MATLAB-3 차원 좌표계에서 가장 가까운 이웃 찾기

분류에서Dev

R에서 가장 가까운 위치를 기반으로 한 좌표로 데이터 프레임의 행을 부분 집합시키는 방법

분류에서Dev

화면 좌표의 픽셀 위치 측면에서 오프셋을 사용하여 화면 가장자리를 기준으로 Android 화면에서 뷰를 배치하는 방법은 무엇입니까?

분류에서Dev

2D 배열에서 특정 좌표가 주어진 이웃 찾기

분류에서Dev

메시에서 (x, y) 좌표에 가장 가까운 점 찾기 (MATLAB)

분류에서Dev

아이의 좌표 위치 저장

분류에서Dev

JavaFX-ScrollPane에서 자식의 장면 좌표 가져 오기

분류에서Dev

안드로이드 자기장 센서 값이 지구 좌표계로 변환 될 때 X 좌표 값이 0에 가까운 이유는 무엇입니까?

분류에서Dev

URL에 전달 될 때 사용자 위치 좌표가 null입니다.

분류에서Dev

위치 좌표를 가져 와서 화면에 표시 할 수 없습니다.

분류에서Dev

파이썬 : 키가 좌표 인 사전에서 numpy 배열을 만듭니다.

분류에서Dev

O (n ^ 3)보다 작은 부울의 2d 배열에서 가장 큰 완전 사각형의 좌표를 어떻게 찾을 수 있습니까?

분류에서Dev

X 및 Y 좌표와 관련하여 가장 가까운 / 가장 가까운 값 찾기 Excel

분류에서Dev

numpy 배열에 float 좌표 추가

분류에서Dev

UITapGestureRecognizer 배열에 좌표 추가

분류에서Dev

안드로이드에서 가장 가까운 거리 / 도로 좌표 얻기

분류에서Dev

배열에서 여러 좌표 사이의 거리를 검색하기 위해 루프를 사용하는 방법은 무엇입니까?

분류에서Dev

2D 배열 가장 가까운 점 좌표

분류에서Dev

연속적인 사용자 입력으로부터 x, y 좌표를 저장하기위한 배열을 어떻게 만듭니 까?

Related 관련 기사

  1. 1

    좌표 배열에서 가장 큰 십자 모양 찾기

  2. 2

    Halcon-가장 작은 Col 좌표와 가장 큰 Col 좌표를 가진 2 점의 행 좌표 찾기

  3. 3

    MongoDB에서 좌표에 가장 가까운 전체 찾기

  4. 4

    pandas 데이터 프레임의 좌표에서 국가 이름을 찾기 위해 geopy 사용

  5. 5

    2D 좌표와 관련된 데이터 배열에서 최대 값의 좌표 찾기

  6. 6

    NumPy 배열에서 주어진 좌표 위치 찾기

  7. 7

    위도 경도 좌표를 사용하여 위성 이미지에서 가장 가까운 픽셀 값 가져 오기

  8. 8

    OnItemClickListener를 사용하여 GridView에서 2D 배열 좌표 가져 오기

  9. 9

    사용자 위치에서 배열에서 가장 가까운 경도 및 위도 찾기

  10. 10

    좌표를 사용하여 가장 가까운 위치를 정렬 하시겠습니까?

  11. 11

    MATLAB-3 차원 좌표계에서 가장 가까운 이웃 찾기

  12. 12

    R에서 가장 가까운 위치를 기반으로 한 좌표로 데이터 프레임의 행을 부분 집합시키는 방법

  13. 13

    화면 좌표의 픽셀 위치 측면에서 오프셋을 사용하여 화면 가장자리를 기준으로 Android 화면에서 뷰를 배치하는 방법은 무엇입니까?

  14. 14

    2D 배열에서 특정 좌표가 주어진 이웃 찾기

  15. 15

    메시에서 (x, y) 좌표에 가장 가까운 점 찾기 (MATLAB)

  16. 16

    아이의 좌표 위치 저장

  17. 17

    JavaFX-ScrollPane에서 자식의 장면 좌표 가져 오기

  18. 18

    안드로이드 자기장 센서 값이 지구 좌표계로 변환 될 때 X 좌표 값이 0에 가까운 이유는 무엇입니까?

  19. 19

    URL에 전달 될 때 사용자 위치 좌표가 null입니다.

  20. 20

    위치 좌표를 가져 와서 화면에 표시 할 수 없습니다.

  21. 21

    파이썬 : 키가 좌표 인 사전에서 numpy 배열을 만듭니다.

  22. 22

    O (n ^ 3)보다 작은 부울의 2d 배열에서 가장 큰 완전 사각형의 좌표를 어떻게 찾을 수 있습니까?

  23. 23

    X 및 Y 좌표와 관련하여 가장 가까운 / 가장 가까운 값 찾기 Excel

  24. 24

    numpy 배열에 float 좌표 추가

  25. 25

    UITapGestureRecognizer 배열에 좌표 추가

  26. 26

    안드로이드에서 가장 가까운 거리 / 도로 좌표 얻기

  27. 27

    배열에서 여러 좌표 사이의 거리를 검색하기 위해 루프를 사용하는 방법은 무엇입니까?

  28. 28

    2D 배열 가장 가까운 점 좌표

  29. 29

    연속적인 사용자 입력으로부터 x, y 좌표를 저장하기위한 배열을 어떻게 만듭니 까?

뜨겁다태그

보관