맵 서버 작동으로
지난 시간에 우리는 몇 가지 기준 이유에 대해 이야기 맵 서버 그리고 설치의 기초. 이제 치아파스 친구들의지도와 함께 연습에서 그 작동을 살펴 보겠습니다.
마운트 된 곳
Apache가 설치되면 MapServer의 기본 게시 디렉토리는 OSGeo4W라는 C : /
내부에는 설치된 항목에 따라 애플리케이션이있는 폴더가 다르지만 게시 용 폴더는 Apache 내부에 있어야합니다. 이 경우 gis라는 폴더입니다.
- 그러면 내부에는 데이터 폴더에 레이어, 오쏘 토토 등이 있습니다.
- etc 폴더에는 .ttf 확장자를 가진 레이블에 사용되는 트루 타입 글꼴이 있습니다. 또한 여기에 그것들을 들어 올리는 txt 파일과 기호를 정의하는 다른 파일이 있습니다.
- 마지막으로 httdocs 폴더에서 서비스를 제공하는 웹 페이지로 이동합니다.
웹 사이트
이 예에서는 지난번에 표시된 사례를 사용합니다. 기본적으로 phtml 확장으로 리디렉션되는 색인 파일이 포함되어 있으며, 이는 차례로 php 및지도 위에 빌드 된 함수를 발생시킵니다. 폴더에는 페이지에서 링크 된 이미지가 포함됩니다.
살펴보면 phtml은 테이블에서 빌드 된 셸일 뿐이며 mapscript / php 함수를 호출합니다. 다음을 사용하여 일어나야합니다.
http://localhost/gis/gispalenque.phtml
결과는 다음과 같습니다.
- 기능을 중심으로 GMapDrawMap (),
- 오른쪽에있는 전화는 키맵 GMapDrawKeyMap (),
- 아래 척도 막대 GMapDrawScaleBar (),
- 배포 기능의 경우 목록 상자에 대한 조건 if (! IsHtmlMode ()) echo " 결정을 내리고: ZOOM_IN, ZOOM_OUT, RECENTER, QUERY_POINT.
이미 실행 중이면 배포 모습은 다음과 같습니다.
.map 파일
Mapserver 발행물의 조합은 Apache가 제기 한 것으로서 PHP를 통해 지도 책 그리고 그것은 그 껍질을 통해 나옵니다. 그러나 대부분의 과학은 .map 파일에 있으며 동일한 확장자를 가진 Mapinfo, Manifold 또는 Mobile Mapper Office에서 생성 한 것과 혼동하지 마십시오.
이러한 .map은 스크립트 형식의 맵을 포함하는 텍스트 파일입니다. 이는 Quantum GIS와 같은 데스크톱 프로그램으로 생성 할 수 있습니다. 메인 맵에 하나, 키맵에 하나, OGC wms 및 wfs 서비스에 대해 두 개가 있음을 알 수 있습니다. 맵 스크립트가 어떻게 작동하는지 살펴 보겠습니다.
MAP
이름 PALENQUE_DEMO
STATUS ON
크기 600 450
SYMBOLSET ../etc/symbols.txt
604299 1933386 610503 1939300 # 팔렌 큐 전체지도 #
#EXTENT 605786 1935102 608000 1938800 #SOLO 섹터 01
단위계
SHAPEPATH "../data"
투명성 켜기
IMAGECOLOR 255 255 255
FONTSET ../etc/fonts.txt
- MAP는 스크립트를 시작한다는 것을 나타냅니다.
- STATUS는 기본지도가 켜져 있는지 여부를 나타냅니다.
- SIZE는 디스플레이의 크기입니다.
- 심볼릭은 심볼의 경로를 보여줍니다.
- EXTENT는 표시 좌표입니다. # 기호는 주석을 만드는 데 사용됩니다.
- 유닛 용 UNITS
- SHAPEPATH, 레이어가있는 경로
- 결국 END 명령으로 끝납니다.
내부에서 코드는 명령 줄에서 시작하여 END로 끝납니다 (예 : 최소 및 최대 배율). 임시 이미지 디렉토리 :
WEB
MINSCALE 2000000
MAXSCALE 50000000이미지 경로 "C : \ OSGeo4W / tmp / ms_tmp /"
IMAGEURL "/ ms_tmp /"
END
눈금 막대 :
SCALEBAR
IMAGECOLOR 255 255 255
LABEL
색상 0 0 0
SMALL SIZE
END
크기 300 5
색상 255 255 255
배경색 0 0 0
괄호 안의 0 0 0
UNITS 킬로미터
구간 3
STATUS ON
END
래스터 레이어 : 데이터 폴더에있는 tiff에서 "Orthophoto"로 목록에 설명과 함께 백그라운드로 이동합니다.
LAYER
NAME orthophoto
메타 데이터
"DESCRIPTION" "OrtoFoto"
END
타입 래스터
상태 꺼짐
DATA "C : \ OSGeo4W / apps / gis / data / ortofotoGral.tif"
#OFFSITE 0 0 0
END
다각형의 shp 레이어는 기준에 따라 thematized, 산포 글꼴 레이블, 크기 6, 5 버퍼의 검정색 및 흰색 가장자리가있는 HTML 템플릿에서 일부 데이터 리프팅 ...
LAYER
NAME sector02Zone
유형 폴리곤
상태 꺼짐
불투명도 50
범위 607852 1935706 610804 1938807 메타 데이터
"DESCRIPTION" "가치 부문 별 테마 02"
"RESULT_FIELDS" "MsLink Cve_Mz Cve_Pred 소품 영역 둘레 값"
END
DATA PALENQUE_SECTOR01
TEMPLATE "ttt_query.html"
공차 5
# 토대 단위 픽셀
LABELITEM "VALUE"
CLASSITEM "VALUE"
LABELCACHE ON
수업
SYMBOL 1
색상 128 128 128
괄호 안의 0 0 0
이름 "ZonaNULL"
표현식 ([VALUE] = 0)
LABEL
각도 자동
색상 0 0 0
FONT sans
TYPE TRUETYPE
POSITION cc
부분 거짓
버퍼 5
SIZE의 6
괄호 안의 200 200 200
END
END #class 0 값
수업
SYMBOL 3
색상 255 128 128
#COLOR -1 -1 -1 #SIN FILLING
.... 그래서 가까이에
END
END #Class Value
END # 레이어
결론적으로
따라서 mapserver로 작업하는 것은 매우 간단하지만 모든 것이 .map에 있기 때문에 대규모 작업에 대해 복잡하고 매우 제한됩니다. 가장 큰 단점은 테마에서 각 색상을 정의하는 등 모든 작업이 도보로 수행된다는 것입니다. 이러한 이유로 CartoWeb과 같은 도구가 발생합니다.이 도구는 Mapserver에서 작동하지만이 기본 버전을 다음과 같이 보이게하는 특성을 가진 내장 플러그인 및 예제를 제공합니다. 그만큼 먼저 읽어보기:
- 별도로 프레임을 새로 고치려면 AJAX로 별도의 프레임으로 작업하십시오.
- 매개 변수 분석 가능한 기준에 따라 스크립트가 .map을 다시 작성하는 한 코드를 파싱합니다.
- 플래시 레이어처럼 새로 고침없이 동적 인 백 스크롤
- 온라인 벡터 편집, 즉각적인 캐시 쓰기
- 벡터 형태로 레이어 다운로드
- Google 어스로 내보내기
- 배포에서 PDF 생성
다음으로 CartoWeb을 살펴 보겠습니다. 여기서 주요 예제에 대한 링크를 남깁니다.
표준 phtml 템플릿 출력을 갖는 방법이 있습니다. 감사합니다.
안녕하세요
다음과 같이 .map에서 레이어를 호출하려고합니다.
LAYER
이름 test_houses
유형 포인트
연결 유형 OGR
연결 #”virtual.ovf”
"
XXXXX
실행 .....
eess_id
wkbPoint
WGS84
"
내 문제는 DSN 서비스가 문제를 일으키고 있다는 것입니다. GetCapabilities를 요청할 때 데이터베이스 암호를 반환합니다... 암호 "제공"을 피하기 위해 파일을 호출할 수 있습니까 아니면 DSN 오류입니까???? 감사 해요!
MapServer는 대중적인 오픈 소스 프로젝트로, 인터넷을 통해 동적 공간 맵을 표시하는 것이 목적입니다. 탑재 된 드라이브는 NTFS 파일 시스템을 사용하는 볼륨의 빈 폴더에 매핑되는 드라이브입니다. 탑재 된 드라이브는 다른 드라이브처럼 작동하지만 드라이브 문자 대신 드라이브 경로가 할당됩니다.