arcgis server 10.1 发布动态图层展示海量及频繁更新的数据步骤

简介:

转自原文 arcgis server 10.1 发布动态图层展示海量及频繁更新的数据步骤

 

Arcgis server  发布动态图层及调用动态图层

做这个动态图层功能的原由是 有一个30万的数据需要通过arcgis GP工具转成shp然后渲染加载进地图,原来的做法是遍历生成shp面要素,读取面的环状点然后转成json,这个也能实现结果但是时间较长,与预期的时间差别较多,在公司内部讨论时有提到这个动态图层可以解决海量频繁数据的替换,要是每个都发一个图层服务这样不可取。故此讨论后研究这个神奇的功能。

1 首先发布一个地图,在发布时也可以选择(maping 允许每次请求修改图层顺序和符号) 本次是在发布后进行动态空间添加

 

 

2 找到发布的地图 点击 进入如下界面,红框是已经发布好的一个动态工作空间

 

 

3 点击添加按钮 弹出如下界面,选择需要发布的文件类型,请看文本框下拉项

 

 

 

 

4 根据文本框要求填写内容,如下图:点击确定—》保存并重新启动

 

 

5 发布完成后点击REST URL链接

 

 

6 如下界面出现红色框选的内容 则表示动态工作空间发布成功。

 

 

7 测试工作空间是否发布成功如下图:点击该按钮会弹出这个界面

 

这个界面

 

 

8 以下是实现的具体完整代码,感谢万能的网友提供参考。

复制代码
dojo.require("esri.map");    
      dojo.require("esri.layers.FeatureLayer");
       function loadDicMap(){
          //定义一个数据源 var dataSource = new esri.layers.TableDataSource(); //此处为我们设置的命名空间唯一标示号 dataSource.workspaceId = "dicMap"; //命名空间下面的shp 定义的空间文件夹 dataSource.dataSourceName = "ht201607200800.shp"; //定义一个图层数据源 var layerSource = new esri.layers.LayerDataSource(); //给图层数据源赋值 layerSource.dataSource = dataSource; //定义一个要素图层:注意链接为动态图层的地址dynamicLayer 可以在点击连接看到 var dynamicLayer = new esri.layers.FeatureLayer("http://172.16.10.22:6080/arcgis/rest/services/cwj/china/MapServer/dynamicLayer", { mode: esri.layers.FeatureLayer.MODE_ONDEMAND, outFields: ["*"], source: layerSource }); //定义线符号 //var lineSymbol = new esri.symbol.var lineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 255, 0]), 5); //定义面符号 /*var lineSymbol= new esri.symbol.SimpleFillSymbol("solid", new esri.symbol.SimpleLineSymbol("solid", new dojo.Color([255, 0, 255, 0.75]),5), new dojo.Color([255, 0, 255, 0.75])); //定义渲染器 var renderer = new esri.renderer.SimpleRenderer(lineSymbol); */ //多级渲染根据FId值 var symbol = new esri.symbol.SimpleFillSymbol(); symbol.setColor(new dojo.Color([150,150,150,0.5])); var renderer = new esri.renderer.ClassBreaksRenderer(symbol, "FID"); renderer.addBreak(0,1000,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([56, 168, 0,0.5]))); renderer.addBreak(1001,2000,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([139, 209, 0,0.5]))); renderer.addBreak(2001,3000,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([255,255,0,0.5]))); renderer.addBreak(3001,4000,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([255,128,0,0.5]))); renderer.addBreak(4001,Infinity,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([255,0,0,0.5]))); //定义渲染器  dynamicLayer.setRenderer(renderer); dynamicLayer.refresh(); //地图添加动态图层  map.addLayer(dynamicLayer); //获取点击要素的信息 dynamicLayer.on("click", function(evt){ //得到点击的graphics var graphic=evt.graphic; //得到该属性信息 var attributes=graphic.attributes; //将结果弹出一下  console.log(attributes); }) } <body> <input type="button" value="加载动态图层数据" onclick="loadDicMap()"/> </body>
复制代码

 

9 部分展示效果截图

 

 在此记下操了步骤,以供后期参看制作。

 

没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。


    本文转自wenglabs博客园博客,原文链接:http://www.cnblogs.com/arxive/p/6833295.html ,如需转载请自行联系原作者




相关文章
|
4月前
|
定位技术
ArcGIS中ArcMap栅格图层0值设置为NoData值的简便方法
ArcGIS中ArcMap栅格图层0值设置为NoData值的简便方法
|
4月前
|
定位技术 Windows
ArcGIS中ArcMap图层属性表的中文字段乱码的解决方法
ArcGIS中ArcMap图层属性表的中文字段乱码的解决方法
101 0
|
4月前
ArcGIS中ArcMap为不含坐标系的图层添加地理坐标系或投影坐标系
ArcGIS中ArcMap为不含坐标系的图层添加地理坐标系或投影坐标系
|
4月前
|
数据库
ArcGIS中ArcMap新建矢量点线面要素图层并手动划定要素图层范围区域
ArcGIS中ArcMap新建矢量点线面要素图层并手动划定要素图层范围区域
|
4月前
ArcGIS修改图层标签标注(Label)对应字段与内容的方法
ArcGIS修改图层标签标注(Label)对应字段与内容的方法
|
4月前
|
定位技术
ArcGIS批量计算图层中矢量要素面积——ArcMap
ArcGIS批量计算图层中矢量要素面积——ArcMap
|
4月前
|
定位技术
ArcGIS矢量图层投影与地理坐标系转为投影坐标系——ArcMap
ArcGIS矢量图层投影与地理坐标系转为投影坐标系——ArcMap
|
9月前
|
数据可视化 定位技术
ArcGIS应用基础2 制作数据统计图
😃在本文中,你将学会ArcGIS要素可视化,按空间位置选择要素,属性表汇总统计及统计图表绘制的基本流程
139 0
|
9月前
|
存储
ArcGIS:模型构建器内变量的数据类型中栅格图层和栅格数据集的区别
ArcGIS:模型构建器内变量的数据类型中栅格图层和栅格数据集的区别
61 0
|
9月前
ArcGIS:如何进行离散点数据插值分析(IDW)、栅格数据的重分类、栅格计算器的简单使用、缓冲区分析、掩膜?
ArcGIS:如何进行离散点数据插值分析(IDW)、栅格数据的重分类、栅格计算器的简单使用、缓冲区分析、掩膜?
233 0