介绍
ArcGIS Server10.1版本之后,ArcGIS Server才提供的一种新的功能:动态图层。准确的说,动态图层并不是一种新的地图服务,它更像是地图服务(MapServer)的一种扩展。不需要将shp文件发布为服务,服务器可以直接读取shp文件在前端显示,实现拓展。
(1)可在dynamicLayer中添加新图层,实现拓展;
(2)修改原有图层的属性或者样式。
dynamicLayer发布
新建mxd文档,添加GroupLayer,然后以发布动态服务形式发布。
dynamicLayer 工作空间
添加动态图层数据至选定的工作空间,支持的工作空间类型有:企业级地理数据库、Shapefile文件夹、个人文件地理数据库、栅格数据库;
工作空间ID:新增的工作空间命名
位置:工作空间的访问路径。ShapeFile类型的工作空间为一个文件夹(arcserver对该文件夹有读取权限)
注册数据源:
将数据源注册到服务器中,可验证server用户是否可读取该数据源
数据访问
1.获取指定的动态图层,使用 dynamicLayer接口
Layer:
{
“id”: 0, //可选
“source”: {
“type”: “dataLayer”,
“dataSource”: {
“type”: “table”, 栅格raster,矢量table
“workspaceId”: “ShpWorkspaceID”, //工作空间ID
“dataSourceName”: “I_20211223113524.shp” //图层名
}
}
}
{
"id": 0,
"source": {
"type": "dataLayer",
"dataSource": {
"type": "table",
"workspaceId": "ShpWorkspaceID",
"dataSourceName": "I_20211223113524.shp"
}
}
}
2.访问指定的地块,dynamicLayer+query接口
http://192.168.200.52:16080/arcgis/rest/services/YZT/DynamicLayer/MapServer/dynamicLayer/query?layer={"id":0,"source":{"type":"dataLayer","dataSource":{"type":"table","workspaceId":"ShpWorkspaceID","dataSourceName":"I_20211223113524.shp"}}}&where=FID=0&outFields=*&returnGeometry=true&f=json
栅格类型的工作空间访问格式:
http://192.168.1.147:6080/arcgis/rest/services/TongJiYuan/DynamicLayer/MapServer/dynamicLayer?layer=%7B%22id%22%3A0%2C%22source%22%3A%7B%22type%22%3A%22dataLayer%22%2C%22dataSource%22%3A%7B%22type%22%3A%22raster%22%2C%22workspaceId%22%3A%22tifID%22%2C%22dataSourceName%22%3A%22test.tif%22%7D%7D%7D&f=html