{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/GeometryUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/BackgroundPrograms.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/RasterBitmap.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushBitmap.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushClip.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLBackground.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLCircle.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLFill.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLLine.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLSymbol.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrush.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushFill.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushLabel.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushLine.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushMarker.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushText.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/raster/BrushRasterBitmap.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/brushes.js","webpack:///./node_modules/@arcgis/core/layers/support/PixelBlock.js","webpack:///./node_modules/@arcgis/core/views/webgl/ShaderCompiler.js","webpack:///./node_modules/@arcgis/core/chunks/vec4f32.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/TileInfoPrograms.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushInfo.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/VertexStream.js","webpack:///./node_modules/@arcgis/core/chunks/earcut.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/Mesh2D.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/ClippingInfo.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/WGLContainer.js","webpack:///./node_modules/@arcgis/core/layers/support/rasterFunctions/pixelUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/sources/shaderRepository.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/sources/resolver.js","webpack:///./node_modules/@arcgis/core/views/webgl/rasterUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/raster/BrushVectorField.js","webpack:///./node_modules/@arcgis/core/views/webgl/programUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/vectorTiles/decluttering/config.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushStencil.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrush.js"],"names":["Number","POSITIVE_INFINITY","t","Math","PI","o","c","N","LN2","a","n","h","M","P","log","g","r","e","shaders","vertexShader","fragmentShader","attributes","Map","m","bandCount","outMin","outMax","minCutOff","maxCutOff","factor","useGamma","gamma","gammaCorrection","colormap","colormapOffset","stretchType","type","x","super","this","_textureInvalidated","_colormapTextureInvalidated","_supportsBilinearTexture","stencilRef","coordScale","_symbolizerParameters","height","isRendereredSource","pixelRatio","resolution","rotation","_source","rawPixelData","_suspended","_bandIds","_interpolation","_transformGrid","width","y","source","transformGrid","interpolation","getTextures","textures","forEach","dispose","_rasterTexture","_transformGridTexture","_colormapTexture","_rasterTextureBandIds","invalidateTexture","stage","ready","requestRender","_isBandIdschanged","setSamplingMode","_getTextureSamplingMethod","dvs","transforms","l","toScreenNoRotation","d","_","displayViewMat3","push","names","context","s","i","_isValidSource","_updateColormapTexture","_createOrDestroyRasterTexture","setData","suspended","bandIds","capabilities","textureFloat","textureFloatLinear","u","join","pixels","length","symbolizerParameters","_colormap","some","nearest","defines","samplingMode","mips","bilinear","bicubic","trilinear","state","round","isSourceScaled","arguments","_desc","vsPath","fsPath","_quad","setBlendingEnabled","blendFunction","setBlendFunctionSeparate","setColorMask","setStencilWriteMask","setStencilTestEnabled","setStencilFunction","renderingOptions","painter","timeline","begin","name","materialManager","getProgram","computedOpacity","p","setSamplingProfile","bind","useProgram","setUniformMatrix3fv","setUniform1i","setUniform2fv","setUniform1f","draw","end","geometry","location","count","_color","_program","setFaceCullingEnabled","setStencilOp","getVAO","bufferLayouts","indexBuffer","setUniform4fv","displayMat3","bindVAO","drawElements","size","_patternMatrix","_programOptions","id","pattern","_vao","styleLayerUID","f","_loadWGLResources","displayLevel","styleLayer","backgroundMaterial","vectorTilesMaterialManager","getPaintValue","b","j","v","window","devicePixelRatio","spriteMosaic","w","U","drawPhase","HITTEST","k","L","getMaterialProgram","getMosaicItemPosition","tl","br","page","getPageSize","setUniform4f","z","rangeX","max","key","level","drawArrays","Int8Array","createVertex","getAttributeLocations","getLayoutInfo","requiredLevel","layerData","get","circleIndexCount","circleMaterial","has","setDataUniforms","prepareForRendering","circleVertexArrayObject","Uint32Array","BYTES_PER_ELEMENT","circleIndexStart","triangleCount","_fillProgramOptions","_outlineProgramOptions","renderPass","fillIndexCount","outlineIndexCount","getPaintProperty","isDataDriven","getValue","_drawFill","hasDataDrivenOutlineColor","outlineUsesFillColor","_drawOutline","fillMaterial","E","T","D","I","S","fillVertexArrayObject","patternMap","fillIndexStart","outlineMaterial","outlineVertexArrayObject","outlineIndexStart","sdf","lineIndexCount","lineMaterial","V","getDashKey","getLayoutValue","lineVertexArrayObject","lineIndexStart","_iconProgramOptions","_sdfProgramOptions","_spritesTextureSize","_drawIcons","_drawText","iconMaterial","iconPerPageElementsMap","isIconSDF","updateOpacityInfo","iconVertexArrayObject","performance","now","lastOpacityUpdate","_renderIconRange","getWidth","getHeight","glyphMosaic","textMaterial","glyphPerPageElementsMap","O","_glyphTextureSize","R","A","F","W","textVertexArrayObject","_renderGlyphRange","indexOf","getGeometryType","commit","getGeometry","attributeView","bindTextures","forEachCommand","drawGeometry","data","dotDensity","normalized","_dotTextureSize","_dotTextures","_dotSamplers","Int32Array","_disposeTextures","FILL","rendererInfo","load","materialKey","_setSharedUniforms","textureBinding","textureManager","vvColor","setUniform1fv","vvColorValues","vvColors","vvOpacity","vvOpacityValues","vvOpacities","ddDotSize","ddDotScale","scale","setUniformMatrix4fv","ddColors","ddActiveDots","ddBackgroundColor","ddDotValue","_bindDotDensityTextures","_createDotDensityTextures","ddSeed","setUniform1iv","bindTexture","_seed","_allocDotDensityTexture","Float32Array","getFloat","wrapMode","pixelFormat","dataType","LABEL","mapAligned","abs","vvSizeMinMaxValue","vvSizeScaleStops","vvSizeScaleStopsValue","vvSizeFieldStops","getSizeVVFieldStops","values","sizes","vvSizeUnitValue","vvSizeUnitValueToPixelsRatio","floor","LINE","MARKER","vvRotation","vvMaterialParameters","vvRotationType","TEXT","lut","stretch","hillshade","_rendererUniformInfos","updateTexture","getShaderVariations","drawWithProgram","opacity","getUniformInfos","u_coordScale","u_dvsMat3","set","G","marker","line","fill","text","label","clip","stencil","bitmap","raster","rasterVF","tileInfo","vtlBackground","vtlFill","vtlLine","vtlCircle","vtlSymbol","getLogger","pixelType","validPixelCount","mask","maskIsAlpha","statistics","getPixelArrayConstructor","Uint8Array","Uint16Array","Int16Array","Float64Array","toLowerCase","minValue","maxValue","ArrayBuffer","_fillFromNon8Bit","_fillFrom8Bit","Uint8ClampedArray","_fillFrom32Bit","map","_calculateBandStatistics","createEmptyBand","slice","error","reduce","min","MAX_VALUE","json","write","prototype","readFile","resolve","read","Error","exec","path","start","index","Object","freeze","__proto__","create","clone","fromValues","createView","zeros","ones","unitX","unitY","unitZ","unitW","ZEROS","ONES","UNIT_X","UNIT_Y","UNIT_Z","UNIT_W","_outlineProgram","_tileInfoProgram","_outlineVertexArrayObject","_tileInfoVertexArrayObject","_canvas","isReady","setUniform2f","rangeY","_getTexture","descriptor","offset","stride","divisor","texture","triangleCountReportedInDebug","document","createElement","setAttribute","getContext","font","textAlign","textBaseline","clearRect","fillStyle","fillRect","fillText","target","rctx","_vertexBuffer","_count","unbind","exports","next","prev","Z","B","C","steiner","prevZ","nextZ","sort","q","deviation","flatten","vertices","holes","dimensions","coords","lengths","_cache","indices","primitiveType","isMapSpace","fromScreenExtent","xmin","ymin","xmax","ymax","fromPolygon","fromMapExtent","fromRect","toScreen","vertexBuffers","createIndex","keys","parseFloat","_clip","_handle","watch","_invalidate","mesh","destroy","vao","_destroyGL","remove","_lastWidth","_lastHeight","_createMesh","getIndexBuffer","getVertexBuffers","left","right","top","bottom","_createScreenRect","fromPath","fromGeometry","constructor","_clips","children","clips","_updateClippingInfo","createRenderParams","globalOpacity","profiler","recordContainerStart","beforeRenderLayer","_clippingInfos","updateTransforms","renderChildren","compositeLayer","recordContainerEnd","_renderPasses","prepareRenderPasses","beforeRender","render","afterRender","requireFBO","requiresDedicatedFBO","registerRenderPass","brushes","MAP","LABEL_ALPHA","DEBUG","HIGHLIGHT","setTransform","onAttach","onDetach","items","fromClipArea","declaredClass","concat","indexed2DColormap","alphaSpecified","fillUnspecified","indexedColormap","updateStatistics","counts","sqrt","avg","stddev","histograms","contrastOffset","brightnessOffset","mappedColor","value","filter","pixelBlock","extent","apply","block","mosaic","hasGCSSShiftTransform","halfWorldWidth","resolutionX","startX","rightPadding","leftMargin","done","delete","ceil","cols","rows","$","background","bitBlit","blend","filtering","fx","integrate","highlight","magnifier","materials","icon","blit","bloom","composite","gaussianBlur","luminosityHighPass","blur","dra","sobel","filterEffect","pp","common","magdir","reproject","scalar","util","split","resolveIncludes","getAsRGBAFloat","getAsRGBA","internalFormat","webglVersion","flipped","coefficients","u_flipY","u_isFloatTexture","u_applyTransform","u_opacity","u_transformSpacing","spacing","u_transformGridSize","u_targetImageSize","u_srcImageSize","u_colormapOffset","u_colormapMaxIndex","u_scale","u_offset","u_bandCount","u_minOutput","u_maxOutput","u_minCutOff","u_maxCutOff","u_factor","u_useGamma","u_gamma","u_gammaCorrection","u_hillshadeType","hillshadeType","u_sinZcosAs","sinZcosAs","u_sinZsinAs","sinZsinAs","u_cosZs","cosZs","u_weights","weights","u_minValue","u_maxValue","gl","glName","getProgramParameter","ACTIVE_UNIFORMS","getActiveUniform","getUniformLocation","info","setUniform3fv","setUniform2iv","setUniform3iv","setUniform4iv","beaufort_ft","beaufort_m","beaufort_km","beaufort_mi","beaufort_kn","classified_arrow","ocean_current_m","ocean_current_kn","single_arrow","wind_speed","updateVectorFieldVAO","vaoData","_drawScalars","elementCount","_drawTriangles","dataRange","rotationType","style","symbolPercentRange","_getSymbolSize","symbolTileSize","toFixed","options","_initialized","_solidProgram","_solidVertexArrayObject","setDepthWriteEnabled","setDepthTestEnabled","setStencilFunctionSeparate","_initialize"],"mappings":"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","file":"js/chunk-31eaba96.cb0d5b4a.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nconst n=Number.POSITIVE_INFINITY,t=Math.PI,r=2*t,u=t/2,o=128/t,e=t/128,c=256/360,f=t/180,i=1.414213562,I=1/i,N=1/Math.LN2;function a(n,t){return(n%=t)>=0?n:n+t}function h(n){return a(n*o,256)}function M(n){return a(n*c,256)}function P(n){return Math.log(n)*N}function T(n){return n*n}function b(n,t,r){return n*(1-r)+t*r}function g(n,t,r){return n>=t&&n<=r||n>=r&&n<=t}export{e as C_256_TO_RAD,r as C_2PI,c as C_DEG_TO_256,f as C_DEG_TO_RAD,n as C_INFINITY,t as C_PI,u as C_PI_BY_2,o as C_RAD_TO_256,i as C_SQRT2,I as C_SQRT2_INV,g as between,M as degToByte,b as interpolate,P as log2,a as positiveMod,h as radToByte,T as sqr};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{resolveIncludes as r}from\"./sources/resolver.js\";const e={shaders:{vertexShader:r(\"background/background.vert\"),fragmentShader:r(\"background/background.frag\")},attributes:new Map([[\"a_pos\",0]])};export{e as background};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../../../core/maybe.js\";import{b as e,c as r,r as s,j as i,m as a}from\"../../../chunks/mat3.js\";import{c as o}from\"../../../chunks/mat3f32.js\";import{f as u}from\"../../../chunks/vec2f32.js\";import{extractBands as n}from\"../../../layers/support/rasterFunctions/pixelUtils.js\";import{DisplayObject as l}from\"./DisplayObject.js\";import{createTransformTexture as h,createRasterTexture as d,createColormapTexture as _}from\"../../webgl/rasterUtils.js\";const m={bandCount:3,outMin:0,outMax:1,minCutOff:[0,0,0],maxCutOff:[255,255,255],factor:[1/255,1/255,1/255],useGamma:!1,gamma:[1,1,1],gammaCorrection:[1,1,1],colormap:null,colormapOffset:null,stretchType:\"none\",type:\"stretch\"};class x extends l{constructor(t=null,e=null,r=null){super(),this._textureInvalidated=!0,this._colormapTextureInvalidated=!0,this._supportsBilinearTexture=!0,this.stencilRef=0,this.coordScale=[1,1],this._symbolizerParameters=null,this.height=null,this.isRendereredSource=!1,this.pixelRatio=1,this.resolution=0,this.rotation=0,this._source=null,this.rawPixelData=null,this._suspended=!1,this._bandIds=null,this._interpolation=null,this._transformGrid=null,this.width=null,this.x=0,this.y=0,this.source=t,this.transformGrid=e,this.interpolation=r}destroy(){const t=this.getTextures();null==t||t.textures.forEach((t=>t.dispose())),this._rasterTexture=null,this._transformGridTexture=null,this._colormapTexture=null}get symbolizerParameters(){return this._symbolizerParameters||m}set symbolizerParameters(t){this._symbolizerParameters!==t&&(this._symbolizerParameters=t,this._colormapTextureInvalidated=!0)}get source(){return this._source}set source(t){this._source!==t&&(this._source=t,this._rasterTexture&&(this._rasterTexture.dispose(),this._rasterTexture=null,this._rasterTextureBandIds=null),this.invalidateTexture())}get suspended(){return this._suspended}set suspended(t){this._suspended&&!t&&this.stage&&(this.ready(),this.requestRender()),this._suspended=t}get bandIds(){return this._bandIds}set bandIds(t){this._bandIds=t,this._isBandIdschanged(t)&&this.invalidateTexture()}get interpolation(){return this._interpolation||\"nearest\"}set interpolation(t){this._interpolation=t,this._rasterTexture&&this._rasterTexture.setSamplingMode(\"bilinear\"===this._getTextureSamplingMethod(t)?9729:9728)}get transformGrid(){return this._transformGrid}set transformGrid(t){this._transformGrid=t,this._transformGridTexture&&(this._transformGridTexture.dispose(),this._transformGridTexture=null)}invalidateTexture(){this._textureInvalidated||(this._textureInvalidated=!0,this.requestRender())}_createTransforms(){return{dvs:o()}}setTransform(t){const o=e(this.transforms.dvs),[n,l]=t.toScreenNoRotation([0,0],[this.x,this.y]),h=this.resolution/this.pixelRatio/t.resolution,d=h*this.width,_=h*this.height,m=Math.PI*this.rotation/180;r(o,o,u(n,l)),r(o,o,u(d/2,_/2)),s(o,o,-m),r(o,o,u(-d/2,-_/2)),i(o,o,u(d,_)),a(this.transforms.dvs,t.displayViewMat3,o)}getTextures(){if(!this._rasterTexture)return null;const t=[],e=[];return this._transformGridTexture&&(e.push(this._transformGridTexture),t.push(\"u_transformGrid\")),this._rasterTexture&&(e.push(this._rasterTexture),t.push(\"u_image\")),this._colormapTexture&&(e.push(this._colormapTexture),t.push(\"u_colormap\")),{names:t,textures:e}}onAttach(){this.invalidateTexture()}onDetach(){this.invalidateTexture()}updateTexture({context:t}){var e,r,s;if(!this.stage)return null==(e=this._rasterTexture)||e.dispose(),null==(r=this._transformGridTexture)||r.dispose(),null==(s=this._colormapTexture)||s.dispose(),this._rasterTexture=null,this._rasterTextureBandIds=null,this._transformGridTexture=null,void(this._colormapTexture=null);const i=this._isValidSource(this.source);i&&this._colormapTextureInvalidated&&(this._colormapTextureInvalidated=!1,this._updateColormapTexture(t)),this._textureInvalidated&&(this._textureInvalidated=!1,this._createOrDestroyRasterTexture(t),this._rasterTexture&&(i?this.transformGrid&&!this._transformGridTexture&&(this._transformGridTexture=h(t,this.transformGrid)):this._rasterTexture.setData(null)),this.suspended||(this.ready(),this.requestRender()))}_createOrDestroyRasterTexture(e){var r,s;const i=t(this.source)?n(this.source,this.bandIds):null;if(!this._isValidSource(i))return void(this._rasterTexture&&(this._rasterTexture.dispose(),this._rasterTextureBandIds=null,this._rasterTexture=null));const a=!this._isBandIdschanged(this.bandIds);if(this._rasterTexture){if(a)return;this._rasterTexture.dispose(),this._rasterTextureBandIds=null,this._rasterTexture=null}this._supportsBilinearTexture=null==(r=e.capabilities.textureFloat)?void 0:r.textureFloatLinear;const o=this._getTextureSamplingMethod(this.interpolation),u=this.isRendereredSource||!(null!=(s=e.capabilities.textureFloat)&&s.textureFloat);this._rasterTexture=d(e,i,o,u),this._rasterTextureBandIds=this.bandIds?[...this.bandIds]:null}_isBandIdschanged(t){const e=this._rasterTextureBandIds;return!(null==e&&null==t||e&&t&&e.join(\"\")===t.join(\"\"))}_isValidSource(e){var r;return t(e)&&(null==(r=e.pixels)?void 0:r.length)>0}_getTextureSamplingMethod(e){const{type:r,colormap:s}=this.symbolizerParameters,i=\"lut\"===r||\"stretch\"===r&&t(s);return!this._supportsBilinearTexture||i||\"bilinear\"!==e&&\"cubic\"!==e?\"nearest\":\"bilinear\"}_updateColormapTexture(t){const e=this._colormap,r=this.symbolizerParameters.colormap;return r?e?r.length!==e.length||r.some(((t,r)=>t!==e[r]))?(this._colormapTexture&&(this._colormapTexture.dispose(),this._colormapTexture=null),this._colormapTexture=_(t,r),void(this._colormap=r)):void 0:(this._colormapTexture=_(t,r),void(this._colormap=r)):(this._colormapTexture&&(this._colormapTexture.dispose(),this._colormapTexture=null),void(this._colormap=null))}}class p extends x{get source(){return this._source}}function c(e){return t(e.source)}export{x as RasterBitmap,p as RasterBitmapWithSource,c as hasSource};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{TEXTURE_BINDING_BITMAP as e}from\"../definitions.js\";import t from\"../VertexStream.js\";import i from\"./WGLBrush.js\";const s={nearest:{defines:[],samplingMode:9728,mips:!1},bilinear:{defines:[],samplingMode:9729,mips:!1},bicubic:{defines:[\"bicubic\"],samplingMode:9729,mips:!1},trilinear:{defines:[],samplingMode:9987,mips:!0}},n=(e,t,i)=>{if(\"dynamic\"===i.samplingMode){const{state:i}=e,n=t.resolution/t.pixelRatio/i.resolution,a=Math.round(e.pixelRatio)!==e.pixelRatio,r=n>1.05||n<.95;return i.rotation||r||a||t.isSourceScaled||t.rotation?s.bilinear:s.nearest}return s[i.samplingMode]};class a extends i{constructor(){super(...arguments),this._desc={vsPath:\"raster/bitmap\",fsPath:\"raster/bitmap\",attributes:new Map([[\"a_position\",0],[\"a_texcoord\",1]])}}dispose(){this._quad&&this._quad.dispose()}prepareState({context:e},t){e.setBlendingEnabled(!0),\"additive\"===t.blendFunction?e.setBlendFunctionSeparate(1,1,1,1):e.setBlendFunctionSeparate(1,771,1,771),e.setColorMask(!0,!0,!0,!0),e.setStencilWriteMask(0),e.setStencilTestEnabled(!0),e.setStencilFunction(514,t.stencilRef,255)}draw(i,s){const{context:a,renderingOptions:r,painter:o}=i;if(!s.source)return;i.timeline.begin(this.name),this._quad||(this._quad=new t(a,[0,0,1,0,0,1,1,1]));const d=n(i,s,r),c=o.materialManager.getProgram(i,this._desc,d.defines),{coordScale:l,computedOpacity:m,transforms:p}=s;s.setSamplingProfile(d),s.bind(i.context,e),a.useProgram(c),c.setUniformMatrix3fv(\"u_dvsMat3\",p.dvs),c.setUniform1i(\"u_texture\",e),c.setUniform2fv(\"u_coordScale\",l),c.setUniform1f(\"u_opacity\",m),this._quad.draw(),i.timeline.end(this.name)}}export{a as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isNone as t}from\"../../../../../core/maybe.js\";import{f as r}from\"../../../../../chunks/vec4f32.js\";import{createProgramDescriptor as s}from\"../Utils.js\";import e from\"./WGLBrush.js\";import{background as o}from\"../shaders/BackgroundPrograms.js\";import{createProgram as i}from\"../../../../webgl/programUtils.js\";const a=()=>s(\"clip\",{geometry:[{location:0,name:\"a_pos\",count:2,type:5122}]});class n extends e{constructor(){super(...arguments),this._color=r(0,1,0,1)}dispose(){this._program&&this._program.dispose()}prepareState({context:t}){t.setStencilTestEnabled(!0),t.setBlendingEnabled(!1),t.setFaceCullingEnabled(!1),t.setColorMask(!1,!1,!1,!1),t.setStencilOp(7680,7680,7681),t.setStencilWriteMask(255),t.setStencilFunction(519,0,255)}draw(r,s){const{context:e,state:n}=r,m=a(),p=s.getVAO(e,n,m.attributes,m.bufferLayouts);t(p.indexBuffer)||(this._program||(this._program=i(e,o)),e.useProgram(this._program),this._program.setUniform2fv(\"u_coord_range\",[1,1]),this._program.setUniform4fv(\"u_color\",this._color),this._program.setUniformMatrix3fv(\"u_dvsMat3\",n.displayMat3),e.bindVAO(p),e.drawElements(4,p.indexBuffer.size,5125,0),e.bindVAO())}}export{n as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{nextPowerOfTwo as t}from\"../../../../../core/mathUtils.js\";import{isSome as r}from\"../../../../../core/maybe.js\";import{c as e}from\"../../../../../chunks/mat3f32.js\";import{f as o}from\"../../../../../chunks/vec4f32.js\";import i from\"../../../../webgl/BufferObject.js\";import\"../../../../webgl/FramebufferObject.js\";import\"../../../../../core/has.js\";import\"../../../../webgl/checkWebGLError.js\";import\"../../../../webgl/enums.js\";import\"../../../../../chunks/builtins.js\";import\"../../../../webgl/renderState.js\";import\"../../../../webgl/Texture.js\";import s from\"../../../../webgl/VertexArrayObject.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as a,VTL_HIGH_RES_CUTOFF as n}from\"../definitions.js\";import{WGLDrawPhase as c}from\"../enums.js\";import{u32to4Xu8 as m}from\"../number.js\";import f from\"./WGLBrush.js\";class l extends f{constructor(){super(...arguments),this._color=o(1,0,0,1),this._patternMatrix=e(),this._programOptions={id:!1,pattern:!1}}dispose(){this._vao&&(this._vao.dispose(),this._vao=null)}drawMany(e,o){const{context:i,painter:s,styleLayerUID:f}=e;this._loadWGLResources(e);const l=e.displayLevel,u=e.styleLayer,p=u.backgroundMaterial,_=s.vectorTilesMaterialManager,h=u.getPaintValue(\"background-color\",l),d=u.getPaintValue(\"background-opacity\",l),g=u.getPaintValue(\"background-pattern\",l),b=void 0!==g,j=h[3]*d,v=1|window.devicePixelRatio,x=e.spriteMosaic;let y,M;const w=v>n?2:1,U=e.drawPhase===c.HITTEST,k=this._programOptions;k.id=U,k.pattern=b;const L=_.getMaterialProgram(i,p,k);if(i.bindVAO(this._vao),i.useProgram(L),b){const t=x.getMosaicItemPosition(g,!0);if(r(t)){const{tl:e,br:o,page:s}=t;y=o[0]-e[0],M=o[1]-e[1];const n=x.getPageSize(s);r(n)&&(x.bind(i,9729,s,a),L.setUniform4f(\"u_tlbr\",e[0],e[1],o[0],o[1]),L.setUniform2fv(\"u_mosaicSize\",n),L.setUniform1i(\"u_texture\",a))}L.setUniform1f(\"u_opacity\",d)}else this._color[0]=j*h[0],this._color[1]=j*h[1],this._color[2]=j*h[2],this._color[3]=j,L.setUniform4fv(\"u_color\",this._color);if(L.setUniform1f(\"u_depth\",u.z||0),U){const t=m(f+1);L.setUniform4fv(\"u_id\",t)}for(const r of o){if(L.setUniform1f(\"u_coord_range\",r.rangeX),L.setUniformMatrix3fv(\"u_dvsMat3\",r.transforms.dvs),b){const e=Math.max(2**(Math.round(l)-r.key.level),1),o=w*r.width*e,i=o/t(y),s=o/t(M);this._patternMatrix[0]=i,this._patternMatrix[4]=s,L.setUniformMatrix3fv(\"u_pattern_matrix\",this._patternMatrix)}i.setStencilFunction(514,r.stencilRef,255),i.drawArrays(5,0,4)}}_loadWGLResources(t){if(this._vao)return;const{context:r,styleLayer:e}=t,o=e.backgroundMaterial,a=new Int8Array([0,0,1,0,0,1,1,1]),n=i.createVertex(r,35044,a),c=new s(r,o.getAttributeLocations(),o.getLayoutInfo(),{geometry:n});this._vao=c}}export{l as WGLBrushVTLBackground};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isNone as e}from\"../../../../../core/maybe.js\";import{WGLDrawPhase as t}from\"../enums.js\";import{u32to4Xu8 as r}from\"../number.js\";import a from\"./WGLBrush.js\";class i extends a{constructor(){super(...arguments),this._programOptions={id:!1}}dispose(){}drawMany(a,i){const{context:n,displayLevel:s,requiredLevel:o,state:l,drawPhase:c,painter:u,spriteMosaic:d,styleLayerUID:f}=a;if(!i.some((e=>{var t,r;return null!=(t=null==(r=e.layerData.get(f))?void 0:r.circleIndexCount)&&t})))return;const m=a.styleLayer,p=m.circleMaterial,y=u.vectorTilesMaterialManager,v=1.2,g=m.getPaintValue(\"circle-translate\",s),M=m.getPaintValue(\"circle-translate-anchor\",s),x=c===t.HITTEST,_=this._programOptions;_.id=x;const U=y.getMaterialProgram(n,p,_);n.useProgram(U),U.setUniformMatrix3fv(\"u_displayMat3\",1===M?l.displayMat3:l.displayViewMat3),U.setUniform2fv(\"u_circleTranslation\",g),U.setUniform1f(\"u_depth\",m.z),U.setUniform1f(\"u_antialiasingWidth\",v);let h=-1;if(x){const e=r(f+1);U.setUniform4fv(\"u_id\",e)}for(const t of i){if(!t.layerData.has(f))continue;t.key.level!==h&&(h=t.key.level,p.setDataUniforms(U,s,m,h,d));const r=t.layerData.get(f);if(!r.circleIndexCount)continue;r.prepareForRendering(n);const a=r.circleVertexArrayObject;e(a)||(n.bindVAO(a),U.setUniformMatrix3fv(\"u_dvsMat3\",t.transforms.dvs),o!==t.key.level?n.setStencilFunction(514,t.stencilRef,255):n.setStencilFunction(516,255,255),n.drawElements(4,r.circleIndexCount,5125,Uint32Array.BYTES_PER_ELEMENT*r.circleIndexStart),t.triangleCount+=r.circleIndexCount/3)}}}export{i as WGLBrushVTLCircle};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isNone as t,isSome as e}from\"../../../../../core/maybe.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as i,VTL_HIGH_RES_CUTOFF as a}from\"../definitions.js\";import{WGLDrawPhase as n}from\"../enums.js\";import{u32to4Xu8 as r}from\"../number.js\";import o from\"./WGLBrush.js\";const l=1/65536;class s extends o{constructor(){super(...arguments),this._fillProgramOptions={id:!1,pattern:!1},this._outlineProgramOptions={id:!1}}dispose(){}drawMany(t,e){const{displayLevel:i,drawPhase:a,renderPass:o,spriteMosaic:l,styleLayerUID:s}=t;let f=!1;for(const n of e)if(n.layerData.has(s)){const t=n.layerData.get(s);if(t.fillIndexCount>0||t.outlineIndexCount>0){f=!0;break}}if(!f)return;const u=t.styleLayer,c=u.getPaintProperty(\"fill-pattern\"),d=void 0!==c,m=d&&c.isDataDriven;let p;if(d&&!m){const t=c.getValue(i);p=l.getMosaicItemPosition(t,!0)}const y=!d&&u.getPaintValue(\"fill-antialias\",i);let g=!0,M=1;if(!d){const t=u.getPaintProperty(\"fill-color\"),e=u.getPaintProperty(\"fill-opacity\");if(!(null!=t&&t.isDataDriven||null!=e&&e.isDataDriven)){const t=u.getPaintValue(\"fill-color\",i);M=u.getPaintValue(\"fill-opacity\",i)*t[3],M>=1&&(g=!1)}}if(g&&\"opaque\"===o)return;let _;a===n.HITTEST&&(_=r(s+1));const v=u.getPaintValue(\"fill-translate\",i),P=u.getPaintValue(\"fill-translate-anchor\",i);(g||\"translucent\"!==o)&&this._drawFill(t,s,u,e,v,P,d,p,m,_);const x=!u.hasDataDrivenOutlineColor&&u.outlineUsesFillColor&&M<1;y&&\"opaque\"!==o&&!x&&this._drawOutline(t,s,u,e,v,P,_)}_drawFill(r,o,s,f,u,c,d,m,p,y){if(d&&!p&&t(m))return;const{context:g,displayLevel:M,state:_,drawPhase:v,painter:P,pixelRatio:x,spriteMosaic:U}=r,h=s.fillMaterial,E=P.vectorTilesMaterialManager,T=x>a?2:1,D=v===n.HITTEST,w=this._fillProgramOptions;w.id=D,w.pattern=d;const I=E.getMaterialProgram(g,h,w);if(g.useProgram(I),e(m)){const{page:t}=m,a=U.getPageSize(t);e(a)&&(U.bind(g,9729,t,i),I.setUniform2fv(\"u_mosaicSize\",a),I.setUniform1i(\"u_texture\",i))}I.setUniformMatrix3fv(\"u_displayMat3\",1===c?_.displayMat3:_.displayViewMat3),I.setUniform2fv(\"u_fillTranslation\",u),I.setUniform1f(\"u_depth\",s.z+l),D&&I.setUniform4fv(\"u_id\",y);let S=-1;for(const a of f){if(!a.layerData.has(o))continue;a.key.level!==S&&(S=a.key.level,h.setDataUniforms(I,M,s,S,U));const n=a.layerData.get(o);if(!n.fillIndexCount)continue;n.prepareForRendering(g);const r=n.fillVertexArrayObject;if(!t(r)){if(g.bindVAO(r),I.setUniformMatrix3fv(\"u_dvsMat3\",a.transforms.dvs),g.setStencilFunction(514,a.stencilRef,255),d){const t=Math.max(2**(Math.round(M)-a.key.level),1),e=a.rangeX/(T*a.width*t);I.setUniform1f(\"u_patternFactor\",e)}if(p){const t=n.patternMap;if(!t)continue;for(const[a,n]of t){const t=U.getPageSize(a);e(t)&&(U.bind(g,9729,a,i),I.setUniform2fv(\"u_mosaicSize\",t),I.setUniform1i(\"u_texture\",i),g.drawElements(4,n[1],5125,Uint32Array.BYTES_PER_ELEMENT*n[0]))}}else g.drawElements(4,n.fillIndexCount,5125,Uint32Array.BYTES_PER_ELEMENT*n.fillIndexStart);a.triangleCount+=n.fillIndexCount/3}}}_drawOutline(e,i,a,r,o,s,f){const{context:u,displayLevel:c,state:d,drawPhase:m,painter:p,pixelRatio:y,spriteMosaic:g}=e,M=a.outlineMaterial,_=p.vectorTilesMaterialManager,v=.75/y,P=m===n.HITTEST,x=this._outlineProgramOptions;x.id=P;const U=_.getMaterialProgram(u,M,x);u.useProgram(U),U.setUniformMatrix3fv(\"u_displayMat3\",1===s?d.displayMat3:d.displayViewMat3),U.setUniform2fv(\"u_fillTranslation\",o),U.setUniform1f(\"u_depth\",a.z+l),U.setUniform1f(\"u_outline_width\",v),P&&U.setUniform4fv(\"u_id\",f);let h=-1;for(const n of r){if(!n.layerData.has(i))continue;n.key.level!==h&&(h=n.key.level,M.setDataUniforms(U,c,a,h,g));const e=n.layerData.get(i);if(e.prepareForRendering(u),!e.outlineIndexCount)continue;const r=e.outlineVertexArrayObject;t(r)||(u.bindVAO(r),U.setUniformMatrix3fv(\"u_dvsMat3\",n.transforms.dvs),u.setStencilFunction(514,n.stencilRef,255),u.drawElements(4,e.outlineIndexCount,5125,Uint32Array.BYTES_PER_ELEMENT*e.outlineIndexStart),n.triangleCount+=e.outlineIndexCount/3)}}}export{s as WGLBrushVTLFill};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../../../core/maybe.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as i}from\"../definitions.js\";import{WGLDrawPhase as n}from\"../enums.js\";import{u32to4Xu8 as a}from\"../number.js\";import r from\"./WGLBrush.js\";class o extends r{constructor(){super(...arguments),this._programOptions={id:!1,pattern:!1,sdf:!1}}dispose(){}drawMany(r,o){const{context:s,displayLevel:l,state:f,drawPhase:m,painter:u,pixelRatio:c,spriteMosaic:d,styleLayerUID:p}=r;if(!o.some((e=>{var t,i;return null!=(t=null==(i=e.layerData.get(p))?void 0:i.lineIndexCount)&&t})))return;const g=r.styleLayer,y=g.lineMaterial,M=u.vectorTilesMaterialManager,v=g.getPaintValue(\"line-translate\",l),_=g.getPaintValue(\"line-translate-anchor\",l),U=g.getPaintProperty(\"line-pattern\"),x=void 0!==U,P=x&&U.isDataDriven;let E,D;if(x&&!P){const e=U.getValue(l);E=d.getMosaicItemPosition(e)}let V=!1;if(!x){const e=g.getPaintProperty(\"line-dasharray\");if(D=void 0!==e,V=D&&e.isDataDriven,D&&!V){const t=e.getValue(l),i=g.getDashKey(t,g.getLayoutValue(\"line-cap\",l));E=d.getMosaicItemPosition(i)}}const h=1/c,I=m===n.HITTEST,S=this._programOptions;S.id=I,S.pattern=x,S.sdf=D;const T=M.getMaterialProgram(s,y,S);if(s.useProgram(T),T.setUniformMatrix3fv(\"u_displayViewMat3\",f.displayViewMat3),T.setUniformMatrix3fv(\"u_displayMat3\",1===_?f.displayMat3:f.displayViewMat3),T.setUniform2fv(\"u_lineTranslation\",v),T.setUniform1f(\"u_depth\",g.z),T.setUniform1f(\"u_antialiasing\",h),I){const e=a(p+1);T.setUniform4fv(\"u_id\",e)}if(E&&e(E)){const{page:t}=E,n=d.getPageSize(t);e(n)&&(d.bind(s,9729,t,i),T.setUniform2fv(\"u_mosaicSize\",n),T.setUniform1i(\"u_texture\",i))}let w=-1;for(const n of o){if(!n.layerData.has(p))continue;n.key.level!==w&&(w=n.key.level,y.setDataUniforms(T,l,g,w,d));const a=2**(l-w)/c;T.setUniform1f(\"u_zoomFactor\",a);const r=n.layerData.get(p);if(!r.lineIndexCount)continue;r.prepareForRendering(s);const o=r.lineVertexArrayObject;if(!t(o)){if(s.bindVAO(o),T.setUniformMatrix3fv(\"u_dvsMat3\",n.transforms.dvs),s.setStencilFunction(514,n.stencilRef,255),P||V){const t=r.patternMap;if(!t)continue;for(const[n,a]of t){const t=d.getPageSize(n);e(t)&&(d.bind(s,9729,n,i),T.setUniform2fv(\"u_mosaicSize\",t),T.setUniform1i(\"u_texture\",i),s.drawElements(4,a[1],5125,Uint32Array.BYTES_PER_ELEMENT*a[0]))}}else s.drawElements(4,r.lineIndexCount,5125,Uint32Array.BYTES_PER_ELEMENT*r.lineIndexStart);n.triangleCount+=r.lineIndexCount/3}}}}export{o as WGLBrushVTLLine};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isNone as e}from\"../../../../../core/maybe.js\";import{c as t,f as a}from\"../../../../../chunks/vec2f32.js\";import{FADE_DURATION as i}from\"../../vectorTiles/decluttering/config.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as r,VTL_TEXTURE_BINDING_UNIT_GLYPHS as s}from\"../definitions.js\";import{WGLDrawPhase as n}from\"../enums.js\";import{degToByte as o}from\"../GeometryUtils.js\";import{u32to4Xu8 as l}from\"../number.js\";import f from\"./WGLBrush.js\";const c=1/65536;class p extends f{constructor(){super(...arguments),this._iconProgramOptions={id:!1,sdf:!1},this._sdfProgramOptions={id:!1},this._spritesTextureSize=t()}dispose(){}drawMany(e,t){const{drawPhase:a,styleLayerUID:i}=e,r=e.styleLayer;let s;a===n.HITTEST&&(s=l(i+1)),this._drawIcons(e,r,t,s),this._drawText(e,r,t,s)}_drawIcons(t,a,s,l){const{context:f,displayLevel:c,drawPhase:p,painter:u,spriteMosaic:m,state:g,styleLayerUID:y}=t,d=a.iconMaterial,_=u.vectorTilesMaterialManager;let h,M=!1;for(const e of s)if(e.layerData.has(y)&&(h=e.layerData.get(y),h.iconPerPageElementsMap.size>0)){M=!0;break}if(!M)return;const U=a.getPaintValue(\"icon-translate\",c),P=a.getPaintValue(\"icon-translate-anchor\",c);let x=a.getLayoutValue(\"icon-rotation-alignment\",c);2===x&&(x=0===a.getLayoutValue(\"symbol-placement\",c)?1:0);const v=0===x,T=a.getLayoutValue(\"icon-keep-upright\",c)&&v,E=h.isIconSDF,D=p===n.HITTEST,V=this._iconProgramOptions;V.id=D,V.sdf=E;const S=_.getMaterialProgram(f,d,V);f.useProgram(S),S.setUniformMatrix3fv(\"u_displayViewMat3\",0===x?g.displayViewMat3:g.displayMat3),S.setUniformMatrix3fv(\"u_displayMat3\",1===P?g.displayMat3:g.displayViewMat3),S.setUniform2fv(\"u_iconTranslation\",U),S.setUniform1f(\"u_depth\",a.z),S.setUniform1f(\"u_mapRotation\",o(g.rotation)),S.setUniform1f(\"u_keepUpright\",T?1:0),S.setUniform1f(\"u_level\",10*c),S.setUniform1i(\"u_texture\",r),S.setUniform1f(\"u_fadeDuration\",i/1e3),D&&S.setUniform4fv(\"u_id\",l);let w=-1;for(const i of s){if(!i.layerData.has(y))continue;if(i.key.level!==w&&(w=i.key.level,d.setDataUniforms(S,c,a,w,m)),h=i.layerData.get(y),0===h.iconPerPageElementsMap.size)continue;h.prepareForRendering(f),h.updateOpacityInfo();const r=h.iconVertexArrayObject;if(!e(r)){f.bindVAO(r),S.setUniformMatrix3fv(\"u_dvsMat3\",i.transforms.dvs),S.setUniform1f(\"u_time\",(performance.now()-h.lastOpacityUpdate)/1e3);for(const[e,a]of h.iconPerPageElementsMap)this._renderIconRange(t,S,a,e,i)}}}_renderIconRange(e,t,a,i,s){const{context:n,spriteMosaic:o}=e;this._spritesTextureSize[0]=o.getWidth(i)/4,this._spritesTextureSize[1]=o.getHeight(i)/4,t.setUniform2fv(\"u_mosaicSize\",this._spritesTextureSize),o.bind(n,9729,i,r),n.setStencilTestEnabled(!0),n.setStencilFunction(516,255,255),n.setStencilWriteMask(0),n.drawElements(4,a[1],5125,Uint32Array.BYTES_PER_ELEMENT*a[0]),s.triangleCount+=a[1]/3}_drawText(t,r,l,f){const{context:p,displayLevel:u,drawPhase:m,glyphMosaic:g,painter:y,pixelRatio:d,spriteMosaic:_,state:h,styleLayerUID:M}=t,U=r.textMaterial,P=y.vectorTilesMaterialManager;let x,v=!1;for(const e of l)if(e.layerData.has(M)&&(x=e.layerData.get(M),x.glyphPerPageElementsMap.size>0)){v=!0;break}if(!v)return;const T=r.getPaintProperty(\"text-opacity\");if(T&&!T.isDataDriven&&0===T.getValue(u))return;const E=r.getPaintProperty(\"text-color\"),D=!E||E.isDataDriven||E.getValue(u)[3]>0,V=r.getPaintProperty(\"text-halo-width\"),S=r.getPaintProperty(\"text-halo-color\"),w=(!V||V.isDataDriven||V.getValue(u)>0)&&(!S||S.isDataDriven||S.getValue(u)[3]>0);if(!D&&!w)return;const L=24/8;let z=r.getLayoutValue(\"text-rotation-alignment\",u);2===z&&(z=0===r.getLayoutValue(\"symbol-placement\",u)?1:0);const b=0===z,k=r.getLayoutValue(\"text-keep-upright\",u)&&b,I=m===n.HITTEST,O=.8*L/d;this._glyphTextureSize||(this._glyphTextureSize=a(g.width/4,g.height/4));const R=r.getPaintValue(\"text-translate\",u),j=r.getPaintValue(\"text-translate-anchor\",u),A=this._sdfProgramOptions;A.id=I;const F=P.getMaterialProgram(p,U,A);p.useProgram(F),F.setUniformMatrix3fv(\"u_displayViewMat3\",0===z?h.displayViewMat3:h.displayMat3),F.setUniformMatrix3fv(\"u_displayMat3\",1===j?h.displayMat3:h.displayViewMat3),F.setUniform2fv(\"u_textTranslation\",R),F.setUniform1f(\"u_depth\",r.z+c),F.setUniform2fv(\"u_mosaicSize\",this._glyphTextureSize),F.setUniform1f(\"u_mapRotation\",o(h.rotation)),F.setUniform1f(\"u_keepUpright\",k?1:0),F.setUniform1f(\"u_level\",10*u),F.setUniform1i(\"u_texture\",s),F.setUniform1f(\"u_antialiasingWidth\",O),F.setUniform1f(\"u_fadeDuration\",i/1e3),I&&F.setUniform4fv(\"u_id\",f);let W=-1;for(const a of l){if(!a.layerData.has(M))continue;if(a.key.level!==W&&(W=a.key.level,U.setDataUniforms(F,u,r,W,_)),x=a.layerData.get(M),0===x.glyphPerPageElementsMap.size)continue;x.prepareForRendering(p),x.updateOpacityInfo();const t=x.textVertexArrayObject;if(e(t))continue;p.bindVAO(t),F.setUniformMatrix3fv(\"u_dvsMat3\",a.transforms.dvs),p.setStencilTestEnabled(!0),p.setStencilFunction(516,255,255),p.setStencilWriteMask(0);const i=(performance.now()-x.lastOpacityUpdate)/1e3;F.setUniform1f(\"u_time\",i),x.glyphPerPageElementsMap.forEach(((e,t)=>{this._renderGlyphRange(p,e,t,g,F,w,D,a)}))}}_renderGlyphRange(e,t,a,i,r,n,o,l){i.bind(e,9729,a,s),n&&(r.setUniform1f(\"u_halo\",1),e.drawElements(4,t[1],5125,Uint32Array.BYTES_PER_ELEMENT*t[0]),l.triangleCount+=t[1]/3),o&&(r.setUniform1f(\"u_halo\",0),e.drawElements(4,t[1],5125,Uint32Array.BYTES_PER_ELEMENT*t[0]),l.triangleCount+=t[1]/3)}}export{p as WGLBrushVTLSymbol};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isNone as t}from\"../../../../../core/maybe.js\";import{MIN_MAX_ZOOM_PRECISION_FACTOR as e,TEXTURE_BINDING_ATTRIBUTE_DATA_0 as i,TEXTURE_BINDING_ATTRIBUTE_DATA_1 as r,TEXTURE_BINDING_ATTRIBUTE_DATA_2 as s,TEXTURE_BINDING_ATTRIBUTE_DATA_3 as a}from\"../definitions.js\";import n from\"./WGLBrush.js\";class o extends n{prepareState({context:t},e,i){const r=i&&-1!==i.indexOf(\"id\");t.setBlendingEnabled(!r),t.setBlendFunctionSeparate(1,771,1,771),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!0),t.setStencilFunction(514,e.stencilRef,255)}draw(e,i,r){const s=this.getGeometryType();i.commit(e);const a=i.getGeometry(s);t(a)||(e.timeline.begin(this.name),e.attributeView.bindTextures(e.context),a.forEachCommand((t=>this.drawGeometry(e,i,t,r))))}_setSharedUniforms(t,n,o){const{displayLevel:m,pixelRatio:u,state:f}=n;t.setUniform1f(\"u_pixelRatio\",u),t.setUniformMatrix3fv(\"u_dvsMat3\",o.transforms.dvs,!1,!0),t.setUniformMatrix3fv(\"u_displayViewMat3\",f.displayViewMat3,!1,!0),t.setUniform1f(\"u_currentZoom\",Math.round(m*e)),t.setUniform1i(\"u_attributeTextureSize\",n.attributeView.size),t.setUniform1i(\"u_attributeData0\",i),t.setUniform1i(\"u_attributeData1\",r),t.setUniform1i(\"u_attributeData2\",s),t.setUniform1i(\"u_attributeData3\",a)}}export{o as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport e from\"../../../../../core/RandomLCG.js\";import\"../../../../webgl/BufferObject.js\";import\"../../../../webgl/FramebufferObject.js\";import\"../../../../../core/has.js\";import\"../../../../webgl/checkWebGLError.js\";import\"../../../../webgl/enums.js\";import\"../../../../../chunks/builtins.js\";import\"../../../../webgl/renderState.js\";import t from\"../../../../webgl/Texture.js\";import\"../../../../webgl/VertexArrayObject.js\";import{TEXTURE_BINDING_RENDERER_0 as o,TEXTURE_BINDING_RENDERER_1 as r,TILE_SIZE as i}from\"../definitions.js\";import{WGLGeometryType as s}from\"../enums.js\";import{createProgramDescriptor as a}from\"../Utils.js\";import n from\"./WGLGeometryBrush.js\";import{FillMaterialKey as l}from\"../materialKey/MaterialKey.js\";const u=e=>a(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_id\",count:4,type:5121},...e.dotDensity?[]:[{location:2,name:\"a_color\",count:4,type:5121,normalized:!0},{location:3,name:\"a_tlbr\",count:4,type:5123},{location:4,name:\"a_aux1\",count:4,type:5121},{location:5,name:\"a_aux2\",count:2,type:5123},{location:6,name:\"a_aux3\",count:4,type:5121},{location:7,name:\"a_zoomRange\",count:2,type:5123}],...e.dotDensity?[{location:2,name:\"a_inverseArea\",count:1,type:5126}]:[]]});class d extends n{constructor(){super(...arguments),this._dotTextureSize=0,this._dotTextures=null,this._dotSamplers=new Int32Array([o,r])}dispose(){this._disposeTextures()}getGeometryType(){return s.FILL}drawGeometry(e,t,o,r){const{context:s,painter:a,rendererInfo:n,requiredLevel:d}=e,m=l.load(o.materialKey),{bufferLayouts:c,attributes:f}=u(m),_=a.materialManager.getMaterialProgram(e,m,\"materials/fill\",f,r);if(s.useProgram(_),this._setSharedUniforms(_,e,t),m.textureBinding){a.textureManager.bindTextures(s,_,m);const o=1/2**(d-t.key.level)/e.pixelRatio;_.setUniform1f(\"u_zoomFactor\",o)}if(m.vvColor&&(_.setUniform1fv(\"u_vvColorValues\",n.vvColorValues),_.setUniform4fv(\"u_vvColors\",n.vvColors)),m.vvOpacity&&(_.setUniform1fv(\"u_vvOpacityValues\",n.vvOpacityValues),_.setUniform1fv(\"u_vvOpacities\",n.vvOpacities)),m.dotDensity){const o=i/n.ddDotSize,r=o*window.devicePixelRatio*o*window.devicePixelRatio,a=1/2**(d-t.key.level),l=1/a*(1/a),u=n.ddDotScale?e.state.scale/n.ddDotScale:1;_.setUniform1f(\"u_tileZoomFactor\",a),_.setUniform1f(\"u_tileDotsOverArea\",r/(i*window.devicePixelRatio*i*window.devicePixelRatio)),_.setUniformMatrix4fv(\"u_dotColors\",n.ddColors),_.setUniform4fv(\"u_isActive\",n.ddActiveDots),_.setUniform4fv(\"u_dotBackgroundColor\",n.ddBackgroundColor),_.setUniform1f(\"u_dotValue\",Math.max(1,n.ddDotValue*u*l)),this._bindDotDensityTextures(s,_,n,o)}o.draw(s,c,f)}_disposeTextures(){if(this._dotTextures){for(let e=0;et(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_id\",count:4,type:5121},{location:2,name:\"a_color\",count:4,type:5121,normalized:!0},{location:3,name:\"a_haloColor\",count:4,type:5121,normalized:!0},{location:4,name:\"a_texAndSize\",count:4,type:5121},{location:5,name:\"a_refSymbolAndPlacementOffset\",count:4,type:5121},{location:6,name:\"a_glyphData\",count:4,type:5121},{location:7,name:\"a_vertexOffset\",count:2,type:5122},{location:8,name:\"a_texCoords\",count:2,type:5123}]});class n extends a{dispose(){}getGeometryType(){return e.LABEL}drawGeometry(e,t,a,n){const{context:s,painter:l,state:r,rendererInfo:m}=e,u=o.load(a.materialKey),f=u.mapAligned?1:0;if(!f&&Math.abs(t.key.level-Math.round(100*e.displayLevel)/100)>=1)return;const{bufferLayouts:c,attributes:p}=i(u),v=l.materialManager.getMaterialProgram(e,u,\"materials/label\",p,n);e.context.setStencilFunction(514,0,255),s.useProgram(v),this._setSharedUniforms(v,e,t),l.textureManager.bindTextures(s,v,u);const d=1===f?r.displayViewMat3:r.displayMat3;if(u.vvSizeMinMaxValue&&v.setUniform4fv(\"u_vvSizeMinMaxValue\",m.vvSizeMinMaxValue),u.vvSizeScaleStops&&v.setUniform1f(\"u_vvSizeScaleStopsValue\",m.vvSizeScaleStopsValue),u.vvSizeFieldStops){const e=m.getSizeVVFieldStops(t.key.level);v.setUniform1fv(\"u_vvSizeFieldStopsValues\",e.values),v.setUniform1fv(\"u_vvSizeFieldStopsSizes\",e.sizes)}u.vvSizeUnitValue&&v.setUniform1f(\"u_vvSizeUnitValueWorldToPixelsRatio\",m.vvSizeUnitValueToPixelsRatio),v.setUniform1f(\"u_mapRotation\",Math.floor(r.rotation/360*254)),v.setUniform1f(\"u_mapAligned\",f),v.setUniformMatrix3fv(\"u_displayMat3\",d),v.setUniform1f(\"u_opacity\",1),v.setUniform2fv(\"u_screenSize\",e.state.size),v.setUniform1f(\"u_isHalo\",1),a.draw(s,c,p),v.setUniform1f(\"u_isHalo\",0),a.draw(s,c,p),s.setStencilTestEnabled(!0),s.setBlendingEnabled(!0)}}export{n as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{WGLGeometryType as e}from\"../enums.js\";import{createProgramDescriptor as t}from\"../Utils.js\";import a from\"./WGLGeometryBrush.js\";import{LineMaterialKey as o}from\"../materialKey/MaterialKey.js\";const i=e=>t(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_id\",count:4,type:5121},{location:2,name:\"a_color\",count:4,type:5121,normalized:!0},{location:3,name:\"a_offsetAndNormal\",count:4,type:5120},{location:4,name:\"a_accumulatedDistanceAndHalfWidth\",count:2,type:5123},{location:5,name:\"a_tlbr\",count:4,type:5123},{location:6,name:\"a_segmentDirection\",count:4,type:5120},{location:7,name:\"a_aux\",count:2,type:5123},{location:8,name:\"a_zoomRange\",count:2,type:5123}]});class n extends a{dispose(){}getGeometryType(){return e.LINE}drawGeometry(e,t,a,n){const{context:l,painter:r,rendererInfo:s,displayLevel:v}=e,u=o.load(a.materialKey),{bufferLayouts:m,attributes:c}=i(u),f=r.materialManager.getMaterialProgram(e,u,\"materials/line\",c,n),p=1/e.pixelRatio,S=0;l.useProgram(f),this._setSharedUniforms(f,e,t),u.textureBinding&&r.textureManager.bindTextures(l,f,u);const d=2**(v-t.key.level)/e.pixelRatio;if(f.setUniform1f(\"u_zoomFactor\",d),f.setUniform1f(\"u_blur\",S+p),f.setUniform1f(\"u_antialiasing\",p),u.vvSizeMinMaxValue&&f.setUniform4fv(\"u_vvSizeMinMaxValue\",s.vvSizeMinMaxValue),u.vvSizeScaleStops&&f.setUniform1f(\"u_vvSizeScaleStopsValue\",s.vvSizeScaleStopsValue),u.vvSizeFieldStops){const e=s.getSizeVVFieldStops(t.key.level);f.setUniform1fv(\"u_vvSizeFieldStopsValues\",e.values),f.setUniform1fv(\"u_vvSizeFieldStopsSizes\",e.sizes)}u.vvSizeUnitValue&&f.setUniform1f(\"u_vvSizeUnitValueWorldToPixelsRatio\",s.vvSizeUnitValueToPixelsRatio),u.vvColor&&(f.setUniform1fv(\"u_vvColorValues\",s.vvColorValues),f.setUniform4fv(\"u_vvColors\",s.vvColors)),u.vvOpacity&&(f.setUniform1fv(\"u_vvOpacityValues\",s.vvOpacityValues),f.setUniform1fv(\"u_vvOpacities\",s.vvOpacities)),l.setFaceCullingEnabled(!1),a.draw(l,m,c)}}export{n as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{WGLGeometryType as e}from\"../enums.js\";import{createProgramDescriptor as t}from\"../Utils.js\";import o from\"./WGLGeometryBrush.js\";import{MarkerMaterialKey as a}from\"../materialKey/MaterialKey.js\";const i=e=>t(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_vertexOffset\",count:2,type:5122},{location:2,name:\"a_texCoords\",count:2,type:5123},{location:3,name:\"a_bitSetAndDistRatio\",count:2,type:5123},{location:4,name:\"a_id\",count:4,type:5121},{location:5,name:\"a_color\",count:4,type:5121,normalized:!0},{location:6,name:\"a_outlineColor\",count:4,type:5121,normalized:!0},{location:7,name:\"a_sizeAndOutlineWidth\",count:4,type:5121},{location:8,name:\"a_zoomRange\",count:2,type:5123}]});class n extends o{dispose(){}getGeometryType(){return e.MARKER}drawGeometry(e,t,o,n){const{context:r,painter:s,rendererInfo:v,state:l}=e,u=a.load(o.materialKey),{bufferLayouts:m,attributes:p}=i(u),c=s.materialManager.getMaterialProgram(e,u,\"materials/icon\",p,n);r.useProgram(c),u.textureBinding&&s.textureManager.bindTextures(r,c,u,!0),this._setSharedUniforms(c,e,t);const f=u.vvRotation?l.displayViewMat3:l.displayMat3;if(c.setUniformMatrix3fv(\"u_displayMat3\",f),u.vvSizeMinMaxValue&&c.setUniform4fv(\"u_vvSizeMinMaxValue\",v.vvSizeMinMaxValue),u.vvSizeScaleStops&&c.setUniform1f(\"u_vvSizeScaleStopsValue\",v.vvSizeScaleStopsValue),u.vvSizeFieldStops){const e=v.getSizeVVFieldStops(t.key.level);c.setUniform1fv(\"u_vvSizeFieldStopsValues\",e.values),c.setUniform1fv(\"u_vvSizeFieldStopsSizes\",e.sizes)}u.vvSizeUnitValue&&c.setUniform1f(\"u_vvSizeUnitValueWorldToPixelsRatio\",v.vvSizeUnitValueToPixelsRatio),u.vvColor&&(c.setUniform1fv(\"u_vvColorValues\",v.vvColorValues),c.setUniform4fv(\"u_vvColors\",v.vvColors)),u.vvOpacity&&(c.setUniform1fv(\"u_vvOpacityValues\",v.vvOpacityValues),c.setUniform1fv(\"u_vvOpacities\",v.vvOpacities)),u.vvRotation&&c.setUniform1f(\"u_vvRotationType\",\"geographic\"===v.vvMaterialParameters.vvRotationType?0:1),o.draw(r,m,p)}}export{n as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{WGLGeometryType as e}from\"../enums.js\";import{createProgramDescriptor as t}from\"../Utils.js\";import a from\"./WGLGeometryBrush.js\";import{TextMaterialKey as o}from\"../materialKey/MaterialKey.js\";const i=e=>t(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_id\",count:4,type:5121},{location:2,name:\"a_color\",count:4,type:5121,normalized:!0},{location:3,name:\"a_haloColor\",count:4,type:5121,normalized:!0},{location:4,name:\"a_texFontSize\",count:4,type:5121},{location:5,name:\"a_aux\",count:4,type:5120},{location:6,name:\"a_zoomRange\",count:2,type:5123},{location:7,name:\"a_vertexOffset\",count:2,type:5122},{location:8,name:\"a_texCoords\",count:2,type:5123}]});class r extends a{dispose(){}getGeometryType(){return e.TEXT}drawGeometry(e,t,a,r){const{context:s,painter:n,rendererInfo:v,state:l}=e,u=o.load(a.materialKey),{bufferLayouts:m,attributes:f}=i(u),p=n.materialManager.getMaterialProgram(e,u,\"materials/text\",f,r);if(s.useProgram(p),this._setSharedUniforms(p,e,t),n.textureManager.bindTextures(s,p,u),p.setUniformMatrix3fv(\"u_displayMat3\",l.displayMat3),p.setUniformMatrix3fv(\"u_displayViewMat3\",l.displayViewMat3),u.vvSizeMinMaxValue&&p.setUniform4fv(\"u_vvSizeMinMaxValue\",v.vvSizeMinMaxValue),u.vvSizeScaleStops&&p.setUniform1f(\"u_vvSizeScaleStopsValue\",v.vvSizeScaleStopsValue),u.vvSizeFieldStops){const e=v.getSizeVVFieldStops(t.key.level);p.setUniform1fv(\"u_vvSizeFieldStopsValues\",e.values),p.setUniform1fv(\"u_vvSizeFieldStopsSizes\",e.sizes)}u.vvSizeUnitValue&&p.setUniform1f(\"u_vvSizeUnitValueWorldToPixelsRatio\",v.vvSizeUnitValueToPixelsRatio),u.vvColor&&(p.setUniform1fv(\"u_vvColorValues\",v.vvColorValues),p.setUniform4fv(\"u_vvColors\",v.vvColors)),u.vvOpacity&&(p.setUniform1fv(\"u_vvOpacityValues\",v.vvOpacityValues),p.setUniform1fv(\"u_vvOpacities\",v.vvOpacities)),u.vvRotation&&p.setUniform1f(\"u_vvRotationType\",\"geographic\"===v.vvMaterialParameters.vvRotationType?0:1),p.setUniform1f(\"u_isHalo\",1),a.draw(s,m,f),p.setUniform1f(\"u_isHalo\",0),a.draw(s,m,f)}}export{r as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{hasSource as t}from\"../../../RasterBitmap.js\";import e from\"../../VertexStream.js\";import r from\"../WGLBrush.js\";import{setTextures as s,getCommonUniforms as a,setUniforms as i,getColormapUniforms as o,getStretchUniforms as n,getShadedReliefUniforms as h,getUniformLocationInfos as l,getBasicGridUniforms as c}from\"../../../../../webgl/rasterUtils.js\";class d extends r{constructor(){super(...arguments),this._desc={lut:{vsPath:\"raster/lut\",fsPath:\"raster/lut\",attributes:new Map([[\"a_position\",0],[\"a_texcoord\",1]])},stretch:{vsPath:\"raster/stretch\",fsPath:\"raster/stretch\",attributes:new Map([[\"a_position\",0],[\"a_texcoord\",1]])},hillshade:{vsPath:\"raster/hillshade\",fsPath:\"raster/hillshade\",attributes:new Map([[\"a_position\",0],[\"a_texcoord\",1]])}},this._rendererUniformInfos=new Map}dispose(){this._quad&&this._quad.dispose()}prepareState({context:t},e){t.setBlendingEnabled(!0),t.setBlendFunctionSeparate(1,771,1,771),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!0),t.setStencilFunction(514,e.stencilRef,255)}draw(e,r){var s;if(!t(r)||r.suspended)return;e.timeline.begin(this.name);const a=!(null!=(s=e.context.capabilities.textureFloat)&&s.textureFloatLinear);r.updateTexture(e);const i=this.getShaderVariations(r,a),o=e.painter.materialManager.getProgram(e,this._desc[r.symbolizerParameters.type],i);this.drawWithProgram(e.context,o,r),e.timeline.end(this.name)}drawWithProgram(t,r,l,d=1,p=[0,0],u=!1){this._quad||(this._quad=new e(t,[0,0,1,0,0,1,1,1]));const{symbolizerParameters:m,transformGrid:f,width:g,height:_,opacity:b}=l,x=m.type;t.useProgram(r);const P=this.getShaderVariations(l),w=this.getUniformInfos(x,t,r,P),{names:S,textures:y}=l.getTextures();s(t,r,S,y);const M=c(d,p),U=a(f,[g,_],[l.source.width,l.source.height],b,u);if(i(r,w,{u_coordScale:l.coordScale,u_dvsMat3:l.transforms.dvs,...M,...U}),m.colormap){const{colormap:t,colormapOffset:e}=m,s=o(t,e);i(r,w,s)}if(\"stretch\"===m.type){const t=n(m);i(r,w,t)}else if(\"hillshade\"===m.type){const t=h(m);i(r,w,t)}this._quad.draw()}getUniformInfos(t,e,r,s){const a=s.length>0?t+\"-\"+s.join(\"-\"):t;if(this._rendererUniformInfos.has(a))return this._rendererUniformInfos.get(a);const i=l(e,r);return this._rendererUniformInfos.set(a,i),i}getShaderVariations(t,e=!1){const r=[],{interpolation:s}=t,{type:a,colormap:i}=t.symbolizerParameters;return\"cubic\"===s?r.push(\"bicubic\"):\"bilinear\"===s&&\"stretch\"===a&&null!=i?(r.push(\"bilinear\"),r.push(\"nnedge\")):e&&\"bilinear\"===s&&r.push(\"bilinear\"),t.isRendereredSource?r.push(\"noop\"):i&&r.push(\"applyColormap\"),t.transformGrid&&r.push(\"applyProjection\"),r}}export{d as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport r from\"./webgl/brushes/BrushBitmap.js\";import s from\"./webgl/brushes/BrushClip.js\";import e from\"./webgl/brushes/WGLBrushInfo.js\";import l from\"./webgl/brushes/WGLBrushStencil.js\";import{WGLBrushVTLBackground as o}from\"./webgl/brushes/WGLBrushVTLBackground.js\";import{WGLBrushVTLCircle as t}from\"./webgl/brushes/WGLBrushVTLCircle.js\";import{WGLBrushVTLFill as m}from\"./webgl/brushes/WGLBrushVTLFill.js\";import{WGLBrushVTLLine as b}from\"./webgl/brushes/WGLBrushVTLLine.js\";import{WGLBrushVTLSymbol as i}from\"./webgl/brushes/WGLBrushVTLSymbol.js\";import u from\"./webgl/brushes/WGLGeometryBrushFill.js\";import h from\"./webgl/brushes/WGLGeometryBrushLabel.js\";import p from\"./webgl/brushes/WGLGeometryBrushLine.js\";import L from\"./webgl/brushes/WGLGeometryBrushMarker.js\";import B from\"./webgl/brushes/WGLGeometryBrushText.js\";import f from\"./webgl/brushes/raster/BrushRasterBitmap.js\";import g from\"./webgl/brushes/raster/BrushVectorField.js\";const G={marker:L,line:p,fill:u,text:B,label:h,clip:s,stencil:l,bitmap:r,raster:f,rasterVF:g,tileInfo:e,vtlBackground:o,vtlFill:m,vtlLine:b,vtlCircle:t,vtlSymbol:i},j={vtlBackground:o,vtlFill:m,vtlLine:b,vtlCircle:t,vtlSymbol:i};export{G as brushes,j as vtlBrushes};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as t}from\"../../chunks/tslib.es6.js\";import\"../../core/has.js\";import e from\"../../core/Error.js\";import{JSONSupport as s}from\"../../core/JSONSupport.js\";import{clone as i}from\"../../core/lang.js\";import r from\"../../core/Logger.js\";import{isNone as l}from\"../../core/maybe.js\";import{property as a}from\"../../core/accessorSupport/decorators/property.js\";import{cast as o}from\"../../core/accessorSupport/decorators/cast.js\";import{subclass as h}from\"../../core/accessorSupport/decorators/subclass.js\";var n;const p=r.getLogger(\"esri.layers.support.PixelBlock\");let c=n=class extends s{constructor(t){super(t),this.width=null,this.height=null,this.pixelType=\"f32\",this.validPixelCount=null,this.mask=null,this.maskIsAlpha=!1,this.pixels=null,this.statistics=null}static createEmptyBand(t,e){return new(n.getPixelArrayConstructor(t))(e)}static getPixelArrayConstructor(t){let e;switch(t){case\"u1\":case\"u2\":case\"u4\":case\"u8\":e=Uint8Array;break;case\"u16\":e=Uint16Array;break;case\"u32\":e=Uint32Array;break;case\"s8\":e=Int8Array;break;case\"s16\":e=Int16Array;break;case\"s32\":e=Int32Array;break;case\"u32\":e=Uint32Array;break;case\"f32\":e=Float32Array;break;case\"f64\":e=Float64Array;break;case\"c64\":case\"c128\":case\"unknown\":e=Float32Array}return e}castPixelType(t){if(!t)return\"f32\";let e=t.toLowerCase();return[\"u1\",\"u2\",\"u4\"].indexOf(e)>-1?e=\"u8\":-1===[\"unknown\",\"u8\",\"s8\",\"u16\",\"s16\",\"u32\",\"s32\",\"f32\",\"f64\"].indexOf(e)&&(e=\"f32\"),e}getPlaneCount(){return this.pixels&&this.pixels.length}addData(t){if(!t.pixels||t.pixels.length!==this.width*this.height)throw new e(\"pixelblock:invalid-or-missing-pixels\",\"add data requires valid pixels array that has same length defined by pixel block width * height\");this.pixels||(this.pixels=[]),this.statistics||(this.statistics=[]),this.pixels.push(t.pixels),this.statistics.push(t.statistics||{minValue:null,maxValue:null})}getAsRGBA(){const t=new ArrayBuffer(this.width*this.height*4);switch(this.pixelType){case\"s8\":case\"s16\":case\"u16\":case\"s32\":case\"u32\":case\"f32\":case\"f64\":this._fillFromNon8Bit(t);break;default:this._fillFrom8Bit(t)}return new Uint8ClampedArray(t)}getAsRGBAFloat(){const t=new Float32Array(this.width*this.height*4);return this._fillFrom32Bit(t),t}updateStatistics(){this.statistics=this.pixels.map((t=>this._calculateBandStatistics(t,this.mask)));const t=this.mask;let e=0;if(t)for(let s=0;si?i:ht>=this.pixels.length)),i=e===t.length&&!t.some(((t,e)=>t!==e));return s||i?this:new n({pixelType:this.pixelType,width:this.width,height:this.height,mask:this.mask,validPixelCount:this.validPixelCount,maskIsAlpha:this.maskIsAlpha,pixels:t.map((t=>this.pixels[t])),statistics:this.statistics&&t.map((t=>this.statistics[t]))})}clone(){const t=new n({width:this.width,height:this.height,pixelType:this.pixelType,maskIsAlpha:this.maskIsAlpha,validPixelCount:this.validPixelCount});let e;this.mask&&(this.mask instanceof Uint8Array?t.mask=new Uint8Array(this.mask):t.mask=this.mask.slice(0));const s=n.getPixelArrayConstructor(this.pixelType);if(this.pixels&&this.pixels.length>0){t.pixels=[];const i=this.pixels[0].slice;for(e=0;e=3?(l=i[1],a=i[2]):2===i.length&&(l=i[1]);const h=new Uint32Array(t),n=this.width*this.height;if(r.length===n)if(e&&e.length===n)if(s)for(o=0;o0)a=i.map((t=>t.minValue)).reduce(((t,e)=>Math.min(t,e))),o=i.map((t=>t.maxValue-t.minValue)).reduce(((t,e)=>Math.max(t,e))),l=255/o;else{let t=255;\"s8\"===r?(a=-128,t=127):\"u16\"===r?t=65535:\"s16\"===r?(a=-32768,t=32767):\"u32\"===r?t=4294967295:\"s32\"===r?(a=-2147483648,t=2147483647):\"f32\"===r?(a=-34e38,t=34e38):\"f64\"===r&&(a=-Number.MAX_VALUE,t=Number.MAX_VALUE),l=255/(t-a)}const h=new Uint32Array(t),n=this.width*this.height;let c,u,m,x,f;if(c=u=m=e[0],c.length!==n)return p.error(\"getAsRGBA()\",\"Unable to convert to RGBA. The pixelblock is invalid.\");if(e.length>=2)if(u=e[1],e.length>=3&&(m=e[2]),s&&s.length===n)for(x=0;x=3?(r=e[1],l=e[2]):2===e.length&&(r=e[1]);const o=this.width*this.height;if(i.length!==o)return p.error(\"getAsRGBAFloat()\",\"Unable to convert to RGBA. The pixelblock is invalid.\");let h=0;if(s&&s.length===o)for(a=0;ai?a:i);else for(l=0;li?a:i;return{minValue:s,maxValue:i}}};t([a({json:{write:!0}})],c.prototype,\"width\",void 0),t([a({json:{write:!0}})],c.prototype,\"height\",void 0),t([a({json:{write:!0}})],c.prototype,\"pixelType\",void 0),t([o(\"pixelType\")],c.prototype,\"castPixelType\",null),t([a({json:{write:!0}})],c.prototype,\"validPixelCount\",void 0),t([a({json:{write:!0}})],c.prototype,\"mask\",void 0),t([a({json:{write:!0}})],c.prototype,\"maskIsAlpha\",void 0),t([a({json:{write:!0}})],c.prototype,\"pixels\",void 0),t([a({json:{write:!0}})],c.prototype,\"statistics\",void 0),c=n=t([h(\"esri.layers.support.PixelBlock\")],c);var u=c;export{u as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nclass e{constructor(e){this.readFile=e}resolveIncludes(e){return this.resolve(e)}resolve(e,t=new Map){if(t.has(e))return t.get(e);const r=this.read(e);if(!r)throw new Error(`cannot find shader file ${e}`);const s=/^[^\\S\\n]*#include\\s+<(\\S+)>[^\\S\\n]?/gm;let n=s.exec(r);const l=[];for(;null!=n;)l.push({path:n[1],start:n.index,length:n[0].length}),n=s.exec(r);let a=0,h=\"\";return l.forEach((e=>{h+=r.slice(a,e.start),h+=t.has(e.path)?\"\":this.resolve(e.path,t),a=e.start+e.length})),h+=r.slice(a),t.set(e,h),h}read(e){return this.readFile(e)}}export{e as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nfunction n(){return new Float32Array(4)}function r(n){const r=new Float32Array(4);return r[0]=n[0],r[1]=n[1],r[2]=n[2],r[3]=n[3],r}function t(n,r,t,a){const e=new Float32Array(4);return e[0]=n,e[1]=r,e[2]=t,e[3]=a,e}function a(n,r){return new Float32Array(n,r,4)}function e(){return n()}function u(){return t(1,1,1,1)}function o(){return t(1,0,0,0)}function s(){return t(0,1,0,0)}function c(){return t(0,0,1,0)}function i(){return t(0,0,0,1)}const f=e(),l=u(),_=o(),w=s(),N=c(),U=i();var y=Object.freeze({__proto__:null,create:n,clone:r,fromValues:t,createView:a,zeros:e,ones:u,unitX:o,unitY:s,unitZ:c,unitW:i,ZEROS:f,ONES:l,UNIT_X:_,UNIT_Y:w,UNIT_Z:N,UNIT_W:U});export{l as O,_ as U,f as Z,r as a,a as b,n as c,s as d,c as e,t as f,i as g,w as h,N as i,U as j,u as o,o as u,y as v,e as z};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{resolveIncludes as e}from\"./sources/resolver.js\";const r={shaders:{vertexShader:e(\"tileInfo/tileInfo.vert\"),fragmentShader:e(\"tileInfo/tileInfo.frag\")},attributes:new Map([[\"a_pos\",0]])};export{r as tileInfo};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{f as t}from\"../../../../../chunks/vec4f32.js\";import e from\"../../../../webgl/BufferObject.js\";import\"../../../../webgl/FramebufferObject.js\";import\"../../../../../core/has.js\";import\"../../../../webgl/checkWebGLError.js\";import\"../../../../webgl/enums.js\";import\"../../../../../chunks/builtins.js\";import{createProgram as r}from\"../../../../webgl/programUtils.js\";import\"../../../../webgl/renderState.js\";import i from\"../../../../webgl/Texture.js\";import s from\"../../../../webgl/VertexArrayObject.js\";import o from\"./WGLBrush.js\";import{background as n}from\"../shaders/BackgroundPrograms.js\";import{tileInfo as a}from\"../shaders/TileInfoPrograms.js\";const l=300,u=32;class m extends o{constructor(){super(...arguments),this._color=t(1,0,0,1)}dispose(){this._outlineProgram&&(this._outlineProgram.dispose(),this._outlineProgram=null),this._tileInfoProgram&&(this._tileInfoProgram.dispose(),this._tileInfoProgram=null),this._outlineVertexArrayObject&&(this._outlineVertexArrayObject.dispose(),this._outlineVertexArrayObject=null),this._tileInfoVertexArrayObject&&(this._tileInfoVertexArrayObject.dispose(),this._tileInfoVertexArrayObject=null),this._canvas=null}prepareState({context:t}){t.setBlendingEnabled(!0),t.setBlendFunctionSeparate(1,771,1,771),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!1)}draw(t,e){const{context:r}=t;if(!e.isReady)return;this._loadWGLResources(r),r.bindVAO(this._outlineVertexArrayObject),r.useProgram(this._outlineProgram),this._outlineProgram.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),this._outlineProgram.setUniform2f(\"u_coord_range\",e.rangeX,e.rangeY),this._outlineProgram.setUniform1f(\"u_depth\",0),this._outlineProgram.setUniform4fv(\"u_color\",this._color),r.drawArrays(3,0,4),r.bindVAO();const i=this._getTexture(r,e);i&&(r.bindVAO(this._tileInfoVertexArrayObject),r.useProgram(this._tileInfoProgram),r.bindTexture(i,0),this._tileInfoProgram.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),this._tileInfoProgram.setUniform1f(\"u_depth\",0),this._tileInfoProgram.setUniform2f(\"u_coord_ratio\",e.rangeX/e.width,e.rangeY/e.height),this._tileInfoProgram.setUniform2f(\"u_delta\",8,8),this._tileInfoProgram.setUniform2f(\"u_dimensions\",i.descriptor.width,i.descriptor.height),r.drawArrays(5,0,4),r.bindVAO())}_loadWGLResources(t){if(this._outlineProgram&&this._tileInfoProgram)return;const i=r(t,n),o=r(t,a),l={geometry:[{name:\"a_pos\",count:2,type:5120,offset:0,stride:2,normalized:!1,divisor:0}]},u=new Int8Array([0,0,1,0,1,1,0,1]),m=e.createVertex(t,35044,u),f=new s(t,n.attributes,l,{geometry:m}),c=new Int8Array([0,0,1,0,0,1,1,1]),g=e.createVertex(t,35044,c),h=new s(t,a.attributes,l,{geometry:g});this._outlineProgram=i,this._tileInfoProgram=o,this._outlineVertexArrayObject=f,this._tileInfoVertexArrayObject=h}_getTexture(t,e){if(e.texture&&e.triangleCountReportedInDebug===e.triangleCount)return e.texture;e.triangleCountReportedInDebug=e.triangleCount,this._canvas||(this._canvas=document.createElement(\"canvas\"),this._canvas.setAttribute(\"id\",\"canvas2d\"),this._canvas.setAttribute(\"width\",`${l}`),this._canvas.setAttribute(\"height\",`${u}`),this._canvas.setAttribute(\"style\",\"display:none\"));const r=e.triangleCount;let s=e.key.id;e.triangleCount>0&&(s+=`, ${r}`);const o=this._canvas,n=o.getContext(\"2d\");return n.font=\"24px sans-serif\",n.textAlign=\"left\",n.textBaseline=\"top\",n.clearRect(0,0,l,u),r>1e5?(n.fillStyle=\"red\",n.fillRect(0,0,l,u),n.fillStyle=\"black\"):(n.clearRect(0,0,l,u),n.fillStyle=\"blue\"),n.fillText(s,0,0),e.texture=new i(t,{target:3553,pixelFormat:6408,dataType:5121,samplingMode:9728,wrapMode:33071},o),e.texture}}export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport e from\"../../../webgl/BufferObject.js\";import\"../../../webgl/FramebufferObject.js\";import\"../../../../core/has.js\";import\"../../../webgl/checkWebGLError.js\";import\"../../../webgl/enums.js\";import\"../../../../chunks/builtins.js\";import\"../../../webgl/renderState.js\";import\"../../../webgl/Texture.js\";import t from\"../../../webgl/VertexArrayObject.js\";class r{constructor(r,s){this.rctx=r,this._vertexBuffer=e.createVertex(r,35044,new Uint16Array(s)),this._vao=new t(r,new Map([[\"a_position\",0]]),{geometry:[{name:\"a_position\",count:2,type:5122,offset:0,stride:4,normalized:!1}]},{geometry:this._vertexBuffer}),this._count=s.length/2}bind(){this._vao.bind()}unbind(){this._vao.unbind()}dispose(){this._vao.dispose(!1),this._vertexBuffer.dispose()}draw(){this.rctx.bindVAO(this._vao),this.rctx.drawArrays(5,0,this._count)}}export{r as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nvar e,n,t,r={exports:{}};e=r,n=function(){function e(e,t,x){x=x||2;var i,v,u,y,o,p,a,l=t&&t.length,h=l?t[0]*x:e.length,s=n(e,0,h,x,!0),c=[];if(!s||s.next===s.prev)return c;if(l&&(s=f(e,t,s,x)),e.length>80*x){i=u=e[0],v=y=e[1];for(var Z=x;Zu&&(u=o),p>y&&(y=p);a=0!==(a=Math.max(u-i,y-v))?1/a:0}return r(s,c,x,i,v,a),c}function n(e,n,t,r,x){var i,v;if(x===E(e,n,t,r)>0)for(i=n;i=n;i-=r)v=B(i,e[i],e[i+1],v);if(v&&M(v,v.next)){var u=v.next;C(v),v=u}return v}function t(e,n){if(!e)return e;n||(n=e);var t,r=e;do{if(t=!1,r.steiner||!M(r,r.next)&&0!==w(r.prev,r,r.next))r=r.next;else{var x=r.prev;if(C(r),(r=n=x)===r.next)break;t=!0}}while(t||r!==n);return n}function r(e,n,f,y,o,p,a){if(e){!a&&p&&h(e,y,o,p);for(var l,s,c=e;e.prev!==e.next;)if(l=e.prev,s=e.next,p?i(e,y,o,p):x(e))n.push(l.i/f),n.push(e.i/f),n.push(s.i/f),C(e),e=s.next,c=s.next;else if((e=s)===c){a?1===a?r(e=v(t(e),n,f),n,f,y,o,p,2):2===a&&u(e,n,f,y,o,p):r(t(e),n,f,y,o,p,1);break}}}function x(e){var n=e.prev,t=e,r=e.next;if(w(n,t,r)>=0)return!1;for(var x=e.next.next;x!==e.prev;){if(g(n.x,n.y,t.x,t.y,r.x,r.y,x.x,x.y)&&w(x.prev,x,x.next)>=0)return!1;x=x.next}return!0}function i(e,n,t,r){var x=e.prev,i=e,v=e.next;if(w(x,i,v)>=0)return!1;for(var u=x.xi.x?x.x>v.x?x.x:v.x:i.x>v.x?i.x:v.x,o=x.y>i.y?x.y>v.y?x.y:v.y:i.y>v.y?i.y:v.y,p=c(u,f,n,t,r),a=c(y,o,n,t,r),l=e.prevZ,h=e.nextZ;l&&l.z>=p&&h&&h.z<=a;){if(l!==e.prev&&l!==e.next&&g(x.x,x.y,i.x,i.y,v.x,v.y,l.x,l.y)&&w(l.prev,l,l.next)>=0)return!1;if(l=l.prevZ,h!==e.prev&&h!==e.next&&g(x.x,x.y,i.x,i.y,v.x,v.y,h.x,h.y)&&w(h.prev,h,h.next)>=0)return!1;h=h.nextZ}for(;l&&l.z>=p;){if(l!==e.prev&&l!==e.next&&g(x.x,x.y,i.x,i.y,v.x,v.y,l.x,l.y)&&w(l.prev,l,l.next)>=0)return!1;l=l.prevZ}for(;h&&h.z<=a;){if(h!==e.prev&&h!==e.next&&g(x.x,x.y,i.x,i.y,v.x,v.y,h.x,h.y)&&w(h.prev,h,h.next)>=0)return!1;h=h.nextZ}return!0}function v(e,n,r){var x=e;do{var i=x.prev,v=x.next.next;!M(i,v)&&z(i,x,x.next,v)&&j(i,v)&&j(v,i)&&(n.push(i.i/r),n.push(x.i/r),n.push(v.i/r),C(x),C(x.next),x=e=v),x=x.next}while(x!==e);return t(x)}function u(e,n,x,i,v,u){var f=e;do{for(var y=f.next.next;y!==f.prev;){if(f.i!==y.i&&d(f,y)){var o=A(f,y);return f=t(f,f.next),o=t(o,o.next),r(f,n,x,i,v,u),void r(o,n,x,i,v,u)}y=y.next}f=f.next}while(f!==e)}function f(e,r,x,i){var v,u,f,o=[];for(v=0,u=r.length;v=r.next.y&&r.next.y!==r.y){var u=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(u<=x&&u>v){if(v=u,u===x){if(i===r.y)return r;if(i===r.next.y)return r.next}t=r.x=r.x&&r.x>=o&&x!==r.x&&g(it.x||r.x===t.x&&l(t,r)))&&(t=r,a=f)),r=r.next}while(r!==y);return t}function l(e,n){return w(e.prev,e,n.prev)<0&&w(n.next,e,e.next)<0}function h(e,n,t,r){var x=e;do{if(null===x.z&&(x.z=c(x.x,x.y,n,t,r)),x.prev.next!==x||x.next.prev!==x)return x.prev.next=x,x.next.prev=x,h(e,n,t,r);x.prevZ=x.prev,x.nextZ=x.next,x=x.next}while(x!==e);x.prevZ.nextZ=null,x.prevZ=null,s(x)}function s(e){var n,t,r,x,i,v,u,f,y=1;do{for(t=e,e=null,i=null,v=0;t;){for(v++,r=t,u=0,n=0;n0||f>0&&r;)0!==u&&(0===f||!r||t.z<=r.z)?(x=t,t=t.nextZ,u--):(x=r,r=r.nextZ,f--),i?i.nextZ=x:e=x,x.prevZ=i,i=x;t=r}i.nextZ=null,y*=2}while(v>1);return e}function c(e,n,t,r,x){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-t)*x)|e<<8))|e<<4))|e<<2))|e<<1))|(n=1431655765&((n=858993459&((n=252645135&((n=16711935&((n=32767*(n-r)*x)|n<<8))|n<<4))|n<<2))|n<<1))<<1}function Z(e){var n=e,t=e;do{(n.x=0&&(e-v)*(r-u)-(t-v)*(n-u)>=0&&(t-v)*(i-u)-(x-v)*(r-u)>=0}function d(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!k(e,n)&&(j(e,n)&&j(n,e)&&q(e,n)&&(w(e.prev,e,n.prev)||w(e,n.prev,n))||M(e,n)&&w(e.prev,e,e.next)>0&&w(n.prev,n,n.next)>0)}function w(e,n,t){return(n.y-e.y)*(t.x-n.x)-(n.x-e.x)*(t.y-n.y)}function M(e,n){return e.x===n.x&&e.y===n.y}function z(e,n,t,r){var x=m(w(e,n,t)),i=m(w(e,n,r)),v=m(w(t,r,e)),u=m(w(t,r,n));return x!==i&&v!==u||!(0!==x||!b(e,t,n))||!(0!==i||!b(e,r,n))||!(0!==v||!b(t,e,r))||!(0!==u||!b(t,n,r))}function b(e,n,t){return n.x<=Math.max(e.x,t.x)&&n.x>=Math.min(e.x,t.x)&&n.y<=Math.max(e.y,t.y)&&n.y>=Math.min(e.y,t.y)}function m(e){return e>0?1:e<0?-1:0}function k(e,n){var t=e;do{if(t.i!==e.i&&t.next.i!==e.i&&t.i!==n.i&&t.next.i!==n.i&&z(t,t.next,e,n))return!0;t=t.next}while(t!==e);return!1}function j(e,n){return w(e.prev,e,e.next)<0?w(e,n,e.next)>=0&&w(e,e.prev,n)>=0:w(e,n,e.prev)<0||w(e,e.next,n)<0}function q(e,n){var t=e,r=!1,x=(e.x+n.x)/2,i=(e.y+n.y)/2;do{t.y>i!=t.next.y>i&&t.next.y!==t.y&&x<(t.next.x-t.x)*(i-t.y)/(t.next.y-t.y)+t.x&&(r=!r),t=t.next}while(t!==e);return r}function A(e,n){var t=new D(e.i,e.x,e.y),r=new D(n.i,n.x,n.y),x=e.next,i=n.prev;return e.next=n,n.prev=e,t.next=x,x.prev=t,r.next=t,t.prev=r,i.next=r,r.prev=i,r}function B(e,n,t,r){var x=new D(e,n,t);return r?(x.next=r.next,x.prev=r,r.next.prev=x,r.next=x):(x.prev=x,x.next=x),x}function C(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function D(e,n,t){this.i=e,this.x=n,this.y=t,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function E(e,n,t,r){for(var x=0,i=n,v=t-r;i0&&(r+=e[x-1].length,t.holes.push(r))}return t},e},void 0!==(t=n())&&(e.exports=t);var x=r.exports;export{x as e};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport e from\"../../../../core/Error.js\";import t from\"../../../../core/Logger.js\";import{isSome as r}from\"../../../../core/maybe.js\";import{e as s}from\"../../../../chunks/earcut.js\";import{s as n}from\"../../../../chunks/vec2.js\";import{a as o}from\"../../../../chunks/vec2f64.js\";import{convertFromNestedArray as c,convertFromPolygon as i}from\"../../../../layers/graphics/featureConversionUtils.js\";import a from\"../../../../layers/graphics/OptimizedGeometry.js\";import{i1616to32 as f}from\"./number.js\";import h from\"../../../webgl/BufferObject.js\";const m=t.getLogger(\"esri.views.2d.engine.webgl.Mesh2D\"),u=t=>{switch(t.BYTES_PER_ELEMENT){case 1:return 5121;case 2:return 5123;case 4:return 5125;default:throw new e(\"Cannot get DataType of array\")}},y=(e,t,r,s)=>{let n=0;for(let o=1;o0:n<0},x=({coords:e,lengths:t},r)=>{const n=[];for(let o=0,c=0;o({...r,[s]:h.createVertex(e,t,this.vertices[s])})),{})),this._cache.vertexBuffers}}export{g as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport t from\"../../../../core/Error.js\";import e from\"../../../../core/Logger.js\";import{isSome as r,isNone as s}from\"../../../../core/maybe.js\";import{c as i}from\"../../../../chunks/mat3f32.js\";import{DisplayObject as o}from\"../DisplayObject.js\";import h from\"./Mesh2D.js\";import a from\"../../../webgl/VertexArrayObject.js\";const c=e.getLogger(\"esri.views.2d.engine.webgl.ClippingInfo\"),n=t=>parseFloat(t)/100;class m extends o{constructor(t,e){super(),this._clip=e,this._cache={},this.stage=t,this._handle=e.watch(\"version\",(()=>this._invalidate())),this.ready()}static fromClipArea(t,e){return new m(t,e)}_destroyGL(){r(this._cache.mesh)&&(this._cache.mesh.destroy(),this._cache.mesh=null),r(this._cache.vao)&&(this._cache.vao.dispose(),this._cache.vao=null)}destroy(){this._destroyGL(),this._handle.remove()}getVAO(t,e,r,i){const[o,h]=e.size;if(\"geometry\"!==this._clip.type&&this._lastWidth===o&&this._lastHeight===h||(this._lastWidth=o,this._lastHeight=h,this._destroyGL()),s(this._cache.vao)){const s=this._createMesh(e,this._clip),o=s.getIndexBuffer(t),h=s.getVertexBuffers(t);this._cache.mesh=s,this._cache.vao=new a(t,r,i,h,o)}return this._cache.vao}_createTransforms(){return{dvs:i()}}_invalidate(){this._destroyGL(),this.requestRender()}_createScreenRect(t,e){const[r,s]=t.size,i=\"string\"==typeof e.left?n(e.left)*r:e.left,o=\"string\"==typeof e.right?n(e.right)*r:e.right,h=\"string\"==typeof e.top?n(e.top)*s:e.top,a=\"string\"==typeof e.bottom?n(e.bottom)*s:e.bottom,c=i,m=h;return{x:c,y:m,width:Math.max(r-o-c,0),height:Math.max(s-a-m,0)}}_createMesh(e,r){switch(r.type){case\"rect\":return h.fromRect(this._createScreenRect(e,r));case\"path\":return h.fromPath(r);case\"geometry\":return h.fromGeometry(e,r);default:return c.error(new t(\"mapview-bad-type\",\"Unable to create ClippingInfo mesh from clip of type: ${clip.type}\")),h.fromRect({x:0,y:0,width:1,height:1})}}}export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport\"../../../../core/has.js\";import{isNone as e,isSome as r}from\"../../../../core/maybe.js\";import{c as s}from\"../../../../chunks/mat3f32.js\";import{brushes as t}from\"../brushes.js\";import{Container as i}from\"../Container.js\";import n from\"./ClippingInfo.js\";import{WGLDrawPhase as o}from\"./enums.js\";class a extends i{constructor(){super(...arguments),this.name=this.constructor.name}set clips(e){this._clips=e,this.children.forEach((r=>r.clips=e)),this._updateClippingInfo()}_createTransforms(){return{dvs:s()}}doRender(e){const r=this.createRenderParams(e),{painter:s,globalOpacity:t,profiler:i,drawPhase:n}=r,a=n===o.LABEL?1:t*this.computedOpacity;i.recordContainerStart(this.name),s.beforeRenderLayer(r,this._clippingInfos?255:0,a),this.updateTransforms(e.state),this.renderChildren(r),s.compositeLayer(r,a),i.recordContainerEnd()}renderChildren(r){e(this._renderPasses)&&(this._renderPasses=this.prepareRenderPasses(r.painter));for(const e of this.children)e.beforeRender(r);for(const e of this._renderPasses)try{e.render(r)}catch(s){}for(const e of this.children)e.afterRender(r)}createRenderParams(e){return e.requireFBO=this.requiresDedicatedFBO,e}prepareRenderPasses(e){return[e.registerRenderPass({name:\"clip\",brushes:[t.clip],target:()=>this._clippingInfos,drawPhase:o.MAP|o.LABEL|o.LABEL_ALPHA|o.DEBUG|o.HIGHLIGHT})]}updateTransforms(e){for(const r of this.children)r.setTransform(e)}onAttach(){super.onAttach(),this._updateClippingInfo()}onDetach(){super.onDetach(),this._updateClippingInfo()}_updateClippingInfo(){if(r(this._clippingInfos)&&(this._clippingInfos.forEach((e=>e.destroy())),this._clippingInfos=null),!this.stage)return;const e=this._clips;r(e)&&e.length&&(this._clippingInfos=e.items.map((e=>n.fromClipArea(this.stage,e)))),this.requestRender()}}export{a as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isSome as t,isNone as e}from\"../../../core/maybe.js\";import n from\"../PixelBlock.js\";function i(e){return t(e)&&\"esri.layers.support.PixelBlock\"===e.declaredClass&&e.pixels&&e.pixels.length>0}function l(t,e){if(null==e||!e.length||!i(t))return t;const l=t.pixels.length;return e&&e.some((t=>t>=l))||1===l&&1===e.length&&0===e[0]?t:l!==e.length||e.some(((t,e)=>t!==e))?new n({pixelType:t.pixelType,width:t.width,height:t.height,mask:t.mask,validPixelCount:t.validPixelCount,maskIsAlpha:t.maskIsAlpha,pixels:e.map((e=>t.pixels[e])),statistics:t.statistics&&e.map((e=>t.statistics[e]))}):t}function r(t){if(!t)return;const e=t.colormap;if(!e||0===e.length)return;const n=e.sort(((t,e)=>t[0]-e[0]));let i=0;n[0][0]<0&&(i=n[0][0]);const l=Math.max(256,n[n.length-1][0]-i+1),r=new Uint8Array(4*l),o=[];let s,a=0,f=0;const h=5===n[0].length;if(l>65536)return n.forEach((t=>{o[t[0]-i]=h?t.slice(1):t.slice(1).concat([255])})),{indexed2DColormap:o,offset:i,alphaSpecified:h};if(t.fillUnspecified)for(s=n[f],a=s[0]-i;au?r[c]=0:(m[c]=s[y],p[c]=s[y+1],d[c]=s[y+2],r[c]=s[y+3]));else{for(r=new Uint8Array(o),c=0;cu?r[c]=0:(m[c]=s[y],p[c]=s[y+1],d[c]=s[y+2],r[c]=s[y+3]);n.mask=r}else if(r)for(c=0;c-1&&(c=65536);const x=[],m=[],p=o-r;for(a=0;a=s,g=[];if(d)for(a=0;a1?i[a]>2?g[a]=6.5+(i[a]-2)**2.5:g[a]=6.5+100*(2-i[a])**4:g[a]=1;let y;const w=[];let M,k,A;if(d)for(a=0;a1&&(k-=(1/p)**(y*g[a])),Me[a]?A[f]=Math.floor(k*p*y**(1/i[a]))+r:M>=n[a]?A[f]=o:A[f]=r;w[a]=A}else for(a=0;a=n[a]?A[f]=o:A[f]=Math.floor((M-e[a])/m[a]*p)+r;w[a]=A}if(null!=t.contrastOffset){const e=h(t.contrastOffset,t.brightnessOffset);for(a=0;a0&&n<100?s=(200*o-100*l+2*l*i)/(2*(100-n))+r:n<=0&&n>-100?s=(200*o-100*l+2*l*i)*(100+n)/2e4+r:100===n?(s=200*o-100*l+(l+1)*(100-n)+2*l*i,s=s>0?l:0):-100===n&&(s=r),a[o]=s>l?l:s<0?0:s;return a}function u(t,e=256){e=Math.min(e,256);const{size:n,counts:i}=t,l=new Uint8Array(n),r=i.reduce(((t,n)=>t+n/e),0);let o=0,s=0,a=0,f=r;for(let h=0;h=c,A=[];if(k)for(x=0;x1?a[x]>2?A[x]=6.5+(a[x]-2)**2.5:A[x]=6.5+100*(2-a[x])**4:A[x]=1;if(k)if(null!=r){for(m=0;m1&&(d-=(1/y)**(g*A[x])),po[x]?l[x][m]=Math.floor(d*y*g**(1/a[x]))+f:p>=s[x]?l[x][m]=h:l[x][m]=f}else for(m=0;m1&&(d-=(1/y)**(g*A[x])),po[x]?l[x][m]=Math.floor(d*y*g**(1/a[x]))+f:p>=s[x]?l[x][m]=h:l[x][m]=f;else if(null!=r){for(m=0;mo[x]?l[x][m]=Math.floor((p-o[x])/M[x]*y)+f:p>=s[x]?l[x][m]=h:l[x][m]=f}else for(m=0;mo[x]?l[x][m]=Math.floor((p-o[x])/M[x]*y)+f:p>=s[x]?l[x][m]=h:l[x][m]=f;return n.pixelType=\"u8\",n.updateStatistics(),n}function x(t,e){if(!i(t))return null;const{pixels:l,mask:r}=t,o=t.width*t.height,s=l.length;let a=e.lut;const{offset:f}=e;let h,u;a&&1===a[0].length&&(a=l.map((()=>a)));const c=[];let x,m,p;if(f)if(null==r)for(h=0;h1;){if(h===u.value){d=!0;break}h>u.value?c=p:x=p,p=Math.floor((c+x)/2),u=e[Math.floor(p)]}d||(h===e[c].value?(u=e[c],d=!0):h===e[x].value?(u=e[x],d=!0):he[c].value&&(ht.pixelBlock))[0];if(!i||e(i.pixelBlock))return null;const l=(i.extent.xmax-i.extent.xmin)/i.pixelBlock.width,r=(i.extent.ymax-i.extent.ymin)/i.pixelBlock.height,o=.01*Math.min(l,r),s=t.sort(((t,e)=>Math.abs(t.extent.ymax-e.extent.ymax)>o?e.extent.ymax-t.extent.ymax:Math.abs(t.extent.xmin-e.extent.xmin)>o?t.extent.xmin-e.extent.xmin:0)),a=Math.min.apply(null,s.map((t=>t.extent.xmin))),f=Math.min.apply(null,s.map((t=>t.extent.ymin))),h=Math.max.apply(null,s.map((t=>t.extent.xmax))),u=Math.max.apply(null,s.map((t=>t.extent.ymax))),c={x:Math.round((n.xmin-a)/l),y:Math.round((u-n.ymax)/r)},x={width:Math.round((h-a)/l),height:Math.round((u-f)/r)},m={width:Math.round((n.xmax-n.xmin)/l),height:Math.round((n.ymax-n.ymin)/r)};if(Math.round(x.width/i.pixelBlock.width)*Math.round(x.height/i.pixelBlock.height)!==s.length||c.x<0||c.y<0||x.widtht.pixelBlock)),x,c,m)}}function g(t,e,n,i,l,r){const{width:o,height:s}=n.block,{x:a,y:f}=n.offset,{width:h,height:u}=n.mosaic,c=p(o,s,i,l,a,f,h,u);let x=0,m=0;if(r){const t=r.hasGCSSShiftTransform?360:r.halfWorldWidth,e=o*r.resolutionX,n=r.startX+i*e,l=n+e;nt?m=r.rightPadding:n>=t&&(x=r.leftMargin-r.rightPadding,m=0)}if(c.xmax-=m,\"number\"!=typeof e)for(let p=c.ymin;pi(t)))[0];if(e(f))return null;const h=s?s.width:r.width,u=s?s.height:r.height,c=f.width,x=f.height,m=r.width/c,p=r.height/x,d={offset:o||{x:0,y:0},mosaic:s||r,block:{width:c,height:x}},y=f.pixelType,w=n.getPixelArrayConstructor(y),M=f.pixels.length,k=[];let A,U;for(let t=0;te(t)||t.mask&&t.mask.length>0))){C=new Uint8Array(h*u);for(let e=0;el||f>r)return t;if(0===o&&0===s&&a===l&&f===r)return t;t.mask||(t.mask=new Uint8Array(l*r));const h=t.mask;for(let i=0;i=f||e=a?0:1}return t.updateStatistics(),t}function M(t){if(!i(t))return null;const e=t.clone(),{width:n,height:l,pixels:r,mask:o}=t,s=r[0],a=e.pixels[0];for(let i=2;ie&&(n=r.value,e=i),r=l.next();return n}function A(t,e,n){if(0===n)return;const i=t.get(e);1===i?t.delete(e):t.set(e,i-1)}function U(t,e,n){0!==n&&t.set(e,t.has(e)?t.get(e)+1:1)}function C(t,e,l){let{x:r,y:o}=e;const{width:s,height:a}=l;if(0===r&&0===o&&a===t.height&&s===t.width)return t;const{width:f,height:h}=t,u=Math.max(0,o),c=Math.max(0,r),x=Math.min(r+s,f),m=Math.min(o+a,h);if(x<0||m<0||!i(t))return null;r=Math.max(0,-r),o=Math.max(0,-o);const{pixels:p,mask:d}=t,g=s*a,y=p.length,w=[];for(let i=0;i{for(let n=0;n 1.0) {\\ncolor = lum + ((color - lum) * (1.0 - lum)) / (maxcol - lum);\\n}\\nreturn color;\\n}\\nvec3 setLum(vec3 cbase, vec3 clum) {\\nfloat lbase = lumv3(cbase);\\nfloat llum = lumv3(clum);\\nfloat ldiff = llum - lbase;\\nvec3 color = cbase + vec3(ldiff);\\nreturn clipColor(color);\\n}\\nvec3 setLumSat(vec3 cbase, vec3 csat, vec3 clum)\\n{\\nfloat minbase = minv3(cbase);\\nfloat sbase = satv3(cbase);\\nfloat ssat = satv3(csat);\\nvec3 color;\\nif (sbase > 0.0) {\\ncolor = (cbase - minbase) * ssat / sbase;\\n} else {\\ncolor = vec3(0.0);\\n}\\nreturn setLum(color, clum);\\n}\\nvoid main() {\\nvec4 src = texture2D(u_layerTexture, v_uv);\\n#ifdef NORMAL\\ngl_FragColor = src * u_opacity;\\n#else\\nvec4 dst = texture2D(u_backbufferTexture, v_uv);\\nvec3 Cs = src.a == 0.0 ? src.rgb : vec3(src.rgb / src.a);\\nvec3 Cb = dst.a == 0.0 ? dst.rgb : vec3(dst.rgb / dst.a);\\nfloat as = u_opacity * src.a;\\nfloat ab = dst.a;\\n#ifdef DESTINATION_OVER\\ngl_FragColor = vec4(as * Cs * (1.0 - ab) + ab * Cb, as + ab - as * ab);\\n#endif\\n#ifdef SOURCE_IN\\nvec4 color = vec4(as * Cs * ab, as * ab);\\nvec4 fadeColor = (1.0 - u_opacity) * u_inFadeOpacity * vec4(ab * Cb, ab);\\ngl_FragColor = color + fadeColor;\\n#endif\\n#ifdef DESTINATION_IN\\nvec4 color = vec4(ab * Cb * as, ab * as);\\nvec4 fadeColor = (1.0 - u_opacity) * u_inFadeOpacity * vec4(ab * Cb, ab);\\ngl_FragColor = color + fadeColor;\\n#endif\\n#ifdef SOURCE_OUT\\ngl_FragColor = vec4(as * Cs * (1.0 - ab), as * (1.0 - ab));\\n#endif\\n#ifdef DESTINATION_OUT\\ngl_FragColor = vec4(ab * Cb * (1.0 - as), ab * (1.0 - as));\\n#endif\\n#ifdef SOURCE_ATOP\\ngl_FragColor = vec4(as * Cs * ab + ab * Cb * (1.0 - as), ab);\\n#endif\\n#ifdef DESTINATION_ATOP\\ngl_FragColor = vec4(as * Cs * (1.0 - ab) + ab * Cb * as, as);\\n#endif\\n#ifdef XOR\\ngl_FragColor = vec4(as * Cs * (1.0 - ab) + ab * Cb * (1.0 - as),\\nas * (1.0 - ab) + ab * (1.0 - as));\\n#endif\\n#ifdef MULTIPLY\\ngl_FragColor = vec4(as * Cs * ab * Cb + (1.0 - ab) * as * Cs + (1.0 - as) * ab * Cb,\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef SCREEN\\ngl_FragColor = vec4((Cs + Cb - Cs * Cb) * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef OVERLAY\\nvec3 f = vec3(overlay(Cb.r, Cs.r), overlay(Cb.g, Cs.g), overlay(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef DARKEN\\ngl_FragColor = vec4(min(Cs, Cb) * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef LIGHTER\\ngl_FragColor = vec4(as * Cs + ab * Cb, as + ab);\\n#endif\\n#ifdef LIGHTEN\\ngl_FragColor = vec4(max(Cs, Cb) * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef COLOR_DODGE\\nvec3 f = vec3(colorDodge(Cb.r, Cs.r), colorDodge(Cb.g, Cs.g), colorDodge(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef COLOR_BURN\\nvec3 f = vec3(colorBurn(Cb.r, Cs.r), colorBurn(Cb.g, Cs.g), colorBurn(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef HARD_LIGHT\\nvec3 f = vec3(hardLight(Cb.r, Cs.r), hardLight(Cb.g, Cs.g), hardLight(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef SOFT_LIGHT\\nvec3 f = vec3(softLight(Cb.r, Cs.r), softLight(Cb.g, Cs.g), softLight(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef DIFFERENCE\\ngl_FragColor = vec4(abs(Cb - Cs) * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef EXCLUSION\\nvec3 f = Cs + Cb - 2.0 * Cs * Cb;\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef INVERT\\ngl_FragColor = vec4((1.0 - Cb) * as * ab + Cb * ab * (1.0 - as), ab);\\n#endif\\n#ifdef VIVID_LIGHT\\nvec3 f = vec3(vividLight(Cb.r, Cs.r),\\nvividLight(Cb.g, Cs.g),\\nvividLight(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef HUE\\nvec3 f = setLumSat(Cs,Cb,Cb);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef SATURATION\\nvec3 f = setLumSat(Cb,Cs,Cb);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef COLOR\\nvec3 f = setLum(Cs,Cb);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef LUMINOSITY\\nvec3 f = setLum(Cb,Cs);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef PLUS\\ngl_FragColor = clamp(vec4(src.r + Cb.r, src.g + Cb.g, src.b + Cb.b, as + ab), 0.0, 1.0);\\n#endif\\n#ifdef MINUS\\ngl_FragColor = vec4(clamp(vec3(Cb.r - src.r, Cb.g - src.g, Cb.b - src.b), 0.0, 1.0), ab * as);\\n#endif\\n#ifdef AVERAGE\\nvec3 f = (Cb + Cs) / 2.0;\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef REFLECT\\nvec3 f = vec3(reflectBlend(Cb.r, Cs.r),\\nreflectBlend(Cb.g, Cs.g),\\nreflectBlend(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#endif\\n}\",\"blend.vert\":\"attribute vec2 a_position;\\nvarying mediump vec2 v_uv;\\nvoid main(void) {\\ngl_Position = vec4(a_position , 0.0, 1.0);\\nv_uv = (a_position + 1.0) / 2.0;\\n}\"},filtering:{\"bicubic.glsl\":\"vec4 computeWeights(float v) {\\nfloat b = 1.0 / 6.0;\\nfloat v2 = v * v;\\nfloat v3 = v2 * v;\\nfloat w0 = b * (-v3 + 3.0 * v2 - 3.0 * v + 1.0);\\nfloat w1 = b * (3.0 * v3 - 6.0 * v2 + 4.0);\\nfloat w2 = b * (-3.0 * v3 + 3.0 * v2 + 3.0 * v + 1.0);\\nfloat w3 = b * v3;\\nreturn vec4(w0, w1, w2, w3);\\n}\\nvec4 bicubicOffsetsAndWeights(float v) {\\nvec4 w = computeWeights(v);\\nfloat g0 = w.x + w.y;\\nfloat g1 = w.z + w.w;\\nfloat h0 = 1.0 - (w.y / g0) + v;\\nfloat h1 = 1.0 + (w.w / g1) - v;\\nreturn vec4(h0, h1, g0, g1);\\n}\\nvec4 sampleBicubicBSpline(sampler2D sampler, vec2 coords, vec2 texSize) {\\nvec2 eX = vec2(1.0 / texSize.x, 0.0);\\nvec2 eY = vec2(0.0, 1.0 / texSize.y);\\nvec2 texel = coords * texSize - 0.5;\\nvec3 hgX = bicubicOffsetsAndWeights(fract(texel).x).xyz;\\nvec3 hgY = bicubicOffsetsAndWeights(fract(texel).y).xyz;\\nvec2 coords10 = coords + hgX.x * eX;\\nvec2 coords00 = coords - hgX.y * eX;\\nvec2 coords11 = coords10 + hgY.x * eY;\\nvec2 coords01 = coords00 + hgY.x * eY;\\ncoords10 = coords10 - hgY.y * eY;\\ncoords00 = coords00 - hgY.y * eY;\\nvec4 color00 = texture2D(sampler, coords00);\\nvec4 color10 = texture2D(sampler, coords10);\\nvec4 color01 = texture2D(sampler, coords01);\\nvec4 color11 = texture2D(sampler, coords11);\\ncolor00 = mix(color00, color01, hgY.z);\\ncolor10 = mix(color10, color11, hgY.z);\\ncolor00 = mix(color00, color10, hgX.z);\\nreturn color00;\\n}\",\"bilinear.glsl\":\"vec4 sampleBilinear(sampler2D sampler, vec2 coords, vec2 texSize) {\\nvec2 texelStart = floor(coords * texSize);\\nvec2 coord0 = texelStart / texSize;\\nvec2 coord1 = (texelStart + vec2(1.0, 0.0)) / texSize;\\nvec2 coord2 = (texelStart + vec2(0.0, 1.0)) / texSize;\\nvec2 coord3 = (texelStart + vec2(1.0, 1.0)) / texSize;\\nvec4 color0 = texture2D(sampler, coord0);\\nvec4 color1 = texture2D(sampler, coord1);\\nvec4 color2 = texture2D(sampler, coord2);\\nvec4 color3 = texture2D(sampler, coord3);\\nvec2 blend = fract(coords * texSize);\\nvec4 color01 = mix(color0, color1, blend.x);\\nvec4 color23 = mix(color2, color3, blend.x);\\nvec4 color = mix(color01, color23, blend.y);\\n#ifdef NNEDGE\\nfloat alpha = floor(color0.a * color1.a * color2.a * color3.a + 0.5);\\ncolor = color * alpha + (1.0 - alpha) * texture2D(sampler, coords);\\n#endif\\nreturn color;\\n}\",\"epx.glsl\":\"vec4 sampleEPX(sampler2D sampler, float size, vec2 coords, vec2 texSize) {\\nvec2 invSize = 1.0 / texSize;\\nvec2 texel = coords * texSize;\\nvec2 texel_i = floor(texel);\\nvec2 texel_frac = fract(texel);\\nvec4 colorP = texture2D(sampler, texel_i * invSize);\\nvec4 colorP1 = vec4(colorP);\\nvec4 colorP2 = vec4(colorP);\\nvec4 colorP3 = vec4(colorP);\\nvec4 colorP4 = vec4(colorP);\\nvec4 colorA = texture2D(sampler, (texel_i - vec2(0.0, 1.0)) * invSize);\\nvec4 colorB = texture2D(sampler, (texel_i + vec2(1.0, 0.0)) * invSize);\\nvec4 colorC = texture2D(sampler, (texel_i - vec2(1.0, 0.0)) * invSize);\\nvec4 colorD = texture2D(sampler, (texel_i + vec2(0.0, 1.0)) * invSize);\\nif (colorC == colorA && colorC != colorD && colorA != colorB) {\\ncolorP1 = colorA;\\n}\\nif (colorA == colorB && colorA != colorC && colorB != colorD) {\\ncolorP2 = colorB;\\n}\\nif (colorD == colorC && colorD != colorB && colorC != colorA) {\\ncolorP3 = colorC;\\n}\\nif (colorB == colorD && colorB != colorA && colorD != colorC) {\\ncolorP4 = colorD;\\n}\\nvec4 colorP12 = mix(colorP1, colorP2, texel_frac.x);\\nvec4 colorP34 = mix(colorP1, colorP2, texel_frac.x);\\nreturn mix(colorP12, colorP34, texel_frac.y);\\n}\"},fx:{integrate:{\"integrate.frag\":\"precision mediump float;\\nuniform lowp sampler2D u_sourceTexture;\\nuniform lowp sampler2D u_maskTexture;\\nuniform mediump float u_zoomLevel;\\nuniform highp float u_timeDelta;\\nuniform highp float u_animationTime;\\nvarying highp vec2 v_texcoord;\\n#include \\nvoid main()\\n{\\n#ifdef DELTA\\nvec4 texel = texture2D(u_sourceTexture, v_texcoord);\\nvec4 data0 = texture2D(u_maskTexture, v_texcoord);\\nfloat flags = data0.r * 255.0;\\nfloat groupMinZoom = data0.g * 255.0;\\nfloat isVisible = getFilterBit(flags, 0);\\nfloat wouldClip = step(groupMinZoom, u_zoomLevel);\\nfloat direction = wouldClip * 1.0 + (1.0 - wouldClip) * -1.0;\\nfloat dt = u_timeDelta / max(u_animationTime, 0.0001);\\nvec4 nextState = vec4(texel + direction * dt);\\ngl_FragColor = vec4(nextState);\\n#elif defined(UPDATE)\\nvec4 texel = texture2D(u_sourceTexture, v_texcoord);\\ngl_FragColor = texel;\\n#endif\\n}\",\"integrate.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos;\\ngl_Position = vec4(a_pos * 2.0 - 1.0, 0.0, 1.0);\\n}\"}},highlight:{\"blur.frag\":\"varying mediump vec2 v_texcoord;\\nuniform mediump vec4 u_direction;\\nuniform mediump mat4 u_channelSelector;\\nuniform mediump float u_sigma;\\nuniform sampler2D u_texture;\\nmediump float gauss1(mediump vec2 dir) {\\nreturn exp(-dot(dir, dir) / (2.0 * u_sigma * u_sigma));\\n}\\nmediump vec4 selectChannel(mediump vec4 sample) {\\nreturn u_channelSelector * sample;\\n}\\nvoid accumGauss1(mediump float i, inout mediump float tot, inout mediump float weight) {\\nmediump float w = gauss1(i * u_direction.xy);\\ntot += selectChannel(texture2D(u_texture, v_texcoord + i * u_direction.zw))[3] * w;\\nweight += w;\\n}\\nvoid main(void) {\\nmediump float tot = 0.0;\\nmediump float weight = 0.0;\\naccumGauss1(-5.0, tot, weight);\\naccumGauss1(-4.0, tot, weight);\\naccumGauss1(-3.0, tot, weight);\\naccumGauss1(-2.0, tot, weight);\\naccumGauss1(-1.0, tot, weight);\\naccumGauss1(0.0, tot, weight);\\naccumGauss1(1.0, tot, weight);\\naccumGauss1(2.0, tot, weight);\\naccumGauss1(3.0, tot, weight);\\naccumGauss1(4.0, tot, weight);\\naccumGauss1(5.0, tot, weight);\\ngl_FragColor = vec4(0.0, 0.0, 0.0, tot / weight);\\n}\",\"highlight.frag\":\"varying mediump vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform mediump float u_sigma;\\nuniform sampler2D u_shade;\\nuniform mediump vec2 u_minMaxDistance;\\nmediump float estimateDistance() {\\nmediump float y = texture2D(u_texture, v_texcoord)[3];\\nconst mediump float y0 = 0.5;\\nmediump float m0 = 1.0 / (sqrt(2.0 * 3.1415) * u_sigma);\\nmediump float d = (y - y0) / m0;\\nreturn d;\\n}\\nmediump vec4 shade(mediump float d) {\\nmediump float mappedDistance = (d - u_minMaxDistance.x) / (u_minMaxDistance.y - u_minMaxDistance.x);\\nmappedDistance = clamp(mappedDistance, 0.0, 1.0);\\nreturn texture2D(u_shade, vec2(mappedDistance, 0.5));\\n}\\nvoid main(void) {\\nmediump float d = estimateDistance();\\ngl_FragColor = shade(d);\\n}\",\"textured.vert\":\"attribute mediump vec2 a_position;\\nattribute mediump vec2 a_texcoord;\\nvarying mediump vec2 v_texcoord;\\nvoid main(void) {\\ngl_Position = vec4(a_position, 0.0, 1.0);\\nv_texcoord = a_texcoord;\\n}\"},magnifier:{\"magnifier.frag\":\"uniform lowp vec4 u_background;\\nuniform mediump sampler2D u_readbackTexture;\\nuniform mediump sampler2D u_maskTexture;\\nuniform mediump sampler2D u_overlayTexture;\\nuniform bool u_maskEnabled;\\nuniform bool u_overlayEnabled;\\nvarying mediump vec2 v_texCoord;\\nconst lowp float barrelFactor = 1.1;\\nlowp vec2 barrel(lowp vec2 uv) {\\nlowp vec2 uvn = uv * 2.0 - 1.0;\\nif (uvn.x == 0.0 && uvn.y == 0.0) {\\nreturn vec2(0.5, 0.5);\\n}\\nlowp float theta = atan(uvn.y, uvn.x);\\nlowp float r = pow(length(uvn), barrelFactor);\\nreturn r * vec2(cos(theta), sin(theta)) * 0.5 + 0.5;\\n}\\nvoid main(void)\\n{\\nlowp vec4 color = texture2D(u_readbackTexture, barrel(v_texCoord));\\ncolor = (color + (1.0 - color.a) * u_background);\\nlowp float mask = u_maskEnabled ? texture2D(u_maskTexture, v_texCoord).a : 1.0;\\ncolor *= mask;\\nlowp vec4 overlayColor = u_overlayEnabled ? texture2D(u_overlayTexture, v_texCoord) : vec4(0);\\ngl_FragColor = overlayColor + (1.0 - overlayColor.a) * color;\\n}\",\"magnifier.vert\":\"precision mediump float;\\nattribute mediump vec2 a_pos;\\nuniform mediump vec4 u_drawPos;\\nvarying mediump vec2 v_texCoord;\\nvoid main(void)\\n{\\nv_texCoord = a_pos;\\ngl_Position = vec4(u_drawPos.xy + vec2(a_pos - 0.5) * u_drawPos.zw, 0.0, 1.0);\\n}\"},materials:{\"attributeData.glsl\":\"uniform highp sampler2D u_attributeData0;\\nuniform highp sampler2D u_attributeData1;\\nuniform highp sampler2D u_attributeData2;\\nuniform highp sampler2D u_attributeData3;\\nuniform highp int u_attributeTextureSize;\\nhighp vec2 getAttributeDataCoords(in highp vec4 id) {\\nhighp vec4 texel = unpackDisplayIdTexel(id);\\nhighp float size = float(u_attributeTextureSize);\\nhighp float u32 = float(int(texel.r) + int(texel.g) * 256 + int(texel.b) * 256 * 256 + int(texel.a) * 256 * 256 * 256);\\nhighp float col = mod(u32, size);\\nhighp float row = (u32 - col) / size;\\nhighp float u = col / size;\\nhighp float v = row / size;\\nreturn vec2(u, v);\\n}\\nhighp vec4 getAttributeData0(in highp vec4 id) {\\nvec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData0, coords);\\n}\\nhighp vec4 getAttributeData1(in highp vec4 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData1, coords);\\n}\\nhighp vec4 getAttributeData2(in highp vec4 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData2, coords);\\n}\\nhighp vec4 getAttributeData3(in highp vec4 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData3, coords);\\n}\\nfloat u88VVToFloat(in vec2 v) {\\nbool isMagic = v.x == 255.0 && v.y == 255.0;\\nif (isMagic) {\\nreturn NAN_MAGIC_NUMBER;\\n}\\nreturn (v.x + v.y * float(0x100)) - 32768.0;\\n}\",\"constants.glsl\":\"const float C_DEG_TO_RAD = 3.14159265359 / 180.0;\\nconst float C_256_TO_RAD = 3.14159265359 / 128.0;\\nconst float SIGNED_BYTE_TO_UNSIGNED = 128.0;\\nconst float POSITION_PRECISION = 1.0 / 8.0;\\nconst float FILL_POSITION_PRECISION = 1.0 / 1.0;\\nconst float SOFT_EDGE_RATIO = 1.0;\\nconst float THIN_LINE_WIDTH_FACTOR = 1.1;\\nconst float THIN_LINE_HALF_WIDTH = 1.0;\\nconst float EXTRUDE_SCALE_PLACEMENT_PADDING = 1.0 / 4.0;\\nconst float OFFSET_PRECISION = 1.0 / 8.0;\\nconst float OUTLINE_SCALE = 1.0 / 5.0;\\nconst float SDF_FONT_SIZE = 24.0;\\nconst float MAX_SDF_DISTANCE = 8.0;\\nconst float PLACEMENT_PADDING = 8.0;\\nconst float EPSILON = 0.0000001;\\nconst int MAX_FILTER_COUNT = 2;\\nconst int ATTR_VV_SIZE = 0;\\nconst int ATTR_VV_COLOR = 1;\\nconst int ATTR_VV_OPACITY = 2;\\nconst int ATTR_VV_ROTATION = 3;\\nconst highp float NAN_MAGIC_NUMBER = 1e-30;\",fill:{\"common.glsl\":\"#ifdef PATTERN\\nuniform mediump vec2 u_mosaicSize;\\n#endif\\n#ifdef DOT_DENSITY\\nuniform lowp vec4 u_isActive[ 2 ];\\nuniform highp float u_dotValue;\\nuniform highp float u_tileDotsOverArea;\\nuniform highp float u_dotTextureDotCount;\\nuniform mediump float u_tileZoomFactor;\\n#endif\\nvarying vec3 v_pos;\\nvarying lowp float v_opacity;\\nvarying lowp vec4 v_color;\\nvarying highp vec4 v_id;\\nvarying highp float v_flags;\\n#ifdef PATTERN\\nvarying mediump vec4 v_tlbr;\\nvarying mediump vec2 v_tileTextureCoord;\\n#endif\\n#ifdef DOT_DENSITY\\nvarying highp vec2 v_dotTextureCoords;\\nvarying highp vec4 v_dotThresholds[ 2 ];\\n#endif\",\"fill.frag\":\"precision highp float;\\n#include \\n#include \\n#include \\n#ifdef PATTERN\\nuniform lowp sampler2D u_texture;\\n#endif\\n#ifdef DOT_DENSITY\\nuniform mediump mat4 u_dotColors[ 2 ];\\nuniform sampler2D u_dotTextures[ 2 ];\\nuniform vec4 u_dotBackgroundColor;\\n#endif\\nvoid main() {\\n#ifdef ID\\ngl_FragColor = v_id;\\n#elif defined(PATTERN)\\nmediump vec2 normalizedTextureCoord = mod(v_tileTextureCoord, 1.0);\\nmediump vec2 samplePos = mix(v_tlbr.xy, v_tlbr.zw, normalizedTextureCoord);\\nlowp vec4 color = texture2D(u_texture, samplePos);\\ngl_FragColor = v_opacity * v_color * color;\\n#elif defined(DOT_DENSITY) && !defined(HIGHLIGHT)\\nvec4 textureThresholds0 = texture2D(u_dotTextures[0], v_dotTextureCoords);\\nvec4 textureThresholds1 = texture2D(u_dotTextures[1], v_dotTextureCoords);\\nvec4 difference0 = v_dotThresholds[0] - textureThresholds0;\\nvec4 difference1 = v_dotThresholds[1] - textureThresholds1;\\n#ifdef DD_DOT_BLENDING\\nvec4 isPositive0 = step(0.0, difference0);\\nvec4 isPositive1 = step(0.0, difference1);\\nfloat weightSum = dot(isPositive0, difference0) + dot(isPositive1, difference1);\\nfloat lessThanEqZero = step(weightSum, 0.0);\\nfloat greaterThanZero = 1.0 - lessThanEqZero ;\\nfloat divisor = (weightSum + lessThanEqZero);\\nvec4 weights0 = difference0 * isPositive0 / divisor;\\nvec4 weights1 = difference1 * isPositive1 / divisor;\\nvec4 dotColor = u_dotColors[0] * weights0 + u_dotColors[1] * weights1;\\nvec4 preEffectColor = greaterThanZero * dotColor + lessThanEqZero * u_dotBackgroundColor;\\n#else\\nfloat diffMax = max(max4(difference0), max4(difference1));\\nfloat lessThanZero = step(diffMax, 0.0);\\nfloat greaterOrEqZero = 1.0 - lessThanZero;\\nvec4 isMax0 = step(diffMax, difference0);\\nvec4 isMax1 = step(diffMax, difference1);\\nvec4 dotColor = u_dotColors[0] * isMax0 + u_dotColors[1] * isMax1;\\nvec4 preEffectColor = greaterOrEqZero * dotColor + lessThanZero * u_dotBackgroundColor;\\n#endif\\ngl_FragColor = preEffectColor;\\n#else\\ngl_FragColor = v_opacity * v_color;\\n#endif\\n#ifdef HIGHLIGHT\\ngl_FragColor.a = 1.0;\\n#endif\\n}\",\"fill.vert\":\"precision highp float;\\n#ifdef DOT_DENSITY\\nattribute float a_inverseArea;\\nvec4 a_color = vec4(0.0, 0.0, 0.0, 1.0);\\nvec4 a_aux3 = vec4(0.0);\\nvec2 a_zoomRange = vec2(0.0, 10000.0);\\n#else\\nattribute vec4 a_color;\\nattribute vec4 a_tlbr;\\nattribute vec4 a_aux1;\\nattribute vec2 a_aux2;\\nattribute vec4 a_aux3;\\nattribute vec2 a_zoomRange;\\n#endif\\n#include \\n#include \\n#ifdef DOT_DENSITY\\nvec4 dotThreshold(vec4 featureAttrOverFeatureArea, float dotValue, float tileDotsOverArea) {\\nreturn featureAttrOverFeatureArea * (1.0 / dotValue) * (1.0 / tileDotsOverArea);\\n}\\n#endif\\nvoid main()\\n{\\nINIT;\\nfloat a_bitSet = a_aux3.a;\\nv_color = getColor(a_color, a_bitSet, 0);\\nv_opacity = getOpacity();\\nv_id = norm(a_id);\\nv_pos = u_dvsMat3 * vec3(a_pos * FILL_POSITION_PRECISION, 1.);\\nv_flags = getFilterFlags();\\n#ifdef PATTERN\\nvec2 aux2 = (1.0 / SIGNED_BYTE_TO_UNSIGNED) * a_aux2;\\nfloat width = u_pixelRatio * u_zoomFactor * a_aux1.x * aux2.x;\\nfloat height = u_pixelRatio * u_zoomFactor * a_aux1.y * aux2.y;\\nfloat angle = C_256_TO_RAD * a_aux3.z;\\nfloat sinA = sin(angle);\\nfloat cosA = cos(angle);\\nmat3 patternMatrix = mat3(cosA / width, sinA / height, 0,\\n-sinA / width, cosA / height, 0,\\n0, 0, 1);\\nvec2 symbolOffset = (a_aux1.zw - SIGNED_BYTE_TO_UNSIGNED) / vec2(width, height);\\nv_tileTextureCoord = (patternMatrix * vec3(a_pos * FILL_POSITION_PRECISION, 1.0)).xy - symbolOffset;\\nv_tlbr = a_tlbr / u_mosaicSize.xyxy;\\n#elif defined(DOT_DENSITY)\\nvec4 ddAttributeData0 = getAttributeData2(a_id) * u_isActive[0] * a_inverseArea;\\nvec4 ddAttributeData1 = getAttributeData3(a_id) * u_isActive[1] * a_inverseArea;\\nfloat size = u_tileZoomFactor * 512.0 * 1.0 / u_pixelRatio;\\nv_dotThresholds[0] = dotThreshold(ddAttributeData0, u_dotValue, u_tileDotsOverArea);\\nv_dotThresholds[1] = dotThreshold(ddAttributeData1, u_dotValue, u_tileDotsOverArea);\\nv_dotTextureCoords = (a_pos * FILL_POSITION_PRECISION + 0.5) / size;\\n#endif\\ngl_Position = vec4(clip(v_color, v_pos, v_flags, a_zoomRange), 1.0);\\n}\"},icon:{\"common.glsl\":\"uniform lowp vec2 u_mosaicSize;\\nvarying lowp vec4 v_color;\\nvarying highp vec4 v_id;\\nvarying highp vec4 v_sizeTex;\\nvarying mediump vec3 v_pos;\\nvarying highp float v_filters;\\nvarying lowp float v_opacity;\\n#ifdef SDF\\nvarying lowp vec4 v_outlineColor;\\nvarying mediump float v_outlineWidth;\\nvarying mediump float v_distRatio;\\nvarying mediump float v_overridingOutlineColor;\\nvarying mediump float v_isThin;\\n#endif\",\"icon.frag\":\"precision mediump float;\\n#include \\n#include \\n#include \\n#include \\n#include \\nuniform lowp sampler2D u_texture;\\nvoid main()\\n{\\nvec2 v_size = v_sizeTex.xy;\\nvec2 v_tex = v_sizeTex.zw;\\n#ifdef SDF\\nlowp vec4 fillPixelColor = v_color;\\nfloat d = 0.5 - rgba2float(texture2D(u_texture, v_tex));\\nfloat size = max(v_size.x, v_size.y);\\nfloat dist = d * size * SOFT_EDGE_RATIO * v_distRatio;\\nfillPixelColor *= clamp(0.5 - dist, 0.0, 1.0);\\nfloat outlineWidth = v_outlineWidth;\\n#ifdef HIGHLIGHT\\noutlineWidth = max(outlineWidth, 4.0 * v_isThin);\\n#endif\\nif (outlineWidth > 0.25) {\\nlowp vec4 outlinePixelColor = v_overridingOutlineColor * v_color + (1.0 - v_overridingOutlineColor) * v_outlineColor;\\nfloat clampedOutlineSize = min(outlineWidth, size);\\noutlinePixelColor *= clamp(0.5 - abs(dist) + clampedOutlineSize * 0.5, 0.0, 1.0);\\ngl_FragColor = v_opacity * ((1.0 - outlinePixelColor.a) * fillPixelColor + outlinePixelColor);\\n}\\nelse {\\ngl_FragColor = v_opacity * fillPixelColor;\\n}\\n#else\\nlowp vec4 texColor = texture2D(u_texture, v_tex);\\ngl_FragColor = v_opacity * texColor * v_color;\\n#endif\\n#ifdef HIGHLIGHT\\ngl_FragColor.a = step(1.0 / 255.0, gl_FragColor.a);\\n#endif\\n#ifdef ID\\nif (gl_FragColor.a < 1.0 / 255.0) {\\ndiscard;\\n}\\ngl_FragColor = v_id;\\n#endif\\n}\",\"icon.vert\":\"precision highp float;\\nattribute vec4 a_color;\\nattribute vec4 a_outlineColor;\\nattribute vec4 a_sizeAndOutlineWidth;\\nattribute vec2 a_vertexOffset;\\nattribute vec2 a_texCoords;\\nattribute vec2 a_bitSetAndDistRatio;\\nattribute vec2 a_zoomRange;\\n#include \\n#include \\nvec2 getMarkerSize(inout vec2 offset, inout vec2 baseSize, inout float outlineSize, in float referenceSize, in float bitSet) {\\n#ifdef VV_SIZE\\nfloat r = getSize(baseSize.y) / referenceSize;\\nbaseSize.xy *= r;\\noffset.xy *= r;\\nfloat scaleSymbolProportionally = getBit(bitSet, 3);\\noutlineSize *= scaleSymbolProportionally * (r - 1.0) + 1.0;\\n#endif\\nreturn baseSize;\\n}\\nvec3 getOffset(in vec2 in_offset, float a_bitSet) {\\nfloat isMapAligned = getBit(a_bitSet, 0);\\nvec3 offset = getRotation() * vec3(in_offset, 0.0);\\nreturn getMatrix(isMapAligned) * offset;\\n}\\nvoid main()\\n{\\nINIT;\\nvec2 a_size = a_sizeAndOutlineWidth.xy * a_sizeAndOutlineWidth.xy / 128.0;\\nvec2 a_offset = a_vertexOffset / 16.0;\\nfloat a_outlineSize = a_sizeAndOutlineWidth.z * a_sizeAndOutlineWidth.z / 128.0;\\nfloat a_bitSet = a_bitSetAndDistRatio.x;\\nvec2 v_size = getMarkerSize(a_offset, a_size, a_outlineSize, a_sizeAndOutlineWidth.w * a_sizeAndOutlineWidth.w / 128.0, a_bitSet);\\nvec2 v_tex = a_texCoords / u_mosaicSize;\\nv_color = getColor(a_color, a_bitSet, 1);\\nv_opacity = getOpacity();\\nv_id = norm(a_id);\\nv_filters = getFilterFlags();\\nv_pos = u_dvsMat3 * vec3(a_pos * POSITION_PRECISION, 1.0) + getOffset(a_offset, a_bitSet);\\nv_sizeTex = vec4(v_size.xy, v_tex.xy);\\n#ifdef SDF\\nv_isThin = getBit(a_bitSet, 2);\\n#ifdef VV_COLOR\\nv_overridingOutlineColor = v_isThin;\\n#else\\nv_overridingOutlineColor = 0.0;\\n#endif\\nv_outlineWidth = min(a_outlineSize, max(max(v_size.x, v_size.y) - 0.99, 0.0));\\nv_outlineColor = a_outlineColor;\\nv_distRatio = a_bitSetAndDistRatio.y / 126.0;\\n#endif\\ngl_Position = vec4(clip(v_color, v_pos, v_filters, a_zoomRange), 1.0);\\n}\"},label:{\"common.glsl\":\"uniform mediump float u_zoomLevel;\\nuniform mediump float u_mapRotation;\\nuniform mediump float u_mapAligned;\\nuniform mediump vec2 u_mosaicSize;\\nvarying mediump float v_antialiasingWidth;\\nvarying mediump float v_edgeDistanceOffset;\\nvarying mediump vec2 v_tex;\\nvarying mediump vec4 v_color;\\nvarying lowp vec4 v_animation;\",\"label.frag\":\"#include \",\"label.vert\":\"precision highp float;\\n#include \\n#include \\nattribute vec4 a_color;\\nattribute vec4 a_haloColor;\\nattribute vec4 a_texAndSize;\\nattribute vec4 a_refSymbolAndPlacementOffset;\\nattribute vec4 a_glyphData;\\nattribute vec2 a_vertexOffset;\\nattribute vec2 a_texCoords;\\nuniform float u_isHalo;\\nuniform float u_mapRotation;\\nuniform float u_mapAligned;\\nfloat getZ(in float minZoom, in float maxZoom, in float angle) {\\nfloat glyphAngle = angle * 360.0 / 254.0;\\nfloat mapAngle = u_mapRotation * 360.0 / 254.0;\\nfloat diffAngle = min(360.0 - abs(mapAngle - glyphAngle), abs(mapAngle - glyphAngle));\\nfloat z = 0.0;\\nz += u_mapAligned * (2.0 * (1.0 - step(minZoom, u_currentZoom)));\\nz += u_mapAligned * 2.0 * step(90.0, diffAngle);\\nz += 2.0 * (1.0 - step(u_currentZoom, maxZoom));\\nreturn z;\\n}\\nvoid main()\\n{\\nINIT;\\nfloat groupMinZoom = getMinZoom();\\nfloat glyphMinZoom = a_glyphData.x;\\nfloat glyphMaxZoom = a_glyphData.y;\\nfloat glyphAngle = a_glyphData.z;\\nfloat a_minZoom = max(groupMinZoom, glyphMinZoom);\\nfloat a_placementPadding = a_refSymbolAndPlacementOffset.x * EXTRUDE_SCALE_PLACEMENT_PADDING;\\nvec2 a_placementDir = unpack_u8_nf32(a_refSymbolAndPlacementOffset.zw);\\nfloat a_refSymbolSize = a_refSymbolAndPlacementOffset.y;\\nfloat fontSize = a_texAndSize.z;\\nfloat haloSize = a_texAndSize.w * OUTLINE_SCALE;\\nvec2 vertexOffset = a_vertexOffset * OFFSET_PRECISION;\\nvec3 pos = vec3(a_pos * POSITION_PRECISION, 1.0);\\nfloat z = getZ(a_minZoom, glyphMaxZoom, glyphAngle);\\nfloat fontScale = fontSize / SDF_FONT_SIZE;\\nfloat halfSize = getSize(a_refSymbolSize) / 2.0;\\nfloat animation = pow(getAnimationState(), vec4(2.0)).r;\\nv_color = animation * ((1.0 - u_isHalo) * a_color + (u_isHalo * a_haloColor));\\nv_opacity = 1.0;\\nv_tex = a_texCoords / u_mosaicSize;\\nv_edgeDistanceOffset = u_isHalo * haloSize / fontScale / MAX_SDF_DISTANCE;\\nv_antialiasingWidth = 0.105 * SDF_FONT_SIZE / fontSize / u_pixelRatio;\\nvec2 placementOffset = a_placementDir * (halfSize + a_placementPadding);\\nvec3 glyphOffset = u_displayMat3 * vec3(vertexOffset + placementOffset, 0.0);\\nvec3 v_pos = vec3((u_dvsMat3 * pos + glyphOffset).xy, z);\\ngl_Position = vec4(applyFilterLabels(v_color, v_pos, getFilterFlags()), 1.0);\\n#ifdef DEBUG\\nv_color = vec4(a_color.rgb, z == 0.0 ? 1.0 : 0.645);\\n#endif\\n}\"},line:{\"common.glsl\":\"varying lowp vec4 v_color;\\nvarying highp vec4 v_id;\\nvarying mediump vec2 v_normal;\\nvarying mediump float v_lineHalfWidth;\\nvarying lowp float v_opacity;\\nvarying highp vec3 v_pos;\\n#ifdef PATTERN\\nuniform mediump vec2 u_mosaicSize;\\nvarying mediump vec4 v_tlbr;\\nvarying mediump vec2 v_patternSize;\\n#endif\\n#if defined(PATTERN) || defined(SDF)\\nvarying highp float v_accumulatedDistance;\\n#endif\",\"line.frag\":\"precision lowp float;\\n#include \\n#include \\n#include \\nuniform lowp float u_blur;\\n#if defined(PATTERN) || defined(SDF)\\nuniform sampler2D u_texture;\\nuniform highp float u_pixelRatio;\\n#endif\\n#ifdef SDF\\nconst float sdfPatternHalfWidth = 15.5;\\nuniform mediump float u_antialiasing;\\n#endif\\nvoid main()\\n{\\nmediump float thinLineFactor = max(THIN_LINE_WIDTH_FACTOR * step(v_lineHalfWidth, THIN_LINE_HALF_WIDTH), 1.0);\\nmediump float fragDist = length(v_normal) * v_lineHalfWidth;\\nlowp float alpha = clamp(thinLineFactor * (v_lineHalfWidth - fragDist) / (u_blur + thinLineFactor - 1.0), 0.0, 1.0);\\n#if defined(SDF) && !defined(HIGHLIGHT)\\nmediump float lineHalfWidth = v_lineHalfWidth;\\nmediump float lineWidthRatio = max(lineHalfWidth - 0.55 * u_antialiasing, 0.25) / sdfPatternHalfWidth;\\nmediump float relativeTexX = fract(u_pixelRatio * v_accumulatedDistance * 0.5 / (lineWidthRatio * v_patternSize.x));\\nmediump float relativeTexY = 0.5 + 0.25 * v_normal.y;\\nmediump vec2 texCoord = mix(v_tlbr.xy, v_tlbr.zw, vec2(relativeTexX, relativeTexY));\\nmediump float d = rgba2float(texture2D(u_texture, texCoord)) - 0.5;\\nfloat dist = d * lineHalfWidth;\\nlowp vec4 fillPixelColor = v_opacity * alpha * clamp(0.5 - dist, 0.0, 1.0) * v_color;\\ngl_FragColor = fillPixelColor;\\n#elif defined(PATTERN) && !defined(HIGHLIGHT)\\nmediump float lineHalfWidth = v_lineHalfWidth;\\nmediump float adjustedPatternWidth = v_patternSize.x * 2.0 * lineHalfWidth / v_patternSize.y;\\nmediump float relativeTexX = fract(u_pixelRatio * v_accumulatedDistance / adjustedPatternWidth);\\nmediump float relativeTexY = 0.5 + 0.5 * v_normal.y;\\nmediump vec2 texCoord = mix(v_tlbr.xy, v_tlbr.zw, vec2(relativeTexY, relativeTexX));\\nlowp vec4 color = texture2D(u_texture, texCoord);\\ngl_FragColor = v_opacity * alpha * v_color * color;\\n#else\\ngl_FragColor = v_opacity * alpha * v_color;\\n#endif\\n#ifdef HIGHLIGHT\\ngl_FragColor.a = step(1.0 / 255.0, gl_FragColor.a);\\n#endif\\n#ifdef ID\\nif (gl_FragColor.a < 1.0 / 255.0) {\\ndiscard;\\n}\\ngl_FragColor = v_id;\\n#endif\\n}\",\"line.vert\":\"precision highp float;\\nattribute vec4 a_color;\\nattribute vec4 a_offsetAndNormal;\\nattribute vec2 a_accumulatedDistanceAndHalfWidth;\\nattribute vec4 a_tlbr;\\nattribute vec4 a_segmentDirection;\\nattribute vec2 a_aux;\\nattribute vec2 a_zoomRange;\\n#include \\n#include \\nconst float SCALE = 1.0 / 31.0;\\nconst float WIDTH_SCALE = 1.0 / 1024.0;\\nfloat getBaseLineHalfWidth(in float in_lineHalfWidth) {\\n#ifdef VV_SIZE\\nfloat referenceHalfWidth = a_aux.x * WIDTH_SCALE;\\nfloat lineWidth = 2.0 * in_lineHalfWidth;\\nreturn 0.5 * (in_lineHalfWidth / referenceHalfWidth) * getSize(lineWidth);\\n#else\\nreturn in_lineHalfWidth;\\n#endif\\n}\\nfloat getLineHalfWidth(in float baseWidth, in float aa) {\\nfloat halfWidth = max(baseWidth + aa, 0.45) + 0.1 * aa;\\n#ifdef HIGHLIGHT\\nhalfWidth = max(halfWidth, 2.0);\\n#endif\\nreturn halfWidth;\\n}\\nvec2 getDist(in vec2 offset, in float halfWidth) {\\nfloat thinLineFactor = max(THIN_LINE_WIDTH_FACTOR * step(halfWidth, THIN_LINE_HALF_WIDTH), 1.0);\\nreturn thinLineFactor * halfWidth * offset * SCALE;\\n}\\nvoid main()\\n{\\nINIT;\\nfloat a_bitSet = a_segmentDirection.w;\\nfloat a_accumulatedDist = a_accumulatedDistanceAndHalfWidth.x;\\nfloat a_lineHalfWidth = a_accumulatedDistanceAndHalfWidth.y * WIDTH_SCALE;\\nfloat aa = 0.5 * u_antialiasing;\\nvec2 a_offset = a_offsetAndNormal.xy;\\nfloat baseWidth = getBaseLineHalfWidth(a_lineHalfWidth);\\nfloat halfWidth = getLineHalfWidth(baseWidth, aa);\\nfloat z = 2.0 * step(baseWidth, 0.0);\\nvec2 dist = getDist(a_offset, halfWidth);\\nvec3 offset = u_displayViewMat3 * vec3(dist, 0.0);\\nvec3 pos = u_dvsMat3 * vec3(a_pos * POSITION_PRECISION, 1.0) + offset;\\nv_color = getColor(a_color, a_bitSet, 0);\\nv_opacity = getOpacity();\\nv_lineHalfWidth = halfWidth;\\nv_id = norm(a_id);\\nv_normal = a_offsetAndNormal.zw * SCALE;\\nv_pos = vec3(pos.xy, z);\\n#ifdef PATTERN\\nv_tlbr = a_tlbr / u_mosaicSize.xyxy;\\nv_patternSize = vec2(a_tlbr.z - a_tlbr.x, a_tlbr.w - a_tlbr.y);\\n#endif\\n#if defined(PATTERN) || defined(SDF)\\nv_accumulatedDistance = a_accumulatedDist * u_zoomFactor + dot(SCALE * a_segmentDirection.xy, dist);\\n#endif\\ngl_Position = vec4(clip(v_color, v_pos, getFilterFlags(), a_zoomRange), 1.0);\\n}\"},text:{\"common.glsl\":\"uniform highp vec2 u_mosaicSize;\\nvarying highp vec4 v_id;\\nvarying mediump vec3 v_pos;\\nvarying lowp float v_opacity;\\nvarying lowp vec4 v_color;\\nvarying highp vec2 v_tex;\\nvarying mediump float v_antialiasingWidth;\\nvarying mediump float v_edgeDistanceOffset;\\nvarying lowp float v_transparency;\",\"text.frag\":\"precision mediump float;\\n#include \\nuniform lowp sampler2D u_texture;\\nvoid main()\\n{\\nfloat SDF_CUTOFF = (2.0 / 8.0);\\nfloat SDF_BASE_EDGE_DIST = 1.0 - SDF_CUTOFF;\\nlowp float dist = texture2D(u_texture, v_tex).a;\\nmediump float edge = SDF_BASE_EDGE_DIST - v_edgeDistanceOffset;\\n#ifdef HIGHLIGHT\\nedge /= 2.0;\\n#endif\\nlowp float aa = v_antialiasingWidth;\\nlowp float alpha = smoothstep(edge - aa, edge + aa, dist);\\ngl_FragColor = alpha * v_color * v_opacity;\\n#ifdef ID\\nif (gl_FragColor.a < 1.0 / 255.0) {\\ndiscard;\\n}\\ngl_FragColor = v_id;\\n#endif\\n}\",\"text.vert\":\"precision highp float;\\n#include \\n#include \\n#include \\nattribute vec4 a_color;\\nattribute vec4 a_haloColor;\\nattribute vec4 a_texFontSize;\\nattribute vec4 a_aux;\\nattribute vec2 a_zoomRange;\\nattribute vec2 a_vertexOffset;\\nattribute vec2 a_texCoords;\\nuniform float u_isHalo;\\nfloat getTextSize(in float baseSize, in float referenceSize) {\\n#ifdef VV_SIZE\\nreturn getSize(baseSize);\\n#endif\\nreturn baseSize;\\n}\\nvoid main()\\n{\\nINIT;\\nfloat a_referenceSize = a_aux.z * a_aux.z / 256.0;\\nfloat a_bitSet = a_aux.w;\\nfloat a_fontSize = a_texFontSize.z;\\nvec2 a_offset = a_vertexOffset * OFFSET_PRECISION;\\nvec3 in_pos = vec3(a_pos * POSITION_PRECISION, 1.0);\\nfloat fontSize = getTextSize(a_fontSize, a_referenceSize);\\nfloat scaleFactor = fontSize / a_fontSize;\\nfloat fontScale = fontSize / SDF_FONT_SIZE;\\nvec3 offset = getRotation() * vec3(scaleFactor * a_offset, 0.0);\\nmat3 extrudeMatrix = getBit(a_bitSet, 0) == 1.0 ? u_displayViewMat3 : u_displayMat3;\\nv_color = u_isHalo * a_haloColor + (1.0 - u_isHalo) * getColor(a_color, a_bitSet, 1);\\nv_opacity = getOpacity();\\nv_id = norm(a_id);\\nv_tex = a_texCoords / u_mosaicSize;\\nv_pos = u_dvsMat3 * in_pos + extrudeMatrix * offset;\\nv_edgeDistanceOffset = u_isHalo * OUTLINE_SCALE * a_texFontSize.w / fontScale / MAX_SDF_DISTANCE;\\nv_antialiasingWidth = 0.105 * SDF_FONT_SIZE / fontSize / u_pixelRatio;\\ngl_Position = vec4(clip(v_color, v_pos, getFilterFlags(), a_zoomRange), 1.0);\\n}\"},\"utils.glsl\":\"float rshift(in float u32, in int amount) {\\nreturn floor(u32 / pow(2.0, float(amount)));\\n}\\nfloat getBit(in float bitset, in int bitIndex) {\\nfloat offset = pow(2.0, float(bitIndex));\\nreturn mod(floor(bitset / offset), 2.0);\\n}\\nfloat getFilterBit(in float bitset, in int bitIndex) {\\nreturn getBit(bitset, bitIndex + 1);\\n}\\nfloat getHighlightBit(in float bitset) {\\nreturn getBit(bitset, 0);\\n}\\nhighp vec4 unpackDisplayIdTexel(in highp vec4 bitset) {\\nfloat isAggregate = getBit(bitset.a, 7);\\nreturn (1.0 - isAggregate) * bitset + isAggregate * (vec4(bitset.rgba) - vec4(0.0, 0.0, 0.0, float(0x80)));\\n}\\nvec4 unpack(in float u32) {\\nfloat r = mod(rshift(u32, 0), 255.0);\\nfloat g = mod(rshift(u32, 8), 255.0);\\nfloat b = mod(rshift(u32, 16), 255.0);\\nfloat a = mod(rshift(u32, 24), 255.0);\\nreturn vec4(r, g, b, a);\\n}\\nvec4 norm(in vec4 v) {\\nreturn v /= 255.0;\\n}\\nfloat max4(vec4 target) {\\nreturn max(max(max(target.x, target.y), target.z), target.w);\\n}\\nvec2 unpack_u8_nf32(vec2 bytes) {\\nreturn (bytes - 127.0) / 127.0;\\n}\",\"vcommon.glsl\":\"#include \\n#include \\n#include \\n#include \\nattribute vec2 a_pos;\\nattribute highp vec4 a_id;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp mat3 u_displayMat3;\\nuniform highp mat3 u_displayViewMat3;\\nuniform highp float u_pixelRatio;\\nuniform mediump float u_zoomFactor;\\nuniform mediump float u_antialiasing;\\nuniform mediump float u_currentZoom;\\nvec4 VV_ADATA = vec4(0.0);\\nvoid loadVisualVariableData(inout vec4 target) {\\n#ifdef OES_TEXTURE_FLOAT\\ntarget.rgba = getAttributeData2(a_id);\\n#else\\nvec4 data0 = getAttributeData2(a_id);\\nvec4 data1 = getAttributeData3(a_id);\\ntarget.r = u88VVToFloat(data0.rg * 255.0);\\ntarget.g = u88VVToFloat(data0.ba * 255.0);\\ntarget.b = u88VVToFloat(data1.rg * 255.0);\\ntarget.a = u88VVToFloat(data1.ba * 255.0);\\n#endif\\n}\\n#ifdef VV\\n#define INIT loadVisualVariableData(VV_ADATA)\\n#else\\n#define INIT\\n#endif\\nvec4 getColor(in vec4 a_color, in float a_bitSet, int index) {\\n#ifdef VV_COLOR\\nfloat isColorLocked = getBit(a_bitSet, index);\\nreturn getVVColor(VV_ADATA[ATTR_VV_COLOR], a_color, isColorLocked);\\n#else\\nreturn a_color;\\n#endif\\n}\\nfloat getOpacity() {\\n#ifdef VV_OPACITY\\nreturn getVVOpacity(VV_ADATA[ATTR_VV_OPACITY]);\\n#else\\nreturn 1.0;\\n#endif\\n}\\nfloat getSize(in float in_size) {\\n#ifdef VV_SIZE\\nreturn getVVSize(in_size, VV_ADATA[ATTR_VV_SIZE]);\\n#else\\nreturn in_size;\\n#endif\\n}\\nmat3 getRotation() {\\n#ifdef VV_ROTATION\\nreturn getVVRotationMat3(mod(VV_ADATA[ATTR_VV_ROTATION], 360.0));\\n#else\\nreturn mat3(1.0);\\n#endif\\n}\\nfloat getFilterFlags() {\\n#ifdef IGNORES_SAMPLER_PRECISION\\nreturn ceil(getAttributeData0(a_id).x * 255.0);\\n#else\\nreturn getAttributeData0(a_id).x * 255.0;\\n#endif\\n}\\nvec4 getAnimationState() {\\nreturn getAttributeData1(a_id);\\n}\\nfloat getMinZoom() {\\nvec4 data0 = getAttributeData0(a_id) * 255.0;\\nreturn data0.g;\\n}\\nmat3 getMatrix(float isMapAligned) {\\nreturn isMapAligned * u_displayViewMat3 + (1.0 - isMapAligned) * u_displayMat3;\\n}\\nvec3 clip(inout vec4 color, inout vec3 pos, in float filterFlags, in vec2 minMaxZoom) {\\npos.z += 2.0 * (1.0 - getFilterBit(filterFlags, 0));\\n#ifdef INSIDE\\npos.z += 2.0 * (1.0 - getFilterBit(filterFlags, 1));\\n#elif defined(OUTSIDE)\\npos.z += 2.0 * getFilterBit(filterFlags, 1);\\n#elif defined(HIGHLIGHT)\\n#if !defined(HIGHLIGHT_ALL)\\npos.z += 2.0 * (1.0 - getHighlightBit(filterFlags));\\n#endif\\n#endif\\npos.z += 2.0 * (step(minMaxZoom.y, u_currentZoom) + (1.0 - step(minMaxZoom.x, u_currentZoom)));\\nreturn pos;\\n}\\nvec3 applyFilterLabels(inout vec4 color, inout vec3 pos, in float filterFlags) {\\npos.z += 2.0 * (1.0 - getFilterBit(filterFlags, 0));\\n#ifndef OUTSIDE_LABELS_VISIBLE\\npos.z += 2.0 * (1.0 - getFilterBit(filterFlags, 1));\\n#endif\\nreturn pos;\\n}\",\"vv.glsl\":\"#if defined(VV_SIZE_MIN_MAX_VALUE) || defined(VV_SIZE_SCALE_STOPS) || defined(VV_SIZE_FIELD_STOPS) || defined(VV_SIZE_UNIT_VALUE)\\n#define VV_SIZE\\n#endif\\n#if defined(VV_COLOR) || defined(VV_SIZE) || defined(VV_OPACITY) || defined(VV_ROTATION)\\n#define VV\\n#endif\\n#ifdef VV_COLOR\\nuniform highp float u_vvColorValues[8];\\nuniform vec4 u_vvColors[8];\\n#endif\\n#ifdef VV_SIZE_MIN_MAX_VALUE\\nuniform highp vec4 u_vvSizeMinMaxValue;\\n#endif\\n#ifdef VV_SIZE_SCALE_STOPS\\nuniform highp float u_vvSizeScaleStopsValue;\\n#endif\\n#ifdef VV_SIZE_FIELD_STOPS\\nuniform highp float u_vvSizeFieldStopsValues[6];\\nuniform float u_vvSizeFieldStopsSizes[6];\\n#endif\\n#ifdef VV_SIZE_UNIT_VALUE\\nuniform highp float u_vvSizeUnitValueWorldToPixelsRatio;\\n#endif\\n#ifdef VV_OPACITY\\nuniform highp float u_vvOpacityValues[8];\\nuniform float u_vvOpacities[8];\\n#endif\\n#ifdef VV_ROTATION\\nuniform lowp float u_vvRotationType;\\n#endif\\nbool isNan(float val) {\\nreturn (val == NAN_MAGIC_NUMBER);\\n}\\n#ifdef VV_SIZE_MIN_MAX_VALUE\\nfloat getVVMinMaxSize(float sizeValue, float fallback) {\\nif (isNan(sizeValue)) {\\nreturn fallback;\\n}\\nfloat interpolationRatio = (sizeValue - u_vvSizeMinMaxValue.x) / (u_vvSizeMinMaxValue.y - u_vvSizeMinMaxValue.x);\\ninterpolationRatio = clamp(interpolationRatio, 0.0, 1.0);\\nreturn u_vvSizeMinMaxValue.z + interpolationRatio * (u_vvSizeMinMaxValue.w - u_vvSizeMinMaxValue.z);\\n}\\n#endif\\n#ifdef VV_SIZE_FIELD_STOPS\\nconst int VV_SIZE_N = 6;\\nfloat getVVStopsSize(float sizeValue, float fallback) {\\nif (isNan(sizeValue)) {\\nreturn fallback;\\n}\\nif (sizeValue <= u_vvSizeFieldStopsValues[0]) {\\nreturn u_vvSizeFieldStopsSizes[0];\\n}\\nfor (int i = 1; i < VV_SIZE_N; ++i) {\\nif (u_vvSizeFieldStopsValues[i] >= sizeValue) {\\nfloat f = (sizeValue - u_vvSizeFieldStopsValues[i-1]) / (u_vvSizeFieldStopsValues[i] - u_vvSizeFieldStopsValues[i-1]);\\nreturn mix(u_vvSizeFieldStopsSizes[i-1], u_vvSizeFieldStopsSizes[i], f);\\n}\\n}\\nreturn u_vvSizeFieldStopsSizes[VV_SIZE_N - 1];\\n}\\n#endif\\n#ifdef VV_SIZE_UNIT_VALUE\\nfloat getVVUnitValue(float sizeValue, float fallback) {\\nif (isNan(sizeValue)) {\\nreturn fallback;\\n}\\nreturn u_vvSizeUnitValueWorldToPixelsRatio * sizeValue;\\n}\\n#endif\\n#ifdef VV_OPACITY\\nconst int VV_OPACITY_N = 8;\\nfloat getVVOpacity(float opacityValue) {\\nif (isNan(opacityValue)) {\\nreturn 1.0;\\n}\\nif (opacityValue <= u_vvOpacityValues[0]) {\\nreturn u_vvOpacities[0];\\n}\\nfor (int i = 1; i < VV_OPACITY_N; ++i) {\\nif (u_vvOpacityValues[i] >= opacityValue) {\\nfloat f = (opacityValue - u_vvOpacityValues[i-1]) / (u_vvOpacityValues[i] - u_vvOpacityValues[i-1]);\\nreturn mix(u_vvOpacities[i-1], u_vvOpacities[i], f);\\n}\\n}\\nreturn u_vvOpacities[VV_OPACITY_N - 1];\\n}\\n#endif\\n#ifdef VV_ROTATION\\nmat4 getVVRotation(float rotationValue) {\\nif (isNan(rotationValue)) {\\nreturn mat4(1, 0, 0, 0,\\n0, 1, 0, 0,\\n0, 0, 1, 0,\\n0, 0, 0, 1);\\n}\\nfloat rotation = rotationValue;\\nif (u_vvRotationType == 1.0) {\\nrotation = 90.0 - rotation;\\n}\\nfloat angle = C_DEG_TO_RAD * rotation;\\nfloat sinA = sin(angle);\\nfloat cosA = cos(angle);\\nreturn mat4(cosA, sinA, 0, 0,\\n-sinA, cosA, 0, 0,\\n0, 0, 1, 0,\\n0, 0, 0, 1);\\n}\\nmat3 getVVRotationMat3(float rotationValue) {\\nif (isNan(rotationValue)) {\\nreturn mat3(1, 0, 0,\\n0, 1, 0,\\n0, 0, 1);\\n}\\nfloat rotation = rotationValue;\\nif (u_vvRotationType == 1.0) {\\nrotation = 90.0 - rotation;\\n}\\nfloat angle = C_DEG_TO_RAD * -rotation;\\nfloat sinA = sin(angle);\\nfloat cosA = cos(angle);\\nreturn mat3(cosA, -sinA, 0,\\nsinA, cosA, 0,\\n0, 0, 1);\\n}\\n#endif\\n#ifdef VV_COLOR\\nconst int VV_COLOR_N = 8;\\nvec4 getVVColor(float colorValue, vec4 fallback, float isColorLocked) {\\nif (isNan(colorValue) || isColorLocked == 1.0) {\\nreturn fallback;\\n}\\nif (colorValue <= u_vvColorValues[0]) {\\nreturn u_vvColors[0];\\n}\\nfor (int i = 1; i < VV_COLOR_N; ++i) {\\nif (u_vvColorValues[i] >= colorValue) {\\nfloat f = (colorValue - u_vvColorValues[i-1]) / (u_vvColorValues[i] - u_vvColorValues[i-1]);\\nreturn mix(u_vvColors[i-1], u_vvColors[i], f);\\n}\\n}\\nreturn u_vvColors[VV_COLOR_N - 1];\\n}\\n#endif\\nfloat getVVSize(in float size, in float vvSize) {\\n#ifdef VV_SIZE_MIN_MAX_VALUE\\nreturn getVVMinMaxSize(vvSize, size);\\n#elif defined(VV_SIZE_SCALE_STOPS)\\nreturn u_vvSizeScaleStopsValue;\\n#elif defined(VV_SIZE_FIELD_STOPS)\\nfloat outSize = getVVStopsSize(vvSize, size);\\nreturn isNan(outSize) ? size : outSize;\\n#elif defined(VV_SIZE_UNIT_VALUE)\\nreturn getVVUnitValue(vvSize, size);\\n#else\\nreturn size;\\n#endif\\n}\"},\"post-processing\":{blit:{\"blit.frag\":\"precision mediump float;\\nuniform sampler2D u_texture;\\nvarying vec2 v_uv;\\nvoid main() {\\ngl_FragColor = texture2D(u_texture, v_uv);\\n}\"},bloom:{composite:{\"composite.frag\":\"precision mediump float;\\nvarying vec2 v_uv;\\nuniform sampler2D u_blurTexture1;\\nuniform sampler2D u_blurTexture2;\\nuniform sampler2D u_blurTexture3;\\nuniform sampler2D u_blurTexture4;\\nuniform sampler2D u_blurTexture5;\\nuniform float u_bloomStrength;\\nuniform float u_bloomRadius;\\nuniform float u_bloomFactors[NUMMIPS];\\nuniform vec3 u_bloomTintColors[NUMMIPS];\\nfloat lerpBloomFactor(const in float factor) {\\nfloat mirrorFactor = 1.2 - factor;\\nreturn mix(factor, mirrorFactor, u_bloomRadius);\\n}\\nvoid main() {\\ngl_FragColor = u_bloomStrength * (\\nlerpBloomFactor(u_bloomFactors[0]) * vec4(u_bloomTintColors[0], 1.0) * texture2D(u_blurTexture1, v_uv) +\\nlerpBloomFactor(u_bloomFactors[1]) * vec4(u_bloomTintColors[1], 1.0) * texture2D(u_blurTexture2, v_uv) +\\nlerpBloomFactor(u_bloomFactors[2]) * vec4(u_bloomTintColors[2], 1.0) * texture2D(u_blurTexture3, v_uv) +\\nlerpBloomFactor(u_bloomFactors[3]) * vec4(u_bloomTintColors[3], 1.0) * texture2D(u_blurTexture4, v_uv) +\\nlerpBloomFactor(u_bloomFactors[4]) * vec4(u_bloomTintColors[4], 1.0) * texture2D(u_blurTexture5, v_uv)\\n);\\n}\"},gaussianBlur:{\"gaussianBlur.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform vec2 u_texSize;\\nuniform vec2 u_direction;\\nvarying vec2 v_uv;\\n#define KERNEL_RADIUS RADIUS\\n#define SIGMA RADIUS\\nfloat gaussianPdf(in float x, in float sigma) {\\nreturn 0.39894 * exp(-0.5 * x * x / ( sigma * sigma)) / sigma;\\n}\\nvoid main() {\\nvec2 invSize = 1.0 / u_texSize;\\nfloat fSigma = float(SIGMA);\\nfloat weightSum = gaussianPdf(0.0, fSigma);\\nvec4 pixelColorSum = texture2D(u_colorTexture, v_uv) * weightSum;\\nfor (int i = 1; i < KERNEL_RADIUS; i ++) {\\nfloat x = float(i);\\nfloat w = gaussianPdf(x, fSigma);\\nvec2 uvOffset = u_direction * invSize * x;\\nvec4 sample1 = texture2D(u_colorTexture, v_uv + uvOffset);\\nvec4 sample2 = texture2D(u_colorTexture, v_uv - uvOffset);\\npixelColorSum += (sample1 + sample2) * w;\\nweightSum += 2.0 * w;\\n}\\ngl_FragColor = pixelColorSum /weightSum;\\n}\"},luminosityHighPass:{\"luminosityHighPass.frag\":\"precision mediump float;\\nuniform sampler2D u_texture;\\nuniform vec3 u_defaultColor;\\nuniform float u_defaultOpacity;\\nuniform float u_luminosityThreshold;\\nuniform float u_smoothWidth;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 texel = texture2D(u_texture, v_uv);\\nvec3 luma = vec3(0.299, 0.587, 0.114);\\nfloat v = dot(texel.xyz, luma);\\nvec4 outputColor = vec4(u_defaultColor.rgb, u_defaultOpacity);\\nfloat alpha = smoothstep(u_luminosityThreshold, u_luminosityThreshold + u_smoothWidth, v);\\ngl_FragColor = mix(outputColor, texel, alpha);\\n}\"}},blur:{gaussianBlur:{\"gaussianBlur.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform vec2 u_texSize;\\nuniform vec2 u_direction;\\nuniform float u_sigma;\\nvarying vec2 v_uv;\\n#define KERNEL_RADIUS RADIUS\\nfloat gaussianPdf(in float x, in float sigma) {\\nreturn 0.39894 * exp(-0.5 * x * x / ( sigma * sigma)) / sigma;\\n}\\nvoid main() {\\nvec2 invSize = 1.0 / u_texSize;\\nfloat fSigma = u_sigma;\\nfloat weightSum = gaussianPdf(0.0, fSigma);\\nvec4 pixelColorSum = texture2D(u_colorTexture, v_uv) * weightSum;\\nfor (int i = 1; i < KERNEL_RADIUS; i ++) {\\nfloat x = float(i);\\nfloat w = gaussianPdf(x, fSigma);\\nvec2 uvOffset = u_direction * invSize * x;\\nvec4 sample1 = texture2D(u_colorTexture, v_uv + uvOffset);\\nvec4 sample2 = texture2D(u_colorTexture, v_uv - uvOffset);\\npixelColorSum += (sample1 + sample2) * w;\\nweightSum += 2.0 * w;\\n}\\ngl_FragColor = pixelColorSum /weightSum;\\n}\"},\"radial-blur\":{\"radial-blur.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nvarying vec2 v_uv;\\nconst float sampleDist = 1.0;\\nconst float sampleStrength = 2.2;\\nvoid main(void) {\\nfloat samples[10];\\nsamples[0] = -0.08;\\nsamples[1] = -0.05;\\nsamples[2] = -0.03;\\nsamples[3] = -0.02;\\nsamples[4] = -0.01;\\nsamples[5] = 0.01;\\nsamples[6] = 0.02;\\nsamples[7] = 0.03;\\nsamples[8] = 0.05;\\nsamples[9] = 0.08;\\nvec2 dir = 0.5 - v_uv;\\nfloat dist = sqrt(dir.x * dir.x + dir.y * dir.y);\\ndir = dir / dist;\\nvec4 color = texture2D(u_colorTexture,v_uv);\\nvec4 sum = color;\\nfor (int i = 0; i < 10; i++) {\\nsum += texture2D(u_colorTexture, v_uv + dir * samples[i] * sampleDist);\\n}\\nsum *= 1.0 / 11.0;\\nfloat t = dist * sampleStrength;\\nt = clamp(t, 0.0, 1.0);\\ngl_FragColor = mix(color, sum, t);\\n}\"}},dra:{\"dra.frag\":\"precision mediump float;\\nuniform sampler2D u_minColor;\\nuniform sampler2D u_maxColor;\\nuniform sampler2D u_texture;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 minColor = texture2D(u_minColor, vec2(0.5));\\nvec4 maxColor = texture2D(u_maxColor, vec2(0.5));\\nvec4 color = texture2D(u_texture, v_uv);\\nvec3 minColorUnpremultiply = minColor.rgb / minColor.a;\\nvec3 maxColorUnpremultiply = maxColor.rgb / maxColor.a;\\nvec3 colorUnpremultiply = color.rgb / color.a;\\nvec3 range = maxColorUnpremultiply - minColorUnpremultiply;\\ngl_FragColor = vec4(color.a * (colorUnpremultiply - minColorUnpremultiply) / range, color.a);\\n}\",\"min-max\":{\"min-max.frag\":\"#extension GL_EXT_draw_buffers : require\\nprecision mediump float;\\n#define CELL_SIZE 2\\nuniform sampler2D u_minTexture;\\nuniform sampler2D u_maxTexture;\\nuniform vec2 u_srcResolution;\\nuniform vec2 u_dstResolution;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec2 srcPixel = floor(gl_FragCoord.xy) * float(CELL_SIZE);\\nvec2 onePixel = vec2(1.0) / u_srcResolution;\\nvec2 uv = (srcPixel + 0.5) / u_srcResolution;\\nvec4 minColor = vec4(1.0);\\nvec4 maxColor = vec4(0.0);\\nfor (int y = 0; y < CELL_SIZE; ++y) {\\nfor (int x = 0; x < CELL_SIZE; ++x) {\\nvec2 offset = uv + vec2(x, y) * onePixel;\\nminColor = min(minColor, texture2D(u_minTexture, offset));\\nmaxColor = max(maxColor, texture2D(u_maxTexture, offset));\\n}\\n}\\ngl_FragData[0] = minColor;\\ngl_FragData[1] = maxColor;\\n}\"}},\"drop-shadow\":{composite:{\"composite.frag\":\"precision mediump float;\\nuniform sampler2D u_layerFBOTexture;\\nuniform sampler2D u_blurTexture;\\nuniform vec4 u_shadowColor;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 layerColor = texture2D(u_layerFBOTexture, v_uv);\\nvec4 blurColor = texture2D(u_blurTexture, v_uv);\\ngl_FragColor = ((1.0 - layerColor.a) * blurColor.a * u_shadowColor + layerColor);\\n}\"},\"drop-shadow.vert\":\"precision mediump float;\\nattribute vec2 a_position;\\nuniform highp mat3 u_displayViewMat3;\\nuniform highp vec2 u_offset;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec3 offset = u_displayViewMat3 * vec3(u_offset, 0.0);\\ngl_Position = vec4(a_position, 0.0, 1.0) + vec4(offset, 0.0);\\nv_uv = (a_position + 1.0) / 2.0;\\n}\"},\"edge-detect\":{\"frei-chen\":{\"frei-chen.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform vec2 u_texSize;\\nvarying vec2 v_uv;\\nvec2 texel = vec2(1.0 / u_texSize.x, 1.0 / u_texSize.y);\\nmat3 G[9];\\nconst mat3 g0 = mat3( 0.3535533845424652, 0, -0.3535533845424652, 0.5, 0, -0.5, 0.3535533845424652, 0, -0.3535533845424652 );\\nconst mat3 g1 = mat3( 0.3535533845424652, 0.5, 0.3535533845424652, 0, 0, 0, -0.3535533845424652, -0.5, -0.3535533845424652 );\\nconst mat3 g2 = mat3( 0, 0.3535533845424652, -0.5, -0.3535533845424652, 0, 0.3535533845424652, 0.5, -0.3535533845424652, 0 );\\nconst mat3 g3 = mat3( 0.5, -0.3535533845424652, 0, -0.3535533845424652, 0, 0.3535533845424652, 0, 0.3535533845424652, -0.5 );\\nconst mat3 g4 = mat3( 0, -0.5, 0, 0.5, 0, 0.5, 0, -0.5, 0 );\\nconst mat3 g5 = mat3( -0.5, 0, 0.5, 0, 0, 0, 0.5, 0, -0.5 );\\nconst mat3 g6 = mat3( 0.1666666716337204, -0.3333333432674408, 0.1666666716337204, -0.3333333432674408, 0.6666666865348816, -0.3333333432674408, 0.1666666716337204, -0.3333333432674408, 0.1666666716337204 );\\nconst mat3 g7 = mat3( -0.3333333432674408, 0.1666666716337204, -0.3333333432674408, 0.1666666716337204, 0.6666666865348816, 0.1666666716337204, -0.3333333432674408, 0.1666666716337204, -0.3333333432674408 );\\nconst mat3 g8 = mat3( 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408 );\\nvoid main() {\\nG[0] = g0,\\nG[1] = g1,\\nG[2] = g2,\\nG[3] = g3,\\nG[4] = g4,\\nG[5] = g5,\\nG[6] = g6,\\nG[7] = g7,\\nG[8] = g8;\\nmat3 I;\\nfloat cnv[9];\\nvec3 sample;\\nfor (float i = 0.0; i < 3.0; i++) {\\nfor (float j = 0.0; j < 3.0; j++) {\\nsample = texture2D(u_colorTexture, v_uv + texel * vec2(i - 1.0,j - 1.0)).rgb;\\nI[int(i)][int(j)] = length(sample);\\n}\\n}\\nfor (int i = 0; i < 9; i++) {\\nfloat dp3 = dot(G[i][0], I[0]) + dot(G[i][1], I[1]) + dot(G[i][2], I[2]);\\ncnv[i] = dp3 * dp3;\\n}\\nfloat M = (cnv[0] + cnv[1]) + (cnv[2] + cnv[3]);\\nfloat S = (cnv[4] + cnv[5]) + (cnv[6] + cnv[7]) + (cnv[8] + M);\\ngl_FragColor = vec4(vec3(sqrt(M / S)), texture2D(u_colorTexture, v_uv).a);\\n}\"},sobel:{\"sobel.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nvarying vec2 v_uv;\\nuniform vec2 u_texSize;\\nvec2 texel = vec2(1.0 / u_texSize.x, 1.0 / u_texSize.y);\\nmat3 G[2];\\nconst mat3 g0 = mat3( 1.0, 2.0, 1.0, 0.0, 0.0, 0.0, -1.0, -2.0, -1.0 );\\nconst mat3 g1 = mat3( 1.0, 0.0, -1.0, 2.0, 0.0, -2.0, 1.0, 0.0, -1.0 );\\nvoid main() {\\nmat3 I;\\nfloat cnv[2];\\nvec3 sample;\\nG[0] = g0;\\nG[1] = g1;\\nfor (float i = 0.0; i < 3.0; i++) {\\nfor (float j = 0.0; j < 3.0; j++) {\\nsample = texture2D( u_colorTexture, v_uv + texel * vec2(i-1.0,j-1.0) ).rgb;\\nI[int(i)][int(j)] = length(sample);\\n}\\n}\\nfor (int i = 0; i < 2; i++) {\\nfloat dp3 = dot(G[i][0], I[0]) + dot(G[i][1], I[1]) + dot(G[i][2], I[2]);\\ncnv[i] = dp3 * dp3;\\n}\\ngl_FragColor = vec4(vec3(0.5 * sqrt(cnv[0] * cnv[0] + cnv[1] * cnv[1])), texture2D(u_colorTexture, v_uv).a);\\n}\"}},\"edge-enhance\":{\"edge-enhance.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nvarying vec2 v_uv;\\nuniform vec2 u_texSize;\\nvec2 texel = vec2(1.0 / u_texSize.x, 1.0 / u_texSize.y);\\nmat3 G[2];\\nconst mat3 g0 = mat3( 1.0, 0.0, -1.0, 1.0, 0.0, -1.0, 1.0, 0.0, -1.0 );\\nconst mat3 g1 = mat3( 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, -1.0, -1.0, -1.0 );\\nvoid main() {\\nmat3 I;\\nfloat cnv[2];\\nvec3 sample;\\nG[0] = g0;\\nG[1] = g1;\\nfor (float i = 0.0; i < 3.0; i++) {\\nfor (float j = 0.0; j < 3.0; j++) {\\nsample = texture2D( u_colorTexture, v_uv + texel * vec2(i-1.0,j-1.0) ).rgb;\\nI[int(i)][int(j)] = length(sample);\\n}\\n}\\nfor (int i = 0; i < 2; i++) {\\nfloat dp3 = dot(G[i][0], I[0]) + dot(G[i][1], I[1]) + dot(G[i][2], I[2]);\\ncnv[i] = dp3 * dp3;\\n}\\nvec4 color = texture2D(u_colorTexture, v_uv);\\ngl_FragColor = vec4(0.5 * sqrt(cnv[0] * cnv[0] + cnv[1] * cnv[1]) * color);\\n}\"},filterEffect:{\"filterEffect.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform mat4 u_coefficients;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 color = texture2D(u_colorTexture, v_uv);\\nvec4 rgbw = u_coefficients * vec4(color.a > 0.0 ? color.rgb / color.a : vec3(0.0), 1.0);\\nfloat a = color.a;\\ngl_FragColor = vec4(a * rgbw.rgb, a);\\n}\"},pp:{\"pp.vert\":\"precision mediump float;\\nattribute vec2 a_position;\\nvarying vec2 v_uv;\\nvoid main() {\\ngl_Position = vec4(a_position, 0.0, 1.0);\\nv_uv = (a_position + 1.0) / 2.0;\\n}\"}},raster:{bitmap:{\"bitmap.frag\":\"precision mediump float;\\nvarying highp vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform highp vec2 u_coordScale;\\nuniform lowp float u_opacity;\\n#include \\nvoid main() {\\n#ifdef BICUBIC\\nvec4 color = sampleBicubicBSpline(u_texture, v_texcoord, u_coordScale);\\n#else\\nvec4 color = texture2D(u_texture, v_texcoord);\\n#endif\\nfloat alpha = u_opacity * color.a;\\ngl_FragColor = vec4(alpha * color.rgb, alpha);\\n}\",\"bitmap.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos;\\ngl_Position = vec4(u_dvsMat3 * vec3(a_pos * u_coordScale, 1.0), 1.0);\\n}\"},common:{\"common.glsl\":\"uniform sampler2D u_image;\\nuniform int u_bandCount;\\nuniform bool u_isFloatTexture;\\nuniform bool u_flipY;\\nuniform float u_opacity;\\nuniform int u_resampling;\\nuniform vec2 u_srcImageSize;\\n#ifdef APPLY_PROJECTION\\n#include \\n#endif\\n#ifdef BICUBIC\\n#include \\n#endif\\n#ifdef BILINEAR\\n#include \\n#endif\\nvec2 getPixelLocation(vec2 coords) {\\nvec2 targetLocation = u_flipY ? vec2(coords.s, 1.0 - coords.t) : coords;\\n#ifdef APPLY_PROJECTION\\ntargetLocation = projectPixelLocation(targetLocation);\\n#endif\\nreturn targetLocation;\\n}\\nbool isOutside(vec2 coords){\\nif (coords.t>1.00001 ||coords.t<-0.00001 || coords.s>1.00001 ||coords.s<-0.00001) {\\nreturn true;\\n} else {\\nreturn false;\\n}\\n}\\nvec4 getPixel(vec2 pixelLocation) {\\n#ifdef BICUBIC\\nvec4 color = sampleBicubicBSpline(u_image, pixelLocation, u_srcImageSize);\\n#elif defined(BILINEAR)\\nvec4 color = sampleBilinear(u_image, pixelLocation, u_srcImageSize);\\n#else\\nvec4 color = texture2D(u_image, pixelLocation);\\n#endif\\nreturn color;\\n}\",\"contrastBrightness.glsl\":\"uniform float u_contrastOffset;\\nuniform float u_brightnessOffset;\\nvec4 adjustContrastBrightness(vec4 currentPixel, bool isFloat) {\\nvec4 pixelValue = isFloat ? currentPixel * 255.0 : currentPixel;\\nfloat maxI = 255.0;\\nfloat mid = 128.0;\\nfloat c = u_contrastOffset;\\nfloat b = u_brightnessOffset;\\nvec4 v;\\nif (c > 0.0 && c < 100.0) {\\nv = (200.0 * pixelValue - 100.0 * maxI + 2.0 * maxI * b) / (2.0 * (100.0 - c)) + mid;\\n} else if (c <= 0.0 && c > -100.0) {\\nv = (200.0 * pixelValue - 100.0 * maxI + 2.0 * maxI * b) * (100.0 + c) / 20000.0 + mid;\\n} else if (c == 100.0) {\\nv = (200.0 * pixelValue - 100.0 * maxI + (maxI + 1.0) * (100.0 - c) + 2.0 * maxI * b);\\nv = (sign(v) + 1.0) / 2.0;\\n} else if (c == -100.0) {\\nv = vec4(mid, mid, mid, currentPixel.a);\\n}\\nreturn vec4(v.r / 255.0, v.g / 255.0, v.b / 255.0, currentPixel.a);\\n}\",\"projection.glsl\":\"uniform sampler2D u_transformGrid;\\nuniform vec2 u_transformSpacing;\\nuniform vec2 u_transformGridSize;\\nuniform vec2 u_targetImageSize;\\nvec2 projectPixelLocation(vec2 coords) {\\nvec2 index_image = floor(coords * u_targetImageSize);\\nvec2 oneTransformPixel = vec2(0.25 / u_transformGridSize.s, 1.0 / u_transformGridSize.t);\\nvec2 index_transform = floor(index_image / u_transformSpacing) / u_transformGridSize;\\nvec2 pos = fract((index_image + vec2(0.5, 0.5)) / u_transformSpacing);\\nvec2 srcLocation;\\nvec2 transform_location = index_transform + oneTransformPixel * 0.5;\\nif (pos.s <= pos.t) {\\nvec4 ll_abc = texture2D(u_transformGrid, vec2(transform_location.s, transform_location.t));\\nvec4 ll_def = texture2D(u_transformGrid, vec2(transform_location.s + oneTransformPixel.s, transform_location.t));\\nsrcLocation.s = dot(ll_abc.rgb, vec3(pos, 1.0));\\nsrcLocation.t = dot(ll_def.rgb, vec3(pos, 1.0));\\n} else {\\nvec4 ur_abc = texture2D(u_transformGrid, vec2(transform_location.s + 2.0 * oneTransformPixel.s, transform_location.t));\\nvec4 ur_def = texture2D(u_transformGrid, vec2(transform_location.s + 3.0 * oneTransformPixel.s, transform_location.t));\\nsrcLocation.s = dot(ur_abc.rgb, vec3(pos, 1.0));\\nsrcLocation.t = dot(ur_def.rgb, vec3(pos, 1.0));\\n}\\nreturn srcLocation;\\n}\"},hillshade:{\"hillshade.frag\":\"precision mediump float;\\nvarying highp vec2 v_texcoord;\\n#include \\nuniform int u_hillshadeType;\\nuniform float u_sinZcosAs[6];\\nuniform float u_sinZsinAs[6];\\nuniform float u_cosZs[6];\\nuniform float u_weights[6];\\nuniform vec2 u_factor;\\nuniform float u_minValue;\\nuniform float u_maxValue;\\n#include \\nfloat getNeighborHoodAlpha(float a, float b, float c, float d, float e, float f, float g, float h, float i){\\nif (a == 0.0 || a == 0.0 || a==0.0 || a == 0.0 || a == 0.0 || a==0.0 || a == 0.0 || a == 0.0 || a==0.0) {\\nreturn 0.0;\\n}\\nelse {\\nreturn e;\\n}\\n}\\nvec3 rgb2hsv(vec3 c) {\\nvec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);\\nvec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);\\nvec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);\\nfloat d = q.x - min(q.w, q.y);\\nfloat e = 1.0e-10;\\nreturn vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), min(d / (q.x + e), 1.0), q.x);\\n}\\nvec3 hsv2rgb(vec3 c) {\\nvec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\\nvec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\\nreturn c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\\n}\\nvec4 overlay(float val, float minValue, float maxValue, float hillshade) {\\nval = clamp((val - minValue) / (maxValue - minValue), 0.0, 1.0);\\nvec4 rgb = colorize(vec4(val, val, val, 1.0), 255.0);\\nvec3 hsv = rgb2hsv(rgb.xyz);\\nhsv.z = hillshade;\\nreturn vec4(hsv2rgb(hsv), 1.0) * rgb.a;\\n}\\nvoid main() {\\nvec2 pixelLocation = getPixelLocation(v_texcoord);\\nif (isOutside(pixelLocation)) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\\nreturn;\\n}\\nvec4 currentPixel = getPixel(pixelLocation);\\nif (currentPixel.a == 0.0) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\\nreturn;\\n}\\nvec2 axy = vec2(-1.0, -1.0);\\nvec2 bxy = vec2(0.0, -1.0);\\nvec2 cxy = vec2(1.0, -1.0);\\nvec2 dxy = vec2(-1.0, 0.0);\\nvec2 fxy = vec2(1.0, 0.0);\\nvec2 gxy = vec2(-1.0, 1.0);\\nvec2 hxy = vec2(0.0, 1.0);\\nvec2 ixy = vec2(1.0, 1.0);\\nvec2 onePixel = 1.0 / u_srcImageSize;\\nif (pixelLocation.s < onePixel.s) {\\naxy[0] = 1.0;\\ndxy[0] = 1.0;\\ngxy[0] = 1.0;\\n}\\nif (pixelLocation.t < onePixel.t) {\\naxy[1] = 1.0;\\nbxy[1] = 1.0;\\ncxy[1] = 1.0;\\n}\\nif (pixelLocation.s > 1.0 - onePixel.s) {\\ncxy[0] = -1.0;\\nfxy[0] = -1.0;\\nixy[0] = -1.0;\\n}\\nif (pixelLocation.t > 1.0 - onePixel.t) {\\ngxy[1] = -1.0;\\nhxy[1] = -1.0;\\nixy[1] = -1.0;\\n}\\nvec4 va = texture2D(u_image, pixelLocation + onePixel * axy);\\nvec4 vb = texture2D(u_image, pixelLocation + onePixel * bxy);\\nvec4 vc = texture2D(u_image, pixelLocation + onePixel * cxy);\\nvec4 vd = texture2D(u_image, pixelLocation + onePixel * dxy);\\nvec4 ve = texture2D(u_image, pixelLocation);\\nvec4 vf = texture2D(u_image, pixelLocation + onePixel * fxy);\\nvec4 vg = texture2D(u_image, pixelLocation + onePixel * gxy);\\nvec4 vh = texture2D(u_image, pixelLocation + onePixel * hxy);\\nvec4 vi = texture2D(u_image, pixelLocation + onePixel * ixy);\\nfloat dzx = (vc + 2.0 * vf + vi - va - 2.0 * vd - vg).r * u_factor.s;\\nfloat dzy = (vg + 2.0 * vh + vi - va - 2.0 * vb - vc).r * u_factor.t;\\nfloat dzd = sqrt(1.0 + dzx * dzx + dzy * dzy);\\nfloat hillshade = 0.0;\\nif (u_hillshadeType == 0){\\nfloat cosDelta = u_sinZsinAs[0] * dzy - u_sinZcosAs[0] * dzx;\\nfloat z = (u_cosZs[0] + cosDelta) / dzd;\\nif (z < 0.0) z = 0.0;\\nhillshade = z;\\n} else {\\nfor (int k = 0; k < 6; k++) {\\nfloat cosDelta = u_sinZsinAs[k] * dzy - u_sinZcosAs[k] * dzx;\\nfloat z = (u_cosZs[k] + cosDelta) / dzd;\\nif (z < 0.0) z = 0.0;\\nhillshade = hillshade + z * u_weights[k];\\nif (k == 5) break;\\n}\\n}\\nfloat alpha = getNeighborHoodAlpha(va.a, vb.a, vc.a, vd.a, ve.a, vf.a, vg.a, vh.a, vi.a);\\n#ifdef APPLY_COLORMAP\\ngl_FragColor = overlay(ve.r, u_minValue, u_maxValue, hillshade) * alpha * u_opacity;\\n#else\\ngl_FragColor = vec4(hillshade, hillshade, hillshade, 1.0) * alpha * u_opacity;\\n#endif\\n}\",\"hillshade.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos;\\ngl_Position = vec4(u_dvsMat3 * vec3(a_pos * u_coordScale, 1.0), 1.0);\\n}\"},lut:{\"colorize.glsl\":\"uniform sampler2D u_colormap;\\nuniform float u_colormapOffset;\\nuniform float u_colormapMaxIndex;\\nvec4 colorize(vec4 currentPixel, float scaleFactor) {\\nfloat clrIndex = clamp(currentPixel.r * scaleFactor - u_colormapOffset, 0.0, u_colormapMaxIndex);\\nvec2 clrPosition = vec2((clrIndex + 0.5) / (u_colormapMaxIndex + 1.0), 0.0);\\nvec4 color = texture2D(u_colormap, clrPosition);\\nvec4 result = vec4(color.rgb, color.a * currentPixel.a);\\nreturn result;\\n}\",\"lut.frag\":\"precision mediump float;\\nvarying highp vec2 v_texcoord;\\n#include \\n#include \\nvoid main() {\\nvec2 pixelLocation = getPixelLocation(v_texcoord);\\nif (isOutside(pixelLocation)) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\\nreturn;\\n}\\nvec4 currentPixel = getPixel(pixelLocation);\\nvec4 result = colorize(currentPixel, 1.0);\\ngl_FragColor = vec4(result.xyz, 1.0) * result.a * u_opacity;\\n}\",\"lut.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nuniform highp float u_scale;\\nuniform highp vec2 u_offset;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos * u_scale + u_offset;\\ngl_Position = vec4(u_dvsMat3 * vec3(a_pos * u_coordScale, 1.0), 1.0);\\n}\"},magdir:{\"magdir.frag\":\"precision mediump float;\\nvarying vec4 v_color;\\nuniform lowp float u_opacity;\\nvoid main() {\\ngl_FragColor = v_color * u_opacity;\\n}\",\"magdir.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nattribute vec2 a_offset;\\nattribute vec2 a_vv;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nuniform vec2 u_symbolSize;\\nuniform vec2 u_symbolPercentRange;\\nuniform vec2 u_dataRange;\\nuniform float u_rotation;\\nuniform vec4 u_colors[12];\\nvarying vec4 v_color;\\nvoid main()\\n{\\nfloat angle = a_offset.y + u_rotation;\\n#ifdef ROTATION_GEOGRAPHIC\\nangle = 3.14159265359 * 2.0 - angle - 3.14159265359 / 2.0;\\n#endif\\nvec2 offset = vec2(cos(angle), sin(angle)) * a_offset.x;\\n#ifdef DATA_RANGE\\nfloat valuePercentage = clamp((a_vv.y - u_dataRange.x) / (u_dataRange.y - u_dataRange.x), 0.0, 1.0);\\nfloat sizeRatio = u_symbolPercentRange.x + valuePercentage * (u_symbolPercentRange.y - u_symbolPercentRange.x);\\nfloat sizePercentage = clamp(sizeRatio, u_symbolPercentRange.x, u_symbolPercentRange.y);\\n#else\\nfloat sizePercentage = (u_symbolPercentRange.x + u_symbolPercentRange.y) / 2.0;\\n#endif\\nvec2 pos = a_pos + offset * sizePercentage * u_symbolSize;\\nv_color = u_colors[int(a_vv.x)];\\ngl_Position = vec4(u_dvsMat3 * vec3(pos * u_coordScale, 1.0), 1.0);\\n}\"},reproject:{\"reproject.frag\":\"precision mediump float;\\nvarying vec2 v_texcoord;\\n#include \\nvoid main() {\\nvec2 pixelLocation = getPixelLocation(v_texcoord);\\nif (isOutside(pixelLocation)) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\\nreturn;\\n}\\nvec4 currentPixel = getPixel(pixelLocation);\\ngl_FragColor = vec4(currentPixel.rgb, 1.0) * currentPixel.a * u_opacity;\\n}\",\"reproject.vert\":\"precision mediump float;\\nattribute vec2 a_position;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_position;\\ngl_Position = vec4(2.0 * (a_position - 0.5), 0.0, 1.0);\\n}\"},scalar:{\"scalar.frag\":\"precision mediump float;\\nuniform lowp float u_opacity;\\nvarying vec2 v_pos;\\nconst vec4 outlineColor = vec4(0.2, 0.2, 0.2, 1.0);\\nconst float outlineSize = 0.02;\\nconst float innerRadius = 0.25;\\nconst float outerRadius = 0.42;\\nconst float innerSquareLength = 0.15;\\nvoid main() {\\nmediump float dist = length(v_pos);\\nmediump float fillalpha1 = smoothstep(outerRadius, outerRadius + outlineSize, dist);\\nfillalpha1 *= (1.0-smoothstep(outerRadius + outlineSize, outerRadius + 0.1 + outlineSize, dist));\\n#ifdef INNER_CIRCLE\\nmediump float fillalpha2 = smoothstep(innerRadius, innerRadius + outlineSize, dist);\\nfillalpha2 *= (1.0-smoothstep(innerRadius + outlineSize, innerRadius + 0.1 + outlineSize, dist));\\n#else\\nmediump float fillalpha2 = (abs(v_pos.x) < innerSquareLength ? 1.0 : 0.0) * (abs(v_pos.y) < innerSquareLength ? 1.0 : 0.0);\\n#endif\\ngl_FragColor = (fillalpha2 + fillalpha1) * outlineColor * u_opacity;\\n}\",\"scalar.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nattribute vec2 a_offset;\\nattribute vec2 a_vv;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nuniform vec2 u_symbolSize;\\nuniform vec2 u_symbolPercentRange;\\nuniform vec2 u_dataRange;\\nvarying vec2 v_pos;\\nvoid main()\\n{\\n#ifdef DATA_RANGE\\nfloat valuePercentage = clamp((a_vv.y - u_dataRange.x) / (u_dataRange.y - u_dataRange.x), 0.0, 1.0);\\nfloat sizeRatio = u_symbolPercentRange.x + valuePercentage * (u_symbolPercentRange.y - u_symbolPercentRange.x);\\nfloat sizePercentage = clamp(sizeRatio, u_symbolPercentRange.x, u_symbolPercentRange.y);\\n#else\\nfloat sizePercentage = (u_symbolPercentRange.x + u_symbolPercentRange.y) / 2.0;\\n#endif\\nvec2 size = u_symbolSize * sizePercentage;\\nvec2 pos = a_pos + a_offset * size;\\nv_pos = a_offset;\\ngl_Position = vec4(u_dvsMat3 * vec3(pos * u_coordScale, 1.0), 1.0);\\n}\"},stretch:{\"stretch.frag\":\"precision mediump float;\\nvarying highp vec2 v_texcoord;\\n#include \\nuniform float u_minCutOff[3];\\nuniform float u_maxCutOff[3];\\nuniform float u_minOutput;\\nuniform float u_maxOutput;\\nuniform float u_factor[3];\\nuniform bool u_useGamma;\\nuniform float u_gamma[3];\\nuniform float u_gammaCorrection[3];\\n#include \\nfloat stretchOneValue(float val, float minCutOff, float maxCutOff, float minOutput, float maxOutput, float factor, bool useGamma, float gamma, float gammaCorrection) {\\nif (val >= maxCutOff) {\\nreturn maxOutput;\\n} else if (val <= minCutOff) {\\nreturn minOutput;\\n}\\nfloat stretchedVal;\\nif (useGamma) {\\nfloat tempf = 1.0;\\nfloat outRange = maxOutput - minOutput;\\nfloat relativeVal = (val - minCutOff) / (maxCutOff - minCutOff);\\nif (gamma > 1.0) {\\ntempf -= pow(1.0 / outRange, relativeVal * gammaCorrection);\\n}\\nstretchedVal = (tempf * outRange * pow(relativeVal, 1.0 / gamma) + minOutput) / 255.0;\\n} else {\\nstretchedVal = minOutput + (val - minCutOff) * factor;\\n}\\nreturn stretchedVal;\\n}\\nvoid main() {\\nvec2 pixelLocation = getPixelLocation(v_texcoord);\\nif (isOutside(pixelLocation)) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\\nreturn;\\n}\\nvec4 currentPixel = getPixel(pixelLocation);\\n#ifdef NOOP\\ngl_FragColor = vec4(currentPixel.rgb, 1.0) * currentPixel.a * u_opacity;\\nreturn;\\n#endif\\nif (u_bandCount == 1) {\\nfloat grayVal = stretchOneValue(currentPixel.r, u_minCutOff[0], u_maxCutOff[0], u_minOutput, u_maxOutput, u_factor[0], u_useGamma, u_gamma[0], u_gammaCorrection[0]);\\n#ifdef APPLY_COLORMAP\\nvec4 result = colorize(vec4(grayVal, grayVal, grayVal, 1.0), u_useGamma ? 255.0 : 1.0);\\ngl_FragColor = vec4(result.xyz, 1.0) * result.a * currentPixel.a * u_opacity;\\n#else\\ngl_FragColor = vec4(grayVal, grayVal, grayVal, 1.0) * currentPixel.a * u_opacity;\\n#endif\\n} else {\\nfloat redVal = stretchOneValue(currentPixel.r, u_minCutOff[0], u_maxCutOff[0], u_minOutput, u_maxOutput, u_factor[0], u_useGamma, u_gamma[0], u_gammaCorrection[0]);\\nfloat greenVal = stretchOneValue(currentPixel.g, u_minCutOff[1], u_maxCutOff[1], u_minOutput, u_maxOutput, u_factor[1], u_useGamma, u_gamma[1], u_gammaCorrection[1]);\\nfloat blueVal = stretchOneValue(currentPixel.b, u_minCutOff[2], u_maxCutOff[2], u_minOutput, u_maxOutput, u_factor[2], u_useGamma, u_gamma[2], u_gammaCorrection[2]);\\ngl_FragColor = vec4(redVal, greenVal, blueVal, 1.0) * currentPixel.a * u_opacity;\\n}\\n}\",\"stretch.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nuniform highp float u_scale;\\nuniform highp vec2 u_offset;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos * u_scale + u_offset;\\ngl_Position = vec4(u_dvsMat3 * vec3(a_pos * u_coordScale, 1.0), 1.0);\\n}\"}},stencil:{\"stencil.frag\":\"void main() {\\ngl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);\\n}\",\"stencil.vert\":\"attribute vec2 a_pos;\\nvoid main() {\\ngl_Position = vec4(a_pos, 0.0, 1.0);\\n}\"},tileInfo:{\"tileInfo.frag\":\"uniform mediump sampler2D u_texture;\\nvarying mediump vec2 v_tex;\\nvoid main(void) {\\nlowp vec4 color = texture2D(u_texture, v_tex);\\ngl_FragColor = 0.75 * color;\\n}\",\"tileInfo.vert\":\"attribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform mediump float u_depth;\\nuniform mediump vec2 u_coord_ratio;\\nuniform mediump vec2 u_delta;\\nuniform mediump vec2 u_dimensions;\\nvarying mediump vec2 v_tex;\\nvoid main() {\\nmediump vec2 offset = u_coord_ratio * vec2(u_delta + a_pos * u_dimensions);\\nvec3 v_pos = u_dvsMat3 * vec3(offset, 1.0);\\ngl_Position = vec4(v_pos.xy, 0.0, 1.0);\\nv_tex = a_pos;\\n}\"},util:{\"encoding.glsl\":\"const vec4 rgba2float_factors = vec4(\\n255.0 / (256.0),\\n255.0 / (256.0 * 256.0),\\n255.0 / (256.0 * 256.0 * 256.0),\\n255.0 / (256.0 * 256.0 * 256.0 * 256.0)\\n);\\nfloat rgba2float(vec4 rgba) {\\nreturn dot(rgba, rgba2float_factors);\\n}\"}};export{e as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport\"../../../../../webgl/BufferObject.js\";import\"../../../../../webgl/FramebufferObject.js\";import\"../../../../../../core/has.js\";import\"../../../../../webgl/checkWebGLError.js\";import\"../../../../../webgl/enums.js\";import\"../../../../../../chunks/builtins.js\";import\"../../../../../webgl/renderState.js\";import\"../../../../../webgl/Texture.js\";import e from\"../../../../../webgl/ShaderCompiler.js\";import\"../../../../../webgl/VertexArrayObject.js\";import r from\"./shaderRepository.js\";function t(e){let t=r;return e.split(\"/\").forEach((e=>{t&&(t=t[e])})),t}const o=new e(t);function s(e){return o.resolveIncludes(e)}export{s as resolveIncludes};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport e from\"./FramebufferObject.js\";import t from\"./Texture.js\";function n(e,n,a=\"nearest\",i=!1){var r;const o=!(i&&\"u8\"===n.pixelType),s=o?5126:5121,u=null==n.pixels||0===n.pixels.length?null:o?n.getAsRGBAFloat():n.getAsRGBA(),l=null==(r=e.capabilities.textureFloat)?void 0:r.textureFloatLinear,f={width:n.width,height:n.height,target:3553,pixelFormat:6408,internalFormat:\"webgl2\"===e.webglVersion&&o?34836:6408,samplingMode:!l||\"bilinear\"!==a&&\"cubic\"!==a?9728:9729,dataType:s,wrapMode:33071,flipped:!1};return new t(e,f,u)}function a(n,a,i,r){const o=new t(n,{width:a,height:i,target:3553,pixelFormat:6408,internalFormat:6408,samplingMode:9728,dataType:r?5121:5126,wrapMode:33071,flipped:!1});return new e(n,{colorTarget:0,depthStencilTarget:3,width:a,height:i},o)}function i(e,n){const a=4*n.size[0],i=n.size[1],r={width:a,height:i,target:3553,pixelFormat:6408,internalFormat:\"webgl2\"===e.webglVersion?34836:6408,dataType:5126,samplingMode:9728,wrapMode:33071,flipped:!1},o=new Float32Array(a*i*4);let s=0;for(let t=0;t{const i=t.get(a)||t.get(a+\"[0]\");i&&p(e,a,n[a],i)}))}function g(e,t,n,a){n.length===a.length&&(a.some((e=>null==e))||n.some((e=>null==e))||n.forEach(((n,i)=>{t.setUniform1i(n,i),e.bindTexture(a[i],i)})))}function p(e,t,n,a){if(null===a||null==n)return!1;const{info:i}=a;switch(i.type){case 5126:i.size>1?e.setUniform1fv(t,n):e.setUniform1f(t,n);break;case 35664:e.setUniform2fv(t,n);break;case 35665:e.setUniform3fv(t,n);break;case 35666:e.setUniform4fv(t,n);break;case 35675:e.setUniformMatrix3fv(t,n);break;case 35676:e.setUniformMatrix4fv(t,n);break;case 5124:i.size>1?e.setUniform1iv(t,n):e.setUniform1i(t,n);break;case 35670:e.setUniform1i(t,n?1:0);break;case 35667:case 35671:e.setUniform2iv(t,n);break;case 35668:case 35672:e.setUniform3iv(t,n);break;case 35669:case 35673:e.setUniform4iv(t,n);break;default:return!1}return!0}export{r as createColormapTexture,a as createFrameBuffer,n as createRasterTexture,i as createTransformTexture,u as getBasicGridUniforms,s as getColormapUniforms,o as getCommonUniforms,f as getShadedReliefUniforms,l as getStretchUniforms,m as getUniformLocationInfos,g as setTextures,c as setUniforms};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isNone as e}from\"../../../../../../core/maybe.js\";import a from\"../WGLBrush.js\";const t=new Float32Array([.27058823529411763,.4588235294117647,.7098039215686275,1,.396078431372549,.5372549019607843,.7215686274509804,1,.5176470588235295,.6196078431372549,.7294117647058823,1,.6352941176470588,.7058823529411765,.7411764705882353,1,.7529411764705882,.8,.7450980392156863,1,.8705882352941177,.8901960784313725,.7490196078431373,1,1,1,.7490196078431373,1,1,.8627450980392157,.6313725490196078,1,.9803921568627451,.7254901960784313,.5176470588235295,1,.9607843137254902,.596078431372549,.4117647058823529,1,.9294117647058824,.4588235294117647,.3176470588235294,1,.9098039215686274,.08235294117647059,.08235294117647059,1]),r={beaufort_ft:t,beaufort_m:t,beaufort_km:t,beaufort_mi:t,beaufort_kn:new Float32Array([.1568627450980392,.5725490196078431,.7803921568627451,1,.34901960784313724,.6352941176470588,.7294117647058823,1,.5058823529411764,.7019607843137254,.6705882352941176,1,.6274509803921569,.7607843137254902,.6078431372549019,1,.7490196078431373,.8313725490196079,.5411764705882353,1,.8549019607843137,.9019607843137255,.4666666666666667,1,.9803921568627451,.9803921568627451,.39215686274509803,1,.9882352941176471,.8352941176470589,.3254901960784314,1,.9882352941176471,.7019607843137254,.4,1,.9803921568627451,.5529411764705883,.20392156862745098,1,.9686274509803922,.43137254901960786,.16470588235294117,1,.9411764705882353,.2784313725490196,.11372549019607843,1]),classified_arrow:new Float32Array([.2196078431372549,.6588235294117647,0,1,.5450980392156862,1.2117647058823529,0,1,1,1,0,1,1,.5019607843137255,0,1,1,0,0,1]),ocean_current_m:new Float32Array([.3058823529411765,.10196078431372549,.6,1,.7019607843137254,.10588235294117647,.10196078431372549,1,.792156862745098,.5019607843137255,.10196078431372549,1,.6941176470588235,.6941176470588235,.6941176470588235,1]),ocean_current_kn:new Float32Array([0,0,0,1,0,.1450980392156863,.39215686274509803,1,.3058823529411765,.10196078431372549,.6,1,.592156862745098,0,.39215686274509803,1,.7019607843137254,.10588235294117647,.10196078431372549,1,.6941176470588235,.3058823529411765,.10196078431372549,1,.792156862745098,.5019607843137255,.10196078431372549,1,.6941176470588235,.7019607843137254,.20392156862745098,1,.6941176470588235,.6941176470588235,.6941176470588235,1]),single_arrow:new Float32Array([0,92/255,230/255,1]),wind_speed:new Float32Array([0,0,0,1])};class s extends a{constructor(){super(...arguments),this._desc={magdir:{vsPath:\"raster/magdir\",fsPath:\"raster/magdir\",attributes:new Map([[\"a_pos\",0],[\"a_offset\",1],[\"a_vv\",2]])},scalar:{vsPath:\"raster/scalar\",fsPath:\"raster/scalar\",attributes:new Map([[\"a_pos\",0],[\"a_offset\",1],[\"a_vv\",2]])}}}dispose(){}prepareState({context:e},a){e.setBlendingEnabled(!0),e.setBlendFunctionSeparate(1,771,1,771),e.setColorMask(!0,!0,!0,!0),e.setStencilWriteMask(0),e.setStencilTestEnabled(!0),e.setStencilOp(7680,7680,7681),e.setStencilFunction(514,a.stencilRef,255)}draw(a,t){if(e(t.source)||0===t.source.validPixelCount)return;const{timeline:r}=a;if(r.begin(this.name),t.updateVectorFieldVAO(a),\"scalar\"===a.renderPass){const e=t.vaoData.scalar;e&&this._drawScalars(a,t,e.vao,e.elementCount)}else{const e=t.vaoData.magdir;e&&this._drawTriangles(a,t,e.vao,e.elementCount)}r.end(this.name)}_drawTriangles(e,a,t,s){const{context:o,painter:n}=e,{symbolizerParameters:i}=a,c=i.dataRange?[\"dataRange\"]:[];\"geographic\"===i.rotationType&&c.push(\"rotationGeographic\");const l=n.materialManager.getProgram(e,this._desc.magdir,c);o.useProgram(l);const{coordScale:m,opacity:d,transforms:f}=a;l.setUniform2fv(\"u_coordScale\",m),l.setUniform1f(\"u_opacity\",d),l.setUniformMatrix3fv(\"u_dvsMat3\",f.dvs);const{style:u,dataRange:_,rotation:g,symbolPercentRange:p}=i;l.setUniform4fv(\"u_colors\",r[u]||r.single_arrow),l.setUniform2fv(\"u_dataRange\",_),l.setUniform1f(\"u_rotation\",g),l.setUniform2fv(\"u_symbolPercentRange\",p);const y=this._getSymbolSize(e,a);l.setUniform2fv(\"u_symbolSize\",y),o.bindVAO(t),o.drawElements(4,s,5125,0)}_drawScalars(e,a,t,r){const{context:s,painter:o}=e,{symbolizerParameters:n}=a,i=[];\"wind_speed\"===n.style?i.push(\"innerCircle\"):n.dataRange&&i.push(\"dataRange\"),\"geographic\"===n.rotationType&&i.push(\"rotationGeographic\");const c=o.materialManager.getProgram(e,this._desc.scalar,i);s.useProgram(c);const{coordScale:l,opacity:m,transforms:d}=a;c.setUniform2fv(\"u_coordScale\",l),c.setUniform1f(\"u_opacity\",m),c.setUniformMatrix3fv(\"u_dvsMat3\",d.dvs);const{dataRange:f,symbolPercentRange:u}=n;c.setUniform2fv(\"u_dataRange\",f),c.setUniform2fv(\"u_symbolPercentRange\",u);const _=this._getSymbolSize(e,a);c.setUniform2fv(\"u_symbolSize\",_),s.bindVAO(t),s.drawElements(4,r,5125,0)}_getSymbolSize(e,a){const t=2**(e.displayLevel-a.key.level),{symbolTileSize:r}=a.symbolizerParameters;return[r/(Math.round((a.width-a.offset[0])/r)*r)/t,r/(Math.round((a.height-a.offset[1])/r)*r)/t]}}export{s as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{Program as e}from\"./Program.js\";function n(e){let n=\"\";for(const t in e){const o=e[t];if(\"boolean\"==typeof o)o&&(n+=`#define ${t}\\n`);else if(\"number\"==typeof o)n+=`#define ${t} ${o.toFixed()}\\n`;else if(\"object\"==typeof o){const e=o.options;let r=0;for(const t in e)n+=`#define ${e[t]} ${(r++).toFixed()}\\n`;n+=`#define ${t} ${e[o.value]}\\n`}}return n}function t(n,t,o,r){o=o||{},r=r||\"\";const f=\"function\"==typeof t.shaders?t.shaders(o):t.shaders;return new e(n,r+f.vertexShader,r+f.fragmentShader,t.attributes)}export{t as createProgram,n as glslifyDefineMap};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nconst o=!0,t=32,c=1.5,e=200;export{t as COLLISION_GRID_CELL_SIZE,c as DECLUTTER_BUDGET,o as DECLUTTER_TILES,e as FADE_DURATION};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{f as r}from\"../../../../../chunks/vec4f32.js\";import t from\"../../../../webgl/BufferObject.js\";import\"../../../../webgl/FramebufferObject.js\";import\"../../../../../core/has.js\";import\"../../../../webgl/checkWebGLError.js\";import\"../../../../webgl/enums.js\";import\"../../../../../chunks/builtins.js\";import{createProgram as e}from\"../../../../webgl/programUtils.js\";import\"../../../../webgl/renderState.js\";import\"../../../../webgl/Texture.js\";import s from\"../../../../webgl/VertexArrayObject.js\";import i from\"./WGLBrush.js\";import{background as o}from\"../shaders/BackgroundPrograms.js\";class a extends i{constructor(){super(...arguments),this._color=r(1,0,0,1),this._initialized=!1}dispose(){this._solidProgram&&(this._solidProgram.dispose(),this._solidProgram=null),this._solidVertexArrayObject&&(this._solidVertexArrayObject.dispose(),this._solidVertexArrayObject=null)}prepareState({context:r},t){r.setDepthWriteEnabled(!1),r.setDepthTestEnabled(!1),r.setStencilTestEnabled(!0),r.setBlendingEnabled(!1),r.setColorMask(!1,!1,!1,!1),r.setStencilOp(7680,7680,7681),r.setStencilWriteMask(255),r.setStencilFunctionSeparate(1032,516,t.stencilRef,255)}draw(r,t){const{context:e}=r;this._initialized||this._initialize(e),e.bindVAO(this._solidVertexArrayObject),e.useProgram(this._solidProgram),this._solidProgram.setUniformMatrix3fv(\"u_dvsMat3\",t.transforms.dvs),this._solidProgram.setUniform2fv(\"u_coord_range\",[t.rangeX,t.rangeY]),this._solidProgram.setUniform1f(\"u_depth\",0),this._solidProgram.setUniform4fv(\"u_color\",this._color),e.drawArrays(5,0,4),e.bindVAO()}_initialize(r){if(this._initialized)return!0;const i=e(r,o);if(!i)return!1;const a={geometry:[{name:\"a_pos\",count:2,type:5120,offset:0,stride:2,normalized:!1,divisor:0}]},n=new Int8Array([0,0,1,0,0,1,1,1]),l=t.createVertex(r,35044,n),d=new s(r,o.attributes,a,{geometry:l});return this._solidProgram=i,this._solidVertexArrayObject=d,this._initialized=!0,!0}}export{a as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nclass a{constructor(){this.name=this.constructor.name||\"UnnamedBrush\"}prepareState(a,r,t){}draw(a,r,t){}drawMany(a,r,t){for(const s of r)this.draw(a,s,t)}}export{a as default};\n"],"sourceRoot":""}