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

在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. win8环境安装.net3.5

    材料:光盘镜像(必须原版镜像) 1,以管理员身份运行CMD 2,打开镜像,找到盘符比如我的是G盘 3, 输入 X代表你的ISO镜像的盘符 dism.exe /online /enable-featur ...

  2. java冒泡排序

    public class BubbleSort { public static void main(String[] args) { int score[] = {1,4,5,7,2,3,9,0,6, ...

  3. Java的几种常用设计模式

    何为设计模式? 就是对一些常见问题进行归纳总结,并针对具体问题给出一套通用的解决办法(强调的是解决问题的思想): 在开发中,只要遇到这类问题,就可以直接使用这些设计模式解决问题. ---------- ...

  4. C# 显示问题

  5. 小议ARM寄存器

    ARM微处理器一共有37个32位寄存器,其中包括31个通用寄存器和6个状态寄存器,但是这些寄存处不能同时访问.但是通用寄存器R14 - R0 ,程序计数器PC(即R15),程序状态寄存器都是可以任何时 ...

  6. OpenStack 云计算基础知识

    OpenStack Docs: Currenthttp://docs.openstack.org/ OpenStack云计算快速入门教程 - OpenStack及其构成简介_服务器应用_Linux公社 ...

  7. 【leetcode】Find Minimum in Rotated Sorted Array I&&II

    题目概述: Suppose a sorted array is rotated at some pivot unknown to you beforehand.(i.e., 0 1 2 4 5 6 7 ...

  8. hdu 2489(枚举 + 最小生成树)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2489 思路:由于N, M的范围比较少,直接枚举所有的可能情况,然后求MST判断即可. #include ...

  9. Linux第01天

    Linux第01天 1.虚拟机安装linux(centos 32bit) 1.1 虚拟机安装前置工作的准备,如内存.硬盘.CPU分配.镜像下载等 1.2 安装方式(图形界面或者命令行 推荐图形界面即直 ...

  10. python 函数的参数定义及调用

    参数定义:1. 位置参数:    这是熟悉的标准化参数,位置参数必须在调用函数中定义的准确顺序来传递,在没有默认参数的情况下,传入参数    的精确数目必须和声明的数目一致. def foo(who, ...