arcgis js統計FeatureLayer的橢球面積、平面面積

1、導入依賴

import FeatureLayer from '@arcgis/core/layers/FeatureLayer'
import { geodesicArea, planarArea, simplify } from '@arcgis/core/geometry/geometryEngine';
import { project, load as projectionLoad } from '@arcgis/core/geometry/projection'

2、初始化project

onMounted(() => {// 第一步:加載投影引擎projectionLoad()
})

3、計算橢球面積、平面面積

const calculateFeatureLayer = async (featureLayer: FeatureLayer) => {const query = featureLayer.createQuery()query.where = '1 = 1'const result = await featureLayer.queryFeatures(query)// 總面積統計let totalGeoArea = 0;let totalPlanarArea = 0;for (const feature of result.features) {if (feature.geometry.type === 'polygon') {let geometry = feature.geometry// 坐標系轉換if (geometry.spatialReference.wkid !== 4326) {geometry = await project(geometry, { wkid: 4326 }) as any}// 簡化多邊形const simplifiedPolygon = simplify(geometry)// 橢球面積const geoArea = geodesicArea(simplifiedPolygon, "square-kilometers")totalGeoArea += geoArea// 平面面積const projectedGeometry = await project(simplifiedPolygon, { wkid: 3857 }) as anyconst planarAreaResult = planarArea(projectedGeometry, "square-kilometers")totalPlanarArea += planarAreaResult}}console.log("橢球面積(平方千米):", totalGeoArea)console.log("毛面積(平方千米):", totalPlanarArea)}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/82079.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/82079.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/82079.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2.2.1 05年T2

引言 本文將從一預習、二自習、三學習、四復習等四個階段來分析2005年考研英語閱讀第二篇文章。為了便于后續閱讀,我將第四部分復習放在了首位。 四、復習 方法:錯誤思路分析總結考點文章梳理 4.1 錯題分析 題目:26(細節題&…

Java 連接并操作 Redis 萬字詳解:從 Jedis 直連到 RedisTemplate 封裝,5 種方式全解析

引言 在分布式系統和高并發場景中,Redis 作為高性能內存數據庫的地位舉足輕重。對于 Java 開發者而言,掌握 Redis 的連接與操作是進階必備技能。然而,從基礎的 Jedis 原生客戶端到 Spring 封裝的 RedisTemplate,不同連接方式的原…

談談對《加密算法》的理解

文章目錄 一、什么是加密算法?二、常見的加密算法有哪些?2.1 對稱加密2.2 非對稱加密2.3 哈希算法 三、加密算法代碼展示3.1 MD5加密3.2 秘鑰加密3.3 AES加密解密 四、加密算法的使用場景 一、什么是加密算法? 加密算法是一種通過數學方法將…

Fuzz 模糊測試篇JS 算法口令隱藏參數盲 Payload未知文件目錄

1 、 Fuzz 是一種基于黑盒的自動化軟件模糊測試技術 , 簡單的說一種懶惰且暴力的技術融合了常見 的以及精心構建的數據文本進行網站、軟件安全性測試。 2 、 Fuzz 的核心思想 : 口令 Fuzz( 弱口令 ) 目錄 Fuzz( 漏洞點 ) 參數 Fuzz( 利用參數 ) PayloadFuzz(Bypass)…

哈希表的實現(下)

目錄 前言 開散列概念 開散列實現 Insert 優化 Find Erase 前言 上一章節我們用閉散列實現了一下哈希表,但存在一些問題,比如空間浪費比較嚴重,如果連續一段空間都已經存放值,那么在此位置插入新值的時候就會一直挪動&…

再談Linux 進程:進程等待、進程替換與環境變量

目錄 1.進程等待 為什么需要進程等待? 相關系統調用:wait()和waitpid() wait(): waitpid(): 解析子進程狀態(status) 2.進程替換 為什么需要進程替換? 相關系統調用:exec函數家族 3.環境變量 ?…

基于深度學習的無線電調制識別系統

基于深度學習的無線電調制識別系統 本項目實現了一個基于深度學習的無線電調制識別系統,使用LSTM(長短期記憶網絡)模型對不同類型的 無線電信號進行自動分類識別。該系統能夠在不同信噪比(SNR)條件下,準確識別多種調制類型&#…

Python 爬蟲之requests 模塊的應用

requests 是用 python 語言編寫的一個開源的HTTP庫,可以通過 requests 庫編寫 python 代碼發送網絡請求,其簡單易用,是編寫爬蟲程序時必知必會的一個模塊。 requests 模塊的作用 發送網絡請求,獲取響應數據。 中文文檔&#xf…

隨機森林(Random Forest)學習

隨機森林是一種基于集成學習的機器學習算法,屬于Bagging(Bootstrap Aggregating)方法的一種擴展。它通過組合多個決策樹來提升模型的泛化能力和魯棒性,廣泛用于分類、回歸和特征選擇任務。 1.隨機森林核心思想 1.1少數服從多數 在…

從 0 到 1!Java 并發編程基礎全解析,零基礎入門必看!

寫在前面 博主在之前寫了很多關于并發編程深入理解的系列文章,有博友反饋說對博主的文章表示非常有收獲但是對作者文章的某些基礎描述有些模糊,所以博主再根據最能接觸到的基礎,為這類博友進行掃盲!當然,后續仍然會接…

el-input寬度自適應方法總結

使用 style 或 class 直接設置寬度 可以通過內聯樣式或 CSS 類來直接設置 el-input 的寬度為 100%&#xff0c;使其自適應父容器的寬度 <template><div style"width: 100%;"><el-input style"width: 100%;" v-model"input">…

解決 Supabase “permission denied for table XXX“ 錯誤

解決 Supabase “permission denied for table” 錯誤 問題描述 在使用 Supabase 開發應用時&#xff0c;你可能會遇到以下錯誤&#xff1a; [Nest] ERROR [ExceptionsHandler] Object(4) {code: 42501,details: null,hint: null,message: permission denied for table user…

java每日精進 5.20【MyBatis 聯表分頁查詢】

1. MyBatis XML 實現分頁查詢 1.1 實現方式 MyBatis XML 是一種傳統的 MyBatis 使用方式&#xff0c;通過在 XML 文件中編寫 SQL 語句&#xff0c;并結合 Mapper 接口和 Service 層實現分頁查詢。分頁需要手動編寫兩條 SQL 語句&#xff1a;一條查詢分頁數據列表&#xff0c;…

linux taskset 查詢或設置進程綁定CPU

1、安裝 taskset larkubuntu&#xff1a;~$ sudo apt-get install util-linux larkubuntu&#xff1a;~$ taskset --help 用法&#xff1a; taskset [選項] [mask | cpu-list] [pid|cmd [args...]] 顯示或更改進程的 CPU 關聯性。 選項&#xff1a; -a&#xff0c; --all-tasks…

Python應用字符串格式化初解

大家好!在 Python 編程中&#xff0c;字符串格式化是一項基礎且實用的技能。它能讓你更靈活地拼接字符串與變量&#xff0c;使輸出信息更符合需求。本文將為和我一樣的初學者詳細介紹 Python 字符串格式化的常用方法。 定義: 字符串格式化就是將變量或數據插入到字符串中的特定…

EasyRTC嵌入式音視頻通信SDK一對一音視頻通信,打造遠程辦公/醫療/教育等場景解決方案

一、方案概述? 數字技術發展促使在線教育、遠程醫療等行業對一對一實時音視頻通信需求激增。傳統方式存在低延遲、高畫質及多場景適配不足等問題&#xff0c;而EasyRTC憑借音視頻處理、高效信令交互與智能網絡適配技術&#xff0c;打造穩定低延遲通信&#xff0c;滿足基礎通信…

SEO長尾詞優化精準布局

內容概要 長尾關鍵詞作為SEO策略的核心要素&#xff0c;其價值在于精準捕捉細分需求與低競爭流量入口。相較于短尾詞的高泛化性&#xff0c;長尾詞通過語義擴展與場景化組合&#xff0c;能夠更高效地匹配用戶搜索意圖&#xff0c;降低優化成本的同時提升轉化潛力。本文將從詞庫…

【MySQL】第7節|Mysql鎖機制與優化實踐以及MVCC底層原理剖析

鎖等待分析 我們通過檢查InnoDB_row_lock相關的狀態變量來分析系統上的行鎖的爭奪情況 示例場景 假設有兩個用戶同時操作賬戶表 accounts&#xff08;主鍵為 id&#xff09;&#xff1a; 1. 用戶A&#xff1a;執行轉賬&#xff0c;鎖定賬戶 id1 并等待3秒&#xff1a; BEG…

基于規則引擎與機器學習的智能Web應用防火墻設計與實現

基于規則引擎與機器學習的智能Web應用防火墻設計與實現 引言&#xff1a;智能防御的必然選擇 在2023年OWASP最新報告中&#xff0c;傳統Web應用防火墻&#xff08;WAF&#xff09;對新型API攻擊的漏報率高達67%&#xff0c;而誤報導致的正常業務攔截損失每年超過2.3億美元。面…

GIM發布新版本了 (附rust CLI制作brew bottle流程)

GIM 發布新版本了&#xff01;現在1.3.0版本可用了 可以通過brew upgrade git-intelligence-message升級。 初次安裝需要先執行 brew tap davelet/gim GIM 是一個根據git倉庫內文件變更自動生成git提交消息的命令行工具&#xff0c;參考前文《GIM: 根據代碼變更自動生成git提交…