GeoServer WMS 地图服务
发布服务
GeoServer WMS 服务的发布方法与WMTS服务相似,但WMS服务无需对地图进行提前分块切片,因此在发布服务时,不需要进行“创建切片方案”与“图层切片”,完成数据添加与图层创建后即可自动发布服务。
注意: 同时叠加使用多个不同切片参考点或数据范围的地图服务,需要升级至 V5.4及以上版本。
操作步骤
参考GeoServer WMTS服务发布方法,在GeoServer服务页面中进行“新建工作区”与“添加新的数据存储”,创建待发布图层。
完成后,在左侧菜单栏中点击“图层”,在图层界面找到刚刚创建的图层,并拷贝其完整图层名“freedo-workspace:SZground”备用。
点击页面左上角图标返回GeoServer首页,在首页右侧点击WMS下方的版本号,1.1.1或1.3.0均可。这里以1.3.0版本为例。
在打开的页面中复制浏览器地址。
http://localhost:8080/geoserver/ows?service=wms&version=1.3.0&request=GetCapabilities
将上述地址中的“ows”替换为“工作空间名/wms”得到地图服务的xml地址。其中“工作空间名”为发布图层时所用的工作区名称,可以在GeoServer的“工作区”页面查询。
编辑后xml地址示例: http://localhost:8080/geoserver/freedo-workspace/wms?service=wms&version=1.3.0&request=GetCapabilities
使用服务
WMS服务由于不需要提前对地图切片,因此其服务自身是支持重投影的。获取地图服务的xml地址后,不论原始服务是投影坐标系或地理坐标系,经过简单编辑即可添加到场景中浏览与使用。
获取服务地址
修改xml地址中的 request 参数,并在其后添加 layers、bbox、width、height、srs、styles、format、TRANSPARENT 参数,参数取值使用“=”声明,参数之间用“&”连接。以上参数可在地图服务的xml文件中查询默认值,下面给出这些参数的释义与取值示例。
request: 服务请求方法。修改为 GetMap。
layers: 需要加载的图层的完整名称。已在上面的步骤中获取,取值 freedo-workspace:SZground。
bbox: 地图边界范围。取值 {bbox-epsg-xxxx}。这里注意,其中的EPSG编码与 添加到ACP中的数据所使用的坐标系保持一致。例 如,添加到场景中的数据所用坐标系为 EPSG 4547 - CM 114E,则bbox的EPSG编码为4547,取值 {bbox-epsg-4547}。
width: 地图瓦片宽度。取值 256,不建议修改。
height: 地图瓦片高度。取值 256,不建议修改。
srs: 地图服务坐标系。取值 EPSG:xxxx。其中的EPSG编码xxxx与bbox的EPSG编码保持一致。例如,EPSG:4547。
tyles: 地图服务样式。一般取值 设置为空即可,如果需要切换其他样式,取xml中对应图层的值。
format: 地图瓦片格式。取值 image%2Fpng,不建议修改。
TRANSPARENT: 地图支持透明度设置。取值 true,不建议修改。
加载地图服务
打开Explorer,新建工程,坐标系选择与编辑后的WMS服务地址一致的坐标系。
注意: 如果地图服务是自定义的投影坐标系,这里需要通过导入PRJ文件的方式设置坐标系信息。
在“设置”-“地图服务”中,设置好“服务类型”后,输入编辑后的服务地址并按下键盘回车键。
导入对应区域的3dt文件或shp数据在图层树中双击定位,即可在场景中找到并浏览地图服务。