문의 게시판
주소기반산업지원서비스 문의글이나, 필요한정보 신청등 API, DB, 전자지도를 이용한 기술개발 및 활용팁 다양한 글을 올려주세요.
Tech&Tips
질문proj4j를 활용한 경위도 좌표전환 방법
- 9088님
- 댓글 3
- 조회수 8105
- 작성일 2022-06-09
proj4j를 활용한 경위도 좌표전환 방법을 공유합니다.
※ proj4j는 오픈소스이며 해당사에트에서 제공해드리는 소스가 아님을 알려드리고,
좌표를 변환하는것은 수식으로 계산을 다시 하는것이기 때문에 수식 계산중에 x,y 오차가 발생 할 수 있습니다.
[[[[[[[[[[[[[ web에서 전환하는 방법 ]]]]]]]]]]]]]]
****************************************
proj4.defs['EPSG:5179'] 〓 '+proj〓tmerc +lat_0〓38 +lon_0〓127.5 +k〓0.9996 +x_0〓1000000 +y_0〓2000000 +ellps〓GRS80 +units〓m +no_defs';//제공되는 좌표
var grs80 〓 proj4.Proj(proj4.defs['EPSG:5179'])
var wgs84 〓 proj4.Proj(proj4.defs['EPSG:4326']); //경위도
var p 〓 proj4.Point( 945959.0381341814 , 1953851.7348996028 );//한국지역정보개발원 좌표
p 〓 proj4.transform( grs80, wgs84, p);
d0cument .write(p.x + ' ' + p.y);
****************************************
출력결과
wgs84 : 126.88793748501445 37.582468731587305
[[[[[[[[[[[[[ java application에서 전환하는 방법 ]]]]]]]]]]]]]]
****************************************
double x 〓 Double.parseDouble( point[0] );//x좌표
double y 〓 Double.parseDouble( point[1] );//y좌표
CRSFactory factory 〓 new CRSFactory();
CoordinateReferenceSystem srcCrs 〓 factory.createFromName('EPSG:5179');//현재 좌표
CoordinateReferenceSystem dstCrs 〓 factory.createFromName('EPSG:4326');//변경할 좌표
BasicCoordinateTransform transform 〓 new BasicCoordinateTransform(srcCrs, dstCrs);
ProjCoordinate srcCoord 〓 new ProjCoordinate(x, y);
ProjCoordinate dstCoord 〓 new ProjCoordinate();
transform.transform(srcCoord, dstCoord);//좌표변환
System.out.println(dstCoord.x + ',' + dstCoord.y);//변환된 좌표
****************************************
댓글 3건
- djjs
- 2023-06-05
정말감사합니다. https://in.aquamico.com/
- 낙은혜
- 2022-07-15
https://blckchainetc.tistory.com/400
node.js 쓰는 분들 참고하세요!
- 최준영
- 2020-06-27
정말감사합니다! 엄청난 삽질 하던중 정말 도움이 되는 글을 발견했네요 감사합니다!