开源

MapServer应用入门

1、MapServer简介
    MapServer是美国明尼苏达大学提供的WebGIS解决方案。 MapServer是一款成功的开源WebGIS服务。在服务器端通过CGI应用程序连接Web Server和GIS空间数据库,客户端仅须使用浏览器就可以对空间数据进行查询分析。
    MapServer 基于C 语言,利用GEOS、OGR/GDAL 对多种矢量和栅格数据的支持,通过Proj.4共享库实时的进行投影变换。同时,还集合PostGIS 和开源数据库PostgreSQL 对地理空间数据进行存储和SQL 查询操作,基于ka-map、MapLab、Cartoweb 和Chameleon 等一系列客户端JavaScript API来支持对地理空间数据的传输与表达,并且遵守OGC制定的WMS、WFS、WCS、WMC、SLD、GML 和Filter Encoding 等一系列规范。
2、Windows下的安装
    使用MS4W安装包比较方便,下载地址:http://maptools.org/dl/ms4w/ms4w_2.3.1.zip。解压到任意目录下。
    依次运行ms4w目录下的setenv,和Apache-install文件。
3、第一个HelloWorld的编写
    3.1 Hello.html编写
<html>
<head><title>MapServer Hello World</title></head>
<body>
<form method=POST action="/cgi-bin/mapserv.exe">
<input type="submit" value="Click Me">
<input type="hidden" name="map" value="/ms4w/Apache/htdocs/hello.map">
<input type="hidden" name="map_web_imagepath" value="">
</form>
<IMG SRC="[img]" width=400 height=300 border=0>
</body>
</html>
3.2 Hello.map编写

#第一个Hello World文件

MAP
NAME "Hello World"
SIZE 400 300
IMAGECOLOR 249 245 186
IMAGETYPE png
EXTENT -1.00 -1.00 1.00 1.00

WEB
TEMPLATE "/ms4w/Apache/htdocs/hello.html"
IMAGEPATH "/ms4w/Apache/htdocs/tmp/"   #文件写在这里
IMAGEURL "/tmp/"    #读取的时候读这里
END

LAYER
  STATUS default
  TYPE point
  FEATURE
   POINTS 0.0 0.0
   END
  TEXT "Hello World"
  END
  CLASS
   STYLE
    COLOR 255 0 0
  END
  LABEL
  TYPE bitmap
  END
END # end class
END # end layer
END # end mapfile

4、使用配置
    把Hello.html和Hello.map拷贝到ms4w\Apache\htdocs目录下,并新建tmp目录
    在浏览器中输入http://localhost/Hello.html
    点击Click按钮,就能看到效果了。

5、注意事项

1、\MS4W文件夹一定要放在磁盘根目录下;

2,运行apache-install.bat之前一定要关掉IIS等服务;

3,提示apache已启动以后,MS4W就算是安装成功了,这时在浏览器中输入http://127.0.0.1/(如果输入http://localhost的话,可能会不管用(可能是host文件的原因))会进入MS4W的主页面。

 
6、工作原理

好了,下面讲解一下Mapserver的工作原理。

  Mapserver真正起作用的是一个CGI程序,在WINDOWS下是mapserv.exe,如果你在浏览器窗口输入 http://localhost/cgi-bin/mapserv.exe,得到:“No query information to decode. QUERY_STRING is set, but empty.”,说明你的mapserver已经能干活啦。

  在mapserver中起核心作用的是mapfile文件,该文件定义了数据在哪里?HTML模板在哪里?投影?显示图层等详细配置信息,我们的主要工作 就是修改这个文件配置数据进入mapserv.exe,关于mapfile文件的详细信息,请参考 http://mapserver.gis.umn.edu/docs/reference/mapfile

  另外比较重要的是template文件,这个文件是用户与mapserv.exe进行交互的界面。

7、应用案例

  国内的也有比较成功的应用,象:http://www.webmap.cn/mapDir.php。



  本文简单介绍一下,希望对初学者有帮助。

浏览过本文章的用户还浏览过
  • 站在巨人的肩上:开源GIS工程大全索引

    在GIS帝国建立一个较为全面的开源和免费的gis软件工程索引,方便今后进行更新,让大家进一步了解开源GIS的伟大成果,让我们利用他们在空间技术应用方面有更多的创新。这些开源工程大多都在 OSGeo , FreeGIS.org, 和 freecode进行过发布。 [详细]

  • 利用OpenScales+MapServer+PostGIS快速构建GIS应用

    随着越来越多智慧城市项目的落地实施,基于 GIS 的应用程序展现出越来越广泛的应用场景,例如大多数行业都需要对真实世界中的现有资源进行可视化的实时监控、分析、操作从而提高效率,使得利益最大化;再比如基于位置的服务也越来越在公众中普及,如此等等。 [详细]

  • 开源的GIS软件套件:MapWindow

    MapWindow 是开源免费的GIS软件套件。MapWindow提供了可定制的应用程序和ocx控件,功能丰富,界面简洁,扩展性好。面向Windows平台,当然,开源的,MPL协议。从下面的三张图钟,可以看出,MapWindow适合各类用户使用。 [详细]

  • Coding正式发布软件众包平台 “码市”,传统小型外包公司或转型

    10月20日,Coding正式对外发布 “码市”,码市是一个基于众包的软件外包平台,链接企业发包方(甲方)和程序员(乙方)。 [详细]

热门资讯
  • 一周
  • 一月

标签云

here地图    Uber    gis    地图    OpenScales    环保    谷歌地图    辐射    OpenLayers    反中微子排放        NASA    虚拟现实    大疆    癌症   
百度广告