위토즈 - 개발자프로그램판매공간

정보공유

[PHP] WGS84 두지점 간 거리 계산식.

 

PHP

 

function getDistance($lat1, $lng1, $lat2, $lng2)

{

    $earth_radius = 6371;

    $dLat = deg2rad($lat2 - $lat1);

    $dLon = deg2rad($lng2 - $lng1);

    $a = sin($dLat/2) * sin($dLat/2) + cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * sin($dLon/2) * sin($dLon/2);

    $c = 2 * asin(sqrt($a));

    $d = $earth_radius * $c;

    return $d;

}

 

 

 

MYSQL

 

CREATE FUNCTION distance_between (from_lat DECIMAL(6, 3), from_lng DECIMAL(6, 3), to_lat DECIMAL(6, 3), to_lng DECIMAL(6, 3)) RETURNS DECIMAL(11, 3)

    RETURN 6371 * 2 * ATAN2(SQRT(POW(SIN(RADIANS(to_lat - from_lat)/2), 2) + POW(SIN(RADIANS(to_lng - from_lng)/2), 2) * COS(RADIANS(from_lat)) * COS(RADIANS(to_lat))), SQRT(1 - POW(SIN(RADIANS(to_lat - from_lat)/2), 2) + POW(SIN(RADIANS(to_lng - from_lng)/2), 2) * COS(RADIANS(from_lat)) * COS(RADIANS(to_lat))));

 

 

 

 

 

JAVASCRIPT

 

function getDistanceFromLatLonInKm(lat1,lng1,lat2,lng2) {

    function deg2rad(deg) {

        return deg * (Math.PI/180)

    }

 

    var R = 6371; // Radius of the earth in km

    var dLat = deg2rad(lat2-lat1);  // deg2rad below

    var dLon = deg2rad(lng2-lng1);

    var a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(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; // Distance in km

    return d;

}

 

 

 

 

 

정보공유
Total 74건 2 페이지
번호 제목 글쓴이 날짜 조회
59 7.3 버전 주의사항 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 05-18 14291
58 국가별 국가코드 와 전화번호 코드 배열 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-16 21264
57 번호 형식 정규식 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-02 17228
56 엑셀파일에서 문자를 복사한뒤 붙여넣기 할경우 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12-06 23684
55 원하는 날짜에 해당하는 주간날짜 구하기. (월~일) 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 09-06 25581
54 단어변환 참고. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-21 22719
53 주민번호로, 생년월일로 나이계산 함수 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-02 32335
52 지난주 날짜 구하기 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 05-02 25550
51 PHP 코드최적화 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-20 36970
50 의외로 while 문에서 break 사용법을 모르는 사람들이 많네요. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-11 23593
49 문서경로 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 03-27 24278
48 유투브 썸네일 생성을 위한 코드값 추출 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 03-14 27871
47 카텍좌표값 을 WGS84로 변환하기. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 07-11 48889
열람중 WGS84 두지점 간 거리 계산식. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 07-11 29004
45 get_magic_quotes_gpc 가 on 으로 되어있는경우 해결법. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-21 32057