ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试

简介: 原文:ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试                                                                                               ...
原文: ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试

                                                                                                                     第一篇、GP降雨量等值线建模、发布及测试

 

       在水利、气象等行业中,要在WebGIS中实现空间分析功能,如绘制等值线、等高线、等直面、缓冲区等都是经常遇到,经过一段时间的学习和研究,查阅ESRI文档,请教他人,终于可以说是初步实现了等值线功能,这里记录下来详细的操作步骤和图片说明,一方面是对此次努力的总结,另一方面希望也能给后来用到这方面的其他同志们,起个抛砖引玉的作用。

      下一篇是关于Silverlight调用GP服务的代码实现,地址:http://blog.csdn.net/taomanman/article/details/7937879,当然只是初步实现,关于等值线注记等还需继续完善,欢迎大家一起探讨技术。

       以下是在ArcMap 10中操作详细步骤:

1)、打开ArcMap 10,载入一个县界的面层,这里只是演示用,只是便于后面用于等值线裁剪使用。

2)、在模型建立之前首先看一个GP文件结构图,如下:

图一

这里简单介绍下:

a<ToolShare>是本地磁盘下某个目录下的一个文件夹,存放GP模型中所有使用到的文件夹、文件、模型、地图mxd文档等。

bToolData文件夹下存放Schema文件地理数据库,然后该地理数据库中存放的是输入要素点集。

cScripts文件夹下存放的是ArcGIS中模型中使用到的Python脚本,Python脚本是ArcGIS中的标准脚本语言。

dDoc文件夹下存放的是模型的使用手册和帮助文档等内容。

eScratch文件夹下存放Scratch文件地理数据库,如果有shp等文件也可以导入到该文件地理数据库中去。并且GP模型的工作空间通常也是指向Scratch文件夹。

3)、在磁盘目录,如D:\下新建一个文件夹,比如命名为SimpleGPService,然后拷贝该文件夹路径D:\SimpleGPService,到ArcMap中的Catalog目录找到Folder Connections,右键选择Connect Folder,然后将拷贝的目录粘贴,并进行文件关联,如下图所示:

图二

 

图三

接下来,右键该目录,选择新建Folder,命名为ContourService,如下图

图四

继续在ContourService文件夹下新建2个文件夹,分别为ScratchToolData目录,如下图

图五

然后分别在ScratchToolData下新建文件地理数据库,名称分别为ScratchSchema,如下图所示:

图六

按照上面的说明,建立完成后,文件目录结构的样式应该如下图所示:

图七

右键点击Schema,选择新建一个要素类Feature Class,如下图所示:

图八

这里命名为RainPoint,要素类型选择Point Features,如下图所示:

图九

接着选择“下一步”,这里的坐标系统选择“Unknow”即可,无需import常用的坐标系统,如下图所示:

图十

点击“下一步”

图十一

点击下一步

图十二

继续点击下一步,添加一个新的字段,YL,字段类型为Double,这个是降雨量数值字段,根据需要按照命名规则可自定义,因为这里定义的字段,后来在GP调用时是需要名称一致的,需要注意一下,如下图所示:

   图十三

点击“finish”完成。现在文件夹目录结构如下:

对于需要的剪切图层,可以导入到Scratch文件地理数据库中,如下图:

图十四

由于生成的等值线往往是一个地区,所以需要根据某个范围进行裁剪操作,这里我导入的是一个县界图层的shp文件,并为Output Feature Class命名,这里为ClipFeature,如下图:

图十五

点击OK即可。

此时ArcMap中大致如下图所示:

图十六

4)、接下来创建工具,右键ContourService文件夹,新建一个Toolbox

图十七

 

命名为CustomContourServiceTool,此时目录结构如下:

图十八

右键选择”CustomContourServiceTool”工具,新建一个Model,如下图所示

图十九

此时会打开一个建模窗口,如下图:

图二十

要修改模型的名称,请在模型工作区内右键,选择“Model Property

图二十一

在打开的属性窗口中,重新名称模型,并勾选相对存储路径,如下图所示:

图二十二

5)、正式开始建模,打开Toolboxes,选择“克里金”,如下图所示:

图二十三

Kriging工具直接拖到模型工作区中,如下图:

图二十四

右键选择Kriging,即中间的圆角矩形框,添加输入点要素的参数,如下图:

图二十五

添加后的效果图如下所示:

图二十六

由于该点要素是一个参数,首先给该点设置成模型参数,如下图:

图二十七

如上添加Model Parameter后,会自动添加一个P在上方显示,右键选择“Property

图二十八

切换到Data Type节,选择数据类型为“Feature Set

图二十九

然后从GP文件结构中的ToolData\Schema\RainPoint中导入输入要素和符号,如下图

图三十

图三十一

点击确定后,如下图

图三十二

此时,需要修改工作空间,选择“Geoprocessing->Enviroments”,如下图:

图三十三

Workspace指向我们之前创建的GP目录下的Scratch文件夹

图三十四

完成后如下

图三十五

双击打开模型中的Kriging这个圆角矩形框,

图三十六

修改输出的Raster路径为%scratchworkspace%,修改后应该如下图所示:

图三十七

接下来,我们继续添加模型元素,这次我们要添加Contour等值线工具

图三十八

将该工具直接拖到模型工作区域

图三十九

点击模型工具栏中的Connect,将Kriging的输出和Contour工具进行连接操作

图四十

右键Contour,创建参数变量Contour interval

图四十一

 

图四十二

同样为该变量创建模型参数P,并双击该变量,输入一个值,比如10

图四十三

此时的模型如下图所示:

图四十四

接下来需要进行的操作是裁剪,在工具箱中找到Clip工具,拖放到模型工作区域中来

图四十五

同样将Contour的输出结果和Clip操作进行连接

 

图四十六

右键Clip,创建Clip Features变量

图四十七

双击添加的Clip Features,选择之前导入到Scratch目录下的那个ClipFeature,如下图

图四十八

接下来修改模型中的输出路径,之前已经修改Kriging了,按照类似的方法,修改ContourClip即可,如下图

图四十九

图五十

最后为输出要素集添加输出参数P

图五十一

最终一个简单的等值线模型创建成功,如下图

图五十二

 

6)、模型测试

图五十三

Catalog中选择模型,右键选择“Debug”,此时看到如下窗口

图五十四

通过点击Add Feature向地图上添加若干个要素点,并输入YL值进行测试

图五十五

点击“OK”按钮,进行模型测试

图五十六

等值线就出来了

7)、发布GP服务,并添加Toolbox中进行再次测试

图五十七

图五十八

图五十九

图六十

这样GIS服务器上就有了这个名为CustomContourServiceToolGP服务了。点击ArcMap中的工具栏中的ArcToolbox window

图六十一

右键添加新的Toolbox

图六十二

图六十三

这样之前我们创建并发布的GP服务就添加到了工具箱中了,再次测试,双击这个工具

图六十四

图六十五

同样在地图上添加要素点进行测试即可。

图六十六

至此,整个GP建模及发布及测试已经全部完成。

 

附注:GP服务的REST地址,右键GIS Server上的服务,选择Service Properties

图六十七

在打开的窗口中,拷贝URL

图六十八

http://localhost/arcgis/services/CustomContourServiceTool/GPServer

类似这样的Url,然后在arcgisservices之间加上一个rest,现在的URL形式如下

http://localhost/arcgis/rest/services/CustomContourServiceTool/GPServer

打开浏览器,输入以上URL,即可访问

图六十九

点击Task进入

 

图七十

URLGPURL地址,以后在程序开发中,会使用到。

从这个URL可以得到如下信息:

URL

http://localhost/arcgis/rest/services/CustomContourServiceTool/GPServer/ContourServiceTool%20Model

输入参数:Input_point_features和Contour_interval

输出参数:Contour_Kriging1_Clip_shp

 

===========================================================================

如果觉得对您有帮助,微信扫一扫支持一下:



目录
相关文章
|
21天前
|
编解码 人工智能 自然语言处理
迈向多语言医疗大模型:大规模预训练语料、开源模型与全面基准测试
【10月更文挑战第23天】Oryx 是一种新型多模态架构,能够灵活处理各种分辨率的图像和视频数据,无需标准化。其核心创新包括任意分辨率编码和动态压缩器模块,适用于从微小图标到长时间视频的多种应用场景。Oryx 在长上下文检索和空间感知数据方面表现出色,并且已开源,为多模态研究提供了强大工具。然而,选择合适的分辨率和压缩率仍需谨慎,以平衡处理效率和识别精度。论文地址:https://www.nature.com/articles/s41467-024-52417-z
41 2
|
1月前
|
测试技术
谈谈【软件测试的基础知识,基础模型】
谈谈【软件测试的基础知识,基础模型】
27 5
|
1月前
|
敏捷开发 测试技术
开发模型(瀑布、螺旋、scrum) 和 测试模型(V、W)、增量和迭代、敏捷(思想)及敏捷开发 scrum
文章详细介绍了软件开发过程中的不同开发模型(瀑布、螺旋、Scrum)和测试模型(V模型、W模型),以及增量和迭代的概念,最后阐述了敏捷思想及其在敏捷开发(如Scrum)中的应用。
65 0
开发模型(瀑布、螺旋、scrum) 和 测试模型(V、W)、增量和迭代、敏捷(思想)及敏捷开发 scrum
|
1月前
|
API
2024-05-14 最新!OpenAI 新模型 GPT-4 omni 简单测试,4o速度确实非常快!而且很便宜!
2024-05-14 最新!OpenAI 新模型 GPT-4 omni 简单测试,4o速度确实非常快!而且很便宜!
41 0
|
1月前
|
机器学习/深度学习 人工智能 并行计算
StableDiffusion-01本地服务器部署服务 10分钟上手 底显存 中等显存机器 加载模型测试效果 附带安装指令 多显卡 2070Super 8GB*2
StableDiffusion-01本地服务器部署服务 10分钟上手 底显存 中等显存机器 加载模型测试效果 附带安装指令 多显卡 2070Super 8GB*2
32 0
|
2月前
|
人工智能 测试技术 PyTorch
AI计算机视觉笔记二十四:YOLOP 训练+测试+模型评估
本文介绍了通过正点原子的ATK-3568了解并实现YOLOP(You Only Look Once for Panoptic Driving Perception)的过程,包括训练、测试、转换为ONNX格式及在ONNX Runtime上的部署。YOLOP由华中科技大学团队于2021年发布,可在Jetson TX2上达到23FPS,实现了目标检测、可行驶区域分割和车道线检测的多任务学习。文章详细记录了环境搭建、训练数据准备、模型转换和测试等步骤,并解决了ONNX转换过程中的问题。
|
3月前
|
机器学习/深度学习 人工智能
高于临床测试3倍准确率!剑桥大学开发AI模型,提前6年预测阿尔茨海默症
【8月更文挑战第9天】剑桥大学研发的人工智能模型在预测阿尔茨海默症方面取得突破,准确率比传统临床测试高三倍,能提前六年预测疾病发生。该模型基于深度学习,利用大量临床及神经影像数据识别生物标志物,预测准确性达80%。这一成果有望促进早期干预,改善患者预后,但仍需更大规模研究验证,并解决隐私与公平性等问题。论文已发表于《The Lancet》子刊。
53 6
|
4月前
|
机器学习/深度学习 存储 数据可视化
谷歌的时间序列预测的基础模型TimesFM详解和对比测试
在本文中,我们将介绍模型架构、训练,并进行实际预测案例研究。将对TimesFM的预测能力进行分析,并将该模型与统计和机器学习模型进行对比。
163 2
|
3月前
|
机器学习/深度学习 数据采集 测试技术
利用Python实现简单的机器学习模型软件测试的艺术与科学:探索自动化测试框架的奥秘
【8月更文挑战第27天】在本文中,我们将一起探索如何通过Python编程语言创建一个简单的机器学习模型。我们将使用scikit-learn库中的线性回归模型作为示例,并通过一个实际的数据集来训练我们的模型。文章将详细解释每一步的过程,包括数据预处理、模型训练和预测结果的评估。最后,我们会用代码块展示整个过程,确保读者能够跟随步骤实践并理解每个阶段的重要性。
|
4月前
|
安全 算法 测试技术
淘宝API接口测试中的安全性保障
在电商领域,淘宝API连接商家与消费者,安全性至关重要。本文探讨了确保API接口测试安全的方法与最佳实践:接口签名确保请求完整性;Token方案防抓包和数据爬取;使用Postman和Katalon Studio提高测试效率。此外,还强调了使用授权认证、数据加密、参数验证及限制请求频率等安全配置的重要性。最后,提醒测试者注意账户授权、数据格式、遵循安全规范及保持工具更新。这些措施共同保障了API的安全性和稳定性。