ArcGIS API for JavaScript 4.2學習筆記[5] 官方API大章節概述與內容轉譯


內容如上,截圖自ESRI官網,連接:ArcGIS API for JavaScript 4.2(可能會跳轉到4.3或者更高最新版本,如果有需要,到CSDN可以下載到4.2的離線文檔)

【Get Started】

類似於緒論一樣的東西,抽取了最需要關注的幾個例子。如:加載Map和View,加載layers,使用彈出窗口,視覺化,與使用窗口小部件。(wtf居然沒有分析你想搞事情啊web除了展示難道不應該有()&&*……@)好吧,4.2剛出的時候分析功能確實不太全。

【Mapping and Views】 

最基礎的,知道地圖和視圖的區別,能使用2D和3D地圖,對地圖的布局有一定的了解,對地圖的動畫也有小小的使用示例。還介紹了2D3D視圖同步、鷹眼、指北針等功能。這一章是最基礎的了,其中第一小節介紹了入口函數的參數意義。

【Layers】

這一章很龐大,和地理數據有關。按順序讀下去:

支持多圖層疊加顯示

支持要素圖層、場景圖層(直接把影像拔高,推出了一個盒子形狀的立體物件的場景圖層)、矢量瓦片圖層(這個很厲害啊)、影像圖層、流圖層、CSV圖層、OpenStreet地圖圖層、Web瓦片圖層、點雲圖層(這個更厲害1.1億的激光雷達點雲數據都能加載進來)

其中,對MapImageLayer和ImageryLayer有着重的介紹,前者不知道是什么東西,后者是影像圖層(柵格圖層)。這也是數據中最關鍵的了。

最后我想問一下:圖層這種東西,是怎么創建的(查API應該可以查到如何創建實例)?數據又如何從硬盤中獲取?需要服務器環境嗎?(尚待解決)

回答上一句提到的問題。圖層通過ArcGIS Server發布的各種服務創建,也可以通過Online或者Portal上的ID創建。

【Visualization】

這一章是符號的定制和色彩、樣式的管理,主要是視覺方面的工作,在Web上不可能弄得很丑,Web最重要的功能就是“演示”,可視化這章就是為此而生。這一章內容繁多但是不難,簡單看過去就是自定義符號、色彩設置、色帶設置等,和桌面版的差不多。短時間內沒法看完,以后待功能性章節完成學習后再進行攻讀。

【Popups】 

Popups意思為彈出窗口,第一個就以坐標的顯示為例子。

彈出窗口也是一個相當基礎的功能,因為有的查詢功能的結果就需要用這種輸出方式。

緊接的是:使用彈出小窗口的模板、對popups的位置進行固定(Dock,上下左右相對固定)

然后是在popups上加需要的內容,官方演示了表格、多媒體、文檔和圖表。

最后,在彈出窗口上也是可以添加按鈕的(官方演示了Zoom功能和測量功能),也可以定制自己的功能(跳轉到別的地方什么的)

【Graphics】

這章簡單,和GDI差不多的東西,往視圖中添加圖形。支持2D和3D視圖添加。

【Searching】 

這章就是空間查詢了。不過是基於widget的查詢,底層似乎沒給出。

使用Search widget可以查詢,這功能在國內的地圖廠商上都有,並且他們很像。不同的是,這是WebGIS,而不是商用GIS,功能是可以自己定制的。

當然,也可以對3D、2D地圖進行篩選查詢、點擊查詢。

ESRI也提供了最古老的方式——在表格上顯示查詢結果。

【Analysis】

這一章是空間分析,雖然不及Desktop上的ArcMap和ArcGIS Pro那么強悍,不過對於基礎的業務倒也足夠。

ESRI已經說了,空間分析仍會在未來的版本中發布更新以與3.x產品線追平。

WebGIS的空間分析主要是:緩沖區分析和網絡分析。例子中的網絡分析是求解最短路徑,比桌面版的操作友好多了(見本人的ArcGIS 網絡分析專輯)。

此外官方還提供了:可視域分析、熱點分析、查詢高程(點高程變化和線路海拔變化等)。

【Widgets】

這屬於UI的定制,大布局上可以用第三方JS庫,在地圖上的UI控件就交給ESRI吧。

粗看下去,主要有:

Home按鈕控件、圖層列表控件、圖例控件、定位控件、地圖打印到本地磁盤控件、追蹤定位控件(平面的)、導航定位控件(用於導航)、快速布局控件(widget太多了可以用一個東西管理,view對象的ui屬性)

ESRI強大到:widget似乎是可以自定義的(支持第三方JS庫!如Angular、React),我看到了custom的字樣,但是沒有仔細往下看,因為提供的控件和功能已經滿足大多數的需求了。甚至,widget還可以給它弄個皮膚。

顫抖吧人類。

【More 3D】

這章跟數字高程模型有關,能使用大地高程進行3D可視化,並控制攝像機的位置和角度。

同時,也可以把高程信息疊加到要素類上,進行高程3D顯示。

我還看到了一個好玩的東西:控制太陽(就是控制日照角度,根據時間),其實就是環境的控制。

AJS的3D引擎是可以拓展的,甚至提及了Threejs公共3D引擎庫(Threejs差評,文檔忒少難讀)。

ESRI提供了WebGL的檢測功能,因為3D的支持需要WebGL,如果瀏覽器不支持,那肯定是不行的。

【Other】

這里是一些雜項,如從服務器上獲取資料、許可,連接服務器等。

 


 

 

API從esri這個大類分下去,有以下一級模塊及與一級模塊並列的類:

類:Basemap、Camera、Color、config、Graphic、Ground、kernel、PopupTemplate、request、Viewpoint、WebMap、WebScene

一級模塊:/core  /geometry /identity /layers /portal /renderers /support /symbols /tasks /views /webmap /webscene /widgets

一些重要的二三級模塊展示如下

/core: /accessorSupport /workers

/geometry: /support

/layers: /support

/renderers: /smartMapping/statistics      /smartMapping/symbology       /support

/symbols: /support

/tasks: /support

/views: /3d    /layers   /ui

/widgets: /support

對於API Reference,等用到一定時候會做類圖,未完待續。其實官方的API已經很不錯了,但是就是沒有中文版,需要用過的人去做一些工作。

最后,善用API Reference。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM