Skip to content
Trang chủ » [Javascript]위도 경도로 두 점 사이의 거리 구하기 2 – Highgarden: Haversine 공식 활용하기

[Javascript]위도 경도로 두 점 사이의 거리 구하기 2 – Highgarden: Haversine 공식 활용하기

[Javascript]위도 경도로 두 점 사이의 거리 구하기 2 – HighGarden

자바스크립트를 사용하여 위도와 경도로 두 지점 사이의 거리를 계산하는 방법을 알아보겠습니다. 이번에는 현재 위치와 다른 네 개의 위치 간 거리를 계산하는 방법을 살펴보겠습니다.

먼저, 현재 위치를 나타내는 currentLat 및 currentLng 변수를 선언합니다. 그리고 각각 다른 위치를 갖는 네 개의 지역 정보를 변수로 선언해 보겠습니다.

“`javascript
const currentLat = 37.5665; // 예시: 서울 강남
const currentLng = 126.9780;

const location1 = {
lat: 37.5663,
lng: 127.0038 // 예시: 서울 종로
};

const location2 = {
lat: 37.5175,
lng: 126.8843 // 예시: 서울 용산
};

const location3 = {
lat: 37.4979,
lng: 127.0276 // 예시: 서울 마포
};

const location4 = {
lat: 37.4020,
lng: 127.1046 // 예시: 서울 강서
};
“`

이제 위도와 경도를 사용하여 두 지점 간 거리를 계산하는 함수를 만들어 보겠습니다. 이 함수는 Haversine 공식을 사용하여 두 지점 간 거리를 구합니다. Haversine 공식은 지구 표면에서 두 지점 간의 거리를 계산하는 데 사용되는 공식입니다.

“`javascript
function calculateDistance(lat1, lon1, lat2, lon2) {
const earthRadius = 6371; // 지구 반지름 (km)
const latRad1 = toRadians(lat1);
const lonRad1 = toRadians(lon1);
const latRad2 = toRadians(lat2);
const lonRad2 = toRadians(lon2);

const latDiff = latRad2 – latRad1;
const lonDiff = lonRad2 – lonRad1;

const a = Math.sin(latDiff / 2) * Math.sin(latDiff / 2) +
Math.cos(latRad1) * Math.cos(latRad2) *
Math.sin(lonDiff / 2) * Math.sin(lonDiff / 2);

const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 – a));
const distance = earthRadius * c; // km 단위 거리

return distance;
}

function toRadians(degrees) {
return degrees * (Math.PI / 180);
}
“`

이제 이 함수를 사용하여 현재 위치와 다른 네 개의 위치 간 거리를 계산해 보겠습니다.

“`javascript
const distance1 = calculateDistance(currentLat, currentLng, location1.lat, location1.lng);
const distance2 = calculateDistance(currentLat, currentLng, location2.lat, location2.lng);
const distance3 = calculateDistance(currentLat, currentLng, location3.lat, location3.lng);
const distance4 = calculateDistance(currentLat, currentLng, location4.lat, location4.lng);

console.log(`현재 위치와 location1 간 거리: ${distance1} km`);
console.log(`현재 위치와 location2 간 거리: ${distance2} km`);
console.log(`현재 위치와 location3 간 거리: ${distance3} km`);
console.log(`현재 위치와 location4 간 거리: ${distance4} km`);
“`

이 코드를 실행하면 현재 위치와 각 위치 간의 거리가 콘솔에 출력됩니다. 이렇게 하면 자바스크립트를 사용하여 위도와 경도로 두 지점 사이의 거리를 쉽게 계산할 수 있습니다.

참고: 이 코드는 Haversine 공식을 사용하여 두 지점 간의 거리를 구합니다. Haversine 공식은 지구 표면에서 두 지점 간의 거리를 계산하는 데 사용되는 공식입니다. 지구는 완벽한 구체가 아니기 때문에 이 공식은 실제 거리와 약간의 차이가 있을 수 있습니다. 더 정확한 거리를 계산하려면 다른 공식을 사용해야 할 수도 있습니다.

여기에서 더 많은 정보를 확인하세요: drrishisingh.com

Categories: 위도 경도 거리 계산: 간단하게 알아보는 방법과 활용 사례

See more: drrishisingh.com/religious