ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)

这篇具有很好参考价值的文章主要介绍了ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文以等高线分析为例,使用ArcMap软件,从GP分析服务的创建、发布、调用全过程进行演示。

使用ArcGIS Pro发布GP服务请跳转:ArcGIS Pro创建、发布、调用GP服务全过程示例(等高线分析)

本文示例使用软件:

ArcGIS Desktop10.3.1

ArcGIS JS API4.16

注:阅读本文前需要对ArcGIS GP服务,模型构建器等有一定了解,本文不会详细描述GP工具的构建过程。

需求:通过在前端绘制或导入多边形范围,设置等高距,生成绘制区域的等高线。

ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)

1、数据准备

(1)准备一个地形文件,可以是tif或者img等格式

(2)准备一个shp面要素文件,用来指定分析范围

2、创建GP模型

创建等高线分析GP模型:

(1)使用Extract by Mask工具,裁剪出输入要素的多边形范围的栅格数据

(2)根据第一步裁剪的栅格结果,执行等高线分析,生成线要素

ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)

注:蓝色椭圆中的为输入参数,绿色椭圆中的是输出参数,黄色矩形为ArcGIS工具箱中的分析工具。

参数说明: 

InputFeature:等高线分析范围数据,shp格式,可自行创建个shp文件。在地形范围内绘制一个范围(使用第一步准备的shp数据),

InputRaster:地形dem数据,可以使用tif格式,支持经纬度坐标或投影坐标,根据实际情况选择需要的地形路径(第一步准备的地形数据)

CoutourInterval:等高线间距,默认单位米

OutputFeature:输出的等高线线要素

3、运行并发布GP服务

(1)双击运行GP服务

ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)

 (2)发布服务,选择地理处理->结果,找到运行的GP结果,右键发布服务

ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)

 

设置发布服务参数:

ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)

设置好后,点击分析,分析如果没有错误,使用Publish发布GP服务

4、访问并验证GP服务

发布好的服务通过rest进行访问验证,示例:

ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)

打开GP服务执行页面,若有示例参数,可在浏览器验证GP服务。

输入分析范围,示例:

{"features":[{"geometry":{"spatialReference":{"wkid":4490},"rings":[[[119.26767045543811,25.942444646116375],[119.33522941013436,25.950904529325477],[119.33567059875381,25.968306654427234],[119.30431227697976,25.970283578404857],[119.28396539929878,25.960850662458895],[119.2740650356365,25.952524659479167]]]},"symbol":{"type":"esriSFS","color":[0,0,255,26],"outline":{"type":"esriSLS","color":[255,255,255,255],"width":2,"style":"esriSLSSolid"},"style":"esriSFSSolid"},"attributes":{},"popupTemplate":null}]}

并设置好等高距,输入栅格等参数,可执行工具得出结果:

ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)

5、调用GP服务

 先通过绘制得到绘制的多边形graphic,然后设置参数,利用Geoprocessor来执行GP服务得到结果,再将结果的等高线绘制到地图上。

    startExcute (graphic) {
      const featureSet = new FeatureSet()
      featureSet.features = [graphic]
      const inputRaster = {
        'url': this.demDatas[this.value].url,
        'format': this.demDatas[this.value].format || 'tif'
      }
      let params = {
        "inputFeature": featureSet,
        "contourInterval": this.contourInterval,
        "inputRaster": inputRaster
      }
      
      const geop = new this.Geoprocessor(this.contourUrl)
      geop.outSpatialReference = {
        wkid: this.map.spatialReference.wkid
      }
      if (this.isAsync) { //发布的服务是异步时的处理方式
        this.loading = true
        geop.submitJob(params).then(data => {
          var options = {
            interval: 1500,
            statusCallback: function (j) {
              // console.log("Job Status: ", j.jobStatus);
            }
          }
          geop.waitForJobCompletion(data.jobId, options).then(res => {
            geop.getResultData(res.jobId, 'OutputFeature').then(item => {
              this.drawLine(item.value.features)
              this.loading = false
            })
          }, error => {
            this.loading = false
            this.$message.error('分析出错,请联系管理员!')
            console.error('等高线分析出错:' + error)
          }).catch(error => {
            this.loading = false
            this.$message.error('分析出错,请联系管理员!')
            console.error('等高线分析出错:' + error)
          })
        })
      } else { //发布的服务是同步时的处理方式
        this.loading = true
        console.log('params2', params)
        geop.execute(params).then(data => {
          this.loading = false
          this.drawLine(data.results[0].value.features)
          console.log('datas', data)
        }, error => {
          this.loading = false
          this.$message.error('分析出错,请联系管理员!')
          console.error('等高线分析出错:' + error)
        })
      }
    }

注:代码只是截取的一部分代码,参考使用,具体调用根据自己的开发的实际情况来写。

<全文完>文章来源地址https://www.toymoban.com/news/detail-482359.html

到了这里,关于ArcGIS Desktop(ArcMap)创建、发布、调用GP服务全过程示例(等高线分析)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ArcGIS Enterprise + ArcGIS Pro 常用服务类型发布

    门户连接 首先Pro需要先连接portal 添加portal门户地址,注意只到WA一级地址,并登录: 登录完成后,右键,设置为活动门户: 关联数据文件夹: 拖拽数据到地图视图窗口加载数据: 右键图层发布web layer: 这里为发布简述,采用复制发布的形式,选择Map Image 形式: 然后点击

    2024年02月10日
    浏览(41)
  • ArcGIS Pro发布地图服务(影像、矢量)

    做GIS一般都是用ArcMap发布影像或者矢量服务,由于ArcGIS后续不在更新ArcMap,改用ArcGIS Pro,本文对ArcGIS Pro发布服务进行说明。 使用ArcMap发布地形请跳转:ArcGIS Desktop发布地形高程服务(DEM/DSM) 使用ArcGIS Pro发布地形请跳转:ArcGIS Pro发布地形高程服务(DEM/DSM) 本文示例使用(

    2023年04月19日
    浏览(58)
  • 解决贴:arcgis engine中的gp工具Dissolve工具运行不结束问题?

            很抱歉很久没有在CSDN上写博客了,主要这个平台个人实在不喜欢。最近查看评论,发现确确实实可以帮助到很多人,于是我决定继续写一些我在编程中遇到的问题或其他答主没有很好解决大家疑问的问题。         在2019年我发表了一个求助贴:arcgis engine中的gp工具

    2024年02月15日
    浏览(42)
  • arcgis javascript api4.x以basetilelayer方式加载arcgis发布的栅格切片服务

    以arcgis js api的basetilelayer加载arcgis发布的栅格切片服务 https://map.geoq.cn/arcgis/rest/services/ChinaOnlineCommunity/MapServer/?f=pjson 这样获取 https://map.geoq.cn/arcgis/rest/services/ChinaOnlineCommunity/MapServer/WMTS/1.0.0/WMTSCapabilities.xml   先确保以一张为例有结果返回 https://map.geoq.cn/arcgis/rest/services/ChinaO

    2024年01月19日
    浏览(54)
  • [入门一]C# webApi创建、与发布、部署、api调用

    一. 创建 web api项目 1.1、项目创建 MVC架构的话,它会有view-model-control三层,在web api中它的前端和后端是分离的,所以只在项目中存在model-control两层 1.2、修改路由 打开App_Start文件夹下,WebApiConfig.cs , 修改路由,加上{action}/ ,这样就可以在api接口中通过接口函数名,来导向我

    2024年02月05日
    浏览(43)
  • C# 超详细的WebService创建、发布与调用(VS2019)

    这里我选择的是 “ ASP.NET Web应用程序(.NET Framework )”。 填写好项目名称、选择项目位置以及所使用的框架,这里我用的是“ .NET Framework 4 ”框架,然后点击创建。 继续点击创建。 打开解决方案资源管理器-右键创建的Web项目-添加-新建项 添加 web 服务(AMSX) 。 在这里除了默认

    2023年04月08日
    浏览(37)
  • ArcMap镶嵌数据集的创建、数据导入与数据范围修改方法

      本文介绍基于 ArcMap 软件,建立 镶嵌数据集 (Mosaic Datasets)、 导入栅格图像 数据,并 调整像元数值范围 的方法。    镶嵌数据集 (Mosaic Datasets)是一种用以管理、显示、共享大量栅格数据的手段,在 GIS 领域具有较多的应用场景。本文就在常见的 ArcMap 软件中,进行

    2024年02月12日
    浏览(42)
  • ArcGIS Desktop使用入门(三)图层右键工具——可见比例范围

    ArcGIS Desktop使用入门(一)软件初认识 ArcGIS Desktop使用入门(二)常用工具条——标准工具 ArcGIS Desktop使用入门(二)常用工具条——编辑器 ArcGIS Desktop使用入门(二)常用工具条——数据驱动页面 ArcGIS Desktop使用入门(二)常用工具条——基础工具 ArcGIS Desktop使用入门(二

    2024年04月15日
    浏览(43)
  • ArcGIS Desktop使用入门(三)图层右键工具——组织要素模板

    ArcGIS Desktop使用入门(一)软件初认识 ArcGIS Desktop使用入门(二)常用工具条——标准工具 ArcGIS Desktop使用入门(二)常用工具条——编辑器 ArcGIS Desktop使用入门(二)常用工具条——数据驱动页面 ArcGIS Desktop使用入门(二)常用工具条——基础工具 ArcGIS Desktop使用入门(二

    2024年04月13日
    浏览(44)
  • arcmap 在oracle删除表重新创建提示表名存在解决放啊

    sde表创建是有注册或者是关联关系存在的 按照以下步骤删除表的数据 select t.* from sde.TABLE_REGISTRY t where table_name like \\\'IRR%\\\'; DELETE from  sde.TABLE_REGISTRY where table_name=\\\'IRRIGATION_TYPE\\\'; select t.* from sde.LAYERS t where table_name like \\\'IRR%\\\'; DELETE from  sde.LAYERS where table_name=\\\'IRRIGATION_TYPE\\\'; select t.* f

    2024年02月10日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包