论坛首页 编程语言技术论坛

Mapserver 增加 图层步骤

浏览 3698 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-09-18  
最近做了几个Mapserver的图层,总结一下实现步骤:

1. 生成GeoTiff的图片。
首先要有BMP或者PNG图片,相应的地理信息数据。

比如有一个文件是 BLANK.PNG 需要自己建立一个与之对应的后缀为 TAB的文件 BLANK.TAB
内容如下:
!table
!version 300
!charset WindowsSimpChinese

Definition Table
File "blank.png"
Type "RASTER"
(113.2046665044,23.2346217547) (0,0) Label "Pt 1",
(113.2046665044,23.0209914951) (0,1909) Label "Pt 2",
(113.4550316456,23.2346217547) (2057,0) Label "Pt 3"
CoordSys Earth Projection 1, 0
Units "degree"

2. 然后用TatukGIS Viewer 打开。同时会把地理信息的数据引入。
   用TatukGIS的Export 功能导出为GeoTiff的图片。

3. 使用gdal转换。

添加坐标系:  
gdal_translate -a_srs EPSG:4326 blank.TIF blank_o.TIF
set GDAL_DATA=F:\ms4w\gdaldata
转换成EPSG:900913的格式
gdalwarp -s_srs EPSG:4326 -t_srs EPSG:900913 blank_o.TIF .\out\blank_o.TIF


4. 制作mapserver map 文件, blank.map
# This is our First mapfile
MAP
	NAME "BLANK WHITE"
	SIZE 600 400
	IMAGECOLOR 255 255 255
	IMAGETYPE PNG
	TRANSPARENT ON
	STATUS ON

	EXTENT 12601869.094 2634529.974 12629783.834 2660431.700
	
	SHAPEPATH "data"
	
	PROJECTION
	  "init=epsg:900913"
	END
	
	OUTPUTFORMAT
		NAME png
		DRIVER "GD/PNG"
		MIMETYPE "image/png"
		IMAGEMODE RGB
		EXTENSION "png"
	END
	
	WEB
		TEMPLATE "/ms4w/apps/webgis/test.html"
		IMAGEPATH "/ms4w/tmp/ms_tmp/"
		IMAGEURL "/tmp/"
	END
	
	LAYER
	    NAME "BLANK WHITE"
	    DATA "blank.tif"
	    DUMP TRUE
	    STATUS Default
	    TYPE raster
            OFFSITE 255 255 255 //这个是使得 白色变成透明色的关键步骤,改变其它颜色也可以
            PROJECTION
              "init=epsg:900913"
            END
	END
END




4. 修改Mapserver的 Apache 文件
echo SetEnvIfNoCase Request_URI "/cgi-bin/blank" MS_MAPFILE=/ms4w/apps/webgis/blank.map >> F:\ms4w\Apache\conf\httpd.conf

5. 重启Mapserver的服务
DOS  命令行下执行
sc stop ApacheMS4WWebServer
sc start ApacheMS4WWebServer


这样就大功告成了,可以在OpenLayers中调用了。












论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics