-
좌표 최단거리 검색IT, 프로그래밍/Javascript 2018. 8. 3. 22:34
두 좌표간의 직선 거리를 구하기 위한 함수이며, 지도 API 등에 활용하면 될 듯 하다.
사용해 본 결과 상당히 정확했음.
1) prototype 사용
1234567891011121314151617function calculateDistance(lat1, lon1, lat2, lon2) {var R = 6371; // kmvar dLat = (lat2-lat1).toRad();var dLon = (lon2-lon1).toRad();var a = Math.sin(dLat/2) * Math.sin(dLat/2) +Math.cos(lat1.toRad()) * Math.cos(lat2.toRad()) *Math.sin(dLon/2) * Math.sin(dLon/2);var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));var d = R * c;return d;}Number.prototype.toRad = function() {return this * Math.PI / 180;}cs 2) prototype 미사용
12345678910111213141516function toRad(value){return value * Math.PI / 180;}function calculateDistance(lat1, lon1, lat2, lon2) {var R = 6371; // kmvar dLat = toRad(lat2-lat1);var dLon = toRad(lon2-lon1);var a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.cos(toRad(lat1)) * Math.cos(toRad(lat2)) * Math.sin(dLon/2) * Math.sin(dLon/2);var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));var d = R * c;return d;}cs 출처 : https://stackoverflow.com/questions/5260423/torad-javascript-function-throwing-error/10459202
http://www.movable-type.co.uk/scripts/latlong.html
'IT, 프로그래밍 > Javascript' 카테고리의 다른 글
Jquery deep copy 메소드 (0) 2018.11.29 Jquery DOM clone (0) 2018.11.07 Jquery 이벤트 요소 가지고 있는지 확인 (0) 2018.11.07 Jquery 특정 요소를 포함하고 있는지 확인하기 (if문) (0) 2018.08.12 img 태그에서 경로 뽑아내기 (0) 2018.08.10