以下内容只测试了简单线,

在ArcGIS Server 的rest路径下可以对服务进行操作,如Query等,这些操作可以输入json 格式要素描述或运行得到即输出json格式要素描述。

如博客:http://www.cnblogs.com/mumu122GIS/p/6097687.html  中GP服务可以输入自定义要素,那么怎样获取符合输入标准的json格式要素描述以便输入呢?

或者怎样将运行结果(json格式要素描述)展现到ArcMap中呢?

json格式的要素描述

以Server自带的几何服务的cut功能为例,几何服务cut功能APIAPI中示例链接

可以看到Server rest路径下,json格式要素描述(包括输入或输出)基本为

{"geometryType" : "esriGeometryPolyline","geometries" :[{"paths" : [[[6805743,1843230],[6805740,1843619]]]},{"paths":[[[6802621,1843581],[6805496,1844963]]]}]}

或者{"paths" : [[[6805210,1843869],[6805842,1843529],[6805259,1843173]]]}

在ArcMap中有Features To Json和Json To Features工具。json工具集

尝试将上面提供的json格式要素描述保存为.json文件(假设为A.json)(如,先创建.txt文件,复制粘贴json格式要素描述,保存,修改文件后缀为.json)

使用json to Feature 工具,输入A.json文件,发现报错,即A.json文件不符合工具的输入格式要求。

我们知道,可以通过Features To Json工具获取json文件,那么该文件应该符合Json To Features工具的格式要求,经过测试得到验证。

那么对比 通过Features To Json工具获取json文件(假设为B.json)和 上面提供的json格式要素描述保存得到的A.json文件,看差别在哪,有没有可能将A.json转换为B.json。

观察后可知,相对A.json文件,B.json只是相对多了些空间参考等信息,主要内容为坐标点。那么ArcMap中创建与A.json空间参考一致的同种要素,使用Features To Json导出C.json文件,

用A.json中坐标   替换C.json文件中相对应内容,然后使用Json To Features将更新的C.json文件导入到ArcMap中,测试可行。

即,假设现有rest路径下json格式要素描述如:{"geometryType" : "esriGeometryPolyline","geometries" :[{"paths" : [[[6805743,1843230],[6805740,1843619]]]},{"paths":[[[6802621,1843581],[6805496,1844963]]]}]}

ArcMap中绘制简单线要素,使用Features To Json导出一个json文件,文件内容:{"displayFieldName":"","fieldAliases":{"FID":"FID","Id":"Id","Shape_Length":"Shape_Length"},"geometryType":"esriGeometryPolyline","spatialReference":{"wkid":102100,"latestWkid":3857},"fields":[{"name":"FID","type":"esriFieldTypeOID","alias":"FID"},{"name":"Id","type":"esriFieldTypeInteger","alias":"Id"},{"name":"Shape_Length","type":"esriFieldTypeDouble","alias":"Shape_Length"}],"features":[{"attributes":{"FID":1,"Id":0,"Shape_Length":1939.2244949671767},"geometry":{"paths":[[[12485220.022887718,3969954.2205385119],[12487129.927600328,3969618.2806173488]]]}}]}

用蓝色内容替换红色内容。

使用Json To Features工具将更新后的json文件导入,成功。

注:这里官方案例使用的空间参考与ArcMap中绘制简单线要素时使用的空间参考不同,仅作示例,实际测试时,rest路径获取json格式要素描述与ArcMap中要素使用的都是3857,坐标与编码

这里只测试了简单线,面状要素或者有更多属性时怎样操作还未测试。或许有更简单的方法,只是笔者还不知道.......

另外,test路径下cut功能运行的结果的json描述带有空格,直接拷贝会失败。解决方法是将其拷贝到一个word文档中,用“替换”功能将“ ”替换为“”(即空格替换为空),可删除所有空格。之后再拷贝到.json文件中。

ArcGIS Server,rest路径输入要素json 格式描述的更多相关文章

  1. SQL Server中将查询结果转换为Json格式脚本

    这篇文章主要介绍了SQL Server中将查询结果转换为Json格式脚本分享,本文直接给出实现代码,需要的朋友可以参考下 原文地址:http://www.jb51.net/article/61462. ...

  2. arcgis server缓存路径修改

    由于空间不够用,需要更换瓦片的输出路径,具体的修改方法如下: 1.打开ArcCatalog,打开GIS服务器,找到已经添加的gis服务器,一般都是机器名,如下所示,右键我的gis服务器(admin-t ...

  3. ArcGIS Server 10.1发布要素服务(FeatureLayer server)时遇到的数据库注册问题

    在发布要素服务的最后一步遇到了一个问题: SEVERITY STATUS CODE DESCRIPTION NAME TYPE DATA FRAME High Unresolved 00090 Fea ...

  4. Spring MVC 学习笔记 json格式的输入和输出

    Spring mvc处理json需要使用jackson的类库,因此为支持json格式的输入输出需要先修改pom.xml增加jackson包的引用 <!-- json --> <dep ...

  5. mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler

    mybatis 比 ibatis 改进了很多,特别是支持了注解,支持了plugin inteceptor,也给开发者带来了更多的灵活性,相比其他ORM,我还是挺喜欢mybatis的. 闲言碎语不要讲, ...

  6. JSON格式解析和libjson使用简介(关于cjson的使用示例)

    JSON格式解析和libjson使用简介 在阅读本文之前,请先阅读下<Rss Reader实例开发之系统设计>一文. Rss Reader实例开发中,进行网络数据交换时主要使用到了两种数据 ...

  7. ArcGIS Server 10.2 实战(一)Asp.net MVC与JSON数据妙用实现动态生成要素图层

    今年7月刚刚发布的ArcGIS 10.2为GIS的web开发带来了一个很实在的功能,JSON转要素.以往GIS图层外部数据(如文本数据,数据库数据)动态地写入地图服务中的图层是一件不可想象的事情,如今 ...

  8. ArcGIS Server 10.2 实战(二)动态修改要素数据的地理处理服务

    上一篇<ArcGIS Server 10.2 实战(一)Asp.net MVC与JSON数据妙用实现动态生成要素图层>介绍了如何用JSON转要素的地理处理服务,实现了动态创建点要素并加载到 ...

  9. ArcGIS Server 增加缓存路径

    Server缓存服务,由于缓存文件经常比较大,默认放在C盘下容易导致磁盘空间不够,因此Server提供了增加缓存路径的方法来解决该问题. 增加的路径有两种,一种是Server所在服务器增加一个和原缓存 ...

随机推荐

  1. linux下 chown命令

    对Document/ 目录下的所有文件与子目录执行相同的所有者变更,修改所有者为users用户组的username用户 chown -R username:users Document/ userna ...

  2. JavaScript之bind,call,apply

    参考: http://rangercyh.blog.51cto.com/1444712/1615809 function foo(a,b) { this.x = this.x + a + b; } / ...

  3. unlink和close关系

    今天看到nginx用文件锁实现互斥的实现方案时,发现,unlink文件后还可需用fd,很是纳闷!于是搜索到此文,并自测了下,涨姿势了~分享给大家~ 原理: 每一个文件,都可以通过一个struct st ...

  4. javascript的window.ActiveXObject对象,区别浏览器的方法

    (window.ActiveXObject)的作用,用来判断浏览器是否支持ActiveX控件,如果支持ActiveX控件,我们可以利用var xml=new ActiveXObject("M ...

  5. SQL语句执行效率及分析(note)

    1.关于SQL查询效率,100w数据,查询只要1秒,与您分享: 机器情况p4: 2.4内存: 1 Gos: windows 2003数据库: ms sql server 2000目的: 查询性能测试, ...

  6. October 22nd Week 43rd Saturday, 2016

    Beware the barrenness of a busy life. 当心忙碌的生活荒芜了人生. Recently I was busy in debugging an equipment, I ...

  7. bzoj3439 trie+可持久化线段树

    挺好想的 trie建树后,按dfn序建可持久化 注意:计数变量多的题目一定要注意检查会不会用的时候搞混了 #include <cstdio> #include <cstdlib> ...

  8. CentOS7安装Oracle 11gR2 安装

    概述 Oracle 在Linux和window上的安装不太一样,公司又是Linux系统上的Oracle,实在没辙,研究下Linux下Oracle的使用,oracle默认不支持CentOS系统安装,所以 ...

  9. 给Jquery动态添加的元素添加事件

    给Jquery动态添加的元素添加事件 来源:[http://wangqixia.diandian.com/post/2011-05-10/6597866] 我想很多人都会向我一样曾经 被新元素的事件绑 ...

  10. 网友分享 调用dll的语音朗读 不能变速,不好

    调用   speeker.dll   这个文件被本人 放在文件里面,若有人需要可以 联系我 需要 mfc100ud.dll msvcr100d.dll 注:可以用D7 自带的ActiveX 里面的控件 ...