{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/layers/support/ElevationSampler.js","webpack:///./node_modules/@arcgis/core/layers/support/ElevationTile.js","webpack:///./node_modules/@arcgis/core/layers/support/ElevationQuery.js"],"names":["m","e","getLogger","c","queryElevation","h","clone","this","on","g","projectIfRequired","t","f","u","constructor","n","super","tile","noDataValue","extent","i","spatialReference","zmin","zmax","aaExtent","o","s","a","lodAt","level","resolution","demResolution","min","max","contains","containsAt","x","y","elevationAt","xmin","ymin","xmax","ymax","warn","sample","p","samplers","map","length","union","Math","type","R","d","equals","r","error","wkid","z","hasM","hasZ","paths","points","l","remove","samplerData","pixelData","values","width","height","safeWidth","dx","dy","x0","y1","minValue","maxValue","floor","D","w","V","v","ignoreInvisibleLayers","filter","visible","slice","fromGeometry","returnSampleInfo","query","_queryAllContinue","geometry","export","sampleInfo","signal","load","_createGeometryDescriptor","_selectTiles","_populateElevationTiles","_sampleGeometryWithElevation","_createQueryResult","_createSampler","_createSamplerAllContinue","tileInfo","source","dest","_","elevationTiles","layer","options","pop","concat","coordinates","push","forEach","project","outSpatialReference","_extractSampleInfo","elevationTile","_preselectOutsideLayerExtent","_selectTilesClosestResolution","_selectTilesFinestContiguous","_selectTilesAuto","fullExtent","T","outsideExtentTile","_findNearestDemResolutionLODIndex","selectTilesAtLOD","lods","abs","E","minDemResolution","_selectTilesFinestContiguousAt","tilemapCache","getTilesToFetch","Promise","all","fetchAvailability","row","col","allElevationTilesFetched","clearElevationTiles","cache","async","uid","id","get","fetchTile","put","populateElevationTiles","_selectTilesAutoFinest","_reduceTilesForMaximumRequests","_selectTilesAutoPrefetchUpsample","fetchAvailabilityUpsample","ok","remapTiles","forEachTileToFetch","maximumAutoTileRequests","upsampleTile","_exporter","_cloneCoordinate","spatiaReference","tileAt","some","candidateTiles","fetchedCandidates","Set","intersection","maskExtents","_maximumLodForRequests","_selectCandidateTilesCoveringExtentAt","size","ceil","clear","add","_uniqueNonOverlappingTiles","has","sort","updateTileInfo","_tileIsMasked","findIndex"],"mappings":"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","file":"js/chunk-2d0bdf78.a393ef99.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport\"../../geometry.js\";import\"../../core/has.js\";import e from\"../../core/Logger.js\";import{isNone as t,unwrapOr as n}from\"../../core/maybe.js\";import{getMetersPerUnitForSR as s}from\"../../core/unitUtils.js\";import{toExtent as i,containsXY as o,create as a}from\"../../geometry/support/aaBoundingRect.js\";import{project as r}from\"../../geometry/support/webMercatorUtils.js\";import l from\"../../geometry/Point.js\";const m=e.getLogger(\"esri.layers.support.ElevationSampler\");class c{queryElevation(e){return h(e.clone(),this)}on(){return g}projectIfRequired(e,t){return f(e,t)}}class u extends c{constructor(e,t,n){super(),this.tile=e,this.noDataValue=n,this.extent=i(e.tile.extent,t.spatialReference),this.extent.zmin=e.zmin,this.extent.zmax=e.zmax,this.aaExtent=e.tile.extent;const o=s(t.spatialReference),a=t.lodAt(e.tile.level).resolution*o;this.demResolution={min:a,max:a}}get spatialReference(){return this.extent.spatialReference}contains(e){const n=this.projectIfRequired(e,this.spatialReference);return!t(n)&&this.containsAt(n.x,n.y)}containsAt(e,t){return o(this.aaExtent,e,t)}elevationAt(e,t){if(!this.containsAt(e,t)){const n=this.extent,s=`${n.xmin}, ${n.ymin}, ${n.xmax}, ${n.ymax}`;return m.warn(\"#elevationAt()\",`Point used to sample elevation (${e}, ${t}) is outside of the sampler extent (${s})`),this.noDataValue}return n(this.tile.sample(e,t),this.noDataValue)}}class p extends c{constructor(e,t,n){let s;super(),\"number\"==typeof t?(this.noDataValue=t,s=null):(s=t,this.noDataValue=n),this.samplers=s?e.map((e=>new u(e,s,this.noDataValue))):e;const o=this.samplers[0];if(o){this.extent=o.extent.clone();const{min:e,max:t}=o.demResolution;this.demResolution={min:e,max:t};for(let n=1;ni?i:t}export{i as ElevationTile};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{result as e}from\"../../core/asyncUtils.js\";import t from\"../../core/Error.js\";import{isNone as i,isSome as o}from\"../../core/maybe.js\";import{whenOrAbort as s,throwIfAbortError as l,eachAlways as n}from\"../../core/promiseUtils.js\";import{getMetersPerUnitForSR as a}from\"../../core/unitUtils.js\";import r from\"../../geometry/Multipoint.js\";import c from\"../../geometry/Point.js\";import u from\"../../geometry/Polyline.js\";import{initializeProjection as h,project as p}from\"../../geometry/projection.js\";import{fromExtent as m,create as f,contains as d}from\"../../geometry/support/aaBoundingRect.js\";import{MultiTileElevationSampler as y}from\"./ElevationSampler.js\";import{ElevationTile as T}from\"./ElevationTile.js\";class v{async queryAll(e,i,o){if(!(e=o&&o.ignoreInvisibleLayers?e.filter((e=>e.visible)):e.slice()).length)throw new t(\"elevation-query:invalid-layer\",\"Elevation queries require at least one elevation layer to fetch tiles from\");const s=x.fromGeometry(i);let l=!1;o&&o.returnSampleInfo||(l=!0);const n={...R,...o,returnSampleInfo:!0},a=await this.query(e[e.length-1],s,n),r=await this._queryAllContinue(e,a,n);return r.geometry=r.geometry.export(),l&&delete r.sampleInfo,r}async query(e,i,o){if(!e)throw new t(\"elevation-query:invalid-layer\",\"Elevation queries require an elevation layer to fetch tiles from\");if(!i||!(i instanceof x)&&\"point\"!==i.type&&\"multipoint\"!==i.type&&\"polyline\"!==i.type)throw new t(\"elevation-query:invalid-geometry\",\"Only point, polyline and multipoint geometries can be used to query elevation\");const s={...R,...o},l=new w(e,i.spatialReference,s),n=s.signal;return await e.load({signal:n}),await this._createGeometryDescriptor(l,i,n),await this._selectTiles(l,n),await this._populateElevationTiles(l,n),this._sampleGeometryWithElevation(l),this._createQueryResult(l,n)}async createSampler(e,i,o){if(!e)throw new t(\"elevation-query:invalid-layer\",\"Elevation queries require an elevation layer to fetch tiles from\");if(!i||\"extent\"!==i.type)throw new t(\"elevation-query:invalid-extent\",\"Invalid or undefined extent\");const s={...R,...o};return this._createSampler(e,i,s)}async createSamplerAll(e,i,o){if(!(e=o&&o.ignoreInvisibleLayers?e.filter((e=>e.visible)):e.slice()).length)throw new t(\"elevation-query:invalid-layer\",\"Elevation queries require at least one elevation layer to fetch tiles from\");if(!i||\"extent\"!==i.type)throw new t(\"elevation-query:invalid-extent\",\"Invalid or undefined extent\");const s={...R,...o,returnSampleInfo:!0},l=await this._createSampler(e[e.length-1],i,s);return this._createSamplerAllContinue(e,i,l,s)}async _createSampler(e,t,i,o){const s=i.signal;await e.load({signal:s});const l=t.spatialReference,n=e.tileInfo.spatialReference;l.equals(n)||(await h([{source:l,dest:n}],{signal:s}),t=p(t,n));const a=new _(e,t,i,o);return await this._selectTiles(a,s),await this._populateElevationTiles(a,s),new y(a.elevationTiles,a.layer.tileInfo,a.options.noDataValue)}async _createSamplerAllContinue(e,t,i,o){if(e.pop(),!e.length)return i;const s=i.samplers.map((e=>m(e.extent))),l=await this._createSampler(e[e.length-1],t,o,s);if(0===l.samplers.length)return i;const n=i.samplers.concat(l.samplers),a=new y(n,o.noDataValue);return this._createSamplerAllContinue(e,t,a,o)}async _queryAllContinue(e,t,i){const o=e.pop(),s=t.geometry.coordinates,l=[],n=[];for(let c=0;c=0?i.source||(i.source=o):e.length&&(l.push(s[c]),n.push(c))}if(!e.length||0===l.length)return t;const a=t.geometry.clone(l),r=await this.query(e[e.length-1],a,i);return n.forEach(((e,i)=>{s[e].z=r.geometry.coordinates[i].z,t.sampleInfo[e].demResolution=r.sampleInfo[i].demResolution})),this._queryAllContinue(e,t,i)}async _createQueryResult(e,t){const i={geometry:(await e.geometry.project(e.outSpatialReference,t)).export(),noDataValue:e.options.noDataValue};return e.options.returnSampleInfo&&(i.sampleInfo=this._extractSampleInfo(e)),e.geometry.coordinates.forEach((e=>{e.tile=null,e.elevationTile=null})),i}async _createGeometryDescriptor(e,i,o){let s;const l=e.layer.tileInfo.spatialReference;if(i instanceof x?s=await i.project(l,o):(await h([{source:i.spatialReference,dest:l}],{signal:o}),s=p(i,l)),!s)throw new t(\"elevation-query:spatial-reference-mismatch\",`Cannot query elevation in '${i.spatialReference.wkid}' on an elevation service in '${l.wkid}'`);e.geometry=x.fromGeometry(s)}async _selectTiles(e,i){const o=e.options.demResolution;if(\"geometry\"===e.type&&this._preselectOutsideLayerExtent(e),\"number\"==typeof o)this._selectTilesClosestResolution(e);else if(\"finest-contiguous\"===o)await this._selectTilesFinestContiguous(e,i);else{if(\"auto\"!==o)throw new t(\"elevation-query:invalid-dem-resolution\",`Invalid dem resolution value '${o}', expected a number, \"finest-contiguous\" or \"auto\"`);await this._selectTilesAuto(e,i)}}_preselectOutsideLayerExtent(e){if(i(e.layer.fullExtent))return;const t=new T(null);t.sample=()=>e.options.noDataValue,e.outsideExtentTile=t;const o=e.layer.fullExtent;e.geometry.coordinates.forEach((e=>{const i=e.x,s=e.y;(io.xmax||so.ymax)&&(e.elevationTile=t)}))}_selectTilesClosestResolution(e){const t=e.layer.tileInfo,i=this._findNearestDemResolutionLODIndex(t,e.options.demResolution);e.selectTilesAtLOD(i)}_findNearestDemResolutionLODIndex(e,t){const i=t/a(e.spatialReference);let o=e.lods[0],s=0;for(let l=1;la.fetchAvailability(e.level,e.row,e.col,{signal:o})))),o);else if(await this._populateElevationTiles(e,o),!e.allElevationTilesFetched())throw e.clearElevationTiles(),new t(\"elevation-query:has-unavailable-tiles\")}catch(c){l(c),await this._selectTilesFinestContiguousAt(e,i-1,o)}}async _populateElevationTiles(e,t){const i=e.getTilesToFetch(),l={},a=e.options.cache,r=e.options.noDataValue,c=i.map((async i=>{const s=`${e.layer.uid}:${i.id}:${r}`,n=o(a)?a.get(s):null,c=o(n)?n:await e.layer.fetchTile(i.level,i.row,i.col,{noDataValue:r,signal:t});o(a)&&a.put(s,c),l[i.id]=new T(i,c)}));await s(n(c),t),e.populateElevationTiles(l)}async _selectTilesAuto(t,i){this._selectTilesAutoFinest(t),this._reduceTilesForMaximumRequests(t);const o=t.layer.tilemapCache;if(!o)return this._selectTilesAutoPrefetchUpsample(t,i);const n=t.getTilesToFetch(),a={},r=n.map((async t=>{const s={id:null,level:0,row:0,col:0,extent:f()},n=await e(o.fetchAvailabilityUpsample(t.level,t.row,t.col,s,{signal:i}));!1===n.ok?l(n.error):a[t.id]=s}));await s(Promise.all(r),i),t.remapTiles(a)}_reduceTilesForMaximumRequests(e){const t=e.layer.tileInfo;let i=0;const o={},s=e=>{e.id in o?o[e.id]++:(o[e.id]=1,i++)},l=e=>{const t=o[e.id];1===t?(delete o[e.id],i--):o[e.id]=t-1};e.forEachTileToFetch(s,l);let n=!0;for(;n&&(n=!1,e.forEachTileToFetch((o=>{i<=e.options.maximumAutoTileRequests||(l(o),t.upsampleTile(o)&&(n=!0),s(o))}),l),n););}_selectTilesAutoFinest(e){const t=E(e.layer.tileInfo,e.options.minDemResolution);e.selectTilesAtLOD(t,e.options.maximumAutoTileRequests)}async _selectTilesAutoPrefetchUpsample(e,t){const i=e.layer.tileInfo;await this._populateElevationTiles(e,t);let o=!1;e.forEachTileToFetch(((e,t)=>{i.upsampleTile(e)?o=!0:t()})),o&&await this._selectTilesAutoPrefetchUpsample(e,t)}_sampleGeometryWithElevation(e){e.geometry.coordinates.forEach((t=>{const i=t.elevationTile;let s=e.options.noDataValue;if(i){const e=i.sample(t.x,t.y);o(e)?s=e:t.elevationTile=null}t.z=s}))}_extractSampleInfo(e){const t=e.layer.tileInfo,i=a(t.spatialReference);return e.geometry.coordinates.map((o=>{let s=-1;if(o.elevationTile&&o.elevationTile!==e.outsideExtentTile){s=t.lodAt(o.elevationTile.tile.level).resolution*i}return{demResolution:s}}))}}class x{export(){return this._exporter(this.coordinates,this.spatialReference)}clone(e){const t=new x;return t.geometry=this.geometry,t.spatialReference=this.spatialReference,t.coordinates=e||this.coordinates.map((e=>this._cloneCoordinate(e))),t._exporter=this._exporter,t}async project(e,t){if(this.spatialReference.equals(e))return this.clone();await h([{source:this.spatialReference,dest:e}],{signal:t});const i=new r({spatialReference:this.spatialReference,points:this.coordinates.map((e=>[e.x,e.y]))}),o=p(i,e);if(!o)return null;const s=this.coordinates.map(((e,t)=>{const i=this._cloneCoordinate(e),s=o.points[t];return i.x=s[0],i.y=s[1],i})),l=this.clone(s);return l.spatialReference=e,l}_cloneCoordinate(e){return{x:e.x,y:e.y,z:e.z,m:e.m,tile:null,elevationTile:null}}static fromGeometry(e){const t=new x;if(t.geometry=e,t.spatialReference=e.spatialReference,e instanceof x)t.coordinates=e.coordinates.map((e=>t._cloneCoordinate(e))),t._exporter=(t,i)=>{const o=e.clone(t);return o.spatialReference=i,o};else switch(e.type){case\"point\":{const i=e,{hasZ:o,hasM:s}=i;t.coordinates=o&&s?[{x:i.x,y:i.y,z:i.z,m:i.m}]:o?[{x:i.x,y:i.y,z:i.z}]:s?[{x:i.x,y:i.y,m:i.m}]:[{x:i.x,y:i.y}],t._exporter=(t,i)=>e.hasM?new c(t[0].x,t[0].y,t[0].z,t[0].m,i):new c(t[0].x,t[0].y,t[0].z,i);break}case\"multipoint\":{const i=e,{hasZ:o,hasM:s}=i;t.coordinates=o&&s?i.points.map((e=>({x:e[0],y:e[1],z:e[2],m:e[3]}))):o?i.points.map((e=>({x:e[0],y:e[1],z:e[2]}))):s?i.points.map((e=>({x:e[0],y:e[1],m:e[2]}))):i.points.map((e=>({x:e[0],y:e[1]}))),t._exporter=(t,i)=>e.hasM?new r({points:t.map((e=>[e.x,e.y,e.z,e.m])),hasZ:!0,hasM:!0,spatiaReference:i}):new r(t.map((e=>[e.x,e.y,e.z])),i);break}case\"polyline\":{const i=e,o=[],s=[],{hasZ:l,hasM:n}=e;let a=0;for(const e of i.paths)if(s.push([a,a+e.length]),a+=e.length,l&&n)for(const t of e)o.push({x:t[0],y:t[1],z:t[2],m:t[3]});else if(l)for(const t of e)o.push({x:t[0],y:t[1],z:t[2]});else if(n)for(const t of e)o.push({x:t[0],y:t[1],m:t[2]});else for(const t of e)o.push({x:t[0],y:t[1]});t.coordinates=o,t._exporter=(t,i)=>{const o=e.hasM?t.map((e=>[e.x,e.y,e.z,e.m])):t.map((e=>[e.x,e.y,e.z])),l=s.map((e=>o.slice(e[0],e[1])));return new u({paths:l,hasM:e.hasM,hasZ:!0,spatialReference:i})};break}}return t}}class g{constructor(e,t){this.layer=e,this.options=t}}class w extends g{constructor(e,t,i){super(e,i),this.outSpatialReference=t,this.type=\"geometry\"}selectTilesAtLOD(e){if(e<0)this.geometry.coordinates.forEach((e=>e.tile=null));else{const t=this.layer.tileInfo,i=t.lods[e].level;this.geometry.coordinates.forEach((e=>{e.tile=t.tileAt(i,e.x,e.y)}))}}allElevationTilesFetched(){return!this.geometry.coordinates.some((e=>!e.elevationTile))}clearElevationTiles(){for(const e of this.geometry.coordinates)e.elevationTile!==this.outsideExtentTile&&(e.elevationTile=null)}populateElevationTiles(e){for(const t of this.geometry.coordinates)!t.elevationTile&&t.tile&&(t.elevationTile=e[t.tile.id])}remapTiles(e){for(const t of this.geometry.coordinates)t.tile=e[t.tile.id]}getTilesToFetch(){const e={},t=[];for(const i of this.geometry.coordinates){const o=i.tile;i.elevationTile||!i.tile||e[o.id]||(e[o.id]=o,t.push(o))}return t}forEachTileToFetch(e){for(const t of this.geometry.coordinates)t.tile&&!t.elevationTile&&e(t.tile,(()=>t.tile=null))}}class _ extends g{constructor(e,t,i,o){super(e,i),this.type=\"extent\",this.elevationTiles=[],this.candidateTiles=[],this.fetchedCandidates=new Set,this.extent=t.intersection(e.fullExtent),this.maskExtents=o}selectTilesAtLOD(e,t){const i=this._maximumLodForRequests(t),o=Math.min(i,e);o<0?this.candidateTiles.length=0:this._selectCandidateTilesCoveringExtentAt(o)}_maximumLodForRequests(e){const t=this.layer.tileInfo;if(!e)return t.lods.length-1;const o=this.extent;if(i(o))return-1;for(let i=t.lods.length-1;i>=0;i--){const s=t.lods[i],l=s.resolution*t.size[0],n=s.resolution*t.size[1];if(Math.ceil(o.width/l)*Math.ceil(o.height/n)<=e)return i}return-1}allElevationTilesFetched(){return this.candidateTiles.length===this.elevationTiles.length}clearElevationTiles(){this.elevationTiles.length=0,this.fetchedCandidates.clear()}populateElevationTiles(e){for(const t of this.candidateTiles){const i=e[t.id];i&&(this.fetchedCandidates.add(t),this.elevationTiles.push(i))}}remapTiles(e){this.candidateTiles=this._uniqueNonOverlappingTiles(this.candidateTiles.map((t=>e[t.id])))}getTilesToFetch(){return this.candidateTiles}forEachTileToFetch(e,t){const i=this.candidateTiles;this.candidateTiles=[],i.forEach((i=>{if(this.fetchedCandidates.has(i))return void(t&&t(i));let o=!1;e(i,(()=>o=!0)),o?t&&t(i):this.candidateTiles.push(i)})),this.candidateTiles=this._uniqueNonOverlappingTiles(this.candidateTiles,t)}_uniqueNonOverlappingTiles(e,t){const i={},o=[];for(const l of e)i[l.id]?t&&t(l):(i[l.id]=l,o.push(l));const s=o.sort(((e,t)=>e.level-t.level));return s.filter(((e,i)=>{for(let o=0;od(t,e.extent)))}}function E(e,t){let i=e.lods.length-1;if(t>0){const o=e.lods.findIndex((e=>e.resolution0&&(i=o-1)}return i}const R={maximumAutoTileRequests:20,noDataValue:0,returnSampleInfo:!1,demResolution:\"auto\",minDemResolution:0};export{v as ElevationQuery,x as GeometryDescriptor,E as getFinestLodIndex};\n"],"sourceRoot":""}