GeoWebCache的配置与使用

GeoWebCache的配置与使⽤
最近在做⼀个开源GIS的demo的⼯作,⼯作中涉及到了地图⽡⽚,选取的开发环境是geoserver+openlayers,那么地图⽡⽚⾃然⽽然也就使⽤
geowebcache,geowebcache就相当于是openlayer和geoserver之间的中介,⾸先,geowebcache会根据你的配置信息,把相应的地图图层切好图,存放在磁盘中,然后在使⽤openlayer加载地图服务的时候,把地图服务的地址指向 geowebcache,geowebcache接收到这些请求后,会根据请求的位置和⽐例尺在切⽚⽬录中到对应的⽡⽚,然后返回给你,省去了动态⽣成地图的过程,速度⼤幅度提⾼,⽽且由于请求的图⽚资源是事先⽣成好的,浏览器加载这些图⽚之后,下⼀次再去请求同样的图⽚,就会从浏览器的缓存中拉去,速度进⼀步提⾼!
下⾯说⼀下geowebcache的配置使⽤。⾸先下载war包,在tomcat中解压后,会在WEB-INF⽬录下到⼀系列配置⽂件,先到l,然后在web-app根元素下添加:
[html]
1. <context-param>
2.    <param-name>GEOWEBCACHE_CACHE_DIR</param-name>
3.    <param-value>D:/data/cache</param-value>
4. </context-param>
param-value的值就是你要存放geowebcache⽡⽚的位置,配置好这⾥,重启tomcat,你会发现在你的⽡⽚⽬录下⽣成了⼀些⽂件,其中就有l,这个⽂件是geowebcache配置的关键所在,以下是这个⽂件的配置信息:
[html]
1. <?xml version="1.0" encoding="utf-8"?>
2. <gwcConfiguration xmlns:xsi="www.w
3.  xmlns="/schema/1.5.3"
4.  xsi:schemaLocation="/schema/1.
5.3 /schema/1.5.3/geowebcache.xsd">
5.  <version>1.5.3</version>
6.  <backendTimeout>120</backendTimeout>
7.  <serviceInformation>
8.    <title>GeoWebCache</title>
9.    <description>GeoWebCache is an advanced tile cache for WMS servers.It supports a large variety of protocols and
10.      formats, including WMS-C, WMTS, KML, Google Maps and Virtual Earth.</description>
11.    <keywords>
12.      <string>WFS</string>
13.      <string>WMS</string>
14.      <string>WMTS</string>
15.      <string>GEOWEBCACHE</string>
16.    </keywords>
17.    <serviceProvider>
18.      <providerName>lzugis</providerName>
19.      <providerSite>blog.csdn/gisshixisheng</providerSite>
20.      <serviceContact>
21.        <individualName>lzugis</individualName>
22.        <positionName>GIS⼯程师</positionName>
23.        <addressType>⼯程师</addressType>
24.        <addressStreet>海淀区翠微路甲3号</addressStreet>
25.        <addressCity>北京</addressCity>抽油机节能
26.        <addressAdministrativeArea>海淀区</addressAdministrativeArea>
27.        <addressPostalCode>010010</addressPostalCode>
28.        <addressCountry>中国,China</addressCountry>
29.        <phoneNumber>+81 189 **** ****</phoneNumber>
30.        <faxNumber>+81 189 **** ****</faxNumber>
31.        <addressEmail>niujp08@qq</addressEmail>
32.      </serviceContact>
33.    </serviceProvider>
34.    <fees>NONE</fees>
35.    <accessConstraints>NONE</accessConstraints>
36.  </serviceInformation>
37.
38.  <gridSets>
39.    <!-- Grid Set Example, by default EPSG:900913 and EPSG:4326 are defined -->
40.    <gridSet>
41.      <!-- This does not have to be an EPSG code, you can also have multiple gridSet elements per SRS -->
42.      <name>EPSG:4326</name>
43.      <srs>
44.        <number>4326</number>
45.      </srs>
46.      <extent>
47.        <coords>
48.          <double>73.45100463600005</double>
49.          <double>18.16324718800007</double>
50.          <double>134.976797647</double>
十一刀51.          <double>53.53194315200005</double>
52.        </coords>
53.      </extent>
54.      <scaleDenominators>
55.        <double>25000000</double>
白城市文化小学56.        <double>1000000</double>
57.        <double>100000</double>
58.        <double>25000</double>
59.      </scaleDenominators>
移动万花筒
60.      <tileHeight>256</tileHeight>
61.      <tileWidth>256</tileWidth>
62.    </gridSet>
63.  </gridSets>
64.
65.  <layers>
66.    <wmsLayer>
67.      <name>china</name>
68.      <mimeFormats>
69.        <string>image/gif</string>
70.        <string>image/jpeg</string>
71.        <string>image/png</string>
72.        <string>image/png8</string>
73.      </mimeFormats>
74.      <wmsUrl>
75.        <string>200.200.200.220:8888/geoserver/wms</string>
76.      </wmsUrl>
77.      <wmsLayers>geoserver:china</wmsLayers>
78.    </wmsLayer>
79.  </layers>
80. </gwcConfiguration>
配置好上⾯的信息之后,进⼊:,点击"Reload Configuration"重新读取配置信息,如下所⽰:
如果配置信息没错,你会发现,你所配置的图层信息已经显⽰在这个页⾯上了,点击“Seed this layer”,然后你需要输⼊下⾯这些信息:
设置好,点submit就开始切图了。在资源管理器中打开,如下图:
配置完成以后,就是如何在地图中显⽰了,下⾯是显⽰的源代码:
[html]
手机移动电池1. <pre name="code" class="html"><html xmlns="/1999/xhtml">
2. <head>
上海市教育评估院
3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
4. <title>china EPSG:4326 image/png</title>
5. <link rel="stylesheet" type="text/css" href="200.200.200.220/OpenLayers-2.12/theme/default/style.css"/>
6. <style type="text/css">
7.    body { font-family: sans-serif; font-weight: bold; font-size: .8em; }
8.    body { border: 0px; margin: 0px; padding: 0px; }
9.    #map { width: 100%; height: 100%; border: 0px; padding: 0px; }
10. </style>
11. <script type="text/javascript" src="200.200.200.220/OpenLayers-2.12/OpenLayers.js"></script>
12. <script type="text/javascript" src="200.200.200.220/OpenLayers-2.12/lib/OpenLayers/Lang/zh-CN.js"></script>
13. <script type="text/javascript">
14.    var map, demolayer;
15.    OpenLayers.DOTS_PER_INCH = 90.71428571428572;
16.    ImageLoadErrorColor = 'transparent';
17.    function init(){
18.        var mapOptions = {
19.            resolutions: [0.703125, 0.3515625, 0.17578125, 0.087890625, 0.0439453125, 0.021********,
20.                0.010*********, 0.0054931640625, 0.00274658203125, 0.001373291015625, 6.866455078125E-4,
21.                3.4332275390625E-4, 1.71661376953125E-4, 8.58306884765625E-5, 4.291534423828125E-5,
22.                2.1457672119140625E-5, 1.0728836059570312E-5, 5.364418029785156E-6, 2.682209014892578E-6,
23.                1.341104507446289E-6, 6.705522537231445E-7, 3.3527612686157227E-7
24.            ],
25.            projection: new OpenLayers.Projection('EPSG:4326'),
26.            maxExtent: new OpenLayers.Bounds(-180.0,-90.0,180.0,90.0),
27.            units: "degrees",
28.            controls: []
29.        };
30.        map = new OpenLayers.Map('map', mapOptions );
31.
32.        map.addControl(new OpenLayers.Control.PanZoomBar({
33.                position: new OpenLayers.Pixel(2, 15)
34.        }));
35.        map.addControl(new OpenLayers.Control.Navigation());
36.        map.addControl(new OpenLayers.Control.Scale($('scale')));
37.        map.addControl(new OpenLayers.Control.MousePosition({element: $('location')}));
38.
39.        demolayer = new OpenLayers.Layer.WMS(
40.            "china","200.200.200.220:8080/geowebcache/service/wms",
41.            {layers: 'china', format: 'image/png' },
42.            { tileSize: new OpenLayers.Size(256,256)}
43.        );
44.        map.addLayer(demolayer);
45.        ToExtent(new OpenLayers.Bounds(73.45100463600005, 18.16324718800007,
46.            134.976797647, 53.53194315200005)
47.        );
48.    }
49. </script>
50. </head>
51. <body onLoad="init()">
52.    <div id="map"></div>
53. </body>
54. </html>
显⽰的结果如下:
附件:
或者我的百度⽹盘,地址:pan.baidu/s/1kTJt91l

本文发布于:2024-09-22 09:37:41,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/222527.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:配置   地图   信息   服务   移动   请求   速度
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议