openscales2.2 tilecache2.11图片缓存

为了加快地图的显示速度,通过tilecache将瓦片保存为图片,下次直接就可以加载图片。

tilecache的环境搭建:

    下载地址:http://tilecache.org/(最新的版本为2.11)。

    下载解压完之后,将目录tilecache-2.11copy到之前搭建好的mapserver环境下面(For Example:C:\ms4w\apps)。

Python2.5下载:

    下载地址:http://www.python.org/getit/(可下载最新的版本,没有测试),下载完成之后一路安装就ok了。

    由于要使用Apache HTTP Server来启用Python,因此需要为Apache增加一个Module——mod_python(example:mod_python-3.3.1.win32-py2.5-Apache2.2)注意pytho和appache的版本和你安装的要一致。

  下载地址:http://www.modpython.org/。下载完成之后直接进行安装,安装好之后,打开Apache的conf\ httpd.conf文件,在#LoadModule后添加

LoadModule python_module modules/mod_python.so;

 在Apache的httpd.conf文件中增加如下配置:

Alias /tilecache/ "C:/ms4w/apps/tilecache-2.11/"
<Directory "C:/ms4w/apps/tilecache-2.11/">
    AddHandler mod_python .py 
    AddHandler python-program .py
    PythonHandler TileCache.Service 
    PythonOption TileCacheConfig C:/ms4w/apps/tilecache-2.11/tilecache.cfg
    PythonDebug On  
    PythonPath "['C:/ms4w/apps/tilecache-2.11/']+sys.path"  
    Allow from all
</Directory>

接下来进行tilecache的配置:

    在tilecache目录下面找到tilecache.cgi文件,将第一行修改为:#!C:/Python25/python.exe -u(也就是python的安装路径),修改之后将该文件重命名为tilecache.py。

    在tilecache目录下面找到tilecache.cfg文件,找到“[cache] type=Disk base=”(缓存图片保存路径),将base设置为你放置图片的目录。

    增加你的图层:

[bound]
type=WMS
url=http://localhost:8085/cgi-bin/mapserv.exe?MAP=D:/tmp/GisDemo/GisDemo/Content/map/OpenscalesDemo.map
layers=bound,road
extension=png

    至此位置tilecache的配置到此位置。
 环境变量和注册表的配置:

    openscales2.2 tilecache2.11图片缓存_第1张图片增加C:\Python25在path中。

   在HKEY_LOCAL_MACHINE节点下(PythonPath的节点增加C:\ms4w\apps\tilecache-2.11\),当然如果地图没有问题就不用修改注册表。

       openscales2.2 tilecache2.11图片缓存_第2张图片

经过以上的步骤,重启一下apache。

在浏览器中输入如下地址:

http://localhost:8085/tilecache/tilecache.py?LAYERS=basic&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&SRS=EPSG:4326&BBOX=-180,-90,0,90&WIDTH=256&HEIGHT=256

出现如图的效果,说明环境搭建成功(当然也可以测试自己建议的图层,本文例子中的bound):

openscales2.2 tilecache2.11图片缓存_第3张图片

tilecache环境搭建好之后,我们在openscales中修改一下引用的地址即可,参见如下代码:

<os:WMSC name="bound"
          url="http://localhost:8085/tilecache/tilecache.py"
          layers="bound"
          format="image/jpeg"
          transparent ="false"
          resolutions="0.703125, 0.3515625, 0.17578125, 0.087890625, 0.0439453125, 0.02197265625, 0.010986328125, 0.0054931640625, 0.00274658203125, 0.001373291015625, 0.0006866455078125, 0.00034332275390625, 0.000171661376953125, 8.58306884765625e-005, 4.291534423828125e-005, 2.1457672119140625e-005, 1.0728836059570313e-005, 5.3644180297851563e-006, 2.6822090148925781e-006, 1.3411045074462891e-006"
          />


至此,我们在openscales中可以使用缓存的瓦片数据,提高地图加载的速度。

你可能感兴趣的:(cache)