發佈時間 北京時間 2020年4月10日javascript
ArcGIS API for JavaScript 4.15 發佈日誌html
如今在3d模式下支持點線面要素的編輯了。使用Editor小部件來編輯FeatureLayer。java
儘管Sketch工具以及支持地表要素的編輯,可是新的Z方向感知編輯工具能夠修改地上或者地下的圖形。投影到地形和場景中的物體上的輔助線能幫助編輯者進行對齊捕捉。git
當你使用3D點轉換工具(3D點轉換工具)交互式地旋轉或者縮放3D符號時,要素的屬性會經過視覺變量配置(VisualVariable)自動更新。現有的小部件例如FeatureForm、FeatureTemplates已經集成了3D符號。github
FeatureTable小部件(FeatureTable)提供要素屬性的交互式編輯功能,該小部件可快速地加載較大的數據集。api
用戶可選擇表中的行(也就是要素),而後根據某些屬性列進行排序,或者顯示、隱藏某些屬性列。promise
由於這個小部件仍是測試版本,限制性的功能見最新版API文檔。安全
這個小部件既能夠獨立運行,也能夠與某個地圖圖層聯動運行。異步
4.15版本的API引入了一個新的附件小部件(Attachments),容許查看與要素有關的附件,例如圖片等。除了附件的縮略圖(若是附件是圖片)外,還能看到附件的格式、大小。如今,這個小部件取代了原有的附件顯示方式(即4.15版本以前的附件顯示都是在彈出窗中)。所以,附件查看功能被剝離出來,能夠安排集成到別的邏輯中去。工具
編輯小部件(Editor)已經更新以支持附件編輯。如今能夠增刪改要素關聯的附件了。前提是,FeatureService支持編輯。
經過BuildingSceneLayer中的新篩選模式,能夠突出顯示BIM模型中的要素,同時仍顯示建築物的其餘部分。
篩選掉的其餘BIM模型構件能夠用X光模式渲染,也能夠用線框顯示。
這個是示例代碼:點我
API如今將場景中的IntegratedMeshLayer視爲地形。這意味着,你如今可使用on-the-ground
模式將多邊形直接貼地(把矢量圖形直接繪製在Mesh表面)。點或者線符號若是設置了relative-to-ground
做爲它們的高程模式,它們就會以IntegratedMeshLayer爲基礎高程,相對拔高。
詳情見示例代碼:點我
如今使用Mesh建立的自定義三維模型能夠用MeshMaterialMetallicRoughness這種材質了,支持鏡面曲率。如今能夠直接在材料上或經過紋理貼圖調整金屬和粗糙度因子。
關於這種材料,能夠看看這個例子:點我
添加了對點層中包含Arcade表達式的渲染器進行聚類的支持。
只需在全局條件聲明esriConfig變量便可。
<script> var esriConfig = { portalUrl: "https://myHostName.esri.com/arcgis" }; </script>
從4.15開始,返回ES6原生的Promise對象。因此,老代碼須要所有改了。ESRI計劃在4.16中的Dojo定義的Promise。(譯者注:釋放信號——去Dojo化)。
ES6的Promise和Dojo的Promise大體相同,區別以下:
使用ES6的catch()代替otherwise()
使用AbortController.abort()方法替代cancel()
使用如下代碼替代always:
.catch(function(error){ /* 出錯時的代碼 */ }).then(function() { /* 無論怎麼用都要執行的代碼 */ });
幹掉了isFulfilled()/isResolved()/isRejected()方法。
對於Dojo的Promise,當promise狀態是resolved或者rejected時,then/catch方法會同步執行。在ES6的promise中,它們是異步執行。
若是不想用ES6的Promise,能夠在dojoConfig中的has屬性進行配置,可是這個在4.16版本將會廢棄:
<script> var dojoConfig = { has: { "esri-native-promise": false } }; </script>
ESRI正試圖漸漸脫離Dojo的模塊聲明機制。在下一版本中,將徹底刪除declare
模塊。這意味着,在4.15中若是繼承了API的類(模塊),你的派生類能夠繼續用,可是在4.16中就不能用了。
如今已經在控制檯啓用了警告信息。
你能夠在官方的next倉庫中測試未發佈版本的jsapi(傳送門)
在版本4.14中,HTML清理器已添加到全部小部件中,以根據ArcGIS Online支持的HTML規範清理和轉義字符串。對於4.15,咱們放寬了顯示HTML時的一些清理規則,使其比ArcGIS Online支持的HTML規範限制更少。咱們還修復了與整理後的HTML內容不顯示在PopupTemplate.content
中有關的錯誤(請參見下文)。
添加了兩個新的小部件,以幫助支持選擇日期和時間。添加了DatePicker和TimePicker小部件,以在輸入日期和/或時間信息時提供輕鬆的UI體驗。
如今,Print小部件的界面會根據打印的地圖是自動下載仍是在新窗口中打開顯示不一樣的圖標。
有關更多信息,請參見fileName
和title
屬性。開發人員還能夠定義在UI中對用戶可用的格式和打印佈局。這些屬性也能夠經過PrintViewModel
設置。
Editor
如今內置了編輯附件的功能。若是管理的要素圖層支持附件,那麼增刪改功能將會被提供。無需進行其餘任何配置便可容許編輯附件,Editor
小部件將遵循在關聯的服務上設置的任何訪問權限。
有兩個新的Workflow類:CreateWorkflow
和UpdateWorkflow
。這兩個類分別用於添加新功能或編輯現有功能。功能保持不變,只是如今被分爲各自的類。除了這兩個類以外,還有一些新類能夠處理工做流數據:CreateWorkflowData
和UpdateWorkflowData
。此外,如今在Edits
類中引用了Workflow編輯。
如今,Popup
使用Attachments
小部件處理附件。與之前的版本類似,有一個AttachmentsContent
類,能夠將其配置爲顯示與某個要素關聯的任何附件。區別在於Attachments
小部件存儲了過去能夠經過AttachmentsContent
訪問的AttachmentInfo
。
能夠打開/關閉Popup
上的可見元素。經過其visibleElements
屬性進行控制,該屬性同時包含closeButton
和featureNavigation
屬性。應該使用featureNavigation
屬性而不是已棄用的featureNavigationEnabled
屬性。
能夠經過其maxInlineActions
屬性設置在Popup
中顯示的最大actions數量。
若是在Popup
中使用圖表的media element
時沒有負值,則y軸如今從零開始。此外,圖表的media element
的標題和圖表標題如今顯示在圖表上方。
MapImageLayer及其Sublayer類通過重構和現代化。針對動態圖層,地圖的可視化顯著地對智能地圖製圖的改進,並修復了一些圖層可見性錯誤。彈出行爲的幾個問題已修復,例如在使用編碼的域值時可以顯示描述。
咱們經過Sublayer.load()來加載子圖層的元數據,用MapImageLayer.loadAll()來加載所有子圖層。當加載完全部的子突出後你能夠訪問以下屬性和方法:
renderer和labelingInfo也同樣。
開發人員如今可使用TileImageryLayer
在2D地圖中利用客戶端處理和渲染瓦片影像服務的優點。
開發人員如今能夠在SceneView
中利用客戶端查詢(client-query)和過濾(filtering)StreamLayer。2D的StreamLayerView也支持客戶端效果。
如今在MapView支持gif
和png
圖片了。
percentile-continuous
和percentile-discrete
添加到statisticType
中了。百分位統計量表示該值高於或低於該值時,一組數據中給定值的百分比降低。
訪問安全驗證的服務和用戶驗證時,登陸界面更新了,再也不使用Dojo的Dijit對話框來實現。
ImageMeshColor
,從4.11版開始不推薦使用。改成在MeshMaterial.colorTexture
上設置MeshTexture
。requireUtils
,該版本自4.10版本起不推薦使用。請改用promiseUtils.create()
。ValueMeshColor
,從4.11版開始不推薦使用。請改用MeshMaterial.color
。StreamLayer
中刪除了capabilities
和version
屬性。Sketch
小部件和SketchViewModel
上的更新事件再也不具備取消狀態。在update
事件中abort
的參數指示該進程已取消。attachmentInfos
屬性已從AttachmentsContent
中刪除。如今能夠經過Attachments
小部件來處理它,而且能夠經過其viewModel
對其進行訪問。Workflow.data
屬性將返回CreateWorkflow
或UpdateWorkflow
引用。Editor
小部件和EditorViewModel
的activeWorkflow
屬性將返回對CreateWorkflow
或UpdateWorkflow
的引用。Edits
類中引用了Workflow
編輯。略
略
略
從4.15開始,ArcGIS Arcade升級到1.9;Dojo使用1.14.2(4.11到如今都是這個版本);dgrid使用1.2.1(從4.5開始用到如今);dstore使用1.1.2(從4.5開始用到如今)。
從4.12版本開始,使用Dojo5的@dojo/framework的5.0.4版本。
版權沒有,翻版隨你。 http://www.javashuo.com/article/p-ndoxywmp-km.html