정부, 공공기관이 생산한 대부분의 공간정보는 생산주체 및 제작시기에 따라 적용된 좌표계에 차이가 존재한다. 개별적으로 운영되는 정보시스템에서 이 들 공간정보의 사용은 큰 문제가 없지만, 서로 다른 공간정보와의 매쉬업, 융합 등을 위해 필수적으로 서비스 좌표계를 통일하는 것이 어플리케이션의 관리 편의성, 서비스 응답 성능 개선, 공개SW의 효율적 사용을 위해 요구된다.
GIS 기반 서버로써 지오서버를 사용한다면 서비스 타일을 생성하는 경우 EPSG:4326, EPSG:3857(EPSG:900913)만을 지원한다.
따라서 본 글을 통해 PostGIS에 등록된 공간테이블을 EPSG:4326좌표계를 가지도록 변환하는 과정을 설명한다.
1. Table Copy
사용하려는 데이터의 좌표계는 EPSG:5181이고 위내용과 같이 지오서버를 사용하여 서비스 타일을 생성하기 위해 좌표계를 변경해야 한다.
이를 위해 기존 데이터를 복사하는 작업을 진행한다.
Query
CREATE TABLE NEW_TABLE AS SELECT * FROM Z_NGII_UNSPT;
2. 좌표계 정보 업데이트
해당 테이블의 공간정보컬럼의 타입정보를 확인해 보면
geometry(MultiPoint,5179) 으로 되어 있다. 따라서 해당 좌표계정보 변경 쿼리를 아래와 같이 실행한다.
Query
ALTER TABLE NEW_TABLE
ALTER COLUMN geom TYPE geometry(MultiPoint,4326) USING ST_Transform(ST_SetSRID(geom,5179), 4326);
위의 쿼리 내용은 https://postgis.net/2013/08/30/tip_ST_Set_or_Transform/ 에서 확인 할 수 있다.
최종적으로 해당 좌표가 변경된 것을 알 수 있다.
EPSG:5179 EPSG:4326
Query
SELECT ST_ASText(GEOM) from NEW_TABLE;
'꿀팁 - PostGIS' 카테고리의 다른 글
PostGIS 에서 Geometry 오류 수정 (3) | 2019.03.26 |
---|---|
수치지형도 등고선을 이용한 DEM 제작 방법 (2) | 2019.03.22 |
PostGIS에서 Hausdorff 거리를 이용하여 건물통합 건물과 도로명주소 건물 비교 (0) | 2019.03.13 |
PostGIS에서 Voronoi Daiagram을 이용한 경계 분할 (0) | 2019.03.12 |
Postgresql 좌표계 등록 및 한국 EPSG 코드 계수 값에 대하여 (1) | 2018.10.24 |