2014-04-20 4 views
2

그래서 두 점 (lat-lon 쌍) 사이의 거리를 계산해야합니다. 나는 호버 슨 (Haversine) 공식과 Equirectangular 근사에 대해 Movable Type Scripts에서 읽었습니다.Haversine 대 Equirectangular 근사

짧은 거리 (4KM 미만) 만 계산할 것이므로 Equirectangular 공식은 좋은 근사값입니까?

또한

, 나는 MySQL 데이터베이스 in Google Developers documentation에서 위도 - 경도 스토리지에 대해 읽은 그들은이 같은 하버 사인 공식 구현 : 내 마지막 질문은

SELECT id, (3959 * acos(cos(radians(37)) * cos(radians(lat)) * cos(radians(lng) - radians(-122)) + sin(radians(37)) * sin(radians(lat)))) AS distance FROM markers HAVING distance < 25 ORDER BY distance LIMIT 0 , 20; 

를, 포인트를 필터링 사이에 큰 성능 차이가 SQL 쿼리 (예제에서와 같이)와 코드로 그들을 필터링?.

답변

2

훨씬 큰 거리 (영국 내 1000km)에서 haversine v equirectangular를 테스트했을 때 그 차이는 0.1 % 정도였습니다. 따라서 거리가 4km 이하인 경우 최대 정확도가 필요하지 않으면 속도에 대해 등변 투수를 사용할 수 있습니다.