18
OpenGeo Suite 의 의의의의의의 의의 의의 의 의의 가가가가가가가 가가가

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용

Embed Size (px)

DESCRIPTION

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용. 가이아쓰리디 ㈜ 민경일. 1. PostGIS. PostGIS 좌표계 확인. PostGIS 의 좌표계 정 의 테이블확인 PostGIS 를 이용하여 DataBase 생성시 geometry_columns , spatial_ref_sys 테이블 생성 좌표계 관련 테이블 : spatial_ref_sys. PostGIS 좌표계 등록. insert into spatial_ref_sys values( 5181 ,'EPSG' - PowerPoint PPT Presentation

Citation preview

Page 1: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

OpenGeo Suite 의 한국사용자를 위한 설정

및 활용가이아쓰리디㈜ 민경일

Page 2: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

2

1. PostGIS

2012-10-12OpenGeo Suite 의 한국사용자를 위한 설정 및 활용

Page 3: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

3

PostGIS 좌표계 확인• PostGIS 의 좌표계 정의 테이블확인• PostGIS 를 이용하여 DataBase 생성시 geometry_columns, spatial_ref_sys

테이블 생성• 좌표계 관련 테이블 : spatial_ref_sys

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

Page 4: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

4

PostGIS 좌표계 등록• INSERT 구분을 이용하여 좌표계 등록 ( 참고 사이트 : http://osgeo.kr/17)

insert into spatial_ref_sys values(5181,'EPSG',5181 ,'PROJCS["Korea 2000 / Central Belt", GEOGCS["Korea 2000", DATUM["Geocentric datum of Korea", SPHEROID["GRS 1980", 6378137.0, 298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], AUTHORITY["EPSG","6737"]], PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], UNIT["degree", 0.017453292519943295], AXIS["Geodetic longitude", EAST], AXIS["Geodetic latitude", NORTH], AUTHORITY["EPSG","4737"]], PROJECTION["Transverse_Mercator", AUTHORITY["EPSG","9807"]], PARAMETER["central_meridian", 127.0], PARAMETER["latitude_of_origin", 38.0], PARAMETER["scale_factor", 1.0], PARAMETER["false_easting", 200000.0], PARAMETER["false_northing", 500000.0], UNIT["m", 1.0], AXIS["Easting", EAST], AXIS["Northing", NORTH], AUTHORITY["EPSG","5181"]]','+proj=tmerc +lat_0=38 +lon_0=127 +k=1 +x_0=200000 +y_0=500000 +ellps=GRS80 +units=m

+no_defs')

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

Page 5: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

5

PostGIS 좌표계 변환• Spatial Function 을 이용하여 좌표변환

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

Page 6: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

6

2. GeoServer

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

Page 7: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

7

GeoServer 사용자 좌표계 등록

• GeoServer 에서 사용자 정의 좌표계를 사용하기 위한 설정• data_dir/user_projections/epsg.properties

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

Page 8: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

8

SQL View 를 이용한 Layer 등록

1. GeoServer 좌측메뉴의 Layers 선택 2. Add a new resource 선택3. PostGIS 가 등록된 Store 를 선택한 후 Configure new SQL view…

선택

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

Page 9: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

9

SQL View 를 이용한 Layer 등록

1. 속성값으로 사용할 컬럼과 geometry 컬럼이 포함되도로 select 구문 작성

2. Atrributes 부분의 Guess geometry type and srid 을 체크 한 후 Refesh 를 선택

3. 위의 view 생성구분에서 spatial fundtion 을 이용하여 좌표변환한 좌표가 SRID 로 등록되는 것을 확인

4. 저장

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

Page 10: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

10

SQL View 를 이용한 Layer 등록

1. Layer Edit 화면의 좌표계 설정 확인

2. Edit sql view 버튼을 선택하면 sql view 구문을 수정할 수 있음

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

Page 11: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

11

수집된 데이터의 좌표계와 클라이언트가 사용하는 좌표계가

다를 경우

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

1. DB 에 클라이언트가 사용하는 좌표계로 변환된 데이터를 저장 후 사용

2. DB 에서 클라이언트가 사용하는 좌표계로 변환된 geometry 를 가진 View Table 을 생성하여 사용

3. GeoServer 에서 SQL View 를 사용하여 레이어를 등록 후 사용

4. 사용자가 GeoServer 에 원하는 좌표계를 요청하여 GeoServer 에서 좌표변환 후 사용

Page 12: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

12

GeoServer Fonts

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

• GeoServer 의 Server Status 페이지의 Full list of available fonts 선택

Page 13: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

13

GeoServer Fonts

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

• GeoServer 에서 사용할 수 있는 Fonts 리스트

Page 14: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

14

3. OpenLayers

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

Page 15: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

15

OpenLayers 좌표계 등록

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

• Proj4js 를 이용한 좌표계 설정

• Download => http://trac.osgeo.org/proj4js/wiki/Download

• 웹페지이에 라이브러리 등록

• Javascript 코드에 추가

<script type="text/javascript" src="../js/proj4js-compressed.js"></script>

Proj4js.defs["EPSG:7188"] = '+proj=lcc +lat_1=30 +lat_2=60 +Elat_0=38 +lon_0=126 +x_0=0 +y_0=0 +ellps=WGS84 +units=m +no_defs';

var EPGS_7188 = new OpenLayers.Projection("EPSG:7188");

Page 16: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

16

OpenLayers 좌표 변환

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

// pointList Object 는 X,Y 좌표와 Val, ID 값을 가지고 있다고 가정 for(var i in pointList){

var point= pointList[i];var pointGeometry = new OpenLayers.Geometry.Point(point.X,point.Y).transform(

new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:7188")

);

var pointFeature = new OpenLayers.Feature.Vector(pointGeometry , {value : point.Val} );pointFeature.id = ‘point.ID;pointFeatures.push(pointFeature);

} VecterLayer.addFeatures(pointFeatures);

• 포인트 좌표를 사용자가 지정한 좌표로 변환하여 Layer 에 등록 하는 Sample 코드

Page 17: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

17

Openlayers 로 Daum / Naver 지도사용

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12

• Openlayers 의 OpenLayers.Layer.XYZ 를 이용• Tile image 의 위치를 x,y,z 값 즉 row, column, level 속성을 이용 하여 이미지를 요청

Page 18: OpenGeo  Suite  의  한국사용자를  위한 설정 및 활용

18

감사합니다 .

OpenGeo Suite 의 한국사용자를 위한 설정 및 활용 2012-10-12