ArcGIS Server,rest路径输入要素json 格式描述
以下内容只测试了简单线,
在ArcGIS Server 的rest路径下可以对服务进行操作,如Query等,这些操作可以输入json 格式要素描述或运行得到即输出json格式要素描述。
如博客:http://www.cnblogs.com/mumu122GIS/p/6097687.html 中GP服务可以输入自定义要素,那么怎样获取符合输入标准的json格式要素描述以便输入呢?
或者怎样将运行结果(json格式要素描述)展现到ArcMap中呢?
以Server自带的几何服务的cut功能为例,几何服务cut功能API,API中示例链接
可以看到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 格式描述的更多相关文章
- SQL Server中将查询结果转换为Json格式脚本
这篇文章主要介绍了SQL Server中将查询结果转换为Json格式脚本分享,本文直接给出实现代码,需要的朋友可以参考下 原文地址:http://www.jb51.net/article/61462. ...
- arcgis server缓存路径修改
由于空间不够用,需要更换瓦片的输出路径,具体的修改方法如下: 1.打开ArcCatalog,打开GIS服务器,找到已经添加的gis服务器,一般都是机器名,如下所示,右键我的gis服务器(admin-t ...
- ArcGIS Server 10.1发布要素服务(FeatureLayer server)时遇到的数据库注册问题
在发布要素服务的最后一步遇到了一个问题: SEVERITY STATUS CODE DESCRIPTION NAME TYPE DATA FRAME High Unresolved 00090 Fea ...
- Spring MVC 学习笔记 json格式的输入和输出
Spring mvc处理json需要使用jackson的类库,因此为支持json格式的输入输出需要先修改pom.xml增加jackson包的引用 <!-- json --> <dep ...
- mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler
mybatis 比 ibatis 改进了很多,特别是支持了注解,支持了plugin inteceptor,也给开发者带来了更多的灵活性,相比其他ORM,我还是挺喜欢mybatis的. 闲言碎语不要讲, ...
- JSON格式解析和libjson使用简介(关于cjson的使用示例)
JSON格式解析和libjson使用简介 在阅读本文之前,请先阅读下<Rss Reader实例开发之系统设计>一文. Rss Reader实例开发中,进行网络数据交换时主要使用到了两种数据 ...
- ArcGIS Server 10.2 实战(一)Asp.net MVC与JSON数据妙用实现动态生成要素图层
今年7月刚刚发布的ArcGIS 10.2为GIS的web开发带来了一个很实在的功能,JSON转要素.以往GIS图层外部数据(如文本数据,数据库数据)动态地写入地图服务中的图层是一件不可想象的事情,如今 ...
- ArcGIS Server 10.2 实战(二)动态修改要素数据的地理处理服务
上一篇<ArcGIS Server 10.2 实战(一)Asp.net MVC与JSON数据妙用实现动态生成要素图层>介绍了如何用JSON转要素的地理处理服务,实现了动态创建点要素并加载到 ...
- ArcGIS Server 增加缓存路径
Server缓存服务,由于缓存文件经常比较大,默认放在C盘下容易导致磁盘空间不够,因此Server提供了增加缓存路径的方法来解决该问题. 增加的路径有两种,一种是Server所在服务器增加一个和原缓存 ...
随机推荐
- 转:Autodesk 2017软件下载+注册机+破解方法(持续更新)
转载自http://blog.sina.com.cn/s/blog_710225790102w03e.html Autodesk 2017安装步骤: 安装Autodesk 2017相关软件 使用序列号 ...
- 编辑 Ext 表格(二)——— 编辑表格元素
一.编辑单元格 Ext 中通过配置表格的属性 plugins 来设置表格是否可编辑, 表格的配置具体如下: var gridTable = Ext.create('Ext.grid.Panel', { ...
- C语言字符串操作总结大全
1)字符串操作 strcpy(p, p1) 复制字符串 函数原型strncpy(p, p1, n) 复制指定长度字符串 函数原型strcat(p, p1) 附加字符串 函数原型strn ...
- 计算机网络中的帧封装(C实现)
这段时间开始复习计算机网络,看到帧封装这一节,结合以前的课程设计,就用C写了个帧封装的程序,说实话C学的确实不怎么样,实现的时候对于文件操作那部分查了好多资料,下面说说帧封装是啥情况. 学过计算机网络 ...
- SqlServer按时间自动生成生成单据编号
SET @_tmpDateTime = GETDATE() EXEC dbo.Dtw_Common_GenerateProofCode @ProofType = 'SO',@WhsCode=@WhsC ...
- Merge的用法
merge的使用说明: merge [into] [目标表] using <源表> on 条件 when matched 操作 when not matched 操作; 首先,请参看两张表 ...
- 自动生成V字型
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- 【CentOS】ifconfig命令 :command not found & yum命令 :cannot find a valid baserl for repo: base/7/x86_64
第一课,学习的是安装linux的远程连接.相信看阿铭视频的朋友们都会知道,第一个开机输入完root后要敲的命令就是--ifconfig 非常幸运,这迎来了我的第一个问题 这时候你会选择百度,会搜索到这 ...
- cookie编码乱码问题与cookie禁用后session操作
Cookie传输的值只能是ASCII码,该编码表相对老旧不含有很多符号与文字 特别是中文,所以在cookie传值过程中需要先转成相应的ASCII编码再解析 如下 URLEncoder.encode(& ...
- linux 限制root SSH登陆和限制su
linux 限制root用户SSH登录: 1.修改SSHD服务的配置文件/etc/ssh/sshd_config 将#PermitRootLogin yes 改为PermitRootLogi ...