如何修复mapserver中的地图图层比例尺寸(ms4w)

时间:2016-06-06 08:32:05

标签: gis mapserver

示例图层映射文件是:

LAYER
        NAME "abc"
        STATUS OFF
        CONNECTIONTYPE POSTGIS
        CONNECTION ""
        DATA ""
        TYPE polygon
        TRANSPARENCY 100        
        MINSCALEDENOM 1
        MAXSCALEDENOM 4000

    METADATA
        "fields"    "layer"
    END
    CLASS
        NAME 'abc'          
        MINSCALEDENOM 1000
        MAXSCALEDENOM 4000
        STYLE
            OUTLINECOLOR 21 58 224
            COLOR 151 219 242   
        END
    END     
END

如何修复地图图层比例尺寸1:4000比例在地图服务器(ms4w)中的地图脚本模式的地图文件中

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

这是可行的,但需要付出很多努力。

这很有挑战性,因为比例是WMS getMap操作的默认参数。具有两个坐标的bbox的通用WMS getmap操作带有宽度和高度作为输出参数。在不知道输出宽度和高度是多少的情况下,很难简单地

两对坐标和宽度和高度的bbox是决定输出图像比例的参数。

想象一下,我们有一个兴趣区域和1:4000的固定比例。

因此,在系统的某些部分,我们需要在前端应用程序中的窗口或打印映射扩展的情况下获得输出的高度和宽度。我们需要计算输出区域/形状的中心点,然后根据像素到宽度和高度的中心点重新计算bbox坐标。然后使用新的两对坐标以及高度和权重来执行wms getmap请求。

通过这种方式,中间部分仍然保留在中间,并且可以更改bbox以确保按预期固定比例。这在服务器端使用mapserver很复杂,但可以使用其他应用程序/ API轻松管理像OL3,传单,ArcGIS Javascript API等,它具有强制输出固定比例的功能。