Geoserver发布大范围、清晰的ArcGIS配图:ArcGIS pro切图+Geowebcache插件

目录

项目场景:

问题描述:

解决方案:

一、ArcGIS配图切片处理

二、geowebcache配置

三、geoserver发布ArcGIS切片服务

四、总结

项目场景:

项目中,GIS技术路线是mapbox(二维)+cesium(三维)+geoserver(未采购ArcGIS Server)。但是已有的矢量底图使用的是arcgis配图,其范围比较大,且样式复杂,包括渐变水系线、行政区划、注记、且不同层级下配置了相应的图层要素。

问题描述:

起初,我使用ArcGIS进行切片处理,并使用Geoserver+Geowebcache发布服务。但是这种情况下,地图服务中注记会出现走样、模糊等问题,效果比较差。基于此,探索了一下ArcGIS pro,发现,相比在ArcGIS中切图,pro中可以设置更多参数,可以满足切图需求。

解决方案:

一、ArcGIS配图切片处理

前面提到,ArcGIS直接切图会导致注记走样、模糊等问题,需要使用ArcGIS pro进行切片处理。首先,下载ArcGIS pro。接着,介绍使用ArcGIS pro对ArcGIS配图进行切片的步骤:

1.Generate Tile Cache Tiling Scheme工具创建切片方案。工具导航:“数据管理工具箱——Tile Cache——Generate Tile Cache Tiling Scheme工具”。具体参数选择如下图。

为了切片之后的切片包可以适配性更好,我们使用一个预定义的切片方案(上图中predefined Tiling Scheme参数,被第一个红框挡住了),预定义切片方案栏我的路径是C:\Program Files\ArcGIS\Pro\Resources\TilingSchemes,大家找到自己对应的路径选择即可。

对于切图之后注记比较模糊的问题,经测试,DPI设置成192,Tile Size设置成512×512,在我的项目实践中能达到最佳的效果,大家可以根据自己的实际情况进行调整。

2.Manage Tile Cache工具生成切片缓存包。工具导航:“数据管理工具箱——Tile Cache——Manage Tile Cache工具”。输入的切片方案就是上述第一步创建的切片方案。

如果范围、层级设置较大,可以设置并行处理。我们可以先查看自己电脑的总核数,设置相应的最大并行处理数量,以提高切图效率。我设置为12。

切片包的文件结构:

二、geowebcache配置

首先,下载geowebcache,版本与geoserver对应即可,比如geoserver版本为2.26.1,geowebcache对应版本为1.26.1,以下按这个版本介绍。

接着,我们介绍具体geowebcache配置方法:

1.复制粘贴gwc-arcgiscache-1.26.1.jar包。解压geowebcache-1.26.1-war.zip后,将文件夹中的geowebcache.war后缀改为.zip,解压;在解压后的路径geowebcache\WEB-INF\lib中,找到gwc-arcgiscache-1.26.1jar,将其复制到D:\SH_GISServer\geoserver-2.26.1-bin\webapps\geoserver\WEB-INF\lib(这是我的项目路径,大家相应找到自己的geoserver安装路径即可,需要注意的是我这里用的是bin的安装包)。

2.解压配置gs-gwc-2.26.1.jar包。首先,在geoserver安装路径:D:\SH_GISServer\geoserver-2.26.1-bin\webapps\geoserver\WEB-INF\lib找到gs-gwc-2.26.1.jar,将其复制粘贴到其他路径下;接着,在“其他路径”下将gs-gwc-2.26.1.jar的后缀改为.zip,解压;然后,将上述解压后的路径geowebcache\WEB-INF下,找到geowebcache-arcgiscache-context.xml,将其拷贝到gs-gwc-2.26.1文件夹中。

3.修改gs-gwc-2.26.1中配置文件的配置项。首先,增加geowebcache-servlet.xml配置文件中的配置项;

<import resource="geowebcache-arcgiscache-context.xml"/>

接着,增加geowebcache-core-context.xml中的配置项。

<bean id="gwcArcGISCacheGridsetConfiguration" class="org.geowebcache.arcgis.layer.ArcGISCacheGridsetConfiguration" />

4.打包gs-gwc-2.26.1中的文件。全选gs-gwc-2.26.1中的文件,压缩为gs-gwc-2.26.1.zip,并将后缀改为.jar。

5.替换geoserver中的gs-gwc-2.26.1.jar包。将4中打包好的gs-gwc-2.26.1.jar拷贝到D:\SH_GISServer\geoserver-2.26.1-bin\webapps\geoserver\WEB-INF\lib替换。

三、geoserver发布ArcGIS切片服务

经过上面的准备工作,我们就可以发布ArcGIS切片服务了。

1.新增geowebcache.xml配置项。在geoserver安装路径D:\SH_GISServer\geoserver-2.26.1-bin\data_dir\gwc中找到geowebcache.xml,编辑。新增以下配置,其中tilingScheme以及tileCachePath是我们切片处理后的切片包中文件对应的路径,name为自定义,不重复即可。

 <arcgisLayer>
          <name>sh_ltyy_l18</name>
          <tilingScheme>D:\SH_GISServer\geoserverdata\xxxxx\sh_ltyy_l18_v2/conf.xml</tilingScheme>
          <tileCachePath>D:\SH_GISServer\geoserverdata\xxxxx\sh_ltyy_l18_v2/_alllayers</tileCachePath>
          <hexZoom>false</hexZoom>
 </arcgisLayer>

2.重启geoserver。在D:\SH_GISServer\geoserver-2.26.1-bin\bin路径下先点击shutdown.bat,再点击startup.bat即可。

四、总结

至此,关于Geoserver发布ArcGIS配图切片服务的全流程,包括切片生成、配置修改以及服务发布,均已详细阐述完毕。对于那些因项目预算有限而未采购ArcGIS Server的情况,geowebcache+ArcGIS pro无疑提供了一个高效且经济的替代方案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值