????
Current Path : C:/inetpub/vhost/binhdinhinvest.gdtvietnam.com/www/ |
Current File : C:/inetpub/vhost/binhdinhinvest.gdtvietnam.com/www/33.bb4b259bbb84fb15cc41.js |
(function(){var e={"esri/layers/support/ElevationSampler":"+TTo","esri/layers/support/ElevationTile":"C7Q9","esri/layers/support/ElevationQuery":"T16p"},t=this||window,n=t.webpackJsonp=t.webpackJsonp||[];n.registerAbsMids?n.registerAbsMids(e):(n.absMidsWaiting=n.absMidsWaiting||[]).push(e)})(),(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{"+TTo":function(e,t,n){var i,r;i=[n.dj.c(e.i),t,n("zOht"),n("TMur"),n("pcDC"),n("qsST"),n("8uEs"),n("lRq4"),n("k1EI"),n("vtMp")],void 0===(r=(function(e,t,n,i,r,o,a,l,s,u){Object.defineProperty(t,"__esModule",{value:!0});var c=o.getLogger("esri.layers.support.ElevationSampler"),p=function(){function e(){}return e.prototype.queryElevation=function(e){return v(e.clone(),this)},e.prototype.on=function(){return y},e.prototype.projectIfRequired=function(e,t){return d(e,t)},e}();t.ElevationSamplerBase=p;var f=function(e){function t(t,n,i){var r=e.call(this)||this;r.tile=t,r.noDataValue=i,r.extent=l.toExtent(t.tile.extent,n.spatialReference);var o=a.getMetersPerUnitForSR(n.spatialReference),s=n.lodAt(t.tile.level).resolution*o;return r.demResolution={min:s,max:s},r}return n.__extends(t,e),Object.defineProperty(t.prototype,"spatialReference",{get:function(){return this.extent.spatialReference},enumerable:!0,configurable:!0}),t.prototype.contains=function(e){var t=this.projectIfRequired(e,this.spatialReference);return s.extentContainsPoint(this.extent,t)},t.prototype.elevationAt=function(e){var t=this.projectIfRequired(e,this.spatialReference);if(!t)return null;if(!this.contains(e)){var n=this.extent;c.warn("#elevationAt()","Point used to sample elevation ("+e.x+", "+e.y+") is outside of the sampler extent ("+n.xmin+", "+n.ymin+", "+n.xmax+", "+n.ymax+")")}return this.tile.sample(t.x,t.y)},t}(p);t.TileElevationSampler=f;var h=function(e){function t(t,n,i){var r,o=e.call(this)||this;"number"==typeof n?(o.noDataValue=n,r=null):(r=n,o.noDataValue=i),o.samplers=r?t.map((function(e){return new f(e,r,o.noDataValue)})):t;var a=o.samplers[0];if(a){o.extent=a.extent.clone();var s=a.demResolution;o.demResolution={min:s.min,max:s.max};for(var u=1;u<o.samplers.length;u++){var c=o.samplers[u];o.extent.union(c.extent),o.demResolution.min=Math.min(o.demResolution.min,c.demResolution.min),o.demResolution.max=Math.max(o.demResolution.max,c.demResolution.max)}}else o.extent=l.toExtent(l.create(),r.spatialReference),o.demResolution={min:0,max:0};return o}return n.__extends(t,e),Object.defineProperty(t.prototype,"spatialReference",{get:function(){return this.extent.spatialReference},enumerable:!0,configurable:!0}),t.prototype.elevationAt=function(e){var t=this.projectIfRequired(e,this.spatialReference);if(!t)return null;for(var n=0,i=this.samplers;n<i.length;n++){var r=i[n];if(r.contains(t))return r.elevationAt(t)}return c.warn("#elevationAt()","Point used to sample elevation ("+e.x+", "+e.y+") is outside of the sampler"),null},t}(p);function v(e,t){var n=d(e,t.spatialReference);if(!n)return null;switch(e.type){case"point":!function(e,t,n){e.z=n.elevationAt(t)||0}(e,n,t);break;case"polyline":!function(e,t,n){m.spatialReference=t.spatialReference;for(var i=e.hasM&&!e.hasZ,r=0;r<e.paths.length;r++)for(var o=e.paths[r],a=t.paths[r],l=0;l<o.length;l++){var s=o[l],u=a[l];m.x=u[0],m.y=u[1];var c=n.elevationAt(m)||0;i&&(s[3]=s[2]),s[2]=c}e.hasZ=!0}(e,n,t);break;case"multipoint":!function(e,t,n){m.spatialReference=t.spatialReference;for(var i=e.hasM&&!e.hasZ,r=0;r<e.points.length;r++){var o=e.points[r],a=t.points[r];m.x=a[0],m.y=a[1];var l=n.elevationAt(m)||0;i&&(o[3]=o[2]),o[2]=l}e.hasZ=!0}(e,n,t);break;default:r.neverReached(e)}return e}function d(e,t){var n=e.spatialReference;return n.equals(t)?e:u.canProject(n,t)?u.project(e,t):(c.error("Cannot project geometry spatial reference (wkid:"+n.wkid+") to elevation sampler spatial reference (wkid:"+t.wkid+")"),null)}t.MultiTileElevationSampler=h,t.updateGeometryElevation=v;var m=new i.Point,y={remove:function(){}}}).apply(null,i))||(e.exports=r)},C7Q9:function(e,t,n){var i,r;i=[n.dj.c(e.i),t],void 0===(r=(function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){if(this.tile=e,t){var n=this.tile.extent;this.samplerData={pixelData:t.values,width:t.width,height:t.height,safeWidth:.99999999*(t.width-1),noDataValue:t.noDataValue,dx:(t.width-1)/(n[2]-n[0]),dy:(t.width-1)/(n[3]-n[1]),x0:n[0],y1:n[3]}}else this.samplerData=null}return e.prototype.sample=function(e,t){if(this.samplerData)return function(e,t,n){var r=e.safeWidth,o=e.width,a=e.pixelData,l=e.noDataValue,s=i(e.dy*(e.y1-n),0,r),u=i(e.dx*(t-e.x0),0,r),c=Math.floor(s),p=Math.floor(u),f=c*o+p,h=f+o,v=a[f],d=a[h],m=a[f+1],y=a[h+1];if(v!==l&&d!==l&&m!==l&&y!==l){var _=u-p,x=v+(m-v)*_;return x+(d+(y-d)*_-x)*(s-c)}}(this.samplerData,e,t)},e}();function i(e,t,n){return e<t?t:e>n?n:e}t.ElevationTile=n,t.default=n}).apply(null,i))||(e.exports=r)},T16p:function(e,t,n){var i,r;i=[n.dj.c(e.i),t,n("zOht"),n("KY0m"),n("WYKK"),n("ma1f"),n("qMld"),n("8uEs"),n("t78F"),n("oxlp"),n("aYWh"),n("lRq4"),n("vtMp"),n("+TTo"),n("C7Q9")],void 0===(r=(function(e,t,n,i,r,o,a,l,s,u,c,p,f,h,v){Object.defineProperty(t,"__esModule",{value:!0});var d=function(){function e(){}return e.prototype.queryAll=function(e,t,i){return n.__awaiter(this,void 0,void 0,(function(){var r,l,s,u,c;return n.__generator(this,(function(p){switch(p.label){case 0:return(e=i&&i.ignoreInvisibleLayers?e.filter((function(e){return e.visible})):e.slice()).length?(r=m.fromGeometry(t),l=!1,i&&i.returnSampleInfo||(l=!0),s=n.__assign(n.__assign({noDataValue:0,maximumAutoTileRequests:20},i),{returnSampleInfo:!0,demResolution:"auto"}),[4,this.query(e[e.length-1],r,s)]):[2,a.reject(new o("elevation-query:invalid-layer","Elevation queries require at least one elevation layer to fetch tiles from"))];case 1:return u=p.sent(),[4,this._queryAllContinue(e,u,s)];case 2:return(c=p.sent()).geometry=c.geometry.export(),l&&delete c.sampleInfo,[2,c]}}))}))},e.prototype.query=function(e,t,i){return n.__awaiter(this,void 0,void 0,(function(){var r;return n.__generator(this,(function(l){switch(l.label){case 0:return e?t&&(t instanceof m||"point"===t.type||"multipoint"===t.type||"polyline"===t.type)?(i=n.__assign({noDataValue:0,demResolution:"auto",minDemResolution:0,maximumAutoTileRequests:20,returnSampleInfo:!1},i),r=new _(e,t.spatialReference,i),[4,e.load(i)]):[2,a.reject(new o("elevation-query:invalid-geometry","Only point, polyline and multipoint geometries can be used to query elevation"))]:[2,a.reject(new o("elevation-query:invalid-layer","Elevation queries require an elevation layer to fetch tiles from"))];case 1:return l.sent(),this._createGeometryDescriptor(r,t),[4,this._selectTiles(r)];case 2:return l.sent(),[4,this._populateElevationTiles(r)];case 3:return l.sent(),this._sampleGeometryWithElevation(r),[2,this._createQueryResult(r)]}}))}))},e.prototype.createSampler=function(e,t,i){return n.__awaiter(this,void 0,void 0,(function(){return n.__generator(this,(function(r){return e?t&&"extent"===t.type?(i=n.__assign({noDataValue:0,demResolution:"auto",maximumAutoTileRequests:20,returnSampleInfo:!1},i),[2,this._createSampler(e,t,i)]):[2,a.reject(new o("elevation-query:invalid-extent","Invalid or undefined extent"))]:[2,a.reject(new o("elevation-query:invalid-layer","Elevation queries require an elevation layer to fetch tiles from"))]}))}))},e.prototype.createSamplerAll=function(e,t,i){return n.__awaiter(this,void 0,void 0,(function(){var r,l;return n.__generator(this,(function(s){switch(s.label){case 0:return(e=i&&i.ignoreInvisibleLayers?e.filter((function(e){return e.visible})):e.slice()).length?t&&"extent"===t.type?(r=n.__assign(n.__assign({noDataValue:0,maximumAutoTileRequests:20},i),{returnSampleInfo:!0,demResolution:"auto"}),[4,this._createSampler(e[e.length-1],t,r)]):[2,a.reject(new o("elevation-query:invalid-extent","Invalid or undefined extent"))]:[2,a.reject(new o("elevation-query:invalid-layer","Elevation queries require at least one elevation layer to fetch tiles from"))];case 1:return l=s.sent(),[2,this._createSamplerAllContinue(e,t,l,r)]}}))}))},e.prototype._createSampler=function(e,t,i,r){return n.__awaiter(this,void 0,void 0,(function(){var l,s,u;return n.__generator(this,(function(n){switch(n.label){case 0:return[4,e.load()];case 1:if(n.sent(),!(l=t.spatialReference).equals(s=e.tileInfo.spatialReference)){if(!f.canProject(l,s))return[2,a.reject(new o("elevation-query:invalid-extent","Extent spatial reference ("+l.wkid+") must be compatible with tile spatial reference ("+s.wkid+")"))];t=f.project(t,s)}return u=new x(e,t,i,r),[4,this._selectTiles(u)];case 2:return n.sent(),[4,this._populateElevationTiles(u)];case 3:return n.sent(),[2,new h.MultiTileElevationSampler(u.elevationTiles,u.layer.tileInfo,u.options.noDataValue)]}}))}))},e.prototype._createSamplerAllContinue=function(e,t,i,r){return n.__awaiter(this,void 0,void 0,(function(){var o,a,l,s;return n.__generator(this,(function(n){switch(n.label){case 0:return e.pop(),e.length?(o=i.samplers.map((function(e){return p.fromExtent(e.extent)})),[4,this._createSampler(e[e.length-1],t,r,o)]):[2,i];case 1:return 0===(a=n.sent()).samplers.length?[2,i]:(l=i.samplers.concat(a.samplers),s=new h.MultiTileElevationSampler(l,r.noDataValue),[2,this._createSamplerAllContinue(e,t,s,r)])}}))}))},e.prototype._queryAllContinue=function(e,t,i){return n.__awaiter(this,void 0,void 0,(function(){var r,o,a,l,s,u,c;return n.__generator(this,(function(n){switch(n.label){case 0:if(r=e.pop(),t.geometry.coordinates.forEach((function(e,n){t.sampleInfo[n].demResolution>=0&&!t.sampleInfo[n].source&&(t.sampleInfo[n].source=r)})),!e.length)return[2,t];for(o=t.geometry.coordinates,a=[],l=[],s=0;s<o.length;s++)t.sampleInfo[s].demResolution<0&&(a.push(o[s]),l.push(s));return 0===a.length?[2,t]:(u=t.geometry.clone(a),[4,this.query(e[e.length-1],u,i)]);case 1:return c=n.sent(),l.forEach((function(e,n){o[e].z=c.geometry.coordinates[n].z,t.sampleInfo[e].demResolution=c.sampleInfo[n].demResolution})),[2,this._queryAllContinue(e,t,i)]}}))}))},e.prototype._createQueryResult=function(e){var t={geometry:(e.outSpatialReference.equals(e.geometry.spatialReference)?e.geometry:e.geometry.project(e.outSpatialReference)).export(),noDataValue:e.options.noDataValue};return e.options.returnSampleInfo&&(t.sampleInfo=this._extractSampleInfo(e)),e.geometry.coordinates.forEach((function(e){e.tile=null,e.elevationTile=null})),t},e.prototype._createGeometryDescriptor=function(e,t){var n,i=e.layer.tileInfo.spatialReference;if(!(n=t instanceof m?t.project(i):f.project(t,i)))throw new o("elevation-query:spatial-reference-mismatch","Cannot query elevation in '"+t.spatialReference.wkid+"' on an elevation service in '"+i.wkid+"'");e.geometry=m.fromGeometry(n)},e.prototype._selectTiles=function(e){return n.__awaiter(this,void 0,void 0,(function(){var t;return n.__generator(this,(function(n){switch(n.label){case 0:return t=e.options.demResolution,"geometry"===e.type&&this._preselectOutsideLayerExtent(e),"number"!=typeof t?[3,1]:(this._selectTilesClosestResolution(e),[3,6]);case 1:return"finest-contiguous"!==t?[3,3]:[4,this._selectTilesFinestContiguous(e)];case 2:case 4:return n.sent(),[3,6];case 3:return"auto"!==t?[3,5]:[4,this._selectTilesAuto(e)];case 5:throw new o("elevation-query:invalid-dem-resolution","Invalid dem resolution value '"+t+'\', expected a number, "finest-contiguous" or "auto"');case 6:return[2]}}))}))},e.prototype._preselectOutsideLayerExtent=function(e){var t=new v.ElevationTile(null);t.sample=function(){return e.options.noDataValue},e.outsideExtentTile=t;var n=e.layer.fullExtent;e.geometry.coordinates.forEach((function(e){var i=e.x,r=e.y;(i<n.xmin||i>n.xmax||r<n.ymin||r>n.ymax)&&(e.elevationTile=t)}))},e.prototype._selectTilesClosestResolution=function(e){var t=this._findNearestDemResolutionLODIndex(e.layer.tileInfo,e.options.demResolution);e.selectTilesAtLOD(t)},e.prototype._findNearestDemResolutionLODIndex=function(e,t){for(var n=t/l.getMetersPerUnitForSR(e.spatialReference),i=e.lods[0],r=0,o=1;o<e.lods.length;o++){var a=e.lods[o];Math.abs(a.resolution-n)<Math.abs(i.resolution-n)&&(i=a,r=o)}return r},e.prototype._selectTilesFinestContiguous=function(e){return n.__awaiter(this,void 0,void 0,(function(){var t;return n.__generator(this,(function(n){switch(n.label){case 0:return t=T(e.layer.tileInfo,e.options.minDemResolution),[4,this._selectTilesFinestContiguousAt(e,t)];case 1:return n.sent(),[2]}}))}))},e.prototype._selectTilesFinestContiguousAt=function(e,t){return n.__awaiter(this,void 0,void 0,(function(){var i,r,l,s;return n.__generator(this,(function(n){switch(n.label){case 0:if(i=e.layer,e.selectTilesAtLOD(t),t<0)return[2];r=i.tilemapCache,l=e.getTilesToFetch(),n.label=1;case 1:return n.trys.push([1,6,,8]),r?[4,a.all(l.map((function(t){return r.fetchAvailability(t.level,t.row,t.col,{signal:e.options.signal})})))]:[3,3];case 2:return n.sent(),[3,5];case 3:return[4,this._populateElevationTiles(e)];case 4:if(n.sent(),!e.allElevationTilesFetched())throw e.clearElevationTiles(),new o("elevation-query:has-unavailable-tiles");n.label=5;case 5:return[3,8];case 6:if(s=n.sent(),a.isAbortError(s))throw s;return[4,this._selectTilesFinestContiguousAt(e,t-1)];case 7:return n.sent(),[3,8];case 8:return[2]}}))}))},e.prototype._populateElevationTiles=function(e){return n.__awaiter(this,void 0,void 0,(function(){var t,i,r;return n.__generator(this,(function(n){switch(n.label){case 0:return t=e.getTilesToFetch(),i={},r=t.map((function(t){return e.layer.fetchTile(t.level,t.row,t.col,{noDataValue:e.options.noDataValue,signal:e.options.signal}).then((function(e){return i[t.id]=new v.ElevationTile(t,e)}))})),[4,a.eachAlways(r)];case 1:return n.sent(),a.throwIfAborted(e.options.signal),e.populateElevationTiles(i),[2]}}))}))},e.prototype._selectTilesAuto=function(e){return n.__awaiter(this,void 0,void 0,(function(){var t,i,o,l,s=this;return n.__generator(this,(function(u){switch(u.label){case 0:return this._selectTilesAutoFinest(e),this._reduceTilesForMaximumRequests(e),(t=e.layer.tilemapCache)?(i=e.getTilesToFetch(),o={},l=i.map((function(i){return n.__awaiter(s,void 0,void 0,(function(){var l,s;return n.__generator(this,(function(n){switch(n.label){case 0:return l={id:null,level:0,row:0,col:0,extent:p.create()},[4,r.result(t.fetchAvailabilityUpsample(i.level,i.row,i.col,l,{signal:e.options.signal}))];case 1:if(!1===(s=n.sent()).ok&&a.isAbortError(s.error))throw s.error;return!0===s.ok&&(o[i.id]=l),[2]}}))}))})),[4,a.all(l)]):[2,this._selectTilesAutoPrefetchUpsample(e)];case 1:return u.sent(),e.remapTiles(o),[2]}}))}))},e.prototype._reduceTilesForMaximumRequests=function(e){var t=e.layer.tileInfo,n=0,i={},r=function(e){e.id in i?i[e.id]++:(i[e.id]=1,n++)},o=function(e){var t=i[e.id];1===t?(delete i[e.id],n--):i[e.id]=t-1};e.forEachTileToFetch(r,o);for(var a=!0;a&&(a=!1,e.forEachTileToFetch((function(i){n<=e.options.maximumAutoTileRequests||(o(i),t.upsampleTile(i)&&(a=!0),r(i))}),o),a););},e.prototype._selectTilesAutoFinest=function(e){var t=T(e.layer.tileInfo,e.options.minDemResolution);e.selectTilesAtLOD(t,e.options.maximumAutoTileRequests)},e.prototype._selectTilesAutoPrefetchUpsample=function(e){return n.__awaiter(this,void 0,void 0,(function(){var t,i;return n.__generator(this,(function(n){switch(n.label){case 0:return t=e.layer.tileInfo,[4,this._populateElevationTiles(e)];case 1:return n.sent(),i=!1,e.forEachTileToFetch((function(e,n){t.upsampleTile(e)?i=!0:n()})),i?[4,this._selectTilesAutoPrefetchUpsample(e)]:[3,3];case 2:n.sent(),n.label=3;case 3:return[2]}}))}))},e.prototype._sampleGeometryWithElevation=function(e){e.geometry.coordinates.forEach((function(t){var n=t.elevationTile,i=e.options.noDataValue;if(n){var r=n.sample(t.x,t.y);void 0!==r?i=r:t.elevationTile=null}t.z=i}))},e.prototype._extractSampleInfo=function(e){var t=e.layer.tileInfo,n=l.getMetersPerUnitForSR(t.spatialReference);return e.geometry.coordinates.map((function(i){var r=-1;return i.elevationTile&&i.elevationTile!==e.outsideExtentTile&&(r=t.lodAt(i.elevationTile.tile.level).resolution*n),{demResolution:r}}))},e}();t.ElevationQuery=d;var m=function(){function e(){}return e.prototype.export=function(){return this._exporter(this.coordinates,this.spatialReference)},e.prototype.clone=function(t){var n=this,i=new e;return i.geometry=this.geometry,i.spatialReference=this.spatialReference,i.coordinates=t||this.coordinates.map((function(e){return n._cloneCoordinate(e)})),i._exporter=this._exporter,i},e.prototype.project=function(e){var t=this;if(this.spatialReference.equals(e))return this.clone();if(f.canProject(this.spatialReference,e)){var n=e.isWGS84?f.xyToLngLat:f.lngLatToXY,i=[0,0],r=this.coordinates.map((function(e){var r=t._cloneCoordinate(e);return n(r.x,r.y,i),r.x=i[0],r.y=i[1],r})),o=this.clone(r);return o.spatialReference=e,o}return null},e.prototype._cloneCoordinate=function(e){return{x:e.x,y:e.y,z:e.z,m:e.m,tile:null,elevationTile:null}},e.fromGeometry=function(t){var n=new e;if(n.geometry=t,n.spatialReference=t.spatialReference,t instanceof e)n.coordinates=t.coordinates.map((function(e){return n._cloneCoordinate(e)})),n._exporter=function(e,n){var i=t.clone(e);return i.spatialReference=n,i};else switch(t.type){case"point":n.coordinates=t.hasM?[{x:t.x,y:t.y,m:t.m}]:[{x:t.x,y:t.y}],n._exporter=function(e,n){return t.hasM?new u(e[0].x,e[0].y,e[0].z,e[0].m,n):new u(e[0].x,e[0].y,e[0].z,n)};break;case"multipoint":n.coordinates=t.points.map((function(e){return t.hasM?{x:e[0],y:e[1],m:e[t.hasZ?3:2]}:{x:e[0],y:e[1]}})),n._exporter=function(e,n){return t.hasM?new s({points:e.map((function(e){return[e.x,e.y,e.z,e.m]})),hasZ:!0,hasM:!0,spatiaReference:n}):new s(e.map((function(e){return[e.x,e.y,e.z]})),n)};break;case"polyline":var i=[],r=[],o=0;t.paths.forEach((function(e){r.push([o,o+e.length]),o+=e.length,i.push.apply(i,e.map((function(e){return t.hasM?{x:e[0],y:e[1],m:e[t.hasZ?3:2]}:{x:e[0],y:e[1]}})))})),n.coordinates=i,n._exporter=function(e,n){var i=e.map(t.hasM?function(e){return[e.x,e.y,e.z,e.m]}:function(e){return[e.x,e.y,e.z]}),o=r.map((function(e){return i.slice(e[0],e[1])}));return new c({paths:o,hasM:t.hasM,hasZ:!0,spatialReference:n})}}return n},e}();t.GeometryDescriptor=m;var y=function(e,t){this.layer=e,this.options=t},_=function(e){function t(t,n,i){var r=e.call(this,t,i)||this;return r.type="geometry",r.outSpatialReference=n,r}return n.__extends(t,e),t.prototype.selectTilesAtLOD=function(e){if(e<0)this.geometry.coordinates.forEach((function(e){return e.tile=null}));else{var t=this.layer.tileInfo,n=t.lods[e].level;this.geometry.coordinates.forEach((function(e){e.tile=t.tileAt(n,e.x,e.y)}))}},t.prototype.allElevationTilesFetched=function(){return!this.geometry.coordinates.some((function(e){return!e.elevationTile}))},t.prototype.clearElevationTiles=function(){for(var e=0,t=this.geometry.coordinates;e<t.length;e++){var n=t[e];n.elevationTile!==this.outsideExtentTile&&(n.elevationTile=null)}},t.prototype.populateElevationTiles=function(e){for(var t=0,n=this.geometry.coordinates;t<n.length;t++){var i=n[t];!i.elevationTile&&i.tile&&(i.elevationTile=e[i.tile.id])}},t.prototype.remapTiles=function(e){for(var t=0,n=this.geometry.coordinates;t<n.length;t++){var i=n[t];i.tile=e[i.tile.id]}},t.prototype.getTilesToFetch=function(){for(var e={},t=[],n=0,i=this.geometry.coordinates;n<i.length;n++){var r=i[n],o=r.tile;r.elevationTile||!r.tile||e[o.id]||(e[o.id]=o,t.push(o))}return t},t.prototype.forEachTileToFetch=function(e){for(var t=function(t){t.tile&&!t.elevationTile&&e(t.tile,(function(){return t.tile=null}))},n=0,i=this.geometry.coordinates;n<i.length;n++)t(i[n])},t}(y),x=function(e){function t(t,n,i,r){var o=e.call(this,t,i)||this;return o.type="extent",o.elevationTiles=[],o.candidateTiles=[],o.fetchedCandidates=new Set,o.extent=n.intersection(t.fullExtent),o.maskExtents=r,o}return n.__extends(t,e),t.prototype.selectTilesAtLOD=function(e,t){var n=this._maximumLodForRequests(t),i=Math.min(n,e);i<0?this.candidateTiles.length=0:this._selectCandidateTilesCoveringExtentAt(i)},t.prototype._maximumLodForRequests=function(e){var t=this.layer.tileInfo;if(!e)return t.lods.length-1;for(var n=this.extent,i=t.lods.length-1;i>=0;i--){var r=t.lods[i],o=r.resolution*t.size[1];if(Math.ceil(n.width/(r.resolution*t.size[0]))*Math.ceil(n.height/o)<=e)return i}return-1},t.prototype.allElevationTilesFetched=function(){return this.candidateTiles.length===this.elevationTiles.length},t.prototype.clearElevationTiles=function(){this.elevationTiles.length=0,this.fetchedCandidates.clear()},t.prototype.populateElevationTiles=function(e){for(var t=0,n=this.candidateTiles;t<n.length;t++){var i=n[t],r=e[i.id];r&&(this.fetchedCandidates.add(i),this.elevationTiles.push(r))}},t.prototype.remapTiles=function(e){this.candidateTiles=this._uniqueNonOverlappingTiles(this.candidateTiles.map((function(t){return e[t.id]})))},t.prototype.getTilesToFetch=function(){return this.candidateTiles},t.prototype.forEachTileToFetch=function(e,t){var n=this,i=this.candidateTiles;this.candidateTiles=[],i.forEach((function(i){if(n.fetchedCandidates.has(i))t&&t(i);else{var r=!1;e(i,(function(){return r=!0})),r?t&&t(i):n.candidateTiles.push(i)}})),this.candidateTiles=this._uniqueNonOverlappingTiles(this.candidateTiles,t)},t.prototype._uniqueNonOverlappingTiles=function(e,t){for(var n={},i=[],r=0,o=e;r<o.length;r++){var a=o[r];n[a.id]?t&&t(a):(n[a.id]=a,i.push(a))}var l=i.sort((function(e,t){return e.level-t.level}));return l.filter((function(e,n){for(var i=0;i<n;i++)if(p.contains(l[i].extent,e.extent))return t&&t(e),!1;return!0}))},t.prototype._selectCandidateTilesCoveringExtentAt=function(e){this.candidateTiles.length=0;for(var t=this.layer.tileInfo,n=t.lods[e],i=this.extent,r=t.tileAt(n.level,i.xmin,i.ymin),o=n.resolution*t.size[1],a=Math.ceil((i.xmax-r.extent[0])/(n.resolution*t.size[0])),l=Math.ceil((i.ymax-r.extent[1])/o),s=0;s<l;s++)for(var u=0;u<a;u++){var c={id:null,level:r.level,row:r.row-s,col:r.col+u};t.updateTileInfo(c),this._tileIsMasked(c)||this.candidateTiles.push(c)}},t.prototype._tileIsMasked=function(e){return!!this.maskExtents&&this.maskExtents.some((function(t){return p.contains(t,e.extent)}))},t}(y);function T(e,t){var n=e.lods.length-1;if(t>0){var r=i.findIndex(e.lods,(function(e){return e.resolution<t}));0===r?n=0:r>0&&(n=r-1)}return n}t.getFinestLodIndex=T,t.default=d}).apply(null,i))||(e.exports=r)}}]);