主頁 > 企業開發 > ArcGIS Desktop(ArcMap)創建、發布、呼叫GP服務全程序示例(等高線分析)

ArcGIS Desktop(ArcMap)創建、發布、呼叫GP服務全程序示例(等高線分析)

2023-05-06 08:10:09 企業開發

本文以等高線分析為例,使用ArcMap軟體,從GP分析服務的創建、發布、呼叫全程序進行演示,

使用ArcGIS Pro發布GP服務請跳轉:ArcGIS Pro創建、發布、呼叫GP服務全程序示例(等高線分析)

本文示例使用軟體:

ArcGIS Desktop10.3.1

ArcGIS JS API4.16

注:閱讀本文前需要對ArcGIS GP服務,模型構建器等有一定了解,本文不會詳細描述GP工具的構建程序,

需求:通過在前端繪制或匯入多邊形范圍,設定等高距,生成繪制區域的等高線,

1、資料準備

(1)準備一個地形檔案,可以是tif或者img等格式

(2)準備一個shp面要素檔案,用來指定分析范圍

2、創建GP模型

創建等高線分析GP模型:

(1)使用Extract by Mask工具,裁剪出輸入要素的多邊形范圍的柵格資料

(2)根據第一步裁剪的柵格結果,執行等高線分析,生成線要素

注:藍色橢圓中的為輸入引數,綠色橢圓中的是輸出引數,黃色矩形為ArcGIS工具箱中的分析工具,

引數說明: 

InputFeature:等高線分析范圍資料,shp格式,可自行創建個shp檔案,在地形范圍內繪制一個范圍(使用第一步準備的shp資料),

InputRaster:地形dem資料,可以使用tif格式,支持經緯度坐標或投影坐標,根據實際情況選擇需要的地形路徑(第一步準備的地形資料)

CoutourInterval:等高線間距,默認單位米

OutputFeature:輸出的等高線線要素

3、運行并發布GP服務

(1)雙擊運行GP服務

 (2)發布服務,選擇地理處理->結果,找到運行的GP結果,右鍵發布服務

 

設定發布服務引數:

設定好后,點擊分析,分析如果沒有錯誤,使用Publish發布GP服務

4、訪問并驗證GP服務

發布好的服務通過rest進行訪問驗證,示例:

打開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}]}

并設定好等高距,輸入柵格等引數,可執行工具得出結果:

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.uj5u.com/qiye/551763.html

標籤:GIS

上一篇:ArcGIS Pro創建、發布、呼叫GP服務全程序示例(等高線分析)

下一篇:返回列表

標籤雲
其他(158525) Python(38118) JavaScript(25401) Java(18023) C(15222) 區塊鏈(8261) C#(7972) AI(7469) 爪哇(7425) MySQL(7162) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5871) 数组(5741) R(5409) Linux(5335) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4565) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2432) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1965) Web開發(1951) HtmlCss(1932) python-3.x(1918) 弹簧靴(1913) C++(1912) xml(1889) PostgreSQL(1874) .NETCore(1857) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • IEEE1588PTP在數字化變電站時鐘同步方面的應用

    IEEE1588ptp在數字化變電站時鐘同步方面的應用 京準電子科技官微——ahjzsz 一、電力系統時間同步基本概況 隨著對IEC 61850標準研究的不斷深入,國內外學者提出基于IEC61850通信標準體系建設數字化變電站的發展思路。數字化變電站與常規變電站的顯著區別在于程序層傳統的電流/電壓互 ......

    uj5u.com 2020-09-10 03:51:52 more
  • HTTP request smuggling CL.TE

    CL.TE 簡介 前端通過Content-Length處理請求,通過反向代理或者負載均衡將請求轉發到后端,后端Transfer-Encoding優先級較高,以TE處理請求造成安全問題。 檢測 發送如下資料包 POST / HTTP/1.1 Host: ac391f7e1e9af821806e890 ......

    uj5u.com 2020-09-10 03:52:11 more
  • 網路滲透資料大全單——漏洞庫篇

    網路滲透資料大全單——漏洞庫篇漏洞庫 NVD ——美國國家漏洞庫 →http://nvd.nist.gov/。 CERT ——美國國家應急回應中心 →https://www.us-cert.gov/ OSVDB ——開源漏洞庫 →http://osvdb.org Bugtraq ——賽門鐵克 →ht ......

    uj5u.com 2020-09-10 03:52:15 more
  • 京準講述NTP時鐘服務器應用及原理

    京準講述NTP時鐘服務器應用及原理京準講述NTP時鐘服務器應用及原理 安徽京準電子科技官微——ahjzsz 北斗授時原理 授時是指接識訓通過某種方式獲得本地時間與北斗標準時間的鐘差,然后調整本地時鐘使時差控制在一定的精度范圍內。 衛星導航系統通常由三部分組成:導航授時衛星、地面檢測校正維護系統和用戶 ......

    uj5u.com 2020-09-10 03:52:25 more
  • 利用北斗衛星系統設計NTP網路時間服務器

    利用北斗衛星系統設計NTP網路時間服務器 利用北斗衛星系統設計NTP網路時間服務器 安徽京準電子科技官微——ahjzsz 概述 NTP網路時間服務器是一款支持NTP和SNTP網路時間同步協議,高精度、大容量、高品質的高科技時鐘產品。 NTP網路時間服務器設備采用冗余架構設計,高精度時鐘直接來源于北斗 ......

    uj5u.com 2020-09-10 03:52:35 more
  • 詳細解讀電力系統各種對時方式

    詳細解讀電力系統各種對時方式 詳細解讀電力系統各種對時方式 安徽京準電子科技官微——ahjzsz,更多資料請添加VX 衛星同步時鐘是我京準公司開發研制的應用衛星授時時技術的標準時間顯示和發送的裝置,該裝置以M國全球定位系統(GLOBAL POSITIONING SYSTEM,縮寫為GPS)或者我國北 ......

    uj5u.com 2020-09-10 03:52:45 more
  • 如何保證外包團隊接入企業內網安全

    不管企業規模的大小,只要企業想省錢,那么企業的某些服務就一定會采用外包的形式,然而看似美好又經濟的策略,其實也有不好的一面。下面我通過安全的角度來聊聊使用外包團的安全隱患問題。 先看看什么服務會使用外包的,最常見的就是話務/客服這種需要大量重復性、無技術性的服務,或者是一些銷售外包、特殊的職能外包等 ......

    uj5u.com 2020-09-10 03:52:57 more
  • PHP漏洞之【整型數字型SQL注入】

    0x01 什么是SQL注入 SQL是一種注入攻擊,通過前端帶入后端資料庫進行惡意的SQL陳述句查詢。 0x02 SQL整型注入原理 SQL注入一般發生在動態網站URL地址里,當然也會發生在其它地發,如登錄框等等也會存在注入,只要是和資料庫打交道的地方都有可能存在。 如這里http://192.168. ......

    uj5u.com 2020-09-10 03:55:40 more
  • [GXYCTF2019]禁止套娃

    git泄露獲取原始碼 使用GET傳參,引數為exp 經過三層過濾執行 第一層過濾偽協議,第二層過濾帶引數的函式,第三層過濾一些函式 preg_replace('/[a-z,_]+\((?R)?\)/', NULL, $_GET['exp'] (?R)參考當前正則運算式,相當于匹配函式里的引數 因此傳遞 ......

    uj5u.com 2020-09-10 03:56:07 more
  • 等保2.0實施流程

    流程 結論 ......

    uj5u.com 2020-09-10 03:56:16 more
最新发布
  • ArcGIS Desktop(ArcMap)創建、發布、呼叫GP服務全程序示例(等高線分

    本文以等高線分析為例,使用ArcMap軟體,從GP分析服務的創建、發布、呼叫全程序進行演示。 使用ArcGIS Pro發布GP服務請跳轉:ArcGIS Pro創建、發布、呼叫GP服務全程序示例(等高線分析) 本文示例使用軟體: ArcGIS Desktop10.3.1 ArcGIS JS API4. ......

    uj5u.com 2023-05-06 08:10:09 more
  • ArcGIS Pro創建、發布、呼叫GP服務全程序示例(等高線分析)

    在之前的文章介紹過使用ArcMap發布GP分析服務,由于ArcGIS后續不在更新ArcMap,改用ArcGIS Pro,本文對ArcGIS Pro發布GP分析服務進行說明。 本文以等高線分析為例,使用ArcGIS Pro軟體,從GP分析服務的創建、發布、呼叫全程序進行演示。 使用ArcMap發布GP ......

    uj5u.com 2023-05-06 08:09:41 more
  • camunda作業流實戰專案(表單設計器+流程編輯器,零代碼創建流程)

    一、整體情況介紹 基于ruoyi平臺和camunda作業流開發而成,結合bpmn.js流程編輯器和vform表單設計器,實作常規流程零代碼創建。 具備流程中心的能力,支持外部任務,可協調多個業務系統協同作業 具備SaaS平臺的能力,支持多租戶,各業務系統可作為租戶,創建自己的流程,通過外部任務與自身 ......

    uj5u.com 2023-05-06 08:08:03 more
  • “前端”工匠系列(一):合格的工匠,究竟該搞什么 | 京東云技術團隊

    此文為系列文章第一篇,為淺嘗輒止的引入,目的是為了讓前端從業人員及非從業但是對此領域感興趣的人對于”前端“是干什么的這個話題有個無門檻的了解。 ......

    uj5u.com 2023-05-05 09:56:03 more
  • “前端”工匠系列(一):合格的工匠,究竟該搞什么 | 京東云技術團隊

    此文為系列文章第一篇,為淺嘗輒止的引入,目的是為了讓前端從業人員及非從業但是對此領域感興趣的人對于”前端“是干什么的這個話題有個無門檻的了解。 ......

    uj5u.com 2023-05-05 09:55:51 more
  • 三步 讓你的 vscode 自動編譯ts檔案

    1:環境安裝 tsc 作用:負責將ts 代碼 轉為 瀏覽器 和 nodejs 識別的 js代碼。 /全域安裝 npm install -g typescript // 檢查是否安裝成功 tsc -v 2:自動編譯 運行 tsc --init,創建 tsconfig.json 檔案;修改 tsconf ......

    uj5u.com 2023-05-05 09:38:48 more
  • 記錄-物件有哪些繼承方式

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 1. 原型鏈 溫故而知新: 建構式、原型和實體的關系: 每個建構式都有一個原型物件,原型有一個屬性指回建構式,實體有一個內部指標指向原型。 思考:如果原型是另一個型別的實體呢? 那就意味著這個原型本身有一個內部指標指向另一個原型,相 ......

    uj5u.com 2023-05-05 09:38:39 more
  • HTML中link標簽的那些屬性

    在HTML中, link 標簽是一個自閉合元素,通常位于檔案的 head 部分。它用于建立與外部資源的關聯,如樣式表、圖示等。 link 標簽具有多個屬性,其中 rel 和 href 是最常用的。 rel 屬性定義了當前檔案與鏈接資源之間的關系。常見的 rel 屬性值有: - stylesheet ......

    uj5u.com 2023-05-05 09:38:32 more
  • 你想要的【微前端】都在這里了!

    某次遇到一個從0到1的大型專案,該專案涉及兩個端,除了鑒權和部分業務邏輯不同外,頁面UI和其余邏輯幾乎一致,遇到這種專案,該如何架構?既能保證專案順利開發完成,又能保證后期的迭代、維護、可擴展? ......

    uj5u.com 2023-05-05 09:38:23 more
  • 記錄-物件有哪些繼承方式

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 1. 原型鏈 溫故而知新: 建構式、原型和實體的關系: 每個建構式都有一個原型物件,原型有一個屬性指回建構式,實體有一個內部指標指向原型。 思考:如果原型是另一個型別的實體呢? 那就意味著這個原型本身有一個內部指標指向另一個原型,相 ......

    uj5u.com 2023-05-05 09:32:57 more