ArcMap 生成SLD文件及wms服务发布及使用

介绍如何使用 ArcGIS_SLD_Converter 工具从 ArcMap 导出 SLD 文件,并在 ArcGIS Server 的 WMS 服务及 Mapbox 中应用这些文件实现地图样式定制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、生成sld文件

a、使用工具ArcGIS_SLD_Converter将ArcMap里面图层导出为sld文件

1.在http://arcmap2sld.i3mainz.hs-mainz.de/ArcMap2SLDConverter_Eng.htm 下载ArcMap2SLD

2.解压后运行Adjust_for_ArcGIS-version.bat  (机器中得先安装了arcgis)本文用的是1.4
3.添加中文支持

打开LUT_sld_mapping_file.xml文件(上传文件中已经修改)
修改文件<LUT>——><sldConfiguration>——><xmlEncoding>ISO-8859-1为GB2312

打开LUT_sld_WorldMap_mapping_file.xml文件
修改文件<LUT>——><sldConfiguration>——><xmlEncoding>ISO-8859-1为GB2312


4.arcmap打开一个mxd文档

5.运行ArcGIS_SLD_Converter.exe   设置每个图层保存成单独的sld文件   如图:


使用上图是每一个图层导出一个sld文件,选择Alle/All Layers 一个地图所有图层生成一个sld文件

6.点击save SLD to左下角的SLD按钮 会自动读取当前arcmap中图层 读取完成后回弹出选择sld保存路径的对话框


7.按钮选择SLD保存文件夹   保存即可。

b、自己按照sld文件规范进行手动编写

二、ArcGIS Server中wms服务使用SLD文件

参考 http://resources.arcgis.com/zh-cn/help/main/10.2/index.html#/na/015400000388000000/

1、发布服务,启动wms功能,

2、选中wms功能,找到“SLD 路径或 URL” 设置sld文件路径或者url

这里注意,如果使用工具“ArcGIS_SLD_Converter”导出的SLD文件,里面默认图层名称是显示的名称,要使用该sld文件需要选中“使用地图文档中的图层名称”,不然设置不起作用。

三、mapbox使用wms服务

1、发布wms服务时候没有设置sld文件,访问时没有设置sld参数,显示样式默认为发布地图时候的样式。

2、发布时候设置了sld文件,访问时没有设置sld参数,设置layers和styles的时候如果按照sld文件里面设置,将按照sld里面显示,如果不设置styles或者设置为default 将按照发布时候地图默认样式显示

3、发布时候设置了sld文件,访问时设置sld参数,styles里面设置为default 将按照发布时候默认显示,如果设置为发布时候配置的sld文件就按发布时sld文件显示样式显示,如果按照请求参数sld文件里面设置,着将按照参数sld配置的显示。

四、wms调试

可以直接通过浏览器来查看wms获取到的数据,模板样式地址如下

通过参数指定sld文件来设置显示样式

http://localhost:6080/arcgis/services/mapbox_wms/MapServer/WMSServer?version=1.3.0&request=getmap&BGCOLOR=ffffff&layers=0&styles=style2&crs=EPSG:3857&bbox=11890620.557070304,3076475.7329359166,11890658.775584444,3076513.9514500573&width=512&height=512&format=image/png&TRANSPARENT=TRUE&sld=http://120.77.2.35:8090/lw_base_mapbox.sld
通过发布时候指定的sld文件设置显示样式

http://localhost:6080/arcgis/services/mapbox_wms/MapServer/WMSServer?version=1.3.0&request=getmap&BGCOLOR=ffffff&layers=0&styles=style2&crs=EPSG:3857&bbox=11890620.557070304,3076475.7329359166,11890658.775584444,3076513.9514500573&width=512&height=512&format=image/png&TRANSPARENT=TRUE 
通过发布时候地图样式设置显示样式

http://localhost:6080/arcgis/services/mapbox_wms/MapServer/WMSServer?version=1.3.0&request=getmap&BGCOLOR=ffffff&layers=0&styles=&crs=EPSG:3857&bbox=11890620.557070304,3076475.7329359166,11890658.775584444,3076513.9514500573&width=512&height=512&format=image/png&TRANSPARENT=TRUE

五、sld文件说明
sld文件里面具体属性太多,具体参考ogc的sld标准
  NamedLayer>Name内容是地图图层的名称,
  NamedLayer>UserStyle>Name内容是显示样式的名称
  一个NamedLayer有多个UserStyle表示一个图层有多个显示样式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值