MapServer 사용 노트 (1)

앞의 테스트 에서 저 희 는 shape 파일 을 지도 데이터 소스 로 사용 합 니 다. 다음은 Oracle Spatial 공간 데이터 베이스 에서 지리 데 이 터 를 읽 을 것 입 니 다.mapserver 는 Oacle 공간 데이터 베 이 스 를 연결 하 는 두 가지 방식 을 제공 합 니 다. native Oacle spatial 과 ogr.설치 패 키 지 는 native Oacle spatial 을 지원 하 는 바 이 너 리 파일 을 제공 합 니 다. ogr 방식 은 자체 적 으로 소스 코드 를 컴 파일 해 야 합 니 다.기 존 프로젝트 의 Oracle 10.2.0.3 데이터 베 이 스 를 빌 리 고 MapServer 는 ms4w 를 사용 합 니 다.2.3.1 패 키 지 를 컴 파일 했 고 지도 서버 에 Oracle 10.2 클 라 이언 트 를 설치 하여 로 컬 네트워크 설정 을 하고 연결 이 정상 적 인 지 테스트 합 니 다.Apache MS4W 웹 서버 서 비 스 를 닫 고 \ ms4w \ \ Apache \ \ cgi - bin \ \ ignored - libmap \ \ oracle11g 디 렉 터 리 에 들 어가 서 libmap. dll 을 복사 해서 \ ms4w \ Apache \ \ cgi - bin 디 렉 터 리 에 붙 여 넣 고 기 존 파일 을 바 꾸 고 Apache MS4W 웹 서버 서 비 스 를 시작 합 니 다.Mapfile 파일 을 새로 만 듭 니 다. LAYER 부분 은 다음 과 같 습 니 다. LAYER    NAME "road"     TYPE LINE     CONNECTION "geouser/123456@geodb"\ # 데이터베이스 연결 문자열    CONNECTIONTYPE oraclespatial      #연결 형식 은 Oacle spatial 입 니 다.    DATA "GEOLOC FROM NAV_ROAD1 USING SRID 4326"  #여기 GEOLOC 는 GEOMETRY 필드 이름, NAVROAD 1 은 시계 이름 입 니 다.    PROJECTION        "init = epsg: 4326" \ # SRS 인 코딩 을 지정 해 야 합 니 다.    END     DUMP TRUE     CLASS         STYLE             COLOR 0 128 128         END     END END DATA 라벨 은 다음 과 같은 형식 을 사용 합 니 다. "[geom column] FROM [table] | [(SELECT [...] FROM [table] | [Spatial Operator] [WHERE condition])] [USING [UNIQUE column] | [SRID \ # srid] | [FUNCTION] | [VERSION \ # version]]]"
  :   FROM         ,        FROM      ,    







GEOLOC FROM (SELECT MI_PRINX AS OID, NAME AS ONAME, COLOR AS COLOR, GEOLOC AS GEOLOC FROM NAV_ROAD1) USING SRID 4326







LABEL STYLE            SELECT    。















  openlayers     







var ms_layer = new OpenLayers.Layer.WMS(








                "Test Map",                 "/cgi-bin/mapserv.exe",                 {                        layers: 'road',                     map: 'I:/cn_data/c2.map',                     format: 'png'                 },                 {                     reproject: false,                     'numZoomLevels': 20,                     gutter: 15,                     buffer: 0                 }             ); 브 라 우 저 를 열 고 효 과 를 봅 니 다. 레이 블 에 레이 블 추가 (Label)지도 에 글 자 를 표시 하 는 것 은 필연적으로 글꼴 과 관련 이 있 습 니 다. MapServer 는 운영 체제 와 무관 한 디자인 을 사용 하여 현재 운영 체제 에 어떤 글꼴 이 설치 되 어 있 는 지 자동 으로 알 수 없습니다. 글꼴 집합 FONTSET 파일 을 수 동 으로 만들어 야 합 니 다. 이 파일 의 형식 은 매우 간단 합 니 다. 줄 마다 글꼴 을 설정 합 니 다. 왼쪽 은 글꼴 이름 (자유 이름 가능) 이 고 오른쪽 은 글꼴 파일 의 경로 입 니 다.(절대 경 로 를 사용 하 십시오) 다음 과 같 습 니 다: arial   C:\WINDOWS\Fonts\arial.ttf sans    C: \ WINDOWS \ Fonts \ SIMSUN. TTC 는 이 내용 을 텍스트 파일 로 저장 합 니 다. 예 를 들 어 fonts. txt 로 저장 하고 Mapfile 의 Map 탭 에 FONTSET fonts. txt \ # 글꼴 집합 파일 을 추가 합 니 다. 경 로 를 포함 하여 Mapfile 의 Layer 탭 에 LABELITEM "NAME" 줄 을 추가 할 수 있 습 니 다.  #레이 어의 CLASS 탭 에 레이 블 에 사용 할 필드 이름 을 표시 합 니 다 LABEL    COLOR  0 0 0     OUTLINECOLOR 255 255 255     FONT "sans"  #여기 sans 는 송 체 SIMSUN. TTC 에 대응 합 니 다.    TYPE truetype     SIZE 6     POSITION AUTO     PARTIALS FALSE     ENCODING GBK \ # 이 곳 은 문자 인 코딩 입 니 다. 이 값 을 설정 하지 않 으 면 중국어 가 올 바 르 게 표시 되 지 않 습 니 다. 중국어 Windows 시스템 의 경우 운영 체제 의 기본 인 코딩 은 GBK 입 니 다. END 주의: ms4w 3.0beta 11 은 개발 버 전 으로 shape 파일 데이터 원본 설정 label 탭 을 지원 하 며 Oacle spatial 데이터 원본 설정 label 탭 을 지원 하지 않 습 니 다. Oacle 공간 표 의 속성 을 읽 기 위해 생 성 됩 니 다.태그, 우 리 는 ms4w 2.3.1 정식 버 전 으로 바 꾸 어 시스템 이 정상적으로 작 동 합 니 다. 동적 스타일 (STYLE) 을 사용 하여 실제 응용 프로그램 에서 지도 렌 더 링 에 대한 요구 가 많 습 니 다. MapServer 는 동적 설정 STYLE 를 지원 하고 Mapfile 파일 LAYER 의 STYLE 를 수정 합 니 다. 예 를 들 어 STYLE    COLOR [COLOR] END 각 도로 의 색상 은 도로 표 의 속성 필드 COLOR 에 의 해 결 정 됩 니 다. 이와 유사 하 게 데이터베이스 에서 SYMBOL, SIZE, ANGLE 등 라벨 을 채 울 수 있 습 니 다. 알림: MapServer 의 색상 코드 는 [r] [g] [b] 10 진 형식 을 사용 할 수 있 고 웹 개발 에서 자주 사용 하 는 RRGGBB 16 진 형식 도 사용 할 수 있 습 니 다. 예 를 들 어 \ # FF 0000

좋은 웹페이지 즐겨찾기