kamap!新手入门

本文以MS4W为例,介绍如何建立一个简单的kamap!系统,并假设你已经做好了相关的数据,并建立了对应的map文件。

1、下载

若要简单的先浏览一下kamap!在本机上建立后的效果,需要下载下面对应的软件,所有软件都在www.maptools.org的网站上。
MS4W 2.2.3
ka-map! 1.0
gmap demo
其中,gmap是为了演示kamap!的功能的,若你有自己的数据,则可以不用下载。

2、安装

把上面下载的3个zip文件,都解压缩到c:\目录下。最终形成了一个c:\ms4w的目录,所有文件都安装到了这个目录下。
然后执行c:\ms4w\apache-install.bat文件。

ok,这样一个基本系统就搭建好了,你可以通过在WWW浏览器如IE、FIREFOX中浏览本机地址:
http://localhost/
而kamap的地址是:
http://localhost/kamap/

注意:
若在浏览kamap是无法得到地图数据,则有可能是因为浏览器缓存的问题,请先清空浏览器的缓存再试验看看。

3、定制

如何添加自己的数据集?
打开c:\ms4w\apps\ka-map-1.0\include\config.php文件,注意要用写字板或别的能支持硬回车的文本编辑软件来进行编辑。
注意看到这部分内容:

$aszGMap = array (
'title' => 'GMap 75',
'path' => '../../gmap/htdocs/gmap75.map',
'scales' => array( 40000000, 25000000, 12000000, 7500000, 3000000, 1000000 ),
'format' =>'PNG'
/* Sample authorized_users entry. See auth.php for more details:
* ,'authorized_users' => array('popplace' => array('user1', 'user2'),
* 'park' => array('user1')
*/
);

$aszMapFiles = array( 'gmap' => $aszGMap

/* Add more elements to this array to offer multiple mapfiles */

);

/******************************************************************************
* figure out which map file to use and set up the necessary variables for
* the rest of the code to use. This does need to be done on every page load
* unfortunately.
*
* szMap should be set to the default map file to use but can change if
* this script is called with map=.
*/
$szMap = 'gmap';

假设把你的map文件和地图数据拷贝到c:\ms4w\apps\lzu\目录下,你的map文件为lzu.map,则可以这样定制:
$aszGMap = array…这部分可以不用动,当然你若不需要,也可以删除之。然后添加:

$lzuMap = array (
'title' => 'LZU',
'path' => '../../lzu/lzu.map',
'scales' => array( 40000000, 25000000, 12000000, 7500000, 3000000, 1000000 ),
'format' =>'PNG'
);

然后这部分要根据上面的信息进行修改:

$aszMapFiles = array( 'gmap' => $aszGMap,'lzu'=>$lzuMap);

注意,这部分的比例尺数据要根据自己的实际情况进行修改:

‘scales’ => array( 40000000, 25000000, 12000000, 7500000, 3000000, 1000000 ),

如何修改对应的主页文件?
用网页编辑器打开c:\ms4w\apps\ka-map-1.0\htdocs\index.html文件,然后里面的信息则可以自己进行定制。


已发布

分类

来自

标签:

评论

《“kamap!新手入门”》 有 1 条评论

  1. stin 的头像

    我是个mapserver的新手,刚花了几天的时间看了mapserver的tutorial,现在打算用kamap搭一个测试的例子,可自己些的mapfile测试没有问题,放到了kamap里就不行了,不知道为什么,能帮忙看看吗?

    用的数据为了简单,用的freegis上下载的

    我的mapfile如下
    MAP
    NAME “LAT LONG”
    STATUS ON
    EXTENT -180 -90 180 90
    SIZE 600 300
    SHAPEPATH “../freegis_worlddata-0.1_simpl/”
    IMAGECOLOR 200 200 200
    UNITS DD
    INTERLACE ON
    IMAGETYPE png
    OUTPUTFORMAT
    NAME jpeg
    DRIVER “GD/JPEG”
    IMAGEMODE RGB
    EXTENSION “jpeg”
    FORMATOPTION “QUALITY=60,PROGRESSIVE=TRUE”
    END
    WEB
    METADATA
    max_extents “-180,-90,180,90”
    END
    END

    REFERENCE
    IMAGE ‘../freegis_worlddata-0.1_simpl/worldkeymap.png’
    EXTENT -180 -90 180 90
    STATUS ON
    COLOR -1 -1 -1
    OUTLINECOLOR 255 0 0
    SIZE 250 125
    END
    LEGEND
    OUTLINECOLOR 0 0 0
    STATUS on
    KEYSIZE 40 10
    KEYSPACING 20 15
    TRANSPARENT on
    END

    SCALEBAR
    STATUS ON
    IMAGECOLOR 255 255 255
    COLOR 0 0 0
    OUTLINECOLOR 0 0 0
    LABEL
    COLOR 0 0 0
    SIZE tiny
    END
    UNITS kilometers
    STYLE 1
    INTERVALS 5
    TRANSPARENT ON
    SIZE 249 15
    END

    LAYER
    NAME “World”
    STATUS ON
    METADATA
    imageformat “PNG”
    END
    DATA “../freegis_worlddata-0.1_simpl/countries_simpl.shp”
    TYPE POLYGON
    CLASSITEM “cat”
    CLASS
    NAME “Country”
    EXPRESSION /./
    STYLE
    OUTLINECOLOR 100 100 100
    COLOR 200 170 170
    END

    END
    END

    LAYER
    NAME “Label”
    STATUS ON
    METADATA
    imageformat “PNG”
    END
    DATA “../freegis_worlddata-0.1_simpl/countries_simpl.shp”
    TYPE ANNOTATION
    LABELITEM ‘name’
    CLASS
    LABEL
    PARTIALS false
    MINDISTANCE 250
    MINFEATURESIZE 40
    POSITION CC
    COLOR 255 255 255
    OUTLINECOLOR 0 0 0
    SIZE tiny
    ANTIALIAS TRUE
    BUFFER 4
    END

    END
    END
    END

    在ie里测试了,http://localhost:8080/cgi-bin/mapserv.exe?map=/ms4w/apps/ka-map-style/htdocs/freegis.map&layer=World&layer=Label&mode=map,mapfile没有问题

    下面打算放到kamap里,

    修改config.php里面对应的几行

    $wangtieMap = array (
    ‘title’ => ‘freegis’,
    ‘path’ => ‘../htdocs/freegis.map’,
    ‘scales’ => array( 100000000,50000000,25000000,10000000),
    ‘format’ =>’PNG’

    );

    $aszMapFiles = array( ‘freegis’ => $wangtieMap , /* ‘wangtie’=> $wangtieMap*/

    /* Add more elements to this array to offer multiple mapfiles */

    );
    $szMap = ‘freegis’;

    可再刷新kamap的界面就出现空白页面了。

    能帮我看看错在什么地方吗?如果方便的话可以留个qq或者msn吗?

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注