交互地图及Browse模式

上面地图是在map模式化生成的。它是一幅静态地图(当你点击时,不会有任何的改变)



这幅动态地图是在browse模式下生成的。在地图上用鼠标点击,会发现地图动起来了。

这两个地图都使用相同的 Mapfile 定义。 不同之处在于第二个地图(动态创建的地图)依赖于HTML表单进行交互。 如果您查看此页面与上一页的链接方式,您会发现它与前面的示例不同。 这个页面在MapServer术语中称为HTML模板。

在地图上点击后,会发现页面的URL改变了。下面将 URL 中的参数解析一下,要注意URL的一些参数与用户的点击有关系:


    >>> url =
    'http://webgis.osgeo.cn/cgi-bin/mapserv?map=%2Foswebgis%2Fxmfc1.map&imgext=-77.658863+-140.267559+282.943144+39.732441&imgxy=300.0+150.0&zoom=0&layer=modis&layer=states_line&mode=browse&img.x=342&img.y=119'
    >>> para_str = url.replace('%2F', '/').split('?')[-1].split('&')
    >>> from pprint import pprint
    >>> pprint([x.split('=') for x in para_str])
    [['map', '/oswebgis/xmfc1.map'],
    ['imgext', '-77.658863+-140.267559+282.943144+39.732441'],
    ['imgxy', '300.0+150.0'],
    ['zoom', '0'],
    ['layer', 'modis'],
    ['layer', 'states_line'],
    ['mode', 'browse'],
    ['img.x', '342'],
    ['img.y', '119']]