免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
基于MAPSERVER的校園電子地圖WEBGIS系統(tǒng)-此地信人 - 新浪BLOG
 

概述  本系統(tǒng)是做一個(gè)簡(jiǎn)單的校園WEBGIS導(dǎo)航系統(tǒng),用戶主要是西大校園內(nèi)用戶!考慮到MAPSERVER的簡(jiǎn)單易用,和開源等特點(diǎn),我們選擇用MAPSERVER 作為我們這個(gè)系統(tǒng)的GIS服務(wù)器,APACH作為WEB服務(wù)器,來構(gòu)件WEBGIS所甬道的服務(wù)器。
項(xiàng)目定位:    由于初次涉及到WEBGIS方面的知識(shí)! 以前學(xué)的WEB方面的知識(shí)也比較初級(jí)!定位在能做出基本功能!對(duì)于比較難的功能就盡力去做。主要的目的還是學(xué)習(xí)為主,了解WEBGIS的工作原理、應(yīng)用的機(jī)制和實(shí)現(xiàn)方法
需求分析時(shí)候的總目標(biāo):一般電子地圖功能:包括縮放、自由縮放、漫游、全圖顯示
用戶主要利用地物查詢功能,進(jìn)行導(dǎo)航,包括一般電子地圖的瀏覽、查詢功能,可根據(jù)查詢條件進(jìn)行查詢,如查詢八教位置,可以在全地圖上顯示八教位置,并在左邊顯示八教圖片和相關(guān)信息,測(cè)量?jī)牲c(diǎn)間距離功能:?jiǎn)螕羲?jīng)點(diǎn),雙擊顯示距離
需求分析的完成情況
  實(shí)現(xiàn)了縮放、自由縮放、漫游、全圖顯示這些基本功能
  實(shí)現(xiàn)了點(diǎn)擊查詢和屬性查詢
  新增加了圖例和圖層控制
  未實(shí)現(xiàn)路徑查詢。
  未實(shí)現(xiàn)測(cè)量?jī)牲c(diǎn)距離。
  未實(shí)現(xiàn)多媒體連接。
  未完成的原因分析
  未實(shí)現(xiàn)路徑查詢,主要做這個(gè)路徑查詢和緩沖區(qū)分析需要對(duì)腳本語言很熟悉。
  未實(shí)現(xiàn)測(cè)量?jī)牲c(diǎn)距離,在教材里面沒有找到MAPSERVER的相關(guān)功能
  未實(shí)現(xiàn)多媒體連接,也是網(wǎng)頁設(shè)計(jì)方面能力不夠
服務(wù)器配置:
由于我們剛剛接觸到WEBGIS和APACH服務(wù)器的配置很煩瑣,我們選用的是MS4W(MAPSERVER FOR WINDOW)壓縮包,里面用批處理文件來進(jìn)行了的服務(wù)器的配置和一些參數(shù)的設(shè)置,一般將MS4W解壓到D盤的根目錄,然后依次點(diǎn)擊D:\ms4w里的setenv.bat apach_install.bat就安裝好了WEBGIS的服務(wù)器APACH 和MAPSERVER!


組員工作情況:
大家都盡力去做好自己的工作,并且大家相互幫助,遇到問題一起探討,對(duì)于不同意見的地方大家協(xié)商解決,共同完成了該項(xiàng)目。

MAPSERVER的使用:
MAPSERVER是使用CGI(通用網(wǎng)關(guān)接口)的一個(gè)開源的GIS服務(wù)器!MapServer 能夠創(chuàng)建一張圖片到本地的文件夾里面,然后你可以通過WEB BROWSE如IE,瀏覽到生成的圖片,不需要編輯網(wǎng)頁就可以直接生成可以在瀏覽器瀏覽的圖片,生成什么樣的圖片,圖片里面有些什么內(nèi)容甚至各個(gè)圖層的關(guān)系投影比例尺,這些所有的一切,怎么樣來讓MAPSERVER知道呢?那就要編寫一個(gè).MAP文件!.MAP就象是一個(gè)中間人,他使得使用者能夠很好的讓MAPSERVER去如何工作,產(chǎn)生什么樣的圖片等。宏觀上就很好的控制和管理各個(gè)圖層要素!下面是英文的原文描述.MAP文件更為準(zhǔn)確the mapfile is MapServer's basic configuration mechanism. The mapfile is made up of "objects" and each object can have keywords or other objects. It has a hierarchical structure such that some objects fall under other objects... on top of this hierarchy is the MAP object, all other objects belong to it. Then there are objects like the PROJECTION object which can belong to the MAP object or to the LAYER object (which in turn belongs to the MAP object). Each object begins with the object name and ends with "END".

既然.MAP文件那么重要,那又如何來具體編寫.MAP呢?其實(shí)他就想一般的文本文件,只是擴(kuò)展名為.map而已!所以我們打開WINDOWS自帶的記事本就行了!現(xiàn)在我們就可以寫入具體內(nèi)容了!比如下面的例子,只有一個(gè)圖層的簡(jiǎn)單例子

MAP
  IMAGETYPE PNG
 EXTENT 201621.496941 -294488.285333 1425518.020722 498254.511514
  SIZE 400 300
  SHAPEPATH "data"
  IMAGECOLOR 255 255 255
  PROJECTION
    "proj=laea"
    "ellps=clrk66"
    "lat_0=45"
    "lon_0=-100"
  # Alternatively, you can specify an EPSG code.
  # "init=epsg:2163"
  END
  # Start of LAYER DEFINITIONS
  LAYER # States polygon layer begins here
    NAME states
    DATA states_ugl
   STATUS DEFAULT
    TYPE POLYGON
    PROJECTION
      "init=epsg:4269"
    END
    CLASS
      COLOR 232 232 232
      OUTLINECOLOR 32 32 32
   END
  END # States polygon layer ends here
  # End of LAYER DEFINITIONS -------------------------------
END # end of map file/object

我們來具體的講哈每一句話的意思,第一句MAP,這是說這個(gè)文件從這里開始,到最后一個(gè)END結(jié)束。第二句IMAGETYPE PNG。這是告訴MAPSERVER輸出的圖片是PNG格式的,這種格式是壓縮比較大的一個(gè)圖片,在網(wǎng)絡(luò)上大量使用!當(dāng)然你也可以將PNG換成我們熟悉的gif甚至jpg。第三句EXTENT 201621.496941 -294488.285333 1425518.020722 498254.511514,這是告訴MAPSERVER我們看到的地圖范圍,四個(gè)點(diǎn)分別是矩形筐的最小的XY值和最大XY值,第四句SIZE 400 300,是確定輸出圖片的大小400*300相素;第五句SHAPEPATH "data"指SHP數(shù)據(jù)文件的相對(duì)地址,第六句IMAGECOLOR 255 255 255是指輸出地圖的背景色白色,第七句PROJECTION

    "proj=laea"
    "ellps=clrk66"
    "lat_0=45"
    "lon_0=-100"
  # Alternatively, you can specify an EPSG code.
  # "init=epsg:2163"
END

是定義投影系統(tǒng)的,以END字符結(jié)尾,“#”后面的文字表示注解,MAPSERVER不會(huì)執(zhí)行他們。第八句

LAYER # States polygon layer begins here
    NAME states
    DATA states_ugl
    STATUS DEFAULT
    TYPE POLYGON
    PROJECTION
      "init=epsg:4269"
    END
    CLASS
      COLOR 232 232 232
      OUTLINECOLOR 32 32 32
    END
  END # States polygon layer ends here

是定義一個(gè)圖層,圖層一LAYER開始END結(jié)束。NAME后面的為這個(gè)圖層起的名字,以后設(shè)置這個(gè)圖層的各種性質(zhì),如可見,是否作為查詢層是都要用這個(gè)名稱來使用這個(gè)圖層。DATA后面跟的是這個(gè)圖層的SHP文件,STATUS DEFAULT他的狀態(tài)是一直都是顯示的。TYPE POLYGON說明他是一個(gè)面狀圖層,PROJECTION

      "init=epsg:4269"
    END

是為這個(gè)圖層定義一個(gè)投影,以END結(jié)束,CLASS
      COLOR 232 232 232
      OUTLINECOLOR 32 32 32
END
是為這個(gè)圖層定義顏色COLOR是指填充色,OUTLINECOLOR是指邊界的顏色。以END結(jié)束。后面的END是圖層的解釋標(biāo)志,最后是整個(gè)MAP文件的解釋的標(biāo)準(zhǔn)END!這樣一個(gè)簡(jiǎn)單的MAPFILE就做好了!我們只需要把他保存假使保存在C:\FIRS.MAP當(dāng)然你的DATA數(shù)據(jù)也要保存在一起(前面已經(jīng)說了我們用的是相對(duì)路徑,然后在IE瀏覽器里輸入HTTP://LOCALHOST/CHI-BIN/MAPSERVER.EXE?MAP=C:\FIRST.MAP&MODE=MAP就行了!我們剛才編的地圖就顯示出來了!

這樣我們就可以用相同的方法添加其他圖層,點(diǎn)狀線狀面狀甚至是柵格圖象,我們還可以添加比例尺,鷹眼,標(biāo)簽,圖例,這些都可以用MAPSERVER來自動(dòng)輸出!

WEBGIS不僅僅是一張圖片,而是可以放大縮小查詢的系統(tǒng),怎么樣樣讓這個(gè)MAP文件能隨著命令的不同輸出我們想要的地圖呢!而這些命令我們又如何隨機(jī)產(chǎn)生的命令怎么樣動(dòng)態(tài)的傳遞給MAPSERVER,并響應(yīng)這些命令呢?這就要加入一個(gè)HTML的TEMPLATE讓MAPSERVER產(chǎn)生的圖片放到這個(gè)TEMPLATE里面,并且通過這個(gè)TEMPLATE來接受擁用戶輸入的命令,我們還是以一個(gè)簡(jiǎn)單的例子來說明吧!
<html>
<head>
<title>MapServer Workshop</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link type="text/css" rel="stylesheet" href="/projects/tutorial/ms35.css" />
</head>
<body bgcolor="#FFFFFF" text="#000000">
<table width="601" align="center">
<form name="mapserv" method="GET" action="/cgi-bin/mapserv.exe">
<!-- HIDDEN MAPSERVER CGI VARIABLES -->
    <input type="hidden" name="map" value="[map]">
    <input type="hidden" name="imgext" value="[mapext]">
    <input type="hidden" name="imgxy" value="199.5 149.5">
<table width="400" border="0" align="center">
  <tr>
    <td>
     <table width="400" border="1">
       <tr>
         <td>
         </td>
         <td>
<!-- FORM SUBMIT BUTTON -->
           <div align="center">
            <input type="submit" name="submit" value="Refresh">
          </div>
         </td>
         <td>
<!-- ZOOM/PAN CONTROLS -->
       <div align="center">Map Control: <br>
          <select name="zoom">
       <option value="4" [zoom_4_select]>Zoom In 4x</option>
   <option value="3" [zoom_3_select]>Zoom In 3x</option>
    <option value="2" [zoom_2_select]>Zoom In 2x</option>
    <option value="1" [zoom_1_select]>Recenter</option>
    <option value="-2" [zoom_-2_select]>Zoom Out 2x</option>
    <option value="-3" [zoom_-3_select]>Zoom Out 3x</option>
    <option value="-4" [zoom_-4_select]>Zoom Out 4x</option>
                </select>
              </div>
         </td>
       </tr>
       <tr>
<!-- DISPLAY THE MAPSERVER-CREATED MAP IMAGE -->
         <td colspan="3" align="center" valign="top">
           <input type="image" name="img" src="[img]" width="400" height="300" border="0">
         </td>
       </tr>
     </table>
    </td>
  </tr>
</table>
</form>
</body>
</html>
 這個(gè)HTML文件其實(shí)并么眼什么特別的,只是在FORM里面和一般的網(wǎng)頁有很大的不同!form使用GET方式傳遞值,ACTION是CGI下面的一個(gè)可執(zhí)行文件MAPWERV.EXE.還有就是在FORM 中出現(xiàn)了用“[]”括在一起的變量。如<input type="image" name="img" src="[img]" width="400" height="300" border="0">,中的[img],這句代碼正是用于顯示產(chǎn)生的地圖圖片的。而這些  <div align="center">Map Control: <br>         <select name="zoom">
    <option value="4" [zoom_4_select]>Zoom In 4x</option>
    <option value="3" [zoom_3_select]>Zoom In 3x</option>
    <option value="2" [zoom_2_select]>Zoom In 2x</option>
    <option value="1" [zoom_1_select]>Recenter</option>
    <option value="-2" [zoom_-2_select]>Zoom Out 2x</option>
    <option value="-3" [zoom_-3_select]>Zoom Out 3x</option>
    <option value="-4" [zoom_-4_select]>Zoom Out 4x</option>
是用于放大縮小圖片的。
                                           任旭歐
                                   2007年6月10日

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
jsp調(diào)用geoserver圖層
開源gis(ZZ)
面向企業(yè)級(jí)的開源WebGIS解決方案
WebGIS底圖疊加不同坐標(biāo)系的Image
在頁面上實(shí)現(xiàn)"另存為"的方法
google 900913 resolutions
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服