마커를 기준으로 직선거리를 구하는 방법이 있을까요?

A 좌표에 마커를 찍고 마커를 기준으로 어느방향이든 직선거리 100m, 150m 식으로 거리를 계산해서 해당하는 좌표를 얻고싶습니다. 처음 찍은 마커의 위도, 경도만 있는 상태로 직선거리 몇미터의 위도, 경도를 구할 방법이 있을까요?

간단한 테스트만 했습니다. 오차는 감안하시고…

var length = 100; // 원하는 미터(m) 값
var pixelDist = length / Math.pow(2, map.getLevel() - 3);

var unitVector = [ 1, 0 ]; // 원하는 방향의 단위벡터
var diff = unitVector.map(function(e) { return pixelDist * e });

var point = map.getProjection().containerPointFromCoords( marker.getPosition() );    
point.x += diff[0];
point.y += diff[1];

var target = map.getProjection().coordsFromContainerPoint(point);
1개의 좋아요

감사합니다! 원하는 내용이었습니다!

1개의 좋아요