@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
3 lines (2 loc) • 1.43 kB
JavaScript
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.19/LICENSE.txt */
import{__decorate as e}from"tslib";import{makeHandle as t}from"../../../../core/handleUtils.js";import{subclass as r}from"../../../../core/accessorSupport/decorators.js";import i from"../../layers/FlowSubView3D.js";import{loadImagery as s}from"../../../support/flow/dataUtils.js";let o=class extends i{constructor(e){super(e)}initialize(){this.updatingHandles.add(()=>this.renderedTiles,()=>this.triggerLoad()),this.updatingHandles.add(()=>this.elevationInfo.mode,e=>this._updatePopupDrapeSource(e),{initial:!0})}_updatePopupDrapeSource(e){if("on-the-ground"===e)return void this.removeHandles(a);if(this.hasHandles(a))return;const r={destroyed:!1,drapeSourceType:2,updatePolicy:0,layer:this.layer},i=this.layerView.view.overlayManager;i.registerGeometryDrapeSource(r),this.addHandles(t(()=>i.unregisterDrapeSource(r)),a)}async fetchDataAndGenerateStreamlines(e,t){const{needsMagnitude:r}=this,i=this.getSimulationSettings(e),{size:o,extent:a,timeExtent:n}=e;if(null==i)return;const l=await s(this.layer,a,o[0],o[1],n,t);if(null==l)return null;const d={simulationSettings:i,flowExtentInfo:e.flowExtentInfo,flowData:l,needsMagnitude:r,startPositions:this.startPositions(e)},{streamlines:u}=await this.workerHandle.generateStreamlines(d,t);return u}};o=e([r("esri.views.3d.support.flow.FlowSubViewExtent3D")],o);const a=Symbol("popupDrapeSource");export{o as default};