2009-05-07 9 views
0

CoreLocation을 통해 현재 위치가 고정되어 있습니다. 이제는 (100 피트) 근처에있는 (기존 데이터베이스에서) 위치를 얻고 싶습니다.iPhone 3G : 고정 지점 주변의 위치를 ​​표시하는 방법?

어떻게 시작합니까?


업데이트 : http://www.jaimerios.com/?p=39 (매우 유용)

+1

특정 아이폰/Objective-C 질문보다 "점 사이의 거리를 어떻게 계산합니까?"질문이 더 많습니까? – rjstelling

+0

아니, CoreLocationo로 이것을 해결하는 방법에 대해 생각했습니다 .-) – Stefan

+0

Good one rijstellin. 왜냐하면 폴 Betts가 당신의 대답을 가지고 있기 때문에, Stefan. – Kriem

답변

7

CLLocation이하는 방법을 제공한다.

-1

고등학교 형상 FTW :이 쉽게 할 수있는 일의

dist = sqrt(pow((x2-x1), 2) + pow((y2-y1), 2)) 

하나 여기 하버 사인 식의 구현은 to SQL Query는 맵을 "타일", 즉 2km x 2km 영역으로 분할하여 타일로 쿼리 한 다음이 수식을 사용하여 결과를 반복 할 수 있습니다.

- (CLLocationDistance)getDistanceFrom:(const CLLocation *)location

당신은 당신의 각 레코드의 위도와 경도를해야하고 정렬이 방법에 의해 반환되는 거리로 :

+0

그러나이 수식을 각 위치 (약 3500 개의 위치가있는 데이터베이스)에 적용 할 수는 없습니다. 그래서 저는 CL에 포함 된 자원 친화적 인 방법이있을 거라고 생각했습니다. – Stefan

+0

이것은 지구가 구형이고 A 지점을 가리키는 직선 측정을 수행하기에 좋은 방법은 아닙니다. –

+0

그는 현재 위치에서 100 피트 이내에있는 것들을 알고 싶어하는데, 나는 구형 왜곡에 대해 걱정할 필요가 없다고 생각합니다 :) –