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); 

document .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);//변환된 좌표 
****************************************

 

- 자료 출처 : 주소기반산업지원서비스

'JavaScript' 카테고리의 다른 글

자바스크립트 새로운 코드 방식  (0) 2022.12.27
자바스크립트 새로운 코드 방식  (0) 2022.12.25

+ Recent posts