{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/chunks/DefaultMaterial.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/quat.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js","webpack:///./node_modules/@arcgis/core/views/webgl/VertexArrayObject.js","webpack:///./node_modules/@arcgis/core/chunks/vec4f64.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/Util.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/ScreenSizePerspective.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/Offset.glsl.js","webpack:///./node_modules/@arcgis/core/views/webgl/renderState.js","webpack:///./node_modules/@arcgis/core/views/webgl/checkWebGLError.js","webpack:///./node_modules/@arcgis/core/support/requestImageUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js","webpack:///./node_modules/@arcgis/core/views/webgl/testSVGPremultipliedAlpha.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderModules/interfaces.js","webpack:///./node_modules/@arcgis/core/chunks/vec3f32.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/internals/Mat3.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/internals/Mat4.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/internals/Scalar.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/internals/Vec2.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/internals/Vec3.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/internals/Vec4.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/BufferView.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/AnalyticalSkyModel.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/WebGLDriverTest.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/DoublePrecision.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/collections/Component/Material/shader/DecodeSymbolColor.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/vec4.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/screenSizePerspectiveUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/materials/internal/MaterialUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/TextureAtlasLookup.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTextureCoordinates.glsl.js","webpack:///./node_modules/@arcgis/core/views/webgl/BufferObject.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/types.js","webpack:///./node_modules/@arcgis/core/views/webgl/Util.js","webpack:///./node_modules/@arcgis/core/views/webgl/reservedWordsGLSL3.js","webpack:///./node_modules/@arcgis/core/views/webgl/ShaderTranspiler.js","webpack:///./node_modules/@arcgis/core/views/webgl/Program.js","webpack:///./node_modules/@arcgis/core/views/webgl/Renderbuffer.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/math/common.js","webpack:///./node_modules/@arcgis/core/chunks/vec32.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/BoundingInfo.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/ContentObject.js","webpack:///./node_modules/@arcgis/core/core/ObjectStack.js","webpack:///./node_modules/@arcgis/core/core/VectorStack.js","webpack:///./node_modules/@arcgis/core/views/3d/support/stack.js","webpack:///./node_modules/@arcgis/core/chunks/lineSegment.js","webpack:///./node_modules/@arcgis/core/chunks/triangle.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/geometryDataUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/Geometry.js","webpack:///./node_modules/@arcgis/core/chunks/vector.js","webpack:///./node_modules/@arcgis/core/chunks/ray.js","webpack:///./node_modules/@arcgis/core/chunks/sphere.js","webpack:///./node_modules/@arcgis/core/chunks/plane.js","webpack:///./node_modules/@arcgis/core/chunks/boundedPlane.js","webpack:///./node_modules/@arcgis/core/chunks/axisAngle.js","webpack:///./node_modules/@arcgis/core/chunks/clipRay.js","webpack:///./node_modules/@arcgis/core/chunks/frustum.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/GeometryRecord.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/intersectorUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/DefaultTextureUnits.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/AutoDisposable.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/GLMaterial.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/GLMaterialTexture.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/Material.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/OrderIndependentTransparency.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderTechnique/ReloadableShaderModule.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderTechnique/ShaderTechnique.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderTechnique/ShaderTechniqueConfiguration.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/StencilUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/materials/DefaultMaterial.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/glUtil3D.js","webpack:///./node_modules/@arcgis/core/libs/basisu/BasisU.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/BasisUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/DDSUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/Texture.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/DefaultLoadingContext.js","webpack:///./node_modules/@arcgis/core/chunks/vec22.js","webpack:///./node_modules/@arcgis/core/chunks/vec33.js","webpack:///./node_modules/@arcgis/core/chunks/vec43.js","webpack:///./node_modules/@arcgis/core/chunks/mat32.js","webpack:///./node_modules/@arcgis/core/chunks/mat42.js","webpack:///./node_modules/@arcgis/core/chunks/scalar.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/utils.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/DefaultErrorContext.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/LoaderResult.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/BinaryStreamReader.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/fillDefaults.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/pathUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/Resource.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/loader.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/indexUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/graphics/wosrLoader.js","webpack:///./node_modules/@arcgis/core/chunks/vec42.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/graphics/objectResourceUtils.js","webpack:///./node_modules/@arcgis/core/chunks/mat4f32.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/doublePrecisionUtils.js","webpack:///./node_modules/@arcgis/core/chunks/builtins.js","webpack:///./node_modules/@arcgis/core/views/webgl/Texture.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/mat4f64.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/RealisticTree.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/quatf64.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/materials/renderers/utils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/DecodeNormal.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js","webpack:///./node_modules/@arcgis/core/views/webgl/capabilities/isWebGL2Context.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js","webpack:///./node_modules/@arcgis/core/views/webgl/FramebufferObject.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/HeaderComment.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/mat3f64.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientLighting.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateMainLighting.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/InterleavedLayout.js"],"names":["P","_","S","vertex","code","$","fragment","include","name","output","uniforms","add","varyings","linearDepth","normalType","offsetBackfaces","instancedColor","attributes","multipassTerrainEnabled","float","vertexTangets","hasColorTexture","textureAlphaPremultiplied","attributeColor","receiveShadows","pbrMode","viewingMode","hasNormalTexture","OITEnabled","Object","freeze","__proto__","build","x","t","A","s","a","n","Math","sin","cos","I","acos","o","r","c","e","u","i","h","b","y","E","sqrt","abs","z","M","f","l","m","p","q","j","L","PI","k","w","B","C","D","F","G","O","R","T","W","X","Y","Z","H","J","K","N","Q","U","V","tt","st","at","nt","ot","identity","setAxisAngle","getAxisAngle","multiply","rotateX","rotateY","rotateZ","calculateW","slerp","random","invert","conjugate","fromMat3","fromEuler","str","copy","set","mul","scale","dot","lerp","length","len","squaredLength","sqrLen","normalize","exactEquals","equals","rotationTo","sqlerp","setAxes","doubleSidedMode","extensions","attributeTextureCoordinates","supportsTextureAtlas","this","_context","_locations","_layout","_buffers","_indexBuffer","_glName","_initialized","instanceCounter","increment","keys","reduce","size","capabilities","vao","deleteVertexArray","getBoundVAO","bindVAO","dispose","decrement","createVertexArray","bindVertexArray","_bindLayout","initialize","glName","console","error","gl","bindBuffer","ELEMENT_ARRAY_BUFFER","_unbindLayout","unbindBuffer","bufferType","min","Float64Array","create","clone","fromValues","fromArray","createView","zeros","ones","unitX","unitY","unitZ","unitW","ZEROS","ONES","UNIT_X","UNIT_Y","UNIT_Z","UNIT_W","message","Error","stack","log","Uint8ClampedArray","verticalOffsetEnabled","screenSizePerspectiveEnabled","screenLength","perDistance","tan","minWorldLength","maxWorldLength","screenSizePerspective","screenSizePerspectiveAlignment","bindUniforms","verticalOffset","camera","fovY","fullViewport","pixelRatio","setUniform4f","srcRgb","srcAlpha","dstRgb","dstAlpha","opRgb","opAlpha","color","g","zNear","zFar","intern","d","makeKey","makeRef","interns","Map","has","get","join","v","__tag","face","mode","factor","units","func","function","ref","mask","operation","fail","zFail","zPass","blending","culling","polygonOffset","depthTest","stencilTest","depthWrite","colorWrite","stencilWrite","_pipelineInvalid","_blendingInvalid","_cullingInvalid","_polygonOffsetInvalid","_depthTestInvalid","_stencilTestInvalid","_depthWriteInvalid","_colorWriteInvalid","_stencilWriteInvalid","_stateSetters","_pipeline","setBlending","setCulling","setPolygonOffset","setDepthTest","setStencilTest","setDepthWrite","setColorWrite","setStencilWrite","_blending","setSubState","_culling","_polygonOffset","_depthTest","_stencilTest","_depthWrite","_colorWrite","_stencilWrite","getLogger","async","data","responseType","int","Image","src","width","height","decode","colorTarget","depthStencilTarget","target","wrapMode","pixelFormat","dataType","samplingMode","createVertex","Uint16Array","a_pos","geometry","count","type","offset","stride","normalized","bindProgram","preMultiplyAlpha","bindTexture","setUniform1i","getBoundFramebufferObject","getViewport","bindFramebuffer","setViewport","drawArrays","Uint8Array","readPixels","round","toString","toPrecision","Float32Array","TypedArrayConstructor","elementCount","BYTES_PER_ELEMENT","byteLength","typedBuffer","typedBufferStride","ceil","buffer","ElementCount","super","elementType","byteOffset","ElementType","Uint32Array","Int8Array","Int16Array","Int32Array","useCustomDTRExponentForWater","includedModules","builder","arguments","constants","generateSource","concat","_entries","Array","_set","Set","push","map","ALLOWLIST_VERTEX","ALLOWLIST_FRAGMENT","from","filter","includes","numberToFloatStr","numberToIntStr","prototype","call","toFixed","Number","isInteger","highlightDepthTexture","inverseViewport","bindOutputHighlight","context","svgAlwaysPremultipliesAlpha","_doublePrecisionRequiresObfuscation","then","setUniform3f","doublePrecisionRequiresObfuscation","symbolColor","receiveAmbientOcclusion","floor","max","subtract","divide","scaleAndAdd","distance","squaredDistance","negate","inverse","transformMat4","transformQuat","sub","div","dist","sqrDist","parameters","paddingPixelsOverride","divisor","minPixelSize","paddingPixels","tolerance","boundingInfo","primitiveType","indices","vertexAttributes","getBBMin","getBBMax","applyToAabb","primitiveIndices","position","getChildren","applyToVertex","EPSILON","fullHeight","forEach","isArray","slice","ignore","replace","tint","usage","_size","_indexType","createBuffer","setData","deleteBuffer","bufferData","ArrayBuffer","isView","bufferSubData","worldFromModel_RS","worldFromModel_TH","worldFromModel_TL","ModelTransform","worldFromView_TH","worldFromView_TL","viewFromCameraRelative_RS","projFromView","setUniformMatrix3fv","setUniform3fv","setUniformMatrix4fv","ViewProjectionTransform","bindModelTransform","bindViewProjTransform","vertexBuffers","layout","instancing","baseInstance","vertexAttribPointer","enableVertexAttribArray","vertexAttribDivisor","disableVertexAttribArray","line","column","test","indexOf","exec","splice","match","parseInt","trim","_vShader","_fShader","_defines","_nameToUniformLocation","_nameToAttribLocation","_nameToUniform1","_nameToUniform1v","_nameToUniform2","_nameToUniform3","_nameToUniform4","_nameToUniformMatrix3","_nameToUniformMatrix4","_vertexShaderSource","_fragmentShaderSource","deleteShader","deleteProgram","_loadShader","createProgram","attachShader","bindAttribLocation","linkProgram","getUniformLocation","getAttribLocation","uniform1i","uniform1iv","_arrayCopy","_arrayAssign","uniform2iv","uniform3iv","uniform4iv","uniform1f","uniform1fv","uniform2f","uniform2fv","uniform3f","uniform3fv","uniform4f","uniform4fv","uniformMatrix3fv","uniformMatrix4fv","locations","_padToThree","contextVersion","createShader","shaderSource","compileShader","_desc","createRenderbuffer","bindRenderbuffer","renderbufferStorage","RENDERBUFFER","internalFormat","deleteRenderbuffer","transformMat3","shiftRight","_numIndexPerPrimitive","center","clear","bbMin","bbMax","radius","getItemAt","_children","prune","deallocator","id","allocator","items","itemsPtr","tickHandle","before","reset","grow","remove","itemByteSize","itemCreate","buffers","itemsPerBuffer","pop","createVec2f64","createVec3f64","createVec4f64","createMat3f64","createMat4f64","createQuatf64","origin","vector","direction","tA","pB","distance2","pA","tB","wrap","fromPoints","projectPoint","pointAt","projectPointClamp","closestRayDistance2","closestLineSegmentPoint","closestLineSegmentDistance2","p0","p1","p2","intersectRay","areaPoints2d","area2d","areaPoints3d","_primitiveType","edgeIndicesLength","_vertexAttributes","_indices","_boundingInfo","exclusive","values","next","value","indexCount","_calculateBoundingInfo","computeAttachmentOriginTriangles","computeAttachmentOriginPoints","projectPointSignedLength","angle","angleAroundAxis","screenToRender","unprojectFromRenderScreen","eye","fromScreen","fromRender","fromScreenAtEye","fromRenderAtEye","closestPoint","createWrapper","rt","fromCenterAndRadius","fromRadius","getRadius","getCenter","elevate","setExtent","intersectScreen","intersectsRay","intersectRayClosestSilhouette","closestPointOnSilhouette","distanceToSilhouette","angleToSilhouette","axisAt","altitudeAt","setAltitudeAt","getVec","ray","c1","c0","fromNormalAndOffset","fromPositionAndNormal","fromManyPoints","fromManyPointsSampleAt","setOffsetFromPoint","fromVectorsAndPoint","intersectLineSegment","intersectLineSegmentClamp","isSphereFullyInside","isSphereFullyOutside","isPointInside","isPointOutside","isAABBFullyInside","clip","clipInfinite","projectVector","signedDistance","normal","UP","plane","basis1","basis2","Ps","ys","vs","ms","gs","hs","ss","is","Ns","ws","POSITIVE_INFINITY","As","Is","Ms","ns","os","ts","js","as","rs","es","NEGATIVE_INFINITY","cs","us","ds","bs","Ts","fs","ls","Ss","ps","_s","warn","BoundedPlaneClass","copyWithoutVerify","updateUnboundedPlane","fromAABoundingRect","projectPointLocal","extrusionContainsPoint","transform","rotate","wrapAxisAngle","fromAxisAndAngle","axis","MAX_VALUE","fromRay","fromLineSegment","fromLineSegmentAndDirection","getStart","getEnd","getAt","bottom","near","far","right","left","top","createPoints","fromMatrix","computePlanes","intersectsSphere","intersectClipRay","intersectsLineSegment","intersectsPoint","intersectsAABB","planePointIndices","_disposed","_shaderTransformation","material","transformation","instanceParameters","computeAttachmentOrigin","getStaticTransformation","pool","tmpVertex","localOrigin","componentLocalOriginLength","mbs","obb","halfSize","quaternion","sphere","objectTransform","DIFFUSE","NORMAL","EMISSION","OCCLUSION","METALLIC_ROUGHNESS","SSAO","SHADOW_MAP","_isDisposed","_managedDisposables","techniqueRep","technique","getTechnique","pipeline","_textureIDs","_textureRepository","textureRep","_textureId","textureId","_initTransparent","initTextureTransparent","_texture","_acquireIfNotUndefined","_textureNormal","normalTextureId","_textureEmissive","emissiveTextureId","_textureOcclusion","occlusionTextureId","_textureMetallicRoughness","metallicRoughnessTextureId","release","_releaseIfNotUndefined","glTexture","descriptor","textureCoordinateScaleFactor","setUniform2fv","setUniform2f","acquire","delete","uv0","tangent","auxpos1","auxpos2","featureAttribute","instanceFeatureAttribute","instanceColor","model","modelNormal","modelOriginHi","modelOriginLo","supportsEdges","_visible","_renderPriority","_insertOrder","_vertexAttributeLocations","_params","validateParameterValues","parametersChanged","params","renderOccluded","materialRepository","materialChanged","fieldNames","getField","_module","_loadModule","_config","snapshot","_program","initializeProgram","commonUniformStore","_commonUniformStore","subscribeProgram","initializePipeline","unsubscribeProgram","key","setPipelineState","program","assertCompatibleVertexAttributeLocations","_key","_keyDirty","_parameterBits","String","fromCharCode","apply","_parameterNames","defineProperty","viewMatrix","setUniform4fv","bindCamPosition","bindProjectionMatrix","bindNearFar","bindViewCustomOrigin","bindView","bindViewport","shader","configuration","transparencyPassType","slicePlaneEnabled","sliceHighlightDisabled","sliceEnabledForVertexPrograms","symbolColors","vvSize","vvColor","vvInstancingEnabled","instanced","instancedDoublePrecision","useOldSceneLightInterface","usePBR","isSchematic","hasMetalnessAndRoughnessTexture","hasEmissionTexture","hasOcclusionTexture","normalsTypeDerivate","vertexTangents","vertexColors","rctx","alphaDiscardMode","cullAboveGround","projectionMatrix","nearFar","setUniform1f","opacity","layerOpacity","externalColor","colorMixMode","lighting","setUniforms","ambient","diffuse","bindUniformsForSymbols","textureAlphaMode","textureAlphaCutoff","viewInverseTransposeMatrix","bindCustomOrigin","slicePlane","transparent","writeDepth","sceneHasOcludees","enableOffset","_occludeePipelineState","setPipeline","cullFace","techniqueConfig","vertexBufferLayout","getVertexBufferLayout","instanceBufferLayout","getInstanceBufferLayout","castShadows","isVisible","vvColorEnabled","vvSizeEnabled","normals","treeRendering","doubleSided","doubleSidedType","shadowMappingEnabled","ssaoEnabled","receiveSSAO","offsetTransparentBackfaces","relativeElevation","inverseRotation","vec3f","vec4f","vec2f","vec4u8","mat3f","mat4f","updateParameters","updateTexture","acquireAndReleaseExisting","getTechniqueConfig","setParameterValues","hasOccludees","_updateShadowState","_updateOccludeeState","bindPass","getPipelineState","emissiveFactor","mrrFactors","vvSizeMinSize","vvSizeMaxSize","vvSizeOffset","vvSizeFactor","vvSizeValue","vvColorValues","vvColorColors","vvSymbolAnchor","vvSymbolRotationMatrix","invTranspTransformation","default","locateFile","initializeBasis","BasisFile","getNumImages","getNumLevels","getHasAlpha","getImageWidth","getImageHeight","close","compressedTextureETC","compressedTextureS3TC","startTranscoding","getImageTranscodedSizeInBytes","transcodeImage","hasMipmap","levels","charCodeAt","textureData","powerOfTwoStretchInfo","loadingPromise","loadingController","events","mipmap","noUnpackFlip","powerOfTwoResizeMode","estimatedTexMemRequired","estimateTexMemRequired","startPreload","HTMLVideoElement","startPreloadVideoElement","HTMLImageElement","startPreloadImageElement","preload","crossOrigin","videoWidth","videoHeight","encoding","BASIS_ENCODING","ImageData","HTMLCanvasElement","getDataDimensions","components","disableAnisotropy","flipped","maxAnisotropy","maxMaxAnisotropy","createDescriptor","loadFromURL","loadFromImageElement","loadFromVideoElement","loadFromImage","DDS_ENCODING","loadFromDDSData","loadFromBasis","loadFromPixelData","readyState","currentTime","framebuffer","sourceTexture","drawStretchedTexture","updateData","generateMipmap","loadAsync","signal","complete","loadFromVideoElementAsync","Promise","removeEventListener","addEventListener","requiresPowerOfTwo","makePowerOfTwoTexture","stretchToPowerOfTwo","requiresFrameUpdates","detachColorTexture","abort","emit","streamDataRequester","load","request","ok","image","binary","json","dstIndex","srcIndex","normalizeIntegerBuffer","fill","makeDense","errorUnsupported","warnUnsupported","alphaMode","alphaCutoff","receiveAmbientOcclustion","textureColor","textureNormal","textureOcclusion","textureEmissive","textureMetallicRoughness","metallicFactor","roughnessFactor","offset4","dataUint32","baseColorFactor","pbrMetallicRoughness","ESRI_externalColorMixMode","extras","magFilter","minFilter","wrapS","wrapT","dirPart","filePart","MAGIC","CHUNK_TYPE_JSON","CHUNK_TYPE_BIN","MIN_HEADER_LENGTH","errorContext","uri","glbBuffer","bufferCache","textureCache","materialCache","nodeParentMap","nodeTransformCache","baseUri","checkVersionSupported","checkRequiredExtensionsSupported","errorUnsupportedIf","scenes","meshes","nodes","computeNodeParents","mediaType","JSON","parse","isBase64","atob","isGLBData","fromGLBData","endsWith","loadJSON","loadBinary","remainingBytes","readUint32","parseGLBData","binaryData","assert","readUint8Array","resolveUri","accessors","bufferView","bufferViews","getBuffer","componentType","byteStride","raw","entryCount","isDenselyPacked","componentCount","componentByteSize","getAccessor","wrapAccessor","POSITION","TANGENT","TEXCOORD_0","COLOR_0","materials","hasVertexColors","baseColorTexture","texCoord","getTexture","index","normalTexture","occlusionTexture","emissiveTexture","metallicRoughnessTexture","colorTexture","textures","sampler","samplers","source","images","loadImage","mimeType","getNodeTransform","getNodeParent","matrix","translation","rotation","asset","version","validate","extensionsRequired","children","SCALAR","VEC2","VEC3","VEC4","5120","5121","5122","5123","5126","5125","Blob","FileReader","onload","result","onerror","readAsText","URL","createObjectURL","revokeObjectURL","lods","meta","ESRI_type","hasPositions","getMaterial","getPositionData","texCoord0","getIndexData","hasNormals","getNormalData","hasTangents","getTangentData","hasTextureCoordinates","getTextureCoordinates","getVertexColors","ESRI_lod","metric","thresholds","parts","lodThreshold","isEsriSymbolResource","customMeta","ESRI_proxyEllipsoid","scene","MSFT_lod","ids","all","warnUnsupportedIf","weights","mesh","primitives","some","resource","textureDefinitions","details","url","topology","faces","valueType","valuesPerElement","geometries","materialDefinitions","texture","substring","lastIndexOf","transparency","alphaChannelUsage","externalColorMixMode","materialParamsMixin","assign","stageResources","pivotOffset","boundingBox","numberOfVertices","disableTextures","resolve","refId","channels","region","fileType","cache","loadWOSR","referenceBoundingBox","isWosr","loadGLTF","esriTreeRendering","specifiedLodIndex","setVec","IDENTITY","exports","_descriptor","_samplingModeDirty","_wrapModeDirty","isOpaque","unpackAlignment","unbindTextureAllUnits","deleteTexture","createTexture","getBoundTexture","_validateTexture","pixelStorei","UNPACK_ALIGNMENT","UNPACK_FLIP_Y_WEBGL","UNPACK_PREMULTIPLY_ALPHA_WEBGL","texImage2D","TEXTURE_2D","DEPTH24_STENCIL8","DEPTH_STENCIL","LN2","compressedTexImage2D","_applySamplingMode","_applyWrapMode","_applyAnisotropicFilteringParameters","texSubImage2D","texParameteri","TEXTURE_MAG_FILTER","TEXTURE_MIN_FILTER","TEXTURE_WRAP_S","TEXTURE_WRAP_T","textureFilterAnisotropic","texParameterf","TEXTURE_MAX_ANISOTROPY","visible","setUniform1fv","vvOpacityEnabled","vvOpacityValues","vvOpacityOpacities","bindUniformsWithOpacity","window","WebGL2RenderingContext","terrainLinearDepthTexture","shadowMap","bind","_depthAttachment","_stencilAttachment","_colorAttachments","attachmentPoint","_validateColorAttachmentPoint","_validateTextureDimensions","_validateBufferDimensions","depthTexture","_depthStencilTexture","_disposeColorAttachments","_disposeDepthStencilAttachments","deleteFramebuffer","framebufferTexture2D","FRAMEBUFFER","DEPTH_STENCIL_ATTACHMENT","DEPTH_ATTACHMENT","framebufferRenderbuffer","copyTexSubImage2D","resize","createFramebuffer","COLOR_ATTACHMENT0","STENCIL_ATTACHMENT","WebGLRenderbuffer","_MAX_COLOR_ATTACHMENTS","drawBuffers","getParameter","MAX_COLOR_ATTACHMENTS","bindUniformsWithOrigin","Uniforms","lightingSphericalHarmonicsOrder","fields","constructor","appendField","optional","BufferType"],"mappings":"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","file":"js/chunk-702ca318.ef209d7e.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../views/3d/webgl-engine/core/shaderModules/interfaces.js\";import{Transform as r}from\"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js\";import{ShaderBuilder as o}from\"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js\";import{Slice as a}from\"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js\";import{ReadLinearDepth as i}from\"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js\";import{VisualVariables as l}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js\";import{symbolAlphaCutoff as t,DiscardOrAdjustAlpha as s}from\"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js\";import{VerticalOffset as n}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js\";import{multipassTerrainTest as d}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js\";import{ReadShadowMap as c}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js\";import{ForwardLinearDepth as g}from\"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js\";import{PhysicallyBasedRendering as m}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js\";import{InstancedDoublePrecision as v}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js\";import{TextureCoordinateAttribute as p}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js\";import{PhysicallyBasedRenderingParameters as u}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{Offset as b}from\"../views/3d/webgl-engine/core/shaderLibrary/Offset.glsl.js\";import{NormalAttribute as h}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js\";import{PositionAttribute as f}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js\";import{SymbolColor as x}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js\";import{VertexColor as w}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js\";import{VertexNormal as y}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js\";import{DefaultMaterialAuxiliaryPasses as C}from\"../views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js\";import{ComputeNormalTexture as L}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js\";import{EvaluateAmbientOcclusion as j}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js\";import{EvaluateSceneLighting as M}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js\";import{Normals as T}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js\";import{HeaderComment as E}from\"../views/3d/webgl-engine/core/shaderLibrary/util/HeaderComment.glsl.js\";import{MixExternalColor as O}from\"../views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js\";function P(P){const _=new o,S=_.vertex.code,$=_.fragment.code;return _.include(E,{name:\"Default Material Shader\",output:P.output}),_.vertex.uniforms.add(\"proj\",\"mat4\").add(\"view\",\"mat4\").add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\"),_.include(f),_.varyings.add(\"vpos\",\"vec3\"),_.include(l,P),_.include(v,P),_.include(n,P),0!==P.output&&7!==P.output||(_.include(h,P),_.include(r,{linearDepth:!1}),0===P.normalType&&P.offsetBackfaces&&_.include(b),_.include(L,P),_.include(y,P),P.instancedColor&&_.attributes.add(\"instanceColor\",\"vec4\"),_.varyings.add(\"localvpos\",\"vec3\"),_.include(p,P),_.include(g,P),_.include(x,P),_.include(w,P),_.vertex.uniforms.add(\"externalColor\",\"vec4\"),_.varyings.add(\"vcolorExt\",\"vec4\"),P.multipassTerrainEnabled&&_.varyings.add(\"depth\",\"float\"),S.add(e`\n void main(void) {\n forwardNormalizedVertexColor();\n vcolorExt = externalColor;\n ${P.instancedColor?\"vcolorExt *= instanceColor;\":\"\"}\n vcolorExt *= vvColor();\n vcolorExt *= getSymbolColor();\n forwardColorMixMode();\n\n if (vcolorExt.a < ${e.float(t)}) {\n gl_Position = vec4(1e38, 1e38, 1e38, 1.0);\n }\n else {\n vpos = calculateVPos();\n localvpos = vpos - view[3].xyz;\n vpos = subtractOrigin(vpos);\n ${0===P.normalType?e`\n vNormalWorld = dpNormal(vvLocalNormal(normalModel()));`:\"\"}\n vpos = addVerticalOffset(vpos, localOrigin);\n ${P.vertexTangets?\"vTangent = dpTransformVertexTangent(tangent);\":\"\"}\n gl_Position = transformPosition(proj, view, vpos);\n ${0===P.normalType&&P.offsetBackfaces?\"gl_Position = offsetBackfacingClipPosition(gl_Position, vpos, vNormalWorld, camPos);\":\"\"}\n }\n\n ${P.multipassTerrainEnabled?\"depth = (view * vec4(vpos, 1.0)).z;\":\"\"}\n forwardLinearDepth();\n forwardTextureCoordinates();\n }\n `)),7===P.output&&(_.include(a,P),_.include(s,P),P.multipassTerrainEnabled&&(_.fragment.include(i),_.include(d,P)),_.fragment.uniforms.add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),P.hasColorTexture&&_.fragment.uniforms.add(\"tex\",\"sampler2D\"),_.fragment.include(O),$.add(e`\n void main() {\n discardBySlice(vpos);\n ${P.multipassTerrainEnabled?\"terrainDepthTest(gl_FragCoord, depth);\":\"\"}\n ${P.hasColorTexture?e`\n vec4 texColor = texture2D(tex, vuv0);\n ${P.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:e`vec4 texColor = vec4(1.0);`}\n ${P.attributeColor?e`\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:e`\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n gl_FragColor = vec4(opacity_);\n }\n `)),0===P.output&&(_.include(a,P),_.include(M,P),_.include(j,P),_.include(s,P),P.receiveShadows&&_.include(c,P),P.multipassTerrainEnabled&&(_.fragment.include(i),_.include(d,P)),_.fragment.uniforms.add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"ambient\",\"vec3\").add(\"diffuse\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),P.hasColorTexture&&_.fragment.uniforms.add(\"tex\",\"sampler2D\"),_.include(u,P),_.include(m,P),_.fragment.include(O),_.include(T,P),$.add(e`\n void main() {\n discardBySlice(vpos);\n ${P.multipassTerrainEnabled?\"terrainDepthTest(gl_FragCoord, depth);\":\"\"}\n ${P.hasColorTexture?e`\n vec4 texColor = texture2D(tex, vuv0);\n ${P.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:e`vec4 texColor = vec4(1.0);`}\n shadingParams.viewDirection = normalize(vpos - camPos);\n ${3===P.normalType?e`\n vec3 normal = screenDerivativeNormal(localvpos);`:e`\n shadingParams.normalView = vNormalWorld;\n vec3 normal = shadingNormal(shadingParams);`}\n ${1===P.pbrMode?\"applyPBRFactors();\":\"\"}\n float ssao = evaluateAmbientOcclusionInverse();\n ssao *= getBakedOcclusion();\n\n float additionalAmbientScale = _oldHeuristicLighting(vpos + localOrigin);\n vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;\n ${P.receiveShadows?\"float shadow = readShadowMap(vpos, linearDepth);\":1===P.viewingMode?\"float shadow = lightingGlobalFactor * (1.0 - additionalAmbientScale);\":\"float shadow = 0.0;\"}\n vec3 matColor = max(ambient, diffuse);\n ${P.attributeColor?e`\n vec3 albedo_ = mixExternalColor(vColor.rgb * matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:e`\n vec3 albedo_ = mixExternalColor(matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n ${P.hasNormalTexture?e`\n mat3 tangentSpace = ${P.vertexTangets?\"computeTangentSpace(normal);\":\"computeTangentSpace(normal, vpos, vuv0);\"}\n vec3 shadedNormal = computeTextureNormal(tangentSpace, vuv0);`:\"vec3 shadedNormal = normal;\"}\n ${1===P.pbrMode||2===P.pbrMode?1===P.viewingMode?e`vec3 normalGround = normalize(vpos + localOrigin);`:e`vec3 normalGround = vec3(0.0, 0.0, 1.0);`:e``}\n ${1===P.pbrMode||2===P.pbrMode?e`\n float additionalAmbientIrradiance = additionalAmbientIrradianceFactor * lightingMainIntensity[2];\n vec3 shadedColor = evaluateSceneLightingPBR(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight, shadingParams.viewDirection, normalGround, mrr, emission, additionalAmbientIrradiance);`:\"vec3 shadedColor = evaluateSceneLighting(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight);\"}\n gl_FragColor = highlightSlice(vec4(shadedColor, opacity_), vpos);\n ${P.OITEnabled?\"gl_FragColor = premultiplyAlpha(gl_FragColor);\":\"\"}\n }\n `)),_.include(C,P),_}var _=Object.freeze({__proto__:null,build:P});export{_ as D,P as b};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{c as t,f as s}from\"./vec3f64.js\";import{E as a,R as n}from\"./common.js\";import{d as o,c as r,j as c,n as e}from\"./vec3.js\";import{a as u}from\"./mat3f64.js\";import{a as i}from\"./quatf64.js\";import{c as h,s as M,a as f,b as l,d as m,l as p,e as q,f as j,n as d,g,h as v}from\"./vec4.js\";function x(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t}function A(t,s,a){a*=.5;const n=Math.sin(a);return t[0]=n*s[0],t[1]=n*s[1],t[2]=n*s[2],t[3]=Math.cos(a),t}function I(t,s){const n=2*Math.acos(s[3]),o=Math.sin(n/2);return o>a?(t[0]=s[0]/o,t[1]=s[1]/o,t[2]=s[2]/o):(t[0]=1,t[1]=0,t[2]=0),n}function P(t,s,a){const n=s[0],o=s[1],r=s[2],c=s[3],e=a[0],u=a[1],i=a[2],h=a[3];return t[0]=n*h+c*e+o*i-r*u,t[1]=o*h+c*u+r*e-n*i,t[2]=r*h+c*i+n*u-o*e,t[3]=c*h-n*e-o*u-r*i,t}function b(t,s,a){a*=.5;const n=s[0],o=s[1],r=s[2],c=s[3],e=Math.sin(a),u=Math.cos(a);return t[0]=n*u+c*e,t[1]=o*u+r*e,t[2]=r*u-o*e,t[3]=c*u-n*e,t}function y(t,s,a){a*=.5;const n=s[0],o=s[1],r=s[2],c=s[3],e=Math.sin(a),u=Math.cos(a);return t[0]=n*u-r*e,t[1]=o*u+c*e,t[2]=r*u+n*e,t[3]=c*u-o*e,t}function E(t,s,a){a*=.5;const n=s[0],o=s[1],r=s[2],c=s[3],e=Math.sin(a),u=Math.cos(a);return t[0]=n*u+o*e,t[1]=o*u-n*e,t[2]=r*u+c*e,t[3]=c*u-r*e,t}function _(t,s){const a=s[0],n=s[1],o=s[2];return t[0]=a,t[1]=n,t[2]=o,t[3]=Math.sqrt(Math.abs(1-a*a-n*n-o*o)),t}function z(t,s,n,o){const r=s[0],c=s[1],e=s[2],u=s[3];let i,h,M,f,l,m=n[0],p=n[1],q=n[2],j=n[3];return h=r*m+c*p+e*q+u*j,h<0&&(h=-h,m=-m,p=-p,q=-q,j=-j),1-h>a?(i=Math.acos(h),M=Math.sin(i),f=Math.sin((1-o)*i)/M,l=Math.sin(o*i)/M):(f=1-o,l=o),t[0]=f*r+l*m,t[1]=f*c+l*p,t[2]=f*e+l*q,t[3]=f*u+l*j,t}function L(t){const s=n(),a=n(),o=n(),r=Math.sqrt(1-s),c=Math.sqrt(s);return t[0]=r*Math.sin(2*Math.PI*a),t[1]=r*Math.cos(2*Math.PI*a),t[2]=c*Math.sin(2*Math.PI*o),t[3]=c*Math.cos(2*Math.PI*o),t}function k(t,s){const a=s[0],n=s[1],o=s[2],r=s[3],c=a*a+n*n+o*o+r*r,e=c?1/c:0;return t[0]=-a*e,t[1]=-n*e,t[2]=-o*e,t[3]=r*e,t}function w(t,s){return t[0]=-s[0],t[1]=-s[1],t[2]=-s[2],t[3]=s[3],t}function B(t,s){const a=s[0]+s[4]+s[8];let n;if(a>0)n=Math.sqrt(a+1),t[3]=.5*n,n=.5/n,t[0]=(s[5]-s[7])*n,t[1]=(s[6]-s[2])*n,t[2]=(s[1]-s[3])*n;else{let a=0;s[4]>s[0]&&(a=1),s[8]>s[3*a+a]&&(a=2);const o=(a+1)%3,r=(a+2)%3;n=Math.sqrt(s[3*a+a]-s[3*o+o]-s[3*r+r]+1),t[a]=.5*n,n=.5/n,t[3]=(s[3*o+r]-s[3*r+o])*n,t[o]=(s[3*o+a]+s[3*a+o])*n,t[r]=(s[3*r+a]+s[3*a+r])*n}return t}function C(t,s,a,n){const o=.5*Math.PI/180;s*=o,a*=o,n*=o;const r=Math.sin(s),c=Math.cos(s),e=Math.sin(a),u=Math.cos(a),i=Math.sin(n),h=Math.cos(n);return t[0]=r*u*h-c*e*i,t[1]=c*e*h+r*u*i,t[2]=c*u*i-r*e*h,t[3]=c*u*h+r*e*i,t}function D(t){return\"quat(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"}const F=h,G=M,O=f,R=P,T=l,W=m,X=p,Y=q,Z=Y,H=j,J=H,K=d,N=g,Q=v;function S(t,s,a){const n=o(s,a);return n<-.999999?(r(U,V,s),c(U)<1e-6&&r(U,$,s),e(U,U),A(t,U,Math.PI),t):n>.999999?(t[0]=0,t[1]=0,t[2]=0,t[3]=1,t):(r(U,s,a),t[0]=U[0],t[1]=U[1],t[2]=U[2],t[3]=1+n,K(t,t))}const U=t(),V=s(1,0,0),$=s(0,1,0);function tt(t,s,a,n,o,r){return z(st,s,o,r),z(at,a,n,r),z(t,st,at,2*r*(1-r)),t}const st=i(),at=i();function nt(t,s,a,n){const o=ot;return o[0]=a[0],o[3]=a[1],o[6]=a[2],o[1]=n[0],o[4]=n[1],o[7]=n[2],o[2]=-s[0],o[5]=-s[1],o[8]=-s[2],K(t,B(t,o))}const ot=u();var rt=Object.freeze({__proto__:null,identity:x,setAxisAngle:A,getAxisAngle:I,multiply:P,rotateX:b,rotateY:y,rotateZ:E,calculateW:_,slerp:z,random:L,invert:k,conjugate:w,fromMat3:B,fromEuler:C,str:D,copy:F,set:G,add:O,mul:R,scale:T,dot:W,lerp:X,length:Y,len:Z,squaredLength:H,sqrLen:J,normalize:K,exactEquals:N,equals:Q,rotationTo:S,sqlerp:tt,setAxes:nt});export{X as A,Z as B,J as C,K as D,Q as E,tt as F,nt as G,F as a,b,w as c,y as d,E as e,W as f,I as g,H as h,k as i,N as j,C as k,Y as l,P as m,x as n,_ as o,z as p,rt as q,S as r,A as s,L as t,B as u,D as v,G as w,O as x,R as y,T as z};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{VertexTextureCoordinates as t}from\"../attributes/VertexTextureCoordinates.glsl.js\";function n(n,a){const o=n.fragment;o.uniforms.add(\"normalTexture\",\"sampler2D\"),o.uniforms.add(\"normalTextureSize\",\"vec2\"),a.vertexTangets?(n.attributes.add(\"tangent\",\"vec4\"),n.varyings.add(\"vTangent\",\"vec4\"),2===a.doubleSidedMode?o.code.add(e`\n mat3 computeTangentSpace(vec3 normal) {\n float tangentHeadedness = gl_FrontFacing ? vTangent.w : -vTangent.w;\n vec3 tangent = normalize(gl_FrontFacing ? vTangent.xyz : -vTangent.xyz);\n vec3 bitangent = cross(normal, tangent) * tangentHeadedness;\n return mat3(tangent, bitangent, normal);\n }\n `):o.code.add(e`\n mat3 computeTangentSpace(vec3 normal) {\n float tangentHeadedness = vTangent.w;\n vec3 tangent = normalize(vTangent.xyz);\n vec3 bitangent = cross(normal, tangent) * tangentHeadedness;\n return mat3(tangent, bitangent, normal);\n }\n `)):(n.extensions.add(\"GL_OES_standard_derivatives\"),o.code.add(e`\n mat3 computeTangentSpace(vec3 normal, vec3 pos, vec2 st) {\n\n vec3 Q1 = dFdx(pos);\n vec3 Q2 = dFdy(pos);\n\n vec2 stx = dFdx(st);\n vec2 sty = dFdy(st);\n\n float det = stx.t * sty.s - sty.t * stx.s;\n\n vec3 T = stx.t * Q2 - sty.t * Q1; // compute tangent\n T = T - normal * dot(normal, T); // orthogonalize tangent\n T *= inversesqrt(max(dot(T,T), 1.e-10)); // \"soft\" normalize - goes to 0 when T goes to 0\n vec3 B = sign(det) * cross(normal, T); // assume normal is normalized, B has the same lenght as B\n return mat3(T, B, normal); // T and B go to 0 when the tangent space is not well defined by the uv coordinates\n }\n `)),0!==a.attributeTextureCoordinates&&(n.include(t,a),o.code.add(e`\n vec3 computeTextureNormal(mat3 tangentSpace, vec2 uv) {\n vtc.uv = uv;\n ${a.supportsTextureAtlas?\"vtc.size = normalTextureSize;\":\"\"}\n vec3 rawNormal = textureLookup(normalTexture, vtc).rgb * 2.0 - 1.0;\n return tangentSpace * rawNormal;\n }\n `))}export{n as ComputeNormalTexture};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{disposeMaybe as t}from\"../../core/maybe.js\";import{bindVertexBufferLayout as i,unbindVertexBufferLayout as e}from\"./Util.js\";class s{constructor(t,i,e,s,n){this._context=t,this._locations=i,this._layout=e,this._buffers=s,this._indexBuffer=n,this._glName=null,this._initialized=!1,t.instanceCounter.increment(2,this)}get glName(){return this._glName}get vertexBuffers(){return this._buffers}get indexBuffer(){return this._indexBuffer}get size(){return Object.keys(this._buffers).reduce(((t,i)=>t+this._buffers[i].size),this._indexBuffer?this._indexBuffer.size:0)}get layout(){return this._layout}get locations(){return this._locations}dispose(i=!0){if(!this._context)return;const e=this._context.capabilities.vao;e&&this._glName&&(e.deleteVertexArray(this._glName),this._glName=null);if(this._context.getBoundVAO()===this&&this._context.bindVAO(null),i){for(const t in this._buffers)this._buffers[t].dispose(),delete this._buffers[t];this._indexBuffer=t(this._indexBuffer)}this._context.instanceCounter.decrement(2,this),this._context=null}initialize(){if(this._initialized)return;const t=this._context.capabilities.vao;if(t){const i=t.createVertexArray();t.bindVertexArray(i),this._bindLayout(),t.bindVertexArray(null),this._glName=i}this._initialized=!0}bind(){this.initialize();const t=this._context.capabilities.vao;t?t.bindVertexArray(this.glName):(this._context.bindVAO(null),this._bindLayout())}_bindLayout(){const t=this._buffers,e=!!this._context.capabilities.vao,s=this._layout,n=this._indexBuffer;t||console.error(\"Vertex buffer dictionary is empty!\");const r=this._context.gl;for(const o in t){const e=t[o];e||console.error(\"Vertex buffer is uninitialized!\");const n=s[o];n||console.error(\"Vertex element descriptor is empty!\"),i(this._context,this._locations,e,n)}n&&(e?r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,n.glName):this._context.bindBuffer(n))}unbind(){this.initialize();const t=this._context.capabilities.vao;t?t.bindVertexArray(null):this._unbindLayout()}_unbindLayout(){const t=this._buffers,i=this._layout;t||console.error(\"Vertex buffer dictionary is empty!\");for(const s in t){const n=t[s];n||console.error(\"Vertex buffer is uninitialized!\");const r=i[s];e(this._context,this._locations,n,r)}this._indexBuffer&&this._context.unbindBuffer(this._indexBuffer.bufferType)}}export default s;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction n(){return[0,0,0,0]}function t(n){return[n[0],n[1],n[2],n[3]]}function r(n,t,r,e){return[n,t,r,e]}function e(t){const r=n(),e=Math.min(4,t.length);for(let n=0;n>16&255)/255,(t>>8&255)/255,(255&t)/255]}function g(n){return\"0x\"+((t(Math.round(255*n[0]),0,255)<<16)+(t(Math.round(255*n[1]),0,255)<<8)+t(Math.round(255*n[2]),0,255)).toString(16)}function p(t){const n=t.toString(16);return\"00000000\".substr(0,8-n.length)+n}function k(t,r,o,a,u,c,s,e,i=n()){const f=1e-5,h=a[s]-o[c],M=a[s+1]-o[c+1],l=a[s+2]-o[c+2],m=u[e]-o[c],g=u[e+1]-o[c+1],p=u[e+2]-o[c+2],k=r[1]*p-g*r[2],d=r[2]*m-p*r[0],j=r[0]*g-m*r[1],v=h*k+M*d+l*j;if(v>-f&&v1)return!1;const y=q*l-M*x,E=x*h-l*b,S=b*M-h*q;return i[2]=w*(r[0]*y+r[1]*E+r[2]*S),!(i[2]<0||i[1]+i[2]>1)&&(i[0]=w*(m*y+g*E+p*S),!0)}function d(t,n,r,o){let a,u=(r[0]-t[0])/n[0],c=(o[0]-t[0])/n[0];u>c&&(a=u,u=c,c=a);let s=(r[1]-t[1])/n[1],e=(o[1]-t[1])/n[1];if(s>e&&(a=s,s=e,e=a),u>e||s>c)return!1;s>u&&(u=s),ef&&(a=i,i=f,f=a),!(u>f||i>c)&&(f2&&(a[2]=-s[2]),c(s,s,r),i(0!==s[3]),a[0]=s[0]/s[3],a[1]=s[1]/s[3],a[2]=s[2]/s[3],a[0]=(.5*a[0]+.5)*o[2]+o[0],a[1]=(.5*a[1]+.5)*o[3]+o[1]}function w(t){for(const n in t)return n}function b(t){for(const n in t)return!1;return!0}function q(t,n){return Math.log(t)/Math.log(n)}function x(t,n){t[12]=n[0],t[13]=n[1],t[14]=n[2]}function y(t,n,r,o){t[12]=n,t[13]=r,t[14]=o}function E(t,r=n()){return r[0]=t[12],r[1]=t[13],r[2]=t[14],r}function S(t,n){return x(t=r(t),n),t}function A(t){return 1===t[0]&&0===t[1]&&0===t[2]&&0===t[3]&&0===t[4]&&1===t[5]&&0===t[6]&&0===t[7]&&0===t[8]&&0===t[9]&&1===t[10]&&0===t[11]&&1===t[15]}function U(t,n,r){return 2*Math.atan(r*Math.tan(.5*t)/n)}function C(t,n,r){return 2*Math.atan(n*Math.tan(.5*t)/r)}function V(t,n,r){return 2*Math.atan(Math.sqrt(n*n+r*r)*Math.tan(.5*t)/n)}function $(t,n,r){return 2*Math.atan(Math.sqrt(n*n+r*r)*Math.tan(.5*t)/r)}function z(t,n,r){return 2*Math.atan(n*Math.tan(.5*t)/Math.sqrt(n*n+r*r))}function B(t,n,r){return 2*Math.atan(r*Math.tan(.5*t)/Math.sqrt(n*n+r*r))}function D(n,r,o=0){const a=t(n,0,I);for(let t=0;t<4;t++)r[o+t]=Math.floor(256*J(a*G[t]))}function F(t,n=0){let r=0;for(let o=0;o<4;o++)r+=t[n+o]*H[o];return r}const G=[1,256,65536,16777216],H=[1/256,1/65536,1/16777216,1/4294967296],I=F(new Uint8ClampedArray([255,255,255,255]));function J(t){return t-Math.floor(t)}function K(t,n,r,o,a){const c=t;0===t[11]?(o[0]=2/(n*c[0]),o[1]=2/(r*c[5]),o[2]=(1+c[12])/c[0],o[3]=(1+c[13])/c[5],u(a,0,1)):(o[0]=-2/(n*c[0]),o[1]=-2/(r*c[5]),o[2]=(1-c[8])/c[0],o[3]=(1-c[9])/c[5],u(a,1,0))}export{e as AssertException,i as assert,S as createTranslationMatrix,p as dec2hex,h as encodeInt16,M as encodeNormal,l as fallbackIfUndefined,z as fovd2fovx,B as fovd2fovy,V as fovx2fovd,U as fovx2fovy,$ as fovy2fovd,C as fovy2fovx,w as getFirstObjectKey,E as getMatrixTranslation,m as hex2rgb,K as inverseProjectionInfo,A as isTranslationMatrix,q as logWithBase,b as objectEmpty,D as packFloatRGBA,v as project,d as rayBoxTest,j as rayRay2D,k as rayTriangle3D,g as rgb2hex,x as setMatrixTranslation,y as setMatrixTranslation3,F as unpackFloatRGBA,f as verify};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{bindScreenSizePerspective as r}from\"../../../materials/internal/MaterialUtil.js\";function a(r){r.vertex.code.add(e`\n float screenSizePerspectiveMinSize(float size, vec4 factor) {\n float nonZeroSize = 1.0 - step(size, 0.0);\n\n return (\n factor.z * (\n 1.0 +\n // Multiply by nzs ensures if size is 0, then we ignore proportionally scaled padding\n nonZeroSize *\n 2.0 * factor.w / (\n size + (1.0 - nonZeroSize) // Adding 1 - nzs ensures we divide either by size, or by 1\n )\n )\n );\n }\n `),r.vertex.code.add(e`\n float screenSizePerspectiveViewAngleDependentFactor(float absCosAngle) {\n return absCosAngle * absCosAngle * absCosAngle;\n }\n `),r.vertex.code.add(e`\n vec4 screenSizePerspectiveScaleFactor(float absCosAngle, float distanceToCamera, vec4 params) {\n return vec4(\n min(params.x / (distanceToCamera - params.y), 1.0),\n screenSizePerspectiveViewAngleDependentFactor(absCosAngle),\n params.z,\n params.w\n );\n }\n `),r.vertex.code.add(e`\n float applyScreenSizePerspectiveScaleFactorFloat(float size, vec4 factor) {\n return max(mix(size * factor.x, size, factor.y), screenSizePerspectiveMinSize(size, factor));\n }\n `),r.vertex.code.add(e`\n float screenSizePerspectiveScaleFloat(float size, float absCosAngle, float distanceToCamera, vec4 params) {\n return applyScreenSizePerspectiveScaleFactorFloat(\n size,\n screenSizePerspectiveScaleFactor(absCosAngle, distanceToCamera, params)\n );\n }\n `),r.vertex.code.add(e`\n vec2 applyScreenSizePerspectiveScaleFactorVec2(vec2 size, vec4 factor) {\n return mix(size * clamp(factor.x, screenSizePerspectiveMinSize(size.y, factor) / size.y, 1.0), size, factor.y);\n }\n `),r.vertex.code.add(e`\n vec2 screenSizePerspectiveScaleVec2(vec2 size, float absCosAngle, float distanceToCamera, vec4 params) {\n return applyScreenSizePerspectiveScaleFactorVec2(size, screenSizePerspectiveScaleFactor(absCosAngle, distanceToCamera, params));\n }\n `)}!function(e){function a(e,a){if(a.screenSizePerspective){r(a.screenSizePerspective,e,\"screenSizePerspective\");const s=a.screenSizePerspectiveAlignment||a.screenSizePerspective;r(s,e,\"screenSizePerspectiveAlignment\")}}e.bindUniforms=a}(a||(a={}));export{a as ScreenSizePerspective};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{ScreenSizePerspective as r}from\"../util/ScreenSizePerspective.glsl.js\";function t(t,l){const c=t.vertex.code;l.verticalOffsetEnabled?(t.vertex.uniforms.add(\"verticalOffset\",\"vec4\"),l.screenSizePerspectiveEnabled&&(t.include(r),t.vertex.uniforms.add(\"screenSizePerspectiveAlignment\",\"vec4\")),c.add(e`\n vec3 calculateVerticalOffset(vec3 worldPos, vec3 localOrigin) {\n float viewDistance = length((view * vec4(worldPos, 1.0)).xyz);\n ${1===l.viewingMode?e`vec3 worldNormal = normalize(worldPos + localOrigin);`:e`vec3 worldNormal = vec3(0.0, 0.0, 1.0);`}\n ${l.screenSizePerspectiveEnabled?e`\n float cosAngle = dot(worldNormal, normalize(worldPos - camPos));\n float verticalOffsetScreenHeight = screenSizePerspectiveScaleFloat(verticalOffset.x, abs(cosAngle), viewDistance, screenSizePerspectiveAlignment);`:e`\n float verticalOffsetScreenHeight = verticalOffset.x;`}\n // Screen sized offset in world space, used for example for line callouts\n float worldOffset = clamp(verticalOffsetScreenHeight * verticalOffset.y * viewDistance, verticalOffset.z, verticalOffset.w);\n return worldNormal * worldOffset;\n }\n\n vec3 addVerticalOffset(vec3 worldPos, vec3 localOrigin) {\n return worldPos + calculateVerticalOffset(worldPos, localOrigin);\n }\n `)):c.add(e`\n vec3 addVerticalOffset(vec3 worldPos, vec3 localOrigin) { return worldPos; }\n `)}function l(e,r,t,l=c){return l.screenLength=e.screenLength,l.perDistance=Math.tan(.5*r)/(.5*t),l.minWorldLength=e.minWorldLength,l.maxWorldLength=e.maxWorldLength,l}!function(e){function r(e,r,t){if(!r.verticalOffset)return;const c=l(r.verticalOffset,t.camera.fovY,t.camera.fullViewport[3]),i=t.camera.pixelRatio||1;e.setUniform4f(\"verticalOffset\",c.screenLength*i,c.perDistance,c.minWorldLength,c.maxWorldLength)}e.bindUniforms=r}(t||(t={}));const c={screenLength:0,perDistance:0,minWorldLength:0,maxWorldLength:0};export{t as VerticalOffset,l as calculateVerticalOffsetFactors};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../shaderModules/interfaces.js\";function e(e){e.vertex.code.add(o`\n vec4 offsetBackfacingClipPosition(vec4 posClip, vec3 posWorld, vec3 normalWorld, vec3 camPosWorld) {\n vec3 camToVert = posWorld - camPosWorld;\n\n bool isBackface = dot(camToVert, normalWorld) > 0.0;\n if (isBackface) {\n posClip.z += 0.0000003 * posClip.w;\n }\n return posClip;\n }\n `)}export{e as Offset};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction t(t,e,i=32774,n=[0,0,0,0]){return{srcRgb:t,srcAlpha:t,dstRgb:e,dstAlpha:e,opRgb:i,opAlpha:i,color:{r:n[0],g:n[1],b:n[2],a:n[3]}}}function e(t,e,i,n,s=32774,l=32774,r=[0,0,0,0]){return{srcRgb:t,srcAlpha:e,dstRgb:i,dstAlpha:n,opRgb:s,opAlpha:l,color:{r:r[0],g:r[1],b:r[2],a:r[3]}}}const i={face:1029,mode:2305},n={zNear:0,zFar:1},s={r:!0,g:!0,b:!0,a:!0};function l(t){return f.intern(t)}function r(t){return I.intern(t)}function h(t){return S.intern(t)}function o(t){return T.intern(t)}function a(t){return O.intern(t)}function c(t){return w.intern(t)}function d(t){return D.intern(t)}function p(t){return m.intern(t)}function u(t){return k.intern(t)}class _{constructor(t,e){this.makeKey=t,this.makeRef=e,this.interns=new Map}intern(t){if(!t)return null;const e=this.makeKey(t),i=this.interns;return i.has(e)||i.set(e,this.makeRef(t)),i.get(e)}}function g(t){return\"[\"+t.join(\",\")+\"]\"}const f=new _(v,(t=>({__tag:\"Blending\",...t})));function v(t){return t?g([t.srcRgb,t.srcAlpha,t.dstRgb,t.dstAlpha,t.opRgb,t.opAlpha,t.color.r,t.color.g,t.color.b,t.color.a]):null}const I=new _(W,(t=>({__tag:\"Culling\",...t})));function W(t){return t?g([t.face,t.mode]):null}const S=new _(b,(t=>({__tag:\"PolygonOffset\",...t})));function b(t){return t?g([t.factor,t.units]):null}const T=new _(y,(t=>({__tag:\"DepthTest\",...t})));function y(t){return t?g([t.func]):null}const O=new _(R,(t=>({__tag:\"StencilTest\",...t})));function R(t){return t?g([t.function.func,t.function.ref,t.function.mask,t.operation.fail,t.operation.zFail,t.operation.zPass]):null}const w=new _(C,(t=>({__tag:\"DepthWrite\",...t})));function C(t){return t?g([t.zNear,t.zFar]):null}const D=new _(A,(t=>({__tag:\"ColorWrite\",...t})));function A(t){return t?g([t.r,t.g,t.b,t.a]):null}const m=new _(P,(t=>({__tag:\"StencilWrite\",...t})));function P(t){return t?g([t.mask]):null}const k=new _(z,(t=>({blending:l(t.blending),culling:r(t.culling),polygonOffset:h(t.polygonOffset),depthTest:o(t.depthTest),stencilTest:a(t.stencilTest),depthWrite:c(t.depthWrite),colorWrite:d(t.colorWrite),stencilWrite:p(t.stencilWrite)})));function z(t){return t?g([v(t.blending),W(t.culling),b(t.polygonOffset),y(t.depthTest),R(t.stencilTest),C(t.depthWrite),A(t.colorWrite),P(t.stencilWrite)]):null}class B{constructor(t){this._pipelineInvalid=!0,this._blendingInvalid=!0,this._cullingInvalid=!0,this._polygonOffsetInvalid=!0,this._depthTestInvalid=!0,this._stencilTestInvalid=!0,this._depthWriteInvalid=!0,this._colorWriteInvalid=!0,this._stencilWriteInvalid=!0,this._stateSetters=t}setPipeline(t){(this._pipelineInvalid||t!==this._pipeline)&&(this.setBlending(t.blending),this.setCulling(t.culling),this.setPolygonOffset(t.polygonOffset),this.setDepthTest(t.depthTest),this.setStencilTest(t.stencilTest),this.setDepthWrite(t.depthWrite),this.setColorWrite(t.colorWrite),this.setStencilWrite(t.stencilWrite),this._pipeline=t),this._pipelineInvalid=!1}invalidateBlending(){this._blendingInvalid=!0,this._pipelineInvalid=!0}invalidateCulling(){this._cullingInvalid=!0,this._pipelineInvalid=!0}invalidatePolygonOffset(){this._polygonOffsetInvalid=!0,this._pipelineInvalid=!0}invalidateDepthTest(){this._depthTestInvalid=!0,this._pipelineInvalid=!0}invalidateStencilTest(){this._stencilTestInvalid=!0,this._pipelineInvalid=!0}invalidateDepthWrite(){this._depthWriteInvalid=!0,this._pipelineInvalid=!0}invalidateColorWrite(){this._colorWriteInvalid=!0,this._pipelineInvalid=!0}invalidateStencilWrite(){this._stencilTestInvalid=!0,this._pipelineInvalid=!0}setBlending(t){this._blending=this.setSubState(t,this._blending,this._blendingInvalid,this._stateSetters.setBlending),this._blendingInvalid=!1}setCulling(t){this._culling=this.setSubState(t,this._culling,this._cullingInvalid,this._stateSetters.setCulling),this._cullingInvalid=!1}setPolygonOffset(t){this._polygonOffset=this.setSubState(t,this._polygonOffset,this._polygonOffsetInvalid,this._stateSetters.setPolygonOffset),this._polygonOffsetInvalid=!1}setDepthTest(t){this._depthTest=this.setSubState(t,this._depthTest,this._depthTestInvalid,this._stateSetters.setDepthTest),this._depthTestInvalid=!1}setStencilTest(t){this._stencilTest=this.setSubState(t,this._stencilTest,this._stencilTestInvalid,this._stateSetters.setStencilTest),this._stencilTestInvalid=!1}setDepthWrite(t){this._depthWrite=this.setSubState(t,this._depthWrite,this._depthWriteInvalid,this._stateSetters.setDepthWrite),this._depthWriteInvalid=!1}setColorWrite(t){this._colorWrite=this.setSubState(t,this._colorWrite,this._colorWriteInvalid,this._stateSetters.setColorWrite),this._colorWriteInvalid=!1}setStencilWrite(t){this._stencilWrite=this.setSubState(t,this._stencilWrite,this._stencilWriteInvalid,this._stateSetters.setStencilWrite),this._stencilTestInvalid=!1}setSubState(t,e,i,n){return(i||t!==e)&&(n(t),this._pipelineInvalid=!0),t}}export{B as StateTracker,i as backFaceCullingParams,s as defaultColorWriteParams,n as defaultDepthWriteParams,l as makeBlending,d as makeColorWrite,r as makeCulling,o as makeDepthTest,c as makeDepthWrite,u as makePipelineState,h as makePolygonOffset,a as makeStencilTest,p as makeStencilWrite,e as separateBlendingParams,t as simpleBlendingParams};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import r from\"../../core/Logger.js\";import\"../../core/Error.js\";r.getLogger(\"esri/views/webgl\");function o(r){}export{o as checkWebGLError};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport e from\"../request.js\";async function t(t,r){const{data:a}=await e(t,{responseType:\"image\",...r});return a}export{t as requestImage};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function c(c){c.code.add(e`\n vec4 premultiplyAlpha(vec4 v) {\n return vec4(v.rgb * v.a, v.a);\n }\n\n // Note: the min in the last line has been added to fix an instability in chrome.\n // See https://devtopia.esri.com/WebGIS/arcgis-js-api/issues/23911\n // With proper floating point handling, the value could never be >1.\n vec3 rgb2hsv(vec3 c) {\n vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);\n vec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);\n vec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);\n\n float d = q.x - min(q.w, q.y);\n float e = 1.0e-10;\n return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), min(d / (q.x + e), 1.0), q.x);\n }\n\n vec3 hsv2rgb(vec3 c) {\n vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\n vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\n return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\n }\n\n float rgb2v(vec3 c) {\n return max(c.x, max(c.y, c.z));\n }\n `)}export{c as ColorConversion};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{ColorConversion as t}from\"./ColorConversion.glsl.js\";function i(i){i.include(t),i.code.add(e`\n vec3 mixExternalColor(vec3 internalColor, vec3 textureColor, vec3 externalColor, int mode) {\n // workaround for artifacts in OSX using Intel Iris Pro\n // see: https://devtopia.esri.com/WebGIS/arcgis-js-api/issues/10475\n vec3 internalMixed = internalColor * textureColor;\n vec3 allMixed = internalMixed * externalColor;\n\n if (mode == ${e.int(1)}) {\n return allMixed;\n }\n else if (mode == ${e.int(2)}) {\n return internalMixed;\n }\n else if (mode == ${e.int(3)}) {\n return externalColor;\n }\n else {\n // tint (or something invalid)\n float vIn = rgb2v(internalMixed);\n vec3 hsvTint = rgb2hsv(externalColor);\n vec3 hsvOut = vec3(hsvTint.x, hsvTint.y, vIn * hsvTint.z);\n return hsv2rgb(hsvOut);\n }\n }\n\n float mixExternalOpacity(float internalOpacity, float textureOpacity, float externalOpacity, int mode) {\n // workaround for artifacts in OSX using Intel Iris Pro\n // see: https://devtopia.esri.com/WebGIS/arcgis-js-api/issues/10475\n float internalMixed = internalOpacity * textureOpacity;\n float allMixed = internalMixed * externalOpacity;\n\n if (mode == ${e.int(2)}) {\n return internalMixed;\n }\n else if (mode == ${e.int(3)}) {\n return externalOpacity;\n }\n else {\n // multiply or tint (or something invalid)\n return allMixed;\n }\n }\n `)}export{i as MixExternalColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import e from\"./Program.js\";import r from\"./BufferObject.js\";import t from\"./Texture.js\";import i from\"./VertexArrayObject.js\";import o from\"./FramebufferObject.js\";async function n(n){const a=new Image;if(a.src=\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='5' height='5' version='1.1' viewBox='0 0 5 5' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='5' height='5' fill='%23f00' fill-opacity='.5'/%3E%3C/svg%3E%0A\",a.width=5,a.height=5,await a.decode(),!n.gl)return!0;const s=new o(n,{colorTarget:0,depthStencilTarget:0},{target:3553,wrapMode:33071,pixelFormat:6408,dataType:5121,samplingMode:9728,width:1,height:1}),p=r.createVertex(n,35044,new Uint16Array([0,0,1,0,0,1,1,1])),m=new i(n,{a_pos:0},{geometry:[{name:\"a_pos\",count:2,type:5123,offset:0,stride:4,normalized:!1}]},{geometry:p}),d=new e(n,\"\\n precision highp float;\\n\\n attribute vec2 a_pos;\\n varying vec2 v_uv;\\n\\n void main() {\\n v_uv = a_pos;\\n gl_Position = vec4(a_pos * 2.0 - 1.0, 0.0, 1.0);\\n }\\n \",\"\\n precision highp float;\\n\\n varying vec2 v_uv;\\n uniform sampler2D u_texture;\\n\\n void main() {\\n gl_FragColor = texture2D(u_texture, v_uv);\\n }\\n \",{a_pos:0});n.bindProgram(d);const g=new t(n,{dataType:5121,pixelFormat:6408,preMultiplyAlpha:!1,wrapMode:33071,samplingMode:9729},a);n.bindTexture(g,0),d.setUniform1i(\"u_texture\",0);const c=n.getBoundFramebufferObject(),{x:f,y:u,width:l,height:w}=n.getViewport();n.bindFramebuffer(s),n.setViewport(0,0,1,1),n.bindVAO(m),n.drawArrays(5,0,4);const h=new Uint8Array(4);return s.readPixels(0,0,1,1,6408,5121,h),d.dispose(),m.dispose(!1),p.dispose(),s.dispose(),g.dispose(),n.setViewport(f,u,l,w),n.bindFramebuffer(c),a.src=\"\",255===h[0]}export{n as testSVGPremultipliedAlpha};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction t(t,...n){let o=\"\";for(let r=0;r1 back to 0->255 and then\n // add the components together with their corresponding\n // fixed point factors, i.e. (256^1, 256^2, 256^3, 256^4)\n return dot(rgba, RGBA_2_FLOAT_FACTORS);\n }\n `)}export{e as RgbaFloatEncoding};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nclass t{constructor(t,e,r=0,f,s){this.TypedArrayConstructor=t,this.elementCount=9;const i=this.TypedArrayConstructor;void 0===f&&(f=9*i.BYTES_PER_ELEMENT);const d=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,d):new i(e,d,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=f/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}getMat(t,e){const r=t*this.typedBufferStride;for(let f=0;f<9;f++)e[f]=this.typedBuffer[r+f];return e}setMat(t,e){const r=t*this.typedBufferStride;for(let f=0;f<9;f++)this.typedBuffer[r+f]=e[f]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}copyFrom(t,e,r){const f=this.typedBuffer,s=e.typedBuffer,i=t*this.typedBufferStride,d=r*e.typedBufferStride;for(let u=0;u<9;++u)f[i+u]=s[d+u]}get buffer(){return this.typedBuffer.buffer}}t.ElementCount=9;export{t as BufferViewMat3Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nclass t{constructor(t,e,r=0,f,s){this.TypedArrayConstructor=t,this.elementCount=16;const i=this.TypedArrayConstructor;void 0===f&&(f=16*i.BYTES_PER_ELEMENT);const d=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,d):new i(e,d,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=f/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}getMat(t,e){const r=t*this.typedBufferStride;for(let f=0;f<16;f++)e[f]=this.typedBuffer[r+f];return e}setMat(t,e){const r=t*this.typedBufferStride;for(let f=0;f<16;f++)this.typedBuffer[r+f]=e[f]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}copyFrom(t,e,r){const f=this.typedBuffer,s=e.typedBuffer,i=t*this.typedBufferStride,d=r*e.typedBufferStride;for(let u=0;u<16;++u)f[i+u]=s[d+u]}get buffer(){return this.typedBuffer.buffer}}t.ElementCount=16;export{t as BufferViewMat4Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nclass t{constructor(t,e,r=0,s,f){this.TypedArrayConstructor=t,this.elementCount=1;const i=this.TypedArrayConstructor;void 0===s&&(s=i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==f?new i(e,u):new i(e,u,(f-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=s/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}get(t){return this.typedBuffer[t*this.typedBufferStride]}set(t,e){this.typedBuffer[t*this.typedBufferStride]=e}get buffer(){return this.typedBuffer.buffer}}t.ElementCount=1;export{t as BufferViewScalarImpl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{s as t}from\"../../../../../chunks/vec2.js\";class e{constructor(t,e,r=0,f,s){this.TypedArrayConstructor=t,this.elementCount=2;const i=this.TypedArrayConstructor;void 0===f&&(f=2*i.BYTES_PER_ELEMENT);const d=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,d):new i(e,d,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=f/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}getVec(e,r){return t(r,this.typedBuffer[e*this.typedBufferStride],this.typedBuffer[e*this.typedBufferStride+1])}setVec(t,e){this.typedBuffer[t*this.typedBufferStride]=e[0],this.typedBuffer[t*this.typedBufferStride+1]=e[1]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}setValues(t,e,r){this.typedBuffer[t*this.typedBufferStride]=e,this.typedBuffer[t*this.typedBufferStride+1]=r}copyFrom(t,e,r){const f=this.typedBuffer,s=e.typedBuffer,i=t*this.typedBufferStride,d=r*e.typedBufferStride;f[i]=s[d],f[i+1]=s[d+1]}get buffer(){return this.typedBuffer.buffer}}e.ElementCount=2;export{e as BufferViewVec2Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{s as t}from\"../../../../../chunks/vec3.js\";class e{constructor(t,e,r=0,f,i){this.TypedArrayConstructor=t,this.elementCount=3;const s=this.TypedArrayConstructor;void 0===f&&(f=3*s.BYTES_PER_ELEMENT);const d=0===e.byteLength?0:r;this.typedBuffer=null==i?new s(e,d):new s(e,d,(i-r)/s.BYTES_PER_ELEMENT),this.typedBufferStride=f/s.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}getVec(e,r){return t(r,this.typedBuffer[e*this.typedBufferStride],this.typedBuffer[e*this.typedBufferStride+1],this.typedBuffer[e*this.typedBufferStride+2])}setVec(t,e){this.typedBuffer[t*this.typedBufferStride]=e[0],this.typedBuffer[t*this.typedBufferStride+1]=e[1],this.typedBuffer[t*this.typedBufferStride+2]=e[2]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}setValues(t,e,r,f){this.typedBuffer[t*this.typedBufferStride]=e,this.typedBuffer[t*this.typedBufferStride+1]=r,this.typedBuffer[t*this.typedBufferStride+2]=f}copyFrom(t,e,r){const f=this.typedBuffer,i=e.typedBuffer,s=t*this.typedBufferStride,d=r*e.typedBufferStride;f[s]=i[d],f[s+1]=i[d+1],f[s+2]=i[d+2]}get buffer(){return this.typedBuffer.buffer}}e.ElementCount=3;export{e as BufferViewVec3Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{s as t}from\"../../../../../chunks/vec4.js\";class e{constructor(t,e,r=0,f,i){this.TypedArrayConstructor=t,this.elementCount=4;const d=this.TypedArrayConstructor;void 0===f&&(f=4*d.BYTES_PER_ELEMENT);const s=0===e.byteLength?0:r;this.typedBuffer=null==i?new d(e,s):new d(e,s,(i-r)/d.BYTES_PER_ELEMENT),this.typedBufferStride=f/d.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}getVec(e,r){return t(r,this.typedBuffer[e*this.typedBufferStride],this.typedBuffer[e*this.typedBufferStride+1],this.typedBuffer[e*this.typedBufferStride+2],this.typedBuffer[e*this.typedBufferStride+3])}setVec(t,e){this.typedBuffer[t*this.typedBufferStride]=e[0],this.typedBuffer[t*this.typedBufferStride+1]=e[1],this.typedBuffer[t*this.typedBufferStride+2]=e[2],this.typedBuffer[t*this.typedBufferStride+3]=e[3]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}setValues(t,e,r,f,i){this.typedBuffer[t*this.typedBufferStride]=e,this.typedBuffer[t*this.typedBufferStride+1]=r,this.typedBuffer[t*this.typedBufferStride+2]=f,this.typedBuffer[t*this.typedBufferStride+3]=i}copyFrom(t,e,r){const f=this.typedBuffer,i=e.typedBuffer,d=t*this.typedBufferStride,s=r*e.typedBufferStride;f[d]=i[s],f[d+1]=i[s+1],f[d+2]=i[s+2],f[d+3]=i[s+3]}get buffer(){return this.typedBuffer.buffer}}e.ElementCount=4;export{e as BufferViewVec4Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{BufferViewMat3Impl as e}from\"./internals/Mat3.js\";import{BufferViewMat4Impl as t}from\"./internals/Mat4.js\";import{BufferViewScalarImpl as r}from\"./internals/Scalar.js\";import{BufferViewVec2Impl as s}from\"./internals/Vec2.js\";import{BufferViewVec3Impl as n}from\"./internals/Vec3.js\";import{BufferViewVec4Impl as y}from\"./internals/Vec4.js\";class f extends r{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}static fromTypedArray(e,t){return new f(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}f.ElementType=\"f32\";class u extends s{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}static fromTypedArray(e,t){return new u(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}u.ElementType=\"f32\";class a extends n{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}static fromTypedArray(e,t){return new a(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}a.ElementType=\"f32\";class p extends y{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}static fromTypedArray(e,t){return new p(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}p.ElementType=\"f32\";class c extends e{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}static fromTypedArray(e,t){return new c(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}c.ElementType=\"f32\";class b extends e{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}static fromTypedArray(e,t){return new b(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}b.ElementType=\"f64\";class o extends t{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}static fromTypedArray(e,t){return new o(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}o.ElementType=\"f32\";class l extends t{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}static fromTypedArray(e,t){return new l(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}l.ElementType=\"f64\";class i extends r{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}static fromTypedArray(e,t){return new i(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}i.ElementType=\"f64\";class m extends s{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}static fromTypedArray(e,t){return new m(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}m.ElementType=\"f64\";class T extends n{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}static fromTypedArray(e,t){return new T(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}T.ElementType=\"f64\";class d extends y{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}static fromTypedArray(e,t){return new d(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}d.ElementType=\"f64\";class h extends r{constructor(e,t=0,r,s){super(Uint8Array,e,t,r,s),this.elementType=\"u8\"}static fromTypedArray(e,t){return new h(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}h.ElementType=\"u8\";class A extends s{constructor(e,t=0,r,s){super(Uint8Array,e,t,r,s),this.elementType=\"u8\"}static fromTypedArray(e,t){return new A(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}A.ElementType=\"u8\";class O extends n{constructor(e,t=0,r,s){super(Uint8Array,e,t,r,s),this.elementType=\"u8\"}static fromTypedArray(e,t){return new O(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}O.ElementType=\"u8\";class x extends y{constructor(e,t=0,r,s){super(Uint8Array,e,t,r,s),this.elementType=\"u8\"}static fromTypedArray(e,t){return new x(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}x.ElementType=\"u8\";class g extends r{constructor(e,t=0,r,s){super(Uint16Array,e,t,r,s),this.elementType=\"u16\"}static fromTypedArray(e,t){return new g(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}g.ElementType=\"u16\";class w extends s{constructor(e,t=0,r,s){super(Uint16Array,e,t,r,s),this.elementType=\"u16\"}static fromTypedArray(e,t){return new w(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}w.ElementType=\"u16\";class E extends n{constructor(e,t=0,r,s){super(Uint16Array,e,t,r,s),this.elementType=\"u16\"}static fromTypedArray(e,t){return new E(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}E.ElementType=\"u16\";class L extends y{constructor(e,t=0,r,s){super(Uint16Array,e,t,r,s),this.elementType=\"u16\"}static fromTypedArray(e,t){return new L(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}L.ElementType=\"u16\";class F extends r{constructor(e,t=0,r,s){super(Uint32Array,e,t,r,s),this.elementType=\"u32\"}static fromTypedArray(e,t){return new F(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}F.ElementType=\"u32\";class I extends s{constructor(e,t=0,r,s){super(Uint32Array,e,t,r,s),this.elementType=\"u32\"}static fromTypedArray(e,t){return new I(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}I.ElementType=\"u32\";class U extends n{constructor(e,t=0,r,s){super(Uint32Array,e,t,r,s),this.elementType=\"u32\"}static fromTypedArray(e,t){return new U(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}U.ElementType=\"u32\";class j extends y{constructor(e,t=0,r,s){super(Uint32Array,e,t,r,s),this.elementType=\"u32\"}static fromTypedArray(e,t){return new j(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}j.ElementType=\"u32\";class V extends r{constructor(e,t=0,r,s){super(Int8Array,e,t,r,s),this.elementType=\"i8\"}static fromTypedArray(e,t){return new V(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}V.ElementType=\"i8\";class M extends s{constructor(e,t=0,r,s){super(Int8Array,e,t,r,s),this.elementType=\"i8\"}static fromTypedArray(e,t){return new M(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}M.ElementType=\"i8\";class S extends n{constructor(e,t=0,r,s){super(Int8Array,e,t,r,s),this.elementType=\"i8\"}static fromTypedArray(e,t){return new S(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}S.ElementType=\"i8\";class k extends y{constructor(e,t=0,r,s){super(Int8Array,e,t,r,s),this.elementType=\"i8\"}static fromTypedArray(e,t){return new k(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}k.ElementType=\"i8\";class q extends r{constructor(e,t=0,r,s){super(Int16Array,e,t,r,s),this.elementType=\"i16\"}static fromTypedArray(e,t){return new q(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}q.ElementType=\"i16\";class v extends s{constructor(e,t=0,r,s){super(Int16Array,e,t,r,s),this.elementType=\"i16\"}static fromTypedArray(e,t){return new v(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}v.ElementType=\"i16\";class z extends n{constructor(e,t=0,r,s){super(Int16Array,e,t,r,s),this.elementType=\"i16\"}static fromTypedArray(e,t){return new z(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}z.ElementType=\"i16\";class B extends y{constructor(e,t=0,r,s){super(Int16Array,e,t,r,s),this.elementType=\"i16\"}static fromTypedArray(e,t){return new B(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}B.ElementType=\"i16\";class C extends r{constructor(e,t=0,r,s){super(Int32Array,e,t,r,s),this.elementType=\"i32\"}static fromTypedArray(e,t){return new C(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}C.ElementType=\"i32\";class D extends s{constructor(e,t=0,r,s){super(Int32Array,e,t,r,s),this.elementType=\"i32\"}static fromTypedArray(e,t){return new D(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}D.ElementType=\"i32\";class G extends n{constructor(e,t=0,r,s){super(Int32Array,e,t,r,s),this.elementType=\"i32\"}static fromTypedArray(e,t){return new G(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}G.ElementType=\"i32\";class H extends y{constructor(e,t=0,r,s){super(Int32Array,e,t,r,s),this.elementType=\"i32\"}static fromTypedArray(e,t){return new H(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}H.ElementType=\"i32\";export{f as BufferViewFloat,i as BufferViewFloat64,q as BufferViewInt16,C as BufferViewInt32,V as BufferViewInt8,c as BufferViewMat3f,b as BufferViewMat3f64,o as BufferViewMat4f,l as BufferViewMat4f64,g as BufferViewUint16,F as BufferViewUint32,h as BufferViewUint8,u as BufferViewVec2f,m as BufferViewVec2f64,v as BufferViewVec2i16,D as BufferViewVec2i32,M as BufferViewVec2i8,w as BufferViewVec2u16,I as BufferViewVec2u32,A as BufferViewVec2u8,a as BufferViewVec3f,T as BufferViewVec3f64,z as BufferViewVec3i16,G as BufferViewVec3i32,S as BufferViewVec3i8,E as BufferViewVec3u16,U as BufferViewVec3u32,O as BufferViewVec3u8,p as BufferViewVec4f,d as BufferViewVec4f64,B as BufferViewVec4i16,H as BufferViewVec4i32,k as BufferViewVec4i8,L as BufferViewVec4u16,j as BufferViewVec4u32,x as BufferViewVec4u8};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function t(t){const a=t.fragment.code;a.add(e`\n vec3 evaluateDiffuseIlluminationHemisphere(vec3 ambientGround, vec3 ambientSky, float NdotNG)\n {\n return ((1.0 - NdotNG) * ambientGround + (1.0 + NdotNG) * ambientSky) * 0.5;\n }\n `),a.add(e`\n float integratedRadiance(float cosTheta2, float roughness)\n {\n return (cosTheta2 - 1.0) / (cosTheta2 * (1.0 - roughness * roughness) - 1.0);\n }\n `),a.add(e`\n vec3 evaluateSpecularIlluminationHemisphere(vec3 ambientGround, vec3 ambientSky, float RdotNG, float roughness)\n {\n float cosTheta2 = 1.0 - RdotNG * RdotNG;\n float intRadTheta = integratedRadiance(cosTheta2, roughness);\n\n // Calculate the integrated directional radiance of the ground and the sky\n float ground = RdotNG < 0.0 ? 1.0 - intRadTheta : 1.0 + intRadTheta;\n float sky = 2.0 - ground;\n return (ground * ambientGround + sky * ambientSky) * 0.5;\n }\n `)}export{t as AnalyticalSkyModel};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{PiUtils as o}from\"./PiUtils.glsl.js\";import{AnalyticalSkyModel as t}from\"./AnalyticalSkyModel.glsl.js\";function n(n,a){const r=n.fragment.code;n.include(o),3===a.pbrMode||4===a.pbrMode?(r.add(e`\n struct PBRShadingWater\n {\n float NdotL; // cos angle between normal and light direction\n float NdotV; // cos angle between normal and view direction\n float NdotH; // cos angle between normal and half vector\n float VdotH; // cos angle between view direction and half vector\n float LdotH; // cos angle between light direction and half vector\n float VdotN; // cos angle between view direction and normal vector\n };\n\n float dtrExponent = ${a.useCustomDTRExponentForWater?\"2.2\":\"2.0\"};\n `),r.add(e`\n vec3 fresnelReflection(float angle, vec3 f0, float f90) {\n return f0 + (f90 - f0) * pow(1.0 - angle, 5.0);\n }\n `),r.add(e`\n float normalDistributionWater(float NdotH, float roughness)\n {\n float r2 = roughness * roughness;\n float NdotH2 = NdotH * NdotH;\n float denom = pow((NdotH2 * (r2 - 1.0) + 1.0), dtrExponent) * PI;\n return r2 / denom;\n }\n `),r.add(e`\n float geometricOcclusionKelemen(float LoH)\n {\n return 0.25 / (LoH * LoH);\n }\n `),r.add(e`\n vec3 brdfSpecularWater(in PBRShadingWater props, float roughness, vec3 F0, float F0Max)\n {\n vec3 F = fresnelReflection(props.VdotH, F0, F0Max);\n float dSun = normalDistributionWater(props.NdotH, roughness);\n float V = geometricOcclusionKelemen(props.LdotH);\n\n float diffusionSunHaze = mix(roughness + 0.045, roughness + 0.385, 1.0 - props.VdotH);\n float strengthSunHaze = 1.2;\n float dSunHaze = normalDistributionWater(props.NdotH, diffusionSunHaze)*strengthSunHaze;\n\n return ((dSun + dSunHaze) * V) * F;\n }\n\n vec3 tonemapACES(const vec3 x) {\n return (x * (2.51 * x + 0.03)) / (x * (2.43 * x + 0.59) + 0.14);\n }\n `)):1!==a.pbrMode&&2!==a.pbrMode||(n.include(t),r.add(e`\n struct PBRShadingInfo\n {\n float NdotL; // cos angle between normal and light direction\n float NdotV; // cos angle between normal and view direction\n float NdotH; // cos angle between normal and half vector\n float VdotH; // cos angle between view direction and half vector\n float LdotH; // cos angle between view light direction and half vector\n float NdotNG; // cos angle between normal and normal of the ground\n float RdotNG; // cos angle between view direction reflected of the normal and normal of the ground\n float NdotAmbDir; // cos angle between view direction and the fill light in ambient illumination\n float NdotH_Horizon; // cos angle between normal and half vector defined with horizon illumination\n vec3 skyRadianceToSurface; // integrated radiance of the sky based on the surface roughness (used for specular reflection)\n vec3 groundRadianceToSurface; // integrated radiance of the ground based on the surface roughness (used for specular reflection)\n vec3 skyIrradianceToSurface; // irradiance of the sky (used for diffuse reflection)\n vec3 groundIrradianceToSurface; // irradiance of the ground (used for diffuse reflection)\n\n float averageAmbientRadiance; // average ambient radiance used to deduce black level in gamut mapping\n float ssao; // ssao coefficient\n vec3 albedoLinear; // linear color of the albedo\n vec3 f0; // fresnel value at normal incident light\n vec3 f90; // fresnel value at 90o of incident light\n\n vec3 diffuseColor; // diffuse color of the material used in environment illumination\n float metalness; // metalness of the material\n float roughness; // roughness of the material\n };\n `),r.add(e`\n float normalDistribution(float NdotH, float roughness)\n {\n float a = NdotH * roughness;\n float b = roughness / (1.0 - NdotH * NdotH + a * a);\n return b * b * INV_PI;\n }\n `),r.add(e`\n const vec4 c0 = vec4(-1.0, -0.0275, -0.572, 0.022);\n const vec4 c1 = vec4( 1.0, 0.0425, 1.040, -0.040);\n const vec2 c2 = vec2(-1.04, 1.04);\n\n vec2 prefilteredDFGAnalytical(float roughness, float NdotV) {\n vec4 r = roughness * c0 + c1;\n float a004 = min(r.x * r.x, exp2(-9.28 * NdotV)) * r.x + r.y;\n return c2 * a004 + r.zw;\n }\n `),r.add(e`\n vec3 evaluateEnvironmentIllumination(PBRShadingInfo inputs) {\n vec3 indirectDiffuse = evaluateDiffuseIlluminationHemisphere(inputs.groundIrradianceToSurface, inputs.skyIrradianceToSurface, inputs.NdotNG);\n vec3 indirectSpecular = evaluateSpecularIlluminationHemisphere(inputs.groundRadianceToSurface, inputs.skyRadianceToSurface, inputs.RdotNG, inputs.roughness);\n\n // From diffuse illumination calculate reflected color\n vec3 diffuseComponent = inputs.diffuseColor * indirectDiffuse * INV_PI;\n\n // From specular illumination calculate reflected color\n vec2 dfg = prefilteredDFGAnalytical(inputs.roughness, inputs.NdotV);\n vec3 specularColor = inputs.f0 * dfg.x + inputs.f90 * dfg.y;\n vec3 specularComponent = specularColor * indirectSpecular;\n\n return (diffuseComponent + specularComponent);\n }\n `),r.add(e`\n float gamutMapChanel(float x, vec2 p){\n return (x < p.x) ? mix(0.0, p.y, x/p.x) : mix(p.y, 1.0, (x - p.x) / (1.0 - p.x) );\n }`),r.add(e`\n vec3 blackLevelSoftCompression(vec3 inColor, PBRShadingInfo inputs){\n vec3 outColor;\n vec2 p = vec2(0.02 * (inputs.averageAmbientRadiance), 0.0075 * (inputs.averageAmbientRadiance));\n outColor.x = gamutMapChanel(inColor.x, p) ;\n outColor.y = gamutMapChanel(inColor.y, p) ;\n outColor.z = gamutMapChanel(inColor.z, p) ;\n return outColor;\n }\n `))}export{n as PhysicallyBasedRendering};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport e from\"../../../../../core/Logger.js\";const t=e.getLogger(\"esri.views.3d.webgl-engine.core.shaderModules.shaderBuilder\");class r{constructor(){this.includedModules=new Map}include(e,r){this.includedModules.has(e)?this.includedModules.get(e)!==r&&t.error(\"Trying to include shader module multiple times with different sets of options.\"):(this.includedModules.set(e,r),e(this.builder,r))}}class n extends r{constructor(){super(...arguments),this.vertex=new o,this.fragment=new o,this.attributes=new a,this.varyings=new c,this.extensions=new u,this.constants=new h}get builder(){return this}generateSource(e){const t=this.extensions.generateSource(e),r=this.attributes.generateSource(e),n=this.varyings.generateSource(),s=\"vertex\"===e?this.vertex:this.fragment,i=s.uniforms.generateSource(),o=s.code.generateSource(),a=\"vertex\"===e?d:S,c=this.constants.generateSource().concat(s.constants.generateSource());return`\\n${t.join(\"\\n\")}\\n\\n${a}\\n\\n${c.join(\"\\n\")}\\n\\n${i.join(\"\\n\")}\\n\\n${r.join(\"\\n\")}\\n\\n${n.join(\"\\n\")}\\n\\n${o.join(\"\\n\")}`}}class s{constructor(){this._entries=new Array,this._set=new Set}add(e,t,r){const n=`${e}_${t}_${r}`;return this._set.has(n)||(this._entries.push([e,t,r]),this._set.add(n)),this}generateSource(){const e=e=>e?`[${e}]`:\"\";return this._entries.map((t=>`uniform ${t[1]} ${t[0]}${e(t[2])};`))}}class i{constructor(){this._entries=new Array}add(e){this._entries.push(e)}generateSource(){return this._entries}}class o extends r{constructor(){super(...arguments),this.uniforms=new s,this.code=new i,this.constants=new h}get builder(){return this}}class a{constructor(){this._entries=new Array}add(e,t){this._entries.push([e,t])}generateSource(e){return\"fragment\"===e?[]:this._entries.map((e=>`attribute ${e[1]} ${e[0]};`))}}class c{constructor(){this._entries=new Array}add(e,t){this._entries.push([e,t])}generateSource(){return this._entries.map((e=>`varying ${e[1]} ${e[0]};`))}}class u{constructor(){this._entries=new Set}add(e){this._entries.add(e)}generateSource(e){const t=\"vertex\"===e?u.ALLOWLIST_VERTEX:u.ALLOWLIST_FRAGMENT;return Array.from(this._entries).filter((e=>t.includes(e))).map((e=>`#extension ${e} : enable`))}}u.ALLOWLIST_FRAGMENT=[\"GL_EXT_shader_texture_lod\",\"GL_OES_standard_derivatives\"],u.ALLOWLIST_VERTEX=[];class h{constructor(){this._entries=[]}add(e,t,r){let n=\"ERROR_CONSTRUCTOR_STRING\";switch(t){case\"float\":n=h.numberToFloatStr(r);break;case\"int\":n=h.numberToIntStr(r);break;case\"bool\":n=r.toString();break;case\"vec2\":n=`vec2(${h.numberToFloatStr(r[0])}, ${h.numberToFloatStr(r[1])})`;break;case\"vec3\":n=`vec3(${h.numberToFloatStr(r[0])}, ${h.numberToFloatStr(r[1])}, ${h.numberToFloatStr(r[2])})`;break;case\"vec4\":n=`vec4(${h.numberToFloatStr(r[0])}, ${h.numberToFloatStr(r[1])}, ${h.numberToFloatStr(r[2])}, ${h.numberToFloatStr(r[3])})`;break;case\"ivec2\":n=`ivec2(${h.numberToIntStr(r[0])}, ${h.numberToIntStr(r[1])})`;break;case\"ivec3\":n=`ivec3(${h.numberToIntStr(r[0])}, ${h.numberToIntStr(r[1])}, ${h.numberToIntStr(r[2])})`;break;case\"ivec4\":n=`ivec4(${h.numberToIntStr(r[0])}, ${h.numberToIntStr(r[1])}, ${h.numberToIntStr(r[2])}, ${h.numberToIntStr(r[3])})`;break;case\"bvec2\":n=`bvec2(${r[0].toString()}, ${r[1].toString()})`;break;case\"bvec3\":n=`bvec3(${r[0].toString()}, ${r[1].toString()}, ${r[2].toString()})`;break;case\"bvec4\":n=`bvec4(${r[0].toString()}, ${r[1].toString()}, ${r[2].toString()}, ${r[3].toString()})`;break;case\"mat2\":case\"mat3\":case\"mat4\":n=`${t}(${Array.prototype.map.call(r,(e=>h.numberToFloatStr(e))).join(\", \")})`}return this._entries.push(`const ${t} ${e} = ${n};`),this}static numberToIntStr(e){return e.toFixed(0)}static numberToFloatStr(e){return Number.isInteger(e)?e.toFixed(1):e.toString()}generateSource(){return Array.from(this._entries)}}const S=\"#ifdef GL_FRAGMENT_PRECISION_HIGH\\n precision highp float;\\n precision highp sampler2D;\\n#else\\n precision mediump float;\\n precision mediump sampler2D;\\n#endif\",d=\"precision highp float;\\nprecision highp sampler2D;\";export{i as Code,r as Includes,n as ShaderBuilder,o as Stage};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{b as e}from\"../../../../../../chunks/vec4f64.js\";import{glsl as i}from\"../../shaderModules/interfaces.js\";const t=e(1,1,0,1),o=e(1,0,1,1);function r(e){e.fragment.uniforms.add(\"depthTex\",\"sampler2D\"),e.fragment.uniforms.add(\"highlightViewportPixelSz\",\"vec4\"),e.fragment.constants.add(\"occludedHighlightFlag\",\"vec4\",t).add(\"unoccludedHighlightFlag\",\"vec4\",o),e.fragment.code.add(i`\n void outputHighlight() {\n vec4 fragCoord = gl_FragCoord;\n\n float sceneDepth = texture2D(depthTex, (fragCoord.xy - highlightViewportPixelSz.xy) * highlightViewportPixelSz.zw).r;\n if (fragCoord.z > sceneDepth + 5e-7) {\n gl_FragColor = occludedHighlightFlag;\n }\n else {\n gl_FragColor = unoccludedHighlightFlag;\n }\n }\n `)}!function(e){function i(e,i,t){e.bindTexture(t.highlightDepthTexture,5),i.setUniform1i(\"depthTex\",5),i.setUniform4f(\"highlightViewportPixelSz\",0,0,t.inverseViewport[0],t.inverseViewport[1])}e.bindOutputHighlight=i}(r||(r={}));export{r as OutputHighlight,t as occludedHighlightFlag,o as unoccludedHighlightFlag};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../../../../core/has.js\";import{isNone as e,isSome as n}from\"../../../../core/maybe.js\";import\"../../../../core/mathUtils.js\";import{f as t}from\"../../../../chunks/vec3f64.js\";import o from\"../../../webgl/Program.js\";import{unpackFloatRGBA as i}from\"./Util.js\";import r from\"../../../webgl/BufferObject.js\";import s from\"../../../webgl/VertexArrayObject.js\";import{encodeDoubleArray as a}from\"./doublePrecisionUtils.js\";import c from\"../../../webgl/FramebufferObject.js\";import{testSVGPremultipliedAlpha as l}from\"../../../webgl/testSVGPremultipliedAlpha.js\";class u{constructor(e){this.context=e,this.svgAlwaysPremultipliesAlpha=!1,this._doublePrecisionRequiresObfuscation=null,l(e).then((e=>{this.svgAlwaysPremultipliesAlpha=!e}))}get doublePrecisionRequiresObfuscation(){if(e(this._doublePrecisionRequiresObfuscation)){const e=v(this.context,!1),n=v(this.context,!0);this._doublePrecisionRequiresObfuscation=0!==e&&(0===n||e/n>5)}return this._doublePrecisionRequiresObfuscation}}let f=null;function p(n){return(e(f)||f.context!==n)&&(f=new u(n)),f}function h(e){n(f)&&f.context===e&&(f=null)}function v(e,n){const l=new c(e,{colorTarget:0,depthStencilTarget:0},{target:3553,wrapMode:33071,pixelFormat:6408,dataType:5121,samplingMode:9728,width:1,height:1});function u(t,i){const r=new o(e,`\\n\\n precision highp float;\\n\\n attribute vec2 a_pos;\\n\\n uniform vec3 u_highA;\\n uniform vec3 u_lowA;\\n uniform vec3 u_highB;\\n uniform vec3 u_lowB;\\n\\n varying vec4 v_color;\\n\\n ${n?\"#define DOUBLE_PRECISION_REQUIRES_OBFUSCATION\":\"\"}\\n\\n #ifdef DOUBLE_PRECISION_REQUIRES_OBFUSCATION\\n\\n vec3 dpPlusFrc(vec3 a, vec3 b) {\\n return mix(a, a + b, vec3(notEqual(b, vec3(0))));\\n }\\n\\n vec3 dpMinusFrc(vec3 a, vec3 b) {\\n return mix(vec3(0), a - b, vec3(notEqual(a, b)));\\n }\\n\\n vec3 dpAdd(vec3 hiA, vec3 loA, vec3 hiB, vec3 loB) {\\n vec3 t1 = dpPlusFrc(hiA, hiB);\\n vec3 e = dpMinusFrc(t1, hiA);\\n vec3 t2 = dpMinusFrc(hiB, e) + dpMinusFrc(hiA, dpMinusFrc(t1, e)) + loA + loB;\\n return t1 + t2;\\n }\\n\\n #else\\n\\n vec3 dpAdd(vec3 hiA, vec3 loA, vec3 hiB, vec3 loB) {\\n vec3 t1 = hiA + hiB;\\n vec3 e = t1 - hiA;\\n vec3 t2 = ((hiB - e) + (hiA - (t1 - e))) + loA + loB;\\n return t1 + t2;\\n }\\n\\n #endif\\n\\n const float MAX_RGBA_FLOAT =\\n 255.0 / 256.0 +\\n 255.0 / 256.0 / 256.0 +\\n 255.0 / 256.0 / 256.0 / 256.0 +\\n 255.0 / 256.0 / 256.0 / 256.0 / 256.0;\\n\\n const vec4 FIXED_POINT_FACTORS = vec4(1.0, 256.0, 256.0 * 256.0, 256.0 * 256.0 * 256.0);\\n\\n vec4 float2rgba(const float value) {\\n // Make sure value is in the domain we can represent\\n float valueInValidDomain = clamp(value, 0.0, MAX_RGBA_FLOAT);\\n\\n // Decompose value in 32bit fixed point parts represented as\\n // uint8 rgba components. Decomposition uses the fractional part after multiplying\\n // by a power of 256 (this removes the bits that are represented in the previous\\n // component) and then converts the fractional part to 8bits.\\n vec4 fixedPointU8 = floor(fract(valueInValidDomain * FIXED_POINT_FACTORS) * 256.0);\\n\\n // Convert uint8 values (from 0 to 255) to floating point representation for\\n // the shader\\n const float toU8AsFloat = 1.0 / 255.0;\\n\\n return fixedPointU8 * toU8AsFloat;\\n }\\n\\n void main() {\\n vec3 val = dpAdd(u_highA, u_lowA, -u_highB, -u_lowB);\\n\\n v_color = float2rgba(val.z / 25.0);\\n\\n gl_Position = vec4(a_pos * 2.0 - 1.0, 0.0, 1.0);\\n }\\n `,\"\\n precision highp float;\\n\\n varying vec4 v_color;\\n\\n void main() {\\n gl_FragColor = v_color;\\n }\\n \",{a_pos:0}),s=new Float32Array(6);a(t,s,3);const c=new Float32Array(6);return a(i,c,3),e.bindProgram(r),r.setUniform3f(\"u_highA\",s[0],s[2],s[4]),r.setUniform3f(\"u_lowA\",s[1],s[3],s[5]),r.setUniform3f(\"u_highB\",c[0],c[2],c[4]),r.setUniform3f(\"u_lowB\",c[1],c[3],c[5]),r}const f=r.createVertex(e,35044,new Uint16Array([0,0,1,0,0,1,1,1])),p=new s(e,{a_pos:0},{geometry:[{name:\"a_pos\",count:2,type:5123,offset:0,stride:4,normalized:!1}]},{geometry:f}),h=t(5633261.287538229,2626832.878767164,1434988.0495278358),v=t(5633271.46742708,2626873.6381334523,1434963.231608387),m=u(h,v),d=e.getBoundFramebufferObject(),{x:A,y:b,width:_,height:g}=e.getViewport();e.bindFramebuffer(l),e.setViewport(0,0,1,1),e.bindVAO(p),e.drawArrays(5,0,4);const w=new Uint8Array(4);l.readPixels(0,0,1,1,6408,5121,w),m.dispose(),p.dispose(!1),f.dispose(),l.dispose(),e.setViewport(A,b,_,g),e.bindFramebuffer(d);const F=(h[2]-v[2])/25,B=i(w);return Math.abs(F-B)}export{h as clearTestWebGLDriver,p as testWebGLDriver};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport e from\"../../../../../../core/has.js\";import{glsl as c}from\"../../shaderModules/interfaces.js\";import{testWebGLDriver as i}from\"../../../lib/WebGLDriverTest.js\";function o({code:e},i){i.doublePrecisionRequiresObfuscation?e.add(c`\n vec3 dpPlusFrc(vec3 a, vec3 b) {\n return mix(a, a + b, vec3(notEqual(b, vec3(0))));\n }\n\n vec3 dpMinusFrc(vec3 a, vec3 b) {\n return mix(vec3(0), a - b, vec3(notEqual(a, b)));\n }\n\n // based on https://www.thasler.com/blog/blog/glsl-part2-emu\n vec3 dpAdd(vec3 hiA, vec3 loA, vec3 hiB, vec3 loB) {\n vec3 t1 = dpPlusFrc(hiA, hiB);\n vec3 e = dpMinusFrc(t1, hiA);\n vec3 t2 = dpMinusFrc(hiB, e) + dpMinusFrc(hiA, dpMinusFrc(t1, e)) + loA + loB;\n return t1 + t2;\n }\n `):e.add(c`\n vec3 dpAdd(vec3 hiA, vec3 loA, vec3 hiB, vec3 loB) {\n vec3 t1 = hiA + hiB;\n vec3 e = t1 - hiA;\n vec3 t2 = ((hiB - e) + (hiA - (t1 - e))) + loA + loB;\n return t1 + t2;\n }\n `)}function r(c){return!!e(\"force-double-precision-obfuscation\")||i(c).doublePrecisionRequiresObfuscation}export{o as DoublePrecision,r as doublePrecisionRequiresObfuscation};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../../../../core/shaderModules/interfaces.js\";function l(l){l.vertex.code.add(o`\n vec4 decodeSymbolColor(vec4 symbolColor, out int colorMixMode) {\n float symbolAlpha = 0.0;\n\n const float maxTint = 85.0;\n const float maxReplace = 170.0;\n const float scaleAlpha = 3.0;\n\n if (symbolColor.a > maxReplace) {\n colorMixMode = ${o.int(1)};\n symbolAlpha = scaleAlpha * (symbolColor.a - maxReplace);\n } else if (symbolColor.a > maxTint) {\n colorMixMode = ${o.int(3)};\n symbolAlpha = scaleAlpha * (symbolColor.a - maxTint);\n } else if (symbolColor.a > 0.0) {\n colorMixMode = ${o.int(4)};\n symbolAlpha = scaleAlpha * symbolColor.a;\n } else {\n colorMixMode = ${o.int(1)};\n symbolAlpha = 0.0;\n }\n\n return vec4(symbolColor.r, symbolColor.g, symbolColor.b, symbolAlpha);\n }\n `)}export{l as DecodeSymbolColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../../shaderModules/interfaces.js\";import{DecodeSymbolColor as e}from\"../../../collections/Component/Material/shader/DecodeSymbolColor.glsl.js\";function r(r,l){l.symbolColor?(r.include(e),r.attributes.add(\"symbolColor\",\"vec4\"),r.varyings.add(\"colorMixMode\",\"mediump float\")):r.fragment.uniforms.add(\"colorMixMode\",\"int\"),l.symbolColor?r.vertex.code.add(o`\n int symbolColorMixMode;\n\n vec4 getSymbolColor() {\n return decodeSymbolColor(symbolColor, symbolColorMixMode) * 0.003921568627451;\n }\n\n void forwardColorMixMode() {\n colorMixMode = float(symbolColorMixMode) + 0.5;\n }\n `):r.vertex.code.add(o`\n vec4 getSymbolColor() { return vec4(1.0); }\n void forwardColorMixMode() {}\n `)}export{r as SymbolColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../../shaderModules/interfaces.js\";function r(r,e){e.attributeColor?(r.attributes.add(\"color\",\"vec4\"),r.varyings.add(\"vColor\",\"vec4\"),r.vertex.code.add(o`\n void forwardVertexColor() { vColor = color; }\n `),r.vertex.code.add(o`\n void forwardNormalizedVertexColor() { vColor = color * 0.003921568627451; }\n `)):r.vertex.code.add(o`\n void forwardVertexColor() {}\n void forwardNormalizedVertexColor() {}\n `)}export{r as VertexColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function o(o,t){const r=o.fragment;t.receiveAmbientOcclusion?(r.uniforms.add(\"ssaoTex\",\"sampler2D\"),r.uniforms.add(\"viewportPixelSz\",\"vec4\"),r.code.add(e`\n float evaluateAmbientOcclusion() {\n return 1.0 - texture2D(ssaoTex, (gl_FragCoord.xy - viewportPixelSz.xy) * viewportPixelSz.zw).a;\n }\n\n float evaluateAmbientOcclusionInverse() {\n float ssao = texture2D(ssaoTex, (gl_FragCoord.xy - viewportPixelSz.xy) * viewportPixelSz.zw).a;\n return viewportPixelSz.z < 0.0 ? 1.0 : ssao;\n }\n `)):r.code.add(e`\n float evaluateAmbientOcclusion() { return 0.0; } // no occlusion\n float evaluateAmbientOcclusionInverse() { return 1.0; }\n `)}export{o as EvaluateAmbientOcclusion};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{E as t,R as n}from\"./common.js\";function a(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t}function r(t,n,a,r,s){return t[0]=n,t[1]=a,t[2]=r,t[3]=s,t}function s(t,n,a){return t[0]=n[0]+a[0],t[1]=n[1]+a[1],t[2]=n[2]+a[2],t[3]=n[3]+a[3],t}function u(t,n,a){return t[0]=n[0]-a[0],t[1]=n[1]-a[1],t[2]=n[2]-a[2],t[3]=n[3]-a[3],t}function o(t,n,a){return t[0]=n[0]*a[0],t[1]=n[1]*a[1],t[2]=n[2]*a[2],t[3]=n[3]*a[3],t}function e(t,n,a){return t[0]=n[0]/a[0],t[1]=n[1]/a[1],t[2]=n[2]/a[2],t[3]=n[3]/a[3],t}function c(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t[3]=Math.ceil(n[3]),t}function i(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t[3]=Math.floor(n[3]),t}function h(t,n,a){return t[0]=Math.min(n[0],a[0]),t[1]=Math.min(n[1],a[1]),t[2]=Math.min(n[2],a[2]),t[3]=Math.min(n[3],a[3]),t}function M(t,n,a){return t[0]=Math.max(n[0],a[0]),t[1]=Math.max(n[1],a[1]),t[2]=Math.max(n[2],a[2]),t[3]=Math.max(n[3],a[3]),t}function f(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t[3]=Math.round(n[3]),t}function l(t,n,a){return t[0]=n[0]*a,t[1]=n[1]*a,t[2]=n[2]*a,t[3]=n[3]*a,t}function m(t,n,a,r){return t[0]=n[0]+a[0]*r,t[1]=n[1]+a[1]*r,t[2]=n[2]+a[2]*r,t[3]=n[3]+a[3]*r,t}function d(t,n){const a=n[0]-t[0],r=n[1]-t[1],s=n[2]-t[2],u=n[3]-t[3];return Math.sqrt(a*a+r*r+s*s+u*u)}function b(t,n){const a=n[0]-t[0],r=n[1]-t[1],s=n[2]-t[2],u=n[3]-t[3];return a*a+r*r+s*s+u*u}function x(t){const n=t[0],a=t[1],r=t[2],s=t[3];return Math.sqrt(n*n+a*a+r*r+s*s)}function q(t){const n=t[0],a=t[1],r=t[2],s=t[3];return n*n+a*a+r*r+s*s}function p(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t[3]=-n[3],t}function v(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t[3]=1/n[3],t}function g(t,n){const a=n[0],r=n[1],s=n[2],u=n[3];let o=a*a+r*r+s*s+u*u;return o>0&&(o=1/Math.sqrt(o),t[0]=a*o,t[1]=r*o,t[2]=s*o,t[3]=u*o),t}function _(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]+t[3]*n[3]}function j(t,n,a,r){const s=n[0],u=n[1],o=n[2],e=n[3];return t[0]=s+r*(a[0]-s),t[1]=u+r*(a[1]-u),t[2]=o+r*(a[2]-o),t[3]=e+r*(a[3]-e),t}function w(t,a){let r,s,u,o,e,c;a=a||1;do{r=2*n()-1,s=2*n()-1,e=r*r+s*s}while(e>=1);do{u=2*n()-1,o=2*n()-1,c=u*u+o*o}while(c>=1);const i=Math.sqrt((1-e)/c);return t[0]=a*r,t[1]=a*s,t[2]=a*u*i,t[3]=a*o*i,t}function y(t,n,a){const r=n[0],s=n[1],u=n[2],o=n[3];return t[0]=a[0]*r+a[4]*s+a[8]*u+a[12]*o,t[1]=a[1]*r+a[5]*s+a[9]*u+a[13]*o,t[2]=a[2]*r+a[6]*s+a[10]*u+a[14]*o,t[3]=a[3]*r+a[7]*s+a[11]*u+a[15]*o,t}function z(t,n,a){const r=n[0],s=n[1],u=n[2],o=a[0],e=a[1],c=a[2],i=a[3],h=i*r+e*u-c*s,M=i*s+c*r-o*u,f=i*u+o*s-e*r,l=-o*r-e*s-c*u;return t[0]=h*i+l*-o+M*-c-f*-e,t[1]=M*i+l*-e+f*-o-h*-c,t[2]=f*i+l*-c+h*-e-M*-o,t[3]=n[3],t}function A(t){return\"vec4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"}function D(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]}function E(n,a){const r=n[0],s=n[1],u=n[2],o=n[3],e=a[0],c=a[1],i=a[2],h=a[3];return Math.abs(r-e)<=t*Math.max(1,Math.abs(r),Math.abs(e))&&Math.abs(s-c)<=t*Math.max(1,Math.abs(s),Math.abs(c))&&Math.abs(u-i)<=t*Math.max(1,Math.abs(u),Math.abs(i))&&Math.abs(o-h)<=t*Math.max(1,Math.abs(o),Math.abs(h))}const L=u,k=o,B=e,C=d,F=b,G=x,H=q;var I=Object.freeze({__proto__:null,copy:a,set:r,add:s,subtract:u,multiply:o,divide:e,ceil:c,floor:i,min:h,max:M,round:f,scale:l,scaleAndAdd:m,distance:d,squaredDistance:b,length:x,squaredLength:q,negate:p,inverse:v,normalize:g,dot:_,lerp:j,random:w,transformMat4:y,transformQuat:z,str:A,exactEquals:D,equals:E,sub:L,mul:k,div:B,dist:C,sqrDist:F,len:G,sqrLen:H});export{w as A,z as B,A as C,L as D,k as E,B as F,C as G,F as H,G as I,H as J,s as a,l as b,a as c,_ as d,x as e,q as f,D as g,E as h,b as i,u as j,e as k,j as l,o as m,g as n,c as o,i as p,h as q,M as r,r as s,y as t,f as u,I as v,m as w,d as x,p as y,v as z};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{lerp as e,deg2rad as t,clamp as a}from\"../../../../core/mathUtils.js\";function i(e,t){return new p(e,h,t)}function r(e,t){const{curvatureDependent:a,scaleStart:i,scaleFallOffRange:r}=h;return new p(e,{curvatureDependent:{min:{curvature:a.min.curvature,tiltAngle:a.min.tiltAngle,scaleFallOffFactor:v.curvatureDependent.min.scaleFallOffFactor},max:{curvature:a.max.curvature,tiltAngle:a.max.tiltAngle,scaleFallOffFactor:v.curvatureDependent.max.scaleFallOffFactor}},scaleStart:i,scaleFallOffRange:r,minPixelSize:v.minPixelSize},t)}function n(e){return Math.abs(e*e*e)}function l(e,t,a){const i=a.parameters,r=a.paddingPixelsOverride;return x.scale=Math.min(i.divisor/(t-i.offset),1),x.factor=n(e),x.minPixelSize=i.minPixelSize,x.paddingPixels=r,x}function s(e,t){return 0===e?t.minPixelSize:t.minPixelSize*(1+2*t.paddingPixels/e)}function c(t,a){return Math.max(e(t*a.scale,t,a.factor),s(t,a))}function o(t,a,i=[0,0]){const r=Math.min(Math.max(a.scale,s(t[1],a)/t[1]),1);return i[0]=e(t[0]*r,t[0],a.factor),i[1]=e(t[1]*r,t[1],a.factor),i}function u(e,t,a){const i=l(e,t,a);return i.minPixelSize=0,i.paddingPixels=0,c(1,i)}function d(e,t,a,i){i.scale=u(e,t,a),i.factor=0,i.minPixelSize=a.parameters.minPixelSize,i.paddingPixels=a.paddingPixelsOverride}function f(e,t,a=[0,0]){const i=Math.min(Math.max(t.scale,s(e[1],t)/e[1]),1);return a[0]=e[0]*i,a[1]=e[1]*i,a}function m(e,t,a,i){return c(e,l(t,a,i))}class p{constructor(e,t,a,i=g(),r){this.viewingMode=e,this.description=t,this.ellipsoidRadius=a,this.parameters=i,this._paddingPixelsOverride=r,2===this.viewingMode?(this.coverageCompensation=this.surfaceCoverageCompensationLocal,this.calculateCurvatureDependentParameters=this.calculateCurvatureDependentParametersLocal):(this.coverageCompensation=this.surfaceCoverageCompensationGlobal,this.calculateCurvatureDependentParameters=this.calculateCurvatureDependentParametersGlobal)}get paddingPixelsOverride(){return this._paddingPixelsOverride||this.parameters.paddingPixels}update(e){return(!this.parameters||this.parameters.camera.fovY!==e.fovY||this.parameters.camera.distance!==e.distance)&&(this.calculateParameters(e,this.ellipsoidRadius,this.parameters),!0)}overridePadding(e){return e!==this.paddingPixelsOverride?new p(this.viewingMode,this.description,this.ellipsoidRadius,this.parameters,e):this}calculateParameters(e,t,a){const{scaleStart:i,scaleFallOffRange:r,minPixelSize:n}=this.description,{fovY:l,distance:s}=e,c=this.calculateCurvatureDependentParameters(e,t),o=this.coverageCompensation(e,t,c),{tiltAngle:u,scaleFallOffFactor:d}=c,f=Math.sin(u)*s,m=.5*Math.PI-u-l*(.5-i*o),p=f/Math.cos(m),h=m+l*r*o,v=(p-d*(f/Math.cos(h)))/(1-d);return a.camera.fovY=e.fovY,a.camera.distance=e.distance,a.offset=v,a.divisor=p-v,a.minPixelSize=n,a}calculateCurvatureDependentParametersLocal(e,t,a=P){return a.tiltAngle=this.description.curvatureDependent.min.tiltAngle,a.scaleFallOffFactor=this.description.curvatureDependent.min.scaleFallOffFactor,a}calculateCurvatureDependentParametersGlobal(t,i,r=P){const n=this.description.curvatureDependent,l=1+t.distance/i,s=Math.sqrt(l*l-1),[c,o]=[n.min.curvature,n.max.curvature],u=a((s-c)/(o-c),0,1),[d,f]=[n.min,n.max];return r.tiltAngle=e(d.tiltAngle,f.tiltAngle,u),r.scaleFallOffFactor=e(d.scaleFallOffFactor,f.scaleFallOffFactor,u),r}surfaceCoverageCompensationLocal(e,t,a){return(e.fovY-a.tiltAngle)/e.fovY}surfaceCoverageCompensationGlobal(e,t,a){const i=t*t,r=a.tiltAngle+.5*Math.PI,{fovY:n,distance:l}=e,s=l*l+i-2*Math.cos(r)*l*t,c=Math.sqrt(s),o=Math.sqrt(s-i);return(Math.acos(o/c)-Math.asin(t/(c/Math.sin(r)))+.5*n)/n}}const h={curvatureDependent:{min:{curvature:t(10),tiltAngle:t(12),scaleFallOffFactor:.5},max:{curvature:t(70),tiltAngle:t(40),scaleFallOffFactor:.8}},scaleStart:.3,scaleFallOffRange:.65,minPixelSize:0},v={curvatureDependent:{min:{scaleFallOffFactor:.7},max:{scaleFallOffFactor:.95}},minPixelSize:14};function g(){return{camera:{distance:0,fovY:0},divisor:0,offset:0,minPixelSize:0,paddingPixels:0}}const x={scale:0,factor:0,minPixelSize:0,paddingPixels:0},P={tiltAngle:0,scaleFallOffFactor:0};export{f as applyPrecomputedScaleFactor,c as applyScaleFactor,o as applyScaleFactorVec2,r as getLabelSettings,i as getSettings,d as precomputeScaleFactor,m as scale};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isNone as t,isSome as n}from\"../../../../../core/maybe.js\";import{glClamp as e,clamp as i}from\"../../../../../core/mathUtils.js\";import{c as o}from\"../../../../../chunks/vec3f64.js\";import{s as r,c as s,n as c}from\"../../../../../chunks/vec3.js\";import{create as f,setMin as a,setMax as l}from\"../../../../../geometry/support/aaBoundingBox.js\";import{assert as u}from\"../../lib/Util.js\";import{isInstanceHidden as m}from\"../renderers/utils.js\";import{scale as p}from\"../../lib/screenSizePerspectiveUtils.js\";const h=f();function d(t,n,e,i,o,r,s){const c=m(n),f=e.tolerance;if(!c)if(t.boundingInfo)u(0===t.primitiveType),x(t.boundingInfo,i,o,f,r,s);else{const n=t.indices.get(\"position\"),e=t.vertexAttributes.get(\"position\");b(i,o,0,n.length/3,n,e,void 0,r,s)}}const g=o();function x(e,i,o,r,s,c){if(t(e))return;const f=A(i,o,g);if(a(h,e.getBBMin()),l(h,e.getBBMax()),n(s)&&s.applyToAabb(h),L(h,i,f,r)){const{primitiveIndices:t,indices:n,position:f}=e,a=t?t.length:n.length/3;if(a>S){const t=e.getChildren();if(void 0!==t){for(let n=0;n<8;++n)void 0!==t[n]&&x(t[n],i,o,r,s,c);return}}b(i,o,0,a,n,f,t,s,c)}}const M=o();function b(t,e,i,o,r,s,c,f,a){if(c)return v(t,e,i,o,r,s,c,f,a);const l=s.data,u=s.stride||s.size,m=t[0],p=t[1],h=t[2],d=e[0]-m,g=e[1]-p,x=e[2]-h;for(let b=i,v=3*i;b0){if(C<0||C>W)continue}else if(C>0||C0){if(_<0||C+_>W)continue}else if(_>0||C+_=0){a(q,j(V,B,z,E,I,N,M),b)}}}function v(t,e,i,o,r,s,c,f,a){const l=s.data,u=s.stride||s.size,m=t[0],p=t[1],h=t[2],d=e[0]-m,g=e[1]-p,x=e[2]-h;for(let b=i;b0){if(X<0||X>k)continue}else if(X>0||X0){if(w<0||X+w>k)continue}else if(w>0||X+w=0){a(D,j(z,E,I,N,P,U,M),t)}}}const y=o(),T=o();function j(t,n,e,i,o,f,a){return r(y,t,n,e),r(T,i,o,f),s(a,y,T),c(a,a),a}function A(t,n,e){return r(e,1/(n[0]-t[0]),1/(n[1]-t[1]),1/(n[2]-t[2]))}function L(t,n,e,i){return V(t,n,e,i,1/0)}function V(t,n,e,i,o){const r=(t[0]-i-n[0])*e[0],s=(t[3]+i-n[0])*e[0];let c=Math.min(r,s),f=Math.max(r,s);const a=(t[1]-i-n[1])*e[1],l=(t[4]+i-n[1])*e[1];if(f=Math.min(f,Math.max(a,l)),f<0)return!1;if(c=Math.max(c,Math.min(a,l)),c>f)return!1;const u=(t[2]-i-n[2])*e[2],m=(t[5]+i-n[2])*e[2];return f=Math.min(f,Math.max(u,m)),!(f<0)&&(c=Math.max(c,Math.min(u,m)),!(c>f)&&cn.push(t))),n}const U={multiply:1,ignore:2,replace:3,tint:4},S=1e3;export{z as bindScreenSizePerspective,U as colorMixModes,A as computeInvDir,j as computeNormal,E as copyParameters,L as intersectAabbInvDir,V as intersectAabbInvDirBefore,N as intersectDrapedRenderLineGeometry,d as intersectTriangleGeometry,b as intersectTriangles,I as updateParameters,B as verticalOffsetAtDistance};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function t(t){t.extensions.add(\"GL_EXT_shader_texture_lod\"),t.extensions.add(\"GL_OES_standard_derivatives\"),t.fragment.code.add(e`\n #ifndef GL_EXT_shader_texture_lod\n float calcMipMapLevel(const vec2 ddx, const vec2 ddy) {\n float deltaMaxSqr = max(dot(ddx, ddx), dot(ddy, ddy));\n return max(0.0, 0.5 * log2(deltaMaxSqr));\n }\n #endif\n\n vec4 textureAtlasLookup(sampler2D texture, vec2 textureSize, vec2 textureCoordinates, vec4 atlasRegion) {\n //[umin, vmin, umax, vmax]\n vec2 atlasScale = atlasRegion.zw - atlasRegion.xy;\n vec2 uvAtlas = fract(textureCoordinates) * atlasScale + atlasRegion.xy;\n\n // calculate derivative of continuous texture coordinate\n // to avoid mipmapping artifacts caused by manual wrapping in shader\n // clamp the derivatives to avoid discoloring when zooming out.\n float maxdUV = 0.125; // Emprirically tuned compromise between discoloring and aliasing noise.\n vec2 dUVdx = clamp(dFdx(textureCoordinates), -maxdUV, maxdUV) * atlasScale;\n vec2 dUVdy = clamp(dFdy(textureCoordinates), -maxdUV, maxdUV) * atlasScale;\n\n #ifdef GL_EXT_shader_texture_lod\n return texture2DGradEXT(texture, uvAtlas, dUVdx, dUVdy);\n #else\n // use bias to compensate for difference in automatic vs desired mipmap level\n vec2 dUVdxAuto = dFdx(uvAtlas);\n vec2 dUVdyAuto = dFdy(uvAtlas);\n float mipMapLevel = calcMipMapLevel(dUVdx * textureSize, dUVdy * textureSize);\n float autoMipMapLevel = calcMipMapLevel(dUVdxAuto * textureSize, dUVdyAuto * textureSize);\n\n return texture2D(texture, uvAtlas, mipMapLevel - autoMipMapLevel);\n #endif\n }\n `)}export{t as TextureAtlasLookup};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{TextureCoordinateAttribute as t}from\"./TextureCoordinateAttribute.glsl.js\";import{TextureAtlasLookup as r}from\"../util/TextureAtlasLookup.glsl.js\";function u(u,a){u.include(t,a),u.fragment.code.add(e`\n struct TextureLookupParameter {\n vec2 uv;\n ${a.supportsTextureAtlas?\"vec2 size;\":\"\"}\n } vtc;\n `),1===a.attributeTextureCoordinates&&u.fragment.code.add(e`\n vec4 textureLookup(sampler2D tex, TextureLookupParameter params) {\n return texture2D(tex, params.uv);\n }\n `),2===a.attributeTextureCoordinates&&(u.include(r),u.fragment.code.add(e`\n vec4 textureLookup(sampler2D tex, TextureLookupParameter params) {\n return textureAtlasLookup(tex, params.size, params.uv, vuvRegion);\n }\n `))}export{u as VertexTextureCoordinates};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isUint16Array as e,isUint32Array as t}from\"../../core/typedArrayUtil.js\";import{checkWebGLError as i}from\"./checkWebGLError.js\";class s{constructor(e,t,s,n,r){this._context=e,this.bufferType=t,this.usage=s,this._glName=null,this._size=-1,this._indexType=void 0,e.instanceCounter.increment(1,this),this._glName=this._context.gl.createBuffer(),i(this._context.gl),n&&this.setData(n,r)}static createIndex(e,t,i,n){return new s(e,34963,t,i,n)}static createVertex(e,t,i){return new s(e,34962,t,i)}get glName(){return this._glName}get size(){return this._size}get indexType(){return this._indexType}get byteSize(){return 34962===this.bufferType?this._size:5125===this._indexType?4*this._size:2*this._size}dispose(){if(this._context){if(this._glName){this._context.gl.deleteBuffer(this._glName),this._glName=null}this._context.instanceCounter.decrement(1,this),this._context=null}}setData(i,s){if(!i)return;if(\"number\"==typeof i){if(i<0&&console.error(\"Buffer size cannot be negative!\"),34963===this.bufferType&&s)switch(this._indexType=s,this._size=i,s){case 5123:i*=2;break;case 5125:i*=4}}else{let s=i.byteLength;e(i)&&(s/=2,this._indexType=5123),t(i)&&(s/=4,this._indexType=5125),this._size=s}const n=this._context.getBoundVAO();this._context.bindVAO(null),this._context.bindBuffer(this);this._context.gl.bufferData(this.bufferType,i,this.usage),this._context.bindVAO(n)}setSubData(i,s=0,n=0,r=i.byteLength){if(!i)return;(s<0||s>=this._size)&&console.error(\"offset is out of range!\");let h=s,o=n,c=r,f=i.byteLength;e(i)&&(f/=2,h*=2,o*=2,c*=2),t(i)&&(f/=4,h*=4,o*=4,c*=4),void 0===r&&(r=f-1),n>=r&&console.error(\"end must be bigger than start!\"),s+n-r>this._size&&console.error(\"An attempt to write beyond the end of the buffer!\");const u=this._context.getBoundVAO();this._context.bindVAO(null),this._context.bindBuffer(this);const a=this._context.gl,_=ArrayBuffer.isView(i)?i.buffer:i,l=0===o&&c===i.byteLength?_:_.slice(o,c);a.bufferSubData(this.bufferType,h,l),this._context.bindVAO(u)}}export default s;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{c as o}from\"../../../../../../chunks/vec3f64.js\";import{a as r}from\"../../../../../../chunks/mat3f64.js\";import{a as e}from\"../../../../../../chunks/mat4f64.js\";import{glsl as i}from\"../../shaderModules/interfaces.js\";import{DoublePrecision as a}from\"../util/DoublePrecision.glsl.js\";import{PositionAttribute as m}from\"./PositionAttribute.glsl.js\";function t(o,r){o.include(m),o.vertex.include(a,r),o.varyings.add(\"vPositionWorldCameraRelative\",\"vec3\"),o.varyings.add(\"vPosition_view\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_WorldFromModel_RS\",\"mat3\"),o.vertex.uniforms.add(\"uTransform_WorldFromModel_TH\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_WorldFromModel_TL\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_WorldFromView_TH\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_WorldFromView_TL\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_ViewFromCameraRelative_RS\",\"mat3\"),o.vertex.uniforms.add(\"uTransform_ProjFromView\",\"mat4\"),o.vertex.code.add(i`\n // compute position in world space orientation, but relative to the camera position\n vec3 positionWorldCameraRelative() {\n vec3 rotatedModelPosition = uTransform_WorldFromModel_RS * positionModel();\n\n vec3 transform_CameraRelativeFromModel = dpAdd(\n uTransform_WorldFromModel_TL,\n uTransform_WorldFromModel_TH,\n -uTransform_WorldFromView_TL,\n -uTransform_WorldFromView_TH\n );\n\n return transform_CameraRelativeFromModel + rotatedModelPosition;\n }\n\n // position in view space, that is relative to the camera position and orientation\n vec3 position_view() {\n return uTransform_ViewFromCameraRelative_RS * positionWorldCameraRelative();\n }\n\n // compute gl_Position and forward related varyings to fragment shader\n void forwardPosition() {\n vPositionWorldCameraRelative = positionWorldCameraRelative();\n vPosition_view = position_view();\n gl_Position = uTransform_ProjFromView * vec4(vPosition_view, 1.0);\n }\n\n vec3 positionWorld() {\n return uTransform_WorldFromView_TL + vPositionWorldCameraRelative;\n }\n `),o.fragment.uniforms.add(\"uTransform_WorldFromView_TL\",\"vec3\"),o.fragment.code.add(i`\n vec3 positionWorld() {\n return uTransform_WorldFromView_TL + vPositionWorldCameraRelative;\n }\n `)}!function(i){class a{constructor(){this.worldFromModel_RS=r(),this.worldFromModel_TH=o(),this.worldFromModel_TL=o()}}i.ModelTransform=a;class m{constructor(){this.worldFromView_TH=o(),this.worldFromView_TL=o(),this.viewFromCameraRelative_RS=r(),this.projFromView=e()}}function t(o,r){o.setUniformMatrix3fv(\"uTransform_WorldFromModel_RS\",r.worldFromModel_RS),o.setUniform3fv(\"uTransform_WorldFromModel_TH\",r.worldFromModel_TH),o.setUniform3fv(\"uTransform_WorldFromModel_TL\",r.worldFromModel_TL)}function n(o,r){o.setUniform3fv(\"uTransform_WorldFromView_TH\",r.worldFromView_TH),o.setUniform3fv(\"uTransform_WorldFromView_TL\",r.worldFromView_TL),o.setUniformMatrix4fv(\"uTransform_ProjFromView\",r.projFromView),o.setUniformMatrix3fv(\"uTransform_ViewFromCameraRelative_RS\",r.viewFromCameraRelative_RS)}i.ViewProjectionTransform=m,i.bindModelTransform=t,i.bindViewProjTransform=n}(t||(t={}));export{t as VertexPosition};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../../shaderModules/interfaces.js\";import{NormalAttribute as r}from\"./NormalAttribute.glsl.js\";import{VertexPosition as a}from\"./VertexPosition.glsl.js\";function l(l,e){0===e.normalType||1===e.normalType?(l.include(r,e),l.varyings.add(\"vNormalWorld\",\"vec3\"),l.varyings.add(\"vNormalView\",\"vec3\"),l.vertex.uniforms.add(\"uTransformNormal_GlobalFromModel\",\"mat3\"),l.vertex.uniforms.add(\"uTransformNormal_ViewFromGlobal\",\"mat3\"),l.vertex.code.add(o`\n void forwardNormal() {\n vNormalWorld = uTransformNormal_GlobalFromModel * normalModel();\n vNormalView = uTransformNormal_ViewFromGlobal * vNormalWorld;\n }\n `)):2===e.normalType?(l.include(a,e),l.varyings.add(\"vNormalWorld\",\"vec3\"),l.vertex.code.add(o`\n void forwardNormal() {\n vNormalWorld = ${1===e.viewingMode?o`normalize(vPositionWorldCameraRelative);`:o`vec3(0.0, 0.0, 1.0);`}\n }\n `)):l.vertex.code.add(o`\n void forwardNormal() {}\n `)}!function(o){function r(o,r){o.setUniformMatrix4fv(\"viewNormal\",r)}o.bindUniforms=r}(l||(l={}));export{l as VertexNormal};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as t}from\"../../shaderModules/interfaces.js\";import{RgbaFloatEncoding as a}from\"../util/RgbaFloatEncoding.glsl.js\";function o(o,e){o.fragment.include(a),3===e.output?(o.extensions.add(\"GL_OES_standard_derivatives\"),o.fragment.code.add(t`\n float _calculateFragDepth(const in float depth) {\n // calc polygon offset\n const float SLOPE_SCALE = 2.0;\n const float BIAS = 2.0 * .000015259; // 1 / (2^16 - 1)\n float m = max(abs(dFdx(depth)), abs(dFdy(depth)));\n float result = depth + SLOPE_SCALE * m + BIAS;\n return clamp(result, .0, .999999);\n }\n\n void outputDepth(float _linearDepth) {\n gl_FragColor = float2rgba(_calculateFragDepth(_linearDepth));\n }\n `)):1===e.output&&o.fragment.code.add(t`\n void outputDepth(float _linearDepth) {\n gl_FragColor = float2rgba(_linearDepth);\n }\n `)}export{o as OutputDepth};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../../shaderModules/interfaces.js\";import{Transform as r}from\"../Transform.glsl.js\";import{Slice as e}from\"../Slice.glsl.js\";import{OutputHighlight as t}from\"../output/OutputHighlight.glsl.js\";import{VisualVariables as i}from\"../shading/VisualVariables.glsl.js\";import{DiscardOrAdjustAlpha as a}from\"../util/AlphaDiscard.glsl.js\";import{OutputDepth as l}from\"../output/OutputDepth.glsl.js\";import{TextureCoordinateAttribute as s}from\"../attributes/TextureCoordinateAttribute.glsl.js\";import{NormalAttribute as d}from\"../attributes/NormalAttribute.glsl.js\";import{VertexNormal as n}from\"../attributes/VertexNormal.glsl.js\";function u(u,c){const p=u.vertex.code,v=u.fragment.code;1!==c.output&&3!==c.output||(u.include(r,{linearDepth:!0}),u.include(s,c),u.include(i,c),u.include(l,c),u.include(e,c),u.vertex.uniforms.add(\"cameraNearFar\",\"vec2\"),u.varyings.add(\"depth\",\"float\"),c.hasColorTexture&&u.fragment.uniforms.add(\"tex\",\"sampler2D\"),p.add(o`\n void main(void) {\n vpos = calculateVPos();\n vpos = subtractOrigin(vpos);\n vpos = addVerticalOffset(vpos, localOrigin);\n gl_Position = transformPositionWithDepth(proj, view, vpos, cameraNearFar, depth);\n forwardTextureCoordinates();\n }\n `),u.include(a,c),v.add(o`\n void main(void) {\n discardBySlice(vpos);\n ${c.hasColorTexture?o`\n vec4 texColor = texture2D(tex, vuv0);\n discardOrAdjustAlpha(texColor);`:\"\"}\n outputDepth(depth);\n }\n `)),2===c.output&&(u.include(r,{linearDepth:!1}),u.include(d,c),u.include(n,c),u.include(s,c),u.include(i,c),c.hasColorTexture&&u.fragment.uniforms.add(\"tex\",\"sampler2D\"),u.vertex.uniforms.add(\"viewNormal\",\"mat4\"),u.varyings.add(\"vPositionView\",\"vec3\"),p.add(o`\n void main(void) {\n vpos = calculateVPos();\n vpos = subtractOrigin(vpos);\n ${0===c.normalType?o`\n vNormalWorld = dpNormalView(vvLocalNormal(normalModel()));`:\"\"}\n vpos = addVerticalOffset(vpos, localOrigin);\n gl_Position = transformPosition(proj, view, vpos);\n forwardTextureCoordinates();\n }\n `),u.include(e,c),u.include(a,c),v.add(o`\n void main() {\n discardBySlice(vpos);\n ${c.hasColorTexture?o`\n vec4 texColor = texture2D(tex, vuv0);\n discardOrAdjustAlpha(texColor);`:\"\"}\n\n ${3===c.normalType?o`\n vec3 normal = screenDerivativeNormal(vPositionView);`:o`\n vec3 normal = normalize(vNormalWorld);\n if (gl_FrontFacing == false) normal = -normal;`}\n gl_FragColor = vec4(vec3(0.5) + 0.5 * normal, 1.0);\n }\n `)),4===c.output&&(u.include(r,{linearDepth:!1}),u.include(s,c),u.include(i,c),c.hasColorTexture&&u.fragment.uniforms.add(\"tex\",\"sampler2D\"),p.add(o`\n void main(void) {\n vpos = calculateVPos();\n vpos = subtractOrigin(vpos);\n vpos = addVerticalOffset(vpos, localOrigin);\n gl_Position = transformPosition(proj, view, vpos);\n forwardTextureCoordinates();\n }\n `),u.include(e,c),u.include(a,c),u.include(t),v.add(o`\n void main() {\n discardBySlice(vpos);\n ${c.hasColorTexture?o`\n vec4 texColor = texture2D(tex, vuv0);\n discardOrAdjustAlpha(texColor);`:\"\"}\n outputHighlight();\n }\n `))}export{u as DefaultMaterialAuxiliaryPasses};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../../../../core/has.js\";function e(e){switch(e){case\"u8\":return 1;case\"u16\":return 2;case\"u32\":return 4;case\"i8\":return 1;case\"i16\":return 2;case\"i32\":case\"f32\":return 4;case\"f64\":return 8;default:return}}function r(e){switch(e){case\"u8\":case\"u16\":case\"u32\":return!1;case\"i8\":case\"i16\":case\"i32\":case\"f32\":case\"f64\":return!0;default:return}}function u(e){switch(e){case\"u8\":case\"u16\":case\"u32\":case\"i8\":case\"i16\":case\"i32\":return!0;case\"f32\":case\"f64\":return!1;default:return}}function c(e){switch(e){case\"u8\":return 255;case\"u16\":return 65535;case\"u32\":return 4294967295;case\"i8\":return 127;case\"i16\":return 32767;case\"i32\":return 2147483647;case\"f32\":return 3402823e32;case\"f64\":return 179769e303;default:return}}export{e as elementTypeSize,u as isInteger,r as isSigned,c as maximumValue};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import{isNone as e}from\"../../core/maybe.js\";function r(e,r){return e.vertexBuffers[r].size/t(e.layout[r])}function t(e){return e[0].stride}function n(e){switch(e){case 5126:case 5124:case 5125:return 4;case 5122:case 5123:return 2;case 5120:case 5121:return 1;default:throw new Error(\"Unknown data type\")}}function i(e){switch(e){case 5120:return Int8Array;case 5126:return Float32Array;case 5124:return Int32Array;case 5122:return Int16Array;case 5121:return Uint8Array;case 5125:return Uint32Array;case 5123:return Uint16Array;default:throw new Error(\"Unknown data type\")}}function s(e,r,t,i,s,o){const a=n(i);if(e.length>0){const n=e[0].stride,c=n+a*t;e.forEach((e=>e.stride=c)),e.push({name:r,count:t,type:i,offset:n,stride:c,normalized:s,divisor:o})}else e.push({name:r,count:t,type:i,offset:0,stride:a*t,normalized:s,divisor:o})}function o(e,r){for(let t=0;te.divisor?{...e,baseInstance:r}:e));return t}function f(e,r,t,n,i){const s=e.gl,o=e.capabilities.instancing;e.bindBuffer(t);for(const a of n){const e=r[a.name],t=(i||(0+a.baseInstance?a.baseInstance:0))*a.stride;if(void 0===e&&console.error(`There is no location for vertex attribute '${a.name}' defined.`),a.baseInstance&&!a.divisor&&console.error(`Vertex attribute '${a.name}' uses baseInstanceOffset without divisor.`),a.count<=4)s.vertexAttribPointer(e,a.count,a.type,a.normalized,a.stride,a.offset+t),s.enableVertexAttribArray(e),a.divisor&&a.divisor>0&&o&&o.vertexAttribDivisor(e,a.divisor);else if(9===a.count)for(let r=0;r<3;r++)s.vertexAttribPointer(e+r,3,a.type,a.normalized,a.stride,a.offset+12*r+t),s.enableVertexAttribArray(e+r),a.divisor&&a.divisor>0&&o&&o.vertexAttribDivisor(e+r,a.divisor);else if(16===a.count)for(let r=0;r<4;r++)s.vertexAttribPointer(e+r,4,a.type,a.normalized,a.stride,a.offset+16*r+t),s.enableVertexAttribArray(e+r),a.divisor&&a.divisor>0&&o&&o.vertexAttribDivisor(e+r,a.divisor);else console.error(\"Unsupported vertex attribute element count: \"+a.count)}}function d(e,r,t,n){const i=e.gl,s=e.capabilities.instancing;e.bindBuffer(t);for(const o of n){const e=r[o.name];if(o.count<=4)i.disableVertexAttribArray(e),o.divisor&&o.divisor>0&&s&&s.vertexAttribDivisor(e,0);else if(9===o.count)for(let r=0;r<3;r++)i.disableVertexAttribArray(e+r),o.divisor&&o.divisor>0&&s&&s.vertexAttribDivisor(e+r,0);else if(16===o.count)for(let r=0;r<4;r++)i.disableVertexAttribArray(e+r),o.divisor&&o.divisor>0&&s&&s.vertexAttribDivisor(e+r,0);else console.error(\"Unsupported vertex attribute element count: \"+o.count)}e.unbindBuffer(34962)}function l(e){switch(e){case 6406:case 6409:case 36168:return 1;case 6410:case 32854:case 33325:case 32854:case 33189:return 2;case 6407:case 6402:return 3;case 6408:case 34041:case 33326:case 35898:case 33327:case 34041:return 4;case 33328:case 34842:return 8;case 34836:return 16;case 33776:case 33777:return.5;case 33778:case 33779:return 1;case 37488:case 37489:case 37492:case 37493:case 37494:case 37495:return.5;case 37490:case 37491:case 37496:case 37497:return 1}return 0}function b(r){if(e(r))return 0;if(\"colorAttachment\"in r)return r.glName?b(r.colorAttachment)+b(r.depthStencilAttachment):0;if(\"descriptor\"in r)return r.glName?b(r.descriptor):0;const t=r.internalFormat||\"pixelFormat\"in r&&r.pixelFormat;if(!t)return 0;const n=\"hasMipmap\"in r&&r.hasMipmap?1.3:1,i=r.width*r.height;return l(t)*i*n}export{s as addDescriptor,f as bindVertexBufferLayout,c as copyFramebufferToTexture,a as findAttribute,n as getBytesPerElement,l as getBytesPerElementFormat,b as getGpuMemoryUsage,t as getStride,i as getTypedArrayConstructor,o as hasAttribute,u as setBaseInstanceOffset,d as unbindVertexBufferLayout,r as vertexCount};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nvar e=[\"layout\",\"centroid\",\"smooth\",\"case\",\"mat2x2\",\"mat2x3\",\"mat2x4\",\"mat3x2\",\"mat3x3\",\"mat3x4\",\"mat4x2\",\"mat4x3\",\"mat4x4\",\"uint\",\"uvec2\",\"uvec3\",\"uvec4\",\"samplerCubeShadow\",\"sampler2DArray\",\"sampler2DArrayShadow\",\"isampler2D\",\"isampler3D\",\"isamplerCube\",\"isampler2DArray\",\"usampler2D\",\"usampler3D\",\"usamplerCube\",\"usampler2DArray\",\"coherent\",\"restrict\",\"readonly\",\"writeonly\",\"resource\",\"atomic_uint\",\"noperspective\",\"patch\",\"sample\",\"subroutine\",\"common\",\"partition\",\"active\",\"filter\",\"image1D\",\"image2D\",\"image3D\",\"imageCube\",\"iimage1D\",\"iimage2D\",\"iimage3D\",\"iimageCube\",\"uimage1D\",\"uimage2D\",\"uimage3D\",\"uimageCube\",\"image1DArray\",\"image2DArray\",\"iimage1DArray\",\"iimage2DArray\",\"uimage1DArray\",\"uimage2DArray\",\"image1DShadow\",\"image2DShadow\",\"image1DArrayShadow\",\"image2DArrayShadow\",\"imageBuffer\",\"iimageBuffer\",\"uimageBuffer\",\"sampler1DArray\",\"sampler1DArrayShadow\",\"isampler1D\",\"isampler1DArray\",\"usampler1D\",\"usampler1DArray\",\"isampler2DRect\",\"usampler2DRect\",\"samplerBuffer\",\"isamplerBuffer\",\"usamplerBuffer\",\"sampler2DMS\",\"isampler2DMS\",\"usampler2DMS\",\"sampler2DMSArray\",\"isampler2DMSArray\",\"usampler2DMSArray\",\"trunc\",\"round\",\"roundEven\",\"isnan\",\"isinf\",\"floatBitsToInt\",\"floatBitsToUint\",\"intBitsToFloat\",\"uintBitsToFloat\",\"packSnorm2x16\",\"unpackSnorm2x16\",\"packUnorm2x16\",\"unpackUnorm2x16\",\"packHalf2x16\",\"unpackHalf2x16\",\"outerProduct\",\"transpose\",\"determinant\",\"inverse\",\"texture\",\"textureSize\",\"textureProj\",\"textureLod\",\"textureOffset\",\"texelFetch\",\"texelFetchOffset\",\"textureProjOffset\",\"textureLodOffset\",\"textureProjLod\",\"textureProjLodOffset\",\"textureGrad\",\"textureGradOffset\",\"textureProjGrad\",\"textureProjGradOffset\"];export default e;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport t from\"./reservedWordsGLSL3.js\";import{o as e,l as a,b as r}from\"../../chunks/builtins.js\";var n=999,o=9999,i=0,s=1,c=2,d=3,f=4,p=5,u=6,l=7,h=8,y=9,g=10,w=11,m=[\"block-comment\",\"line-comment\",\"preprocessor\",\"operator\",\"integer\",\"float\",\"ident\",\"builtin\",\"keyword\",\"whitespace\",\"eof\",\"integer\"];function k(){var t,k,b,v=0,_=0,x=n,j=[],E=[],O=1,L=0,D=0,G=!1,T=!1,X=\"\";return function(t){return E=[],null!==t?P(t.replace?t.replace(/\\r\\n/g,\"\\n\"):t):C()};function F(t){t.length&&E.push({type:m[x],data:t,position:D,line:O,column:L})}function P(e){var a;for(v=0,b=(X+=e).length;t=X[v],v0)continue;r=t.slice(0,1).join(\"\")}return F(r),D+=r.length,(j=j.slice(r.length)).length}}function W(){return/[^a-fA-F0-9]/.test(t)?(F(j.join(\"\")),x=n,v):(j.push(t),k=t,v+1)}function Z(){return\".\"===t||/[eE]/.test(t)?(j.push(t),x=p,k=t,v+1):\"x\"===t&&1===j.length&&\"0\"===j[0]?(x=w,j.push(t),k=t,v+1):/[^\\d]/.test(t)?(F(j.join(\"\")),x=n,v):(j.push(t),k=t,v+1)}function q(){return\"f\"===t&&(j.push(t),k=t,v+=1),/[eE]/.test(t)||\"-\"===t&&/[eE]/.test(k)?(j.push(t),k=t,v+1):/[^\\d]/.test(t)?(F(j.join(\"\")),x=n,v):(j.push(t),k=t,v+1)}function B(){if(/[^\\d\\w_]/.test(t)){var e=j.join(\"\");return x=a.indexOf(e)>-1?h:r.indexOf(e)>-1?l:u,F(j.join(\"\")),x=n,v}return j.push(t),k=t,v+1}}function b(t){var e=k(),a=[];return a=(a=a.concat(e(t))).concat(e(null))}function v(t){return b(t)}function _(t){return t.map((t=>\"eof\"!==t.type?t.data:\"\")).join(\"\")}const x=[\"GL_OES_standard_derivatives\",\"GL_EXT_frag_depth\",\"GL_EXT_draw_buffers\",\"GL_EXT_shader_texture_lod\"];function j(t,e=\"100\",a=\"300 es\"){const r=/^\\s*\\#version\\s+([0-9]+(\\s+[a-zA-Z]+)?)\\s*/;for(const n of t)if(\"preprocessor\"===n.type){const t=r.exec(n.data);if(t){const r=t[1].replace(/\\s\\s+/g,\" \");if(r===a)return r;if(r===e)return n.data=\"#version \"+a,e;throw new Error(\"unknown glsl version: \"+r)}}return t.splice(0,0,{type:\"preprocessor\",data:\"#version \"+a},{type:\"whitespace\",data:\"\\n\"}),null}function E(t,e){for(let a=e-1;a>=0;a--){const e=t[a];if(\"whitespace\"!==e.type&&\"block-comment\"!==e.type){if(\"keyword\"!==e.type)break;if(\"attribute\"===e.data||\"in\"===e.data)return!0}}return!1}function O(t,e,a,r){r=r||a;for(const n of t)if(\"ident\"===n.type&&n.data===a){r in e?e[r]++:e[r]=0;return O(t,e,r+\"_\"+e[r],r)}return a}function L(t,e,a=\"afterVersion\"){function r(t,e){for(let a=e;ae=0){if(\"vertex\"===a&&E(r,c))throw new Error(\"attribute in vertex shader uses a name that is a reserved word in glsl 300 es\");e.data in s||(s[e.data]=O(r,i,e.data)),e.data=s[e.data]}}}for(let t=r.length-1;t>=0;--t){const e=r[t];if(\"preprocessor\"===e.type){const a=e.data.match(/\\#extension\\s+(.*)\\:/);if(a&&a[1]&&x.indexOf(a[1].trim())>=0){const e=r[t+1];r.splice(t,e&&\"whitespace\"===e.type?2:1)}const n=e.data.match(/\\#ifdef\\s+(.*)/);n&&n[1]&&x.indexOf(n[1].trim())>=0&&(e.data=\"#if 1\");const o=e.data.match(/\\#ifndef\\s+(.*)/);o&&o[1]&&x.indexOf(o[1].trim())>=0&&(e.data=\"#if 0\")}}return _(r)}export{X as transpileShader};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import{isNone as t}from\"../../core/maybe.js\";import{transpileShader as i}from\"./ShaderTranspiler.js\";class o{constructor(t,i,o,n,r={}){if(this._context=null,this._glName=null,this._locations={},this._initialized=!1,this._vShader=null,this._fShader=null,this._defines={},this._nameToUniformLocation={},this._nameToAttribLocation={},this._nameToUniform1={},this._nameToUniform1v={},this._nameToUniform2={},this._nameToUniform3={},this._nameToUniform4={},this._nameToUniformMatrix3={},this._nameToUniformMatrix4={},t||console.error(\"RenderingContext isn't initialized!\"),0===i.length&&console.error(\"Shaders source should not be empty!\"),t.instanceCounter.increment(3,this),this._context=t,this._vertexShaderSource=i,this._fragmentShaderSource=o,Array.isArray(r))for(const e of r)this._defines[e]=\"1\";else this._defines=r;this._locations=n}get glName(){return this._glName}get locations(){return this._locations}getDefine(t){return this._defines[t]}dispose(){if(!this._context)return;const t=this._context.gl;if(this._vShader){const i=this._vShader;t.deleteShader(i),this._vShader=null}if(this._fShader){const i=this._fShader;t.deleteShader(i),this._fShader=null}this._glName&&(t.deleteProgram(this._glName),this._glName=null),this._context.instanceCounter.decrement(3,this),this._context=null}initialize(){if(this._initialized)return;this._vShader=this._loadShader(35633),this._fShader=this._loadShader(35632),this._vShader&&this._fShader||console.error(\"Error loading shaders!\");const t=this._context.gl,i=t.createProgram();t.attachShader(i,this._vShader),t.attachShader(i,this._fShader);for(const o in this._locations){const n=this._locations[o];t.bindAttribLocation(i,n,o)}t.linkProgram(i),this._glName=i,this._initialized=!0}getUniformLocation(t){return this.initialize(),void 0===this._nameToUniformLocation[t]&&(this._nameToUniformLocation[t]=this._context.gl.getUniformLocation(this._glName,t)),this._nameToUniformLocation[t]}hasUniform(t){return null!==this.getUniformLocation(t)}getAttribLocation(t){return this.initialize(),void 0===this._nameToAttribLocation[t]&&(this._nameToAttribLocation[t]=this._context.gl.getAttribLocation(this._glName,t)),this._nameToAttribLocation[t]}setUniform1i(t,i){const o=this._nameToUniform1[t];if(void 0===o||i!==o){this._context.bindProgram(this);this._context.gl.uniform1i(this.getUniformLocation(t),i),this._nameToUniform1[t]=i}}setUniform1iv(t,i){const r=this._nameToUniform1v[t];if(n(r,i)){this._context.bindProgram(this);this._context.gl.uniform1iv(this.getUniformLocation(t),i),void 0===r?this._nameToUniform1v[t]=o._arrayCopy(i):o._arrayAssign(i,r)}}setUniform2iv(t,i){const r=this._nameToUniform2[t];if(n(r,i)){this._context.bindProgram(this);this._context.gl.uniform2iv(this.getUniformLocation(t),i),void 0===r?this._nameToUniform2[t]=o._arrayCopy(i):o._arrayAssign(i,r)}}setUniform3iv(t,i){const r=this._nameToUniform3[t];if(n(r,i)){this._context.bindProgram(this);this._context.gl.uniform3iv(this.getUniformLocation(t),i),void 0===r?this._nameToUniform3[t]=o._arrayCopy(i):o._arrayAssign(i,r)}}setUniform4iv(t,i){const r=this._nameToUniform4[t];if(n(r,i)){this._context.bindProgram(this);this._context.gl.uniform4iv(this.getUniformLocation(t),i),void 0===r?this._nameToUniform4[t]=o._arrayCopy(i):o._arrayAssign(i,r)}}setUniform1f(t,i){const o=this._nameToUniform1[t];if(void 0===o||i!==o){this._context.bindProgram(this);this._context.gl.uniform1f(this.getUniformLocation(t),i),this._nameToUniform1[t]=i}}setUniform1fv(t,i){const r=this._nameToUniform1v[t];if(n(r,i)){this._context.bindProgram(this);this._context.gl.uniform1fv(this.getUniformLocation(t),i),void 0===r?this._nameToUniform1v[t]=o._arrayCopy(i):o._arrayAssign(i,r)}}setUniform2f(t,i,o){const n=this._nameToUniform2[t];if(void 0===n||i!==n[0]||o!==n[1]){this._context.bindProgram(this);this._context.gl.uniform2f(this.getUniformLocation(t),i,o),void 0===n?this._nameToUniform2[t]=[i,o]:(n[0]=i,n[1]=o)}}setUniform2fv(t,i){const r=this._nameToUniform2[t];if(n(r,i)){this._context.bindProgram(this);this._context.gl.uniform2fv(this.getUniformLocation(t),i),void 0===r?this._nameToUniform2[t]=o._arrayCopy(i):o._arrayAssign(i,r)}}setUniform3f(t,i,o,n){const r=this._nameToUniform3[t];if(void 0===r||i!==r[0]||o!==r[1]||n!==r[2]){this._context.bindProgram(this);this._context.gl.uniform3f(this.getUniformLocation(t),i,o,n),void 0===r?this._nameToUniform3[t]=[i,o,n]:(r[0]=i,r[1]=o,r[2]=n)}}setUniform3fv(t,i){const r=this._nameToUniform3[t];if(n(r,i)){this._context.bindProgram(this);this._context.gl.uniform3fv(this.getUniformLocation(t),i),void 0===r?this._nameToUniform3[t]=o._arrayCopy(i):o._arrayAssign(i,r)}}setUniform4f(t,i,o,n,r){const e=this._nameToUniform4[t];if(void 0===e||i!==e[0]||o!==e[1]||n!==e[2]||r!==e[3]){this._context.bindProgram(this);this._context.gl.uniform4f(this.getUniformLocation(t),i,o,n,r),void 0===e?this._nameToUniform4[t]=[i,o,n,r]:(e[0]=i,e[1]=o,e[2]=n,e[3]=r)}}setUniform4fv(t,i){const r=this._nameToUniform4[t];if(n(r,i)){this._context.bindProgram(this);this._context.gl.uniform4fv(this.getUniformLocation(t),i),void 0===r?this._nameToUniform4[t]=o._arrayCopy(i):o._arrayAssign(i,r)}}setUniformMatrix3fv(t,i,n=!1){const e=this._nameToUniformMatrix3[t];if(r(e,i)){this._context.bindProgram(this);this._context.gl.uniformMatrix3fv(this.getUniformLocation(t),n,i),void 0===e?this._nameToUniformMatrix3[t]=o._arrayCopy(i):o._arrayAssign(i,e)}}setUniformMatrix4fv(t,i,n=!1){const r=this._nameToUniformMatrix4[t];if(e(r,i)){this._context.bindProgram(this);this._context.gl.uniformMatrix4fv(this.getUniformLocation(t),n,i),void 0===r?this._nameToUniformMatrix4[t]=o._arrayCopy(i):o._arrayAssign(i,r)}}assertCompatibleVertexAttributeLocations(t){const i=t.locations===this.locations;return i||console.error(\"VertexAttributeLocations are incompatible\"),i}static _padToThree(t){let i=t.toString();return t<1e3&&(i=(\" \"+t).slice(-3)),i}_addLineNumbers(t){let i=2;return t.replace(/\\n/g,(()=>\"\\n\"+o._padToThree(i++)+\":\"))}_loadShader(t){const o=35633===t;let n=o?this._vertexShaderSource:this._fragmentShaderSource,r=\"\";for(const i in this._defines)r+=`#define ${i} ${this._defines[i]}\\n`;n=r+n,\"webgl2\"===this._context.contextVersion&&(n=i(n,o?\"vertex\":\"fragment\"));const e=this._context.gl,s=e.createShader(t);return e.shaderSource(s,n),e.compileShader(s),s}static _arrayCopy(t){const i=[];for(let o=0;o>r,o[e+1]=u[t+1]>>r,o[e+2]=u[t+2]>>r}}var n=Object.freeze({__proto__:null,transformMat4:t,transformMat3:r,scale:f,shiftRight:o});export{r as a,o as b,f as s,t,n as v};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport i from\"../../../../core/PooledArray.js\";import{c as t,f as s,b as e}from\"../../../../chunks/vec3f64.js\";import{e as n,h as r}from\"../../../../chunks/vec3.js\";import{assert as h}from\"./Util.js\";class a{constructor(i,r,a,c){this.primitiveIndices=i,this._numIndexPerPrimitive=r,this.indices=a,this.position=c,this.center=t(),h(i.length>=1),h(a.length%this._numIndexPerPrimitive==0),h(a.length>=i.length*this._numIndexPerPrimitive),h(3===c.size||4===c.size);const{data:o,size:M}=c,d=i.length;let l=M*a[this._numIndexPerPrimitive*i[0]];b.clear(),b.push(l),this.bbMin=s(o[l],o[l+1],o[l+2]),this.bbMax=e(this.bbMin);for(let t=0;t1){const i=n(t(),this.bbMin,this.bbMax,.5),s=this.primitiveIndices.length,e=new Uint8Array(s),r=new Array(8);for(let t=0;t<8;++t)r[t]=0;const{data:h,size:b}=this.position;for(let t=0;t0&&++c;if(c<2)return;const o=new Array(8);for(let t=0;t<8;++t)o[t]=r[t]>0?new Uint32Array(r[t]):void 0;for(let t=0;t<8;++t)r[t]=0;for(let t=0;tthis.reset())),this.grow()}destroy(){this.tickHandle&&(this.tickHandle.remove(),this.tickHandle=t(this.tickHandle)),this.items=t(this.items)}get(){return 0===this.itemsPtr&&i((()=>{})),this.itemsPtr===this.items.length&&this.grow(),this.items[this.itemsPtr++]}reset(){const t=Math.min(3*Math.max(8,this.itemsPtr),this.itemsPtr+3*e);this.items.length=Math.min(t,this.items.length),this.itemsPtr=0}grow(){for(let t=0;tthis.reset()))}destroy(){this.tickHandle&&(this.tickHandle.remove(),this.tickHandle=t(this.tickHandle)),this.itemsPtr=0,this.items=t(this.items),this.buffers=t(this.buffers)}get(){0===this.itemsPtr&&e((()=>{}));const t=Math.floor(this.itemsPtr/this.itemsPerBuffer);for(;this.buffers.length<=t;){const t=new ArrayBuffer(this.itemsPerBuffer*this.itemByteSize);for(let e=0;et;)this.buffers.pop(),this.items.length=this.buffers.length*this.itemsPerBuffer;this.itemsPtr=0}static createVec2f64(t=a){return new c(16,h,t)}static createVec3f64(t=a){return new c(24,s,t)}static createVec4f64(t=a){return new c(32,m,t)}static createMat3f64(t=a){return new c(72,i,t)}static createMat4f64(t=a){return new c(128,r,t)}static createQuatf64(t=a){return new c(32,f,t)}get test(){return{size:this.buffers.length*this.itemsPerBuffer*this.itemByteSize}}}const a=4096;export{c as VectorStack};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{VectorStack as e}from\"../../../core/VectorStack.js\";const t=e.createVec2f64(),c=e.createVec3f64(),r=e.createVec4f64(),a=e.createMat3f64(),f=e.createMat4f64(),o=e.createQuatf64();export{a as sm3d,f as sm4d,o as sq4d,t as sv2d,c as sv3d,r as sv4d};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{clamp as t}from\"../core/mathUtils.js\";import{b as r,c as n}from\"./vec3f64.js\";import{g as e,f as o,d as i,a as c,b as s,o as a,h as u}from\"./vec3.js\";import{ObjectStack as g}from\"../core/ObjectStack.js\";import{sv3d as f}from\"../views/3d/support/stack.js\";function p(t){return t?{origin:r(t.origin),vector:r(t.vector)}:{origin:n(),vector:n()}}function v(t,r){const n=S.get();return n.origin=t,n.vector=r,n}function l(t,r=p()){return m(t.origin,t.vector,r)}function m(t,r,n=p()){return e(n.origin,t),e(n.vector,r),n}function b(t,r,n=p()){return e(n.origin,t),o(n.vector,r,t),n}function h(r,n){const e=o(f.get(),n,r.origin),s=i(r.vector,e),a=i(r.vector,r.vector),u=t(s/a,0,1),g=o(f.get(),c(f.get(),r.vector,u),e);return i(g,g)}function d(t,r){return Math.sqrt(h(t,r))}function j(t,r,n){return A(t,r,0,1,n)}function M(t,r,n){return s(n,t.origin,c(n,t.vector,r))}function A(r,n,e,u,g){const{vector:p,origin:v}=r,l=o(f.get(),n,v),m=i(p,l)/a(p);return c(g,p,t(m,e,u)),s(g,g,r.origin)}function B(t,r){if(_(t,v(r.origin,r.direction),!1,k)){const{tA:r,pB:n,distance2:e}=k;if(r>=0&&r<=1)return e;if(r<0)return u(t.origin,n);if(r>1)return u(s(f.get(),t.origin,t.vector),n)}return null}function w(t,r,n){return!!_(t,r,!0,k)&&(e(n,k.pA),!0)}function P(t,r){return _(t,r,!0,k)?k.distance2:null}function _(r,n,e,o){const i=1e-6,c=r.origin,a=s(f.get(),c,r.vector),g=n.origin,p=s(f.get(),g,n.vector),v=f.get(),l=f.get();if(v[0]=c[0]-g[0],v[1]=c[1]-g[1],v[2]=c[2]-g[2],l[0]=p[0]-g[0],l[1]=p[1]-g[1],l[2]=p[2]-g[2],Math.abs(l[0])({origin:null,vector:null})));var y=Object.freeze({__proto__:null,create:p,wrap:v,copy:l,fromValues:m,fromPoints:b,distance2:h,distance:d,projectPoint:j,pointAt:M,projectPointClamp:A,closestRayDistance2:B,closestLineSegmentPoint:w,closestLineSegmentDistance2:P});export{l as a,b,p as c,h as d,d as e,m as f,j as g,M as h,B as i,w as j,P as k,y as l,A as p,v as w};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{b as t,c as n}from\"./vec3f64.js\";import{g as e,f as r,c as s,d as p,a,b as o,l as c}from\"./vec3.js\";import{ObjectStack as i}from\"../core/ObjectStack.js\";import{i as u}from\"./vec2.js\";import{sv3d as f}from\"../views/3d/support/stack.js\";import{d as g,f as m,c as l}from\"./lineSegment.js\";function d(e){return e?{p0:t(e.p0),p1:t(e.p1),p2:t(e.p2)}:{p0:n(),p1:n(),p2:n()}}function j(t,n,e){const r=O.get();return r.p0=t,r.p1=n,r.p2=e,r}function b(t,n=d()){return v(t.p0,t.p1,t.p2,n)}function v(t,n,r,s=d()){return e(s.p0,t),e(s.p1,n),e(s.p2,r),s}function w(t,n){const e=t.p0,a=t.p1,o=t.p2,c=r(f.get(),a,e),i=r(f.get(),o,a),u=r(f.get(),e,o),l=r(f.get(),n,e),d=r(f.get(),n,a),j=r(f.get(),n,o),b=s(c,c,u),v=p(s(f.get(),c,b),l),w=p(s(f.get(),i,b),d),_=p(s(f.get(),u,b),j);if(v>0&&w>0&&_>0){const t=p(b,l);return t*t/p(b,b)}const h=g(m(e,c,M.get()),n),k=g(m(a,i,M.get()),n),y=g(m(o,u,M.get()),n);return Math.min(h,k,y)}function _(t,n,e){const r=1e-5,{direction:s,origin:p}=n,{p0:c,p1:i,p2:u}=t,f=i[0]-c[0],g=i[1]-c[1],m=i[2]-c[2],l=u[0]-c[0],d=u[1]-c[1],j=u[2]-c[2],b=s[1]*j-d*s[2],v=s[2]*l-j*s[0],w=s[0]*d-l*s[1],_=f*b+g*v+m*w;if(_>-r&&_1)return!1;const P=y*m-g*M,S=M*f-m*k,q=k*g-f*y,x=h*(s[0]*P+s[1]*S+s[2]*q);if(x<0||O+x>1)return!1;if(e){a(e,s,h*(l*P+d*S+j*q)),o(e,p,e)}return!0}function h(t,n,e){const r=u(t,n),s=u(n,e),p=u(e,t),a=(r+s+p)/2,o=a*(a-r)*(a-s)*(a-p);return o<=0?0:Math.sqrt(o)}function k(t){return h(t.p0,t.p1,t.p2)}function y(t,n,e){return r(P,n,t),r(S,e,t),c(s(P,P,S))/2}const M=new i(l),O=new i((()=>({p0:null,p1:null,p2:null}))),P=n(),S=n();var q=Object.freeze({__proto__:null,create:d,wrap:j,copy:b,fromValues:v,distance2:w,intersectRay:_,areaPoints2d:h,area2d:k,areaPoints3d:y});export{y as a,b,d as c,w as d,h as e,v as f,k as g,_ as i,q as t,j as w};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{c as t}from\"../../../../chunks/vec3f64.js\";import{s as n,b as r,a as e,w as o}from\"../../../../chunks/vec3.js\";import{a as s}from\"../../../../chunks/triangle.js\";let c=(()=>{const t=new Uint32Array(131072);for(let n=0;n{const t=new Uint16Array(65536);for(let n=0;nc.length){const n=Math.max(2*c.length,t);c=new Uint32Array(n);for(let t=0;t1&&e(o,o,1/a),a>0}function h(t,s,c,f){if(!t)return!1;const{size:a,data:i}=t;n(f,0,0,0),n(y,0,0,0);let l=0,u=0;const h=s?s.length-1:i.length/a-1,w=h+(c?2:0);for(let n=0;n0?(r(f,f,e(g,g,U)),l+=U):(r(y,y,g),u++)}return 0!==l?(e(f,f,1/l),!0):0!==u&&(e(f,y,1/u),!0)}const g=t(),m=t(),w=t(),y=t();export{h as computeAttachmentOriginLines,u as computeAttachmentOriginPoints,l as computeAttachmentOriginTriangles,i as generateDefaultIndexArray};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isNone as t}from\"../../../../core/maybe.js\";import{assert as e}from\"./Util.js\";import{BoundingInfo as i}from\"./BoundingInfo.js\";import{ContentObject as n}from\"./ContentObject.js\";import{generateDefaultIndexArray as s,computeAttachmentOriginTriangles as r,computeAttachmentOriginPoints as o}from\"./geometryDataUtils.js\";class u extends n{constructor(t,e=[],i=0,n=-1){super(),this._primitiveType=i,this.edgeIndicesLength=n,this.type=2,this._vertexAttributes=new Map,this._indices=new Map,this._boundingInfo=null;for(const[s,r]of t)r&&this._vertexAttributes.set(s,{...r});if(null==e||0===e.length){const t=h(this._vertexAttributes),e=s(t);this.edgeIndicesLength=this.edgeIndicesLength<0?t:this.edgeIndicesLength;for(const i of this._vertexAttributes.keys())this._indices.set(i,e)}else for(const[s,r]of e)r&&(this._indices.set(s,g(r)),\"position\"===s&&(this.edgeIndicesLength=this.edgeIndicesLength<0?this._indices.get(s).length:this.edgeIndicesLength))}get vertexAttributes(){return this._vertexAttributes}getMutableAttribute(t){const e=this._vertexAttributes.get(t);return e&&!e.exclusive&&(e.data=Array.from(e.data),e.exclusive=!0),e}get indices(){return this._indices}get indexCount(){const t=this._indices.values().next().value;return t?t.length:0}get primitiveType(){return this._primitiveType}get faceCount(){return this.indexCount/3}get boundingInfo(){return t(this._boundingInfo)&&(this._boundingInfo=this._calculateBoundingInfo()),this._boundingInfo}computeAttachmentOrigin(t){return 0===this.primitiveType?this.computeAttachmentOriginTriangles(t):this.computeAttachmentOriginPoints(t)}computeAttachmentOriginTriangles(t){const e=this.indices.get(\"position\"),i=this.vertexAttributes.get(\"position\");return r(i,e,t)}computeAttachmentOriginPoints(t){const e=this.indices.get(\"position\"),i=this.vertexAttributes.get(\"position\");return o(i,e,t)}invalidateBoundingInfo(){this._boundingInfo=null}_calculateBoundingInfo(){const t=this.indices.get(\"position\");if(0===t.length)return null;const n=0===this.primitiveType?3:1;e(t.length%n==0,\"Indexing error: \"+t.length+\" not divisible by \"+n);const r=s(t.length/n),o=this.vertexAttributes.get(\"position\");return new i(r,n,t,o)}}function h(t){const e=t.values().next().value;return null==e?0:e.data.length/e.size}function g(t){if(t.BYTES_PER_ELEMENT===Uint16Array.BYTES_PER_ELEMENT)return t;for(const e of t)if(e>=65536)return t;return new Uint16Array(t)}export{u as Geometry};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{acosClamped as t}from\"../core/mathUtils.js\";import{c as n}from\"./vec3f64.js\";import{d as o,l as r,a as s,n as a,c as e}from\"./vec3.js\";function c(t,n,r){const a=o(t,n)/o(t,t);return s(r,t,a)}function i(t,n){return o(t,n)/r(t)}function u(n,s){const a=o(n,s)/(r(n)*r(s));return-t(a)}function f(n,r,s){a(p,n),a(m,r);const c=o(p,m),i=t(c),u=e(p,p,m);return o(u,s)<0?2*Math.PI-i:i}const p=n(),m=n();var j=Object.freeze({__proto__:null,projectPoint:c,projectPointSignedLength:i,angle:u,angleAroundAxis:f});export{u as a,f as b,c,i as p,j as v};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isNone as r}from\"../core/maybe.js\";import{castRenderScreenPointArray3 as n}from\"../core/screenUtils.js\";import{b as e,c as o}from\"./vec3f64.js\";import{g as t,f as i,s as c,c as s,n as a,d as u,b as f,a as g}from\"./vec3.js\";import{ObjectStack as d}from\"../core/ObjectStack.js\";import{c as m}from\"./vec2.js\";import{sv3d as p}from\"../views/3d/support/stack.js\";function l(r){return r?{origin:e(r.origin),direction:e(r.direction)}:{origin:o(),direction:o()}}function j(r,n){const e=E.get();return e.origin=r,e.direction=n,e}function R(r,n=l()){return S(r.origin,r.direction,n)}function b(r,n,e=l()){return t(e.origin,r),i(e.direction,n,r),e}function S(r,n,e=l()){return t(e.origin,r),t(e.direction,n),e}function v(r,e,o=l()){return y(r,r.screenToRender(e,n(p.get())),o)}function y(e,o,t=l()){const c=n(m(p.get(),o));if(c[2]=0,!e.unprojectFromRenderScreen(c,t.origin))return null;const s=n(m(p.get(),o));s[2]=1;const a=e.unprojectFromRenderScreen(s,p.get());return r(a)?null:(i(t.direction,a,t.origin),t)}function w(r,e,o=l()){return _(r,r.screenToRender(e,n(p.get())),o)}function _(n,e,o=l()){t(o.origin,n.eye);const s=c(p.get(),e[0],e[1],1),a=n.unprojectFromRenderScreen(s,p.get());return r(a)?null:(i(o.direction,a,o.origin),o)}function k(r,n){const e=s(p.get(),a(p.get(),r.direction),i(p.get(),n,r.origin));return u(e,e)}function F(r,n){return Math.sqrt(k(r,n))}function h(r,n,e){const o=u(r.direction,i(e,n,r.origin));return f(e,r.origin,g(e,r.direction,o)),e}function A(){return{origin:null,direction:null}}const E=new d(A);var O=Object.freeze({__proto__:null,create:l,wrap:j,copy:R,fromPoints:b,fromValues:S,fromScreen:v,fromRender:y,fromScreenAtEye:w,fromRenderAtEye:_,distance2:k,distance:F,closestPoint:h,createWrapper:A});export{v as a,R as b,l as c,k as d,S as e,_ as f,w as g,h,b as i,y as j,F as k,A as l,O as r,j as w};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../core/has.js\";import{isNone as t}from\"../core/maybe.js\";import r from\"../core/Logger.js\";import{acosClamped as n}from\"../core/mathUtils.js\";import{c as s}from\"./vec3f64.js\";import{g as e,f as o,d as i,b as a,a as c,k as u,l as f,c as m,i as g,o as p,n as l,s as h}from\"./vec3.js\";import{cartesianToSpherical as d}from\"../views/3d/support/mathUtils.js\";import{i as j,r as y}from\"./mat4.js\";import{a as v,b as M}from\"./vec4f64.js\";import{c as A}from\"./vec4.js\";import{sv3d as b,sm4d as w}from\"../views/3d/support/stack.js\";import{a as R}from\"./vector.js\";import{g as x,h as S,c as _}from\"./ray.js\";const k=r.getLogger(\"esri.views.3d.support.geometryUtils.sphere\");function q(){return v()}function C(t,r=q()){return A(r,t)}function O(t,r){return M(t[0],t[1],t[2],r)}function P(t){return t}function U(t){t[0]=t[1]=t[2]=t[3]=0}function z(t){return t}function E(t){return Array.isArray(t)?t[3]:t}function L(t){return Array.isArray(t)?t:tt}function T(t,r,n,s){return M(t,r,n,s)}function V(t,r,n){return t!==n&&e(n,t),n[3]=t[3]+r,n}function B(t,r,n){return k.error(\"sphere.setExtent is not yet supported\"),t===n?n:C(t,n)}function D(r,n,s){if(t(n))return!1;const e=o(b.get(),n.origin,L(r)),u=i(n.direction,n.direction),f=2*i(n.direction,e),m=f*f-4*u*(i(e,e)-r[3]*r[3]);if(m<0)return!1;const g=Math.sqrt(m);let p=(-f-g)/(2*u);const l=(-f+g)/(2*u);return(p<0||l0)&&(p=l),!(p<0)&&(s&&a(s,n.origin,c(b.get(),n.direction,p)),!0)}function F(t,r,n,s){return D(t,x(r,n,$),s)}function G(t,r){return D(t,r,null)}function H(t,r,n){if(D(t,r,n))return n;const s=I(t,r,b.get());return a(n,r.origin,c(b.get(),r.direction,u(r.origin,s)/f(r.direction))),n}function I(t,r,n){const s=b.get(),e=w.get();m(s,r.origin,r.direction);const o=E(t);m(n,s,r.origin),c(n,n,1/f(n)*o);const i=Q(t,r.origin),a=R(r.origin,n);return j(e),y(e,e,a+i,s),g(n,n,e),n}function J(t,r,n){return D(t,r,n)?n:(S(r,L(t),n),K(t,n,n))}function K(t,r,n){const s=o(b.get(),r,L(t)),e=c(b.get(),s,t[3]/f(s));return a(n,e,L(t))}function N(t,r){const n=o(b.get(),r,L(t)),s=p(n),e=t[3]*t[3];return Math.sqrt(Math.abs(s-e))}function Q(t,r){const s=o(b.get(),r,L(t)),e=f(s),i=E(t),a=i+Math.abs(i-e);return n(i/a)}const W=s();function X(t,r,n,s){const e=o(W,r,L(t));switch(n){case 0:{const t=d(e,W)[2];return h(s,-Math.sin(t),Math.cos(t),0)}case 1:{const t=d(e,W),r=t[1],n=t[2],o=Math.sin(r);return h(s,-o*Math.cos(n),-o*Math.sin(n),Math.cos(r))}case 2:return l(s,e);default:return}}function Y(t,r){const n=o(rt,r,L(t));return f(n)-t[3]}function Z(t,r,n,s){const e=Y(t,r),o=X(t,r,2,rt),i=c(rt,o,n-e);return a(s,r,i),s}const $=_(),tt=s(),rt=s();Object.freeze(tt);var nt=Object.freeze({__proto__:null,create:q,copy:C,fromCenterAndRadius:O,wrap:P,clear:U,fromRadius:z,getRadius:E,getCenter:L,fromValues:T,elevate:V,setExtent:B,intersectRay:D,intersectScreen:F,intersectsRay:G,intersectRayClosestSilhouette:H,closestPointOnSilhouette:I,closestPoint:J,projectPoint:K,distanceToSilhouette:N,angleToSilhouette:Q,axisAt:X,altitudeAt:Y,setAltitudeAt:Z});export{U as a,C as b,q as c,z as d,E as e,O as f,L as g,T as h,D as i,V as j,B as k,F as l,G as m,H as n,I as o,J as p,K as q,N as r,nt as s,Q as t,X as u,Y as v,P as w,Z as x};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../core/maybe.js\";import{clamp as n}from\"../core/mathUtils.js\";import{c as r}from\"./vec3f64.js\";import{g as e,d as o,a as i,f as s,m as c,n as u,c as a,b as f}from\"./vec3.js\";import{sv4d as m,sv3d as g}from\"../views/3d/support/stack.js\";import{g as p}from\"./sphere.js\";function l(t=T){return[t[0],t[1],t[2],t[3]]}function d(t,n,r,e){return h(t,n,r,e,m.get())}function y(t,n=l()){return h(t[0],t[1],t[2],t[3],n)}function h(t,n,r,e,o=l()){return o[0]=t,o[1]=n,o[2]=r,o[3]=e,o}function j(t,n,r=l()){return e(r,t),r[3]=n,r}function P(t,n,r=l()){e(r,n);const s=o(n,n);return Math.abs(s-1)>1e-5&&s>1e-12&&i(r,r,1/Math.sqrt(s)),I(r,t,r),r}function M(t,n,r,e=l()){return w(s(g.get(),t,n),s(g.get(),r,n),t,e)}function b(t,n){return v(t,n,0,1,2)}function v(t,n,r,e,i){if(t.count<3)return!1;t.getVec(r,V);let a=e,f=!1;for(;a=0}function z(t,n){return J(t,p(n))+n[3]<0}function L(t,n){return J(t,n)>=0}function N(t,n){return J(t,n)<0}function C(t,n){const r=n[0],e=n[1],o=n[2],i=n[3],s=n[4],c=n[5];return t[0]*(t[0]>0?r:i)+t[1]*(t[1]>0?e:s)+t[2]*(t[2]>0?o:c)+t[3]>=0}function D(t,n){const r=o(Q(t),n.ray.direction),e=-J(t,n.ray.origin);if(e<0&&r>=0)return!1;if(r>-1e-6&&r<1e-6)return e>0;if((e<0||r<0)&&!(e<0&&r<0))return!0;const i=e/r;return r>0?in.c0&&(n.c0=i),n.c0<=n.c1}function R(t,n){const r=o(Q(t),n.ray.direction),e=-J(t,n.ray.origin);if(r>-1e-6&&r<1e-6)return e>0;const i=e/r;return r>0?in.c0&&(n.c0=i),n.c0<=n.c1}function E(t,n,r){const e=i(g.get(),Q(t),-t[3]),o=G(t,s(g.get(),n,e),g.get());return f(r,o,e),r}function G(t,n,r){const e=i(g.get(),Q(t),o(Q(t),n));return s(r,n,e),r}function H(t,n){return Math.abs(J(t,n))}function J(t,n){return o(Q(t),n)+t[3]}function K(t,r,e,s,c,u){const a=o(Q(t),e);if(0===a)return!1;let m=-(o(Q(t),r)+t[3])/a;return c&&(m=s?Math.max(0,m):n(m,0,1)),!(m<0||!s&&m>1)&&(f(u,r,i(u,e,m)),!0)}function Q(t){return t}const T=[0,0,1,0];var W=Object.freeze({__proto__:null,create:l,wrap:d,copy:y,fromValues:h,fromNormalAndOffset:j,fromPositionAndNormal:P,fromPoints:M,fromManyPoints:b,fromManyPointsSampleAt:v,setOffsetFromPoint:I,negate:_,fromVectorsAndPoint:w,intersectRay:B,intersectLineSegment:U,intersectLineSegmentClamp:k,isSphereFullyInside:q,isSphereFullyOutside:z,isPointInside:L,isPointOutside:N,isAABBFullyInside:C,clip:D,clipInfinite:R,projectPoint:E,projectVector:G,distance:H,signedDistance:J,normal:Q,UP:T});export{G as A,H as B,T as U,y as a,h as b,l as c,U as d,k as e,w as f,L as g,W as h,B as i,M as j,q as k,R as l,J as m,Q as n,C as o,E as p,D as q,N as r,I as s,v as t,j as u,P as v,d as w,b as x,_ as y,z};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../core/has.js\";import s from\"../core/Logger.js\";import{acosClamped as i}from\"../core/mathUtils.js\";import{c as n,b as t,f as a}from\"./vec3f64.js\";import{g as o,a as r,b as e,s as c,k as u,l as g,d as b,f,m as l,i as p,n as m,o as d}from\"./vec3.js\";import{directionFromTo as h}from\"../views/3d/support/mathUtils.js\";import{a as j,b as I,r as v,i as w}from\"./mat4.js\";import{ObjectStack as P}from\"../core/ObjectStack.js\";import{a as N}from\"./mat4f64.js\";import{sv3d as M}from\"../views/3d/support/stack.js\";import{p as T}from\"./vector.js\";import{p as y,d as A,c as S}from\"./lineSegment.js\";import{d as _}from\"./ray.js\";import{c as x,w as V,a as k,f as E,n as O,b as U,i as q,d as B,e as F,g as Y,p as C,s as L}from\"./plane.js\";const R=s.getLogger(\"esri.views.3d.support.geometryUtils.boundedPlane\");class z{constructor(){this.plane=x(),this.origin=n(),this.basis1=n(),this.basis2=n()}}function G(s=Ps){return{plane:x(s.plane),origin:t(s.origin),basis1:t(s.basis1),basis2:t(s.basis2)}}function W(s,i,n){const t=ys.get();return t.origin=s,t.basis1=i,t.basis2=n,t.plane=V(0,0,0,0),K(t),t}function D(s,i=G()){return J(s.origin,s.basis1,s.basis2,i)}function H(s,i){o(i.origin,s.origin),o(i.basis1,s.basis1),o(i.basis2,s.basis2),k(s.plane,i.plane)}function J(s,i,n,t=G()){return o(t.origin,s),o(t.basis1,i),o(t.basis2,n),K(t),vs(t,\"fromValues()\"),t}function K(s){E(s.basis2,s.basis1,s.origin,s.plane)}function Q(s,i,n){s!==n&&D(s,n);const t=r(M.get(),ms(s),i);return e(n.origin,n.origin,t),n.plane[3]-=i,n}function X(s,i,n){return Z(i,n),Q(n,gs(s,s.origin),n),n}function Z(s,i=G()){const n=(s[2]-s[0])/2,t=(s[3]-s[1])/2;return c(i.origin,s[0]+n,s[1]+t,0),c(i.basis1,n,0,0),c(i.basis2,0,t,0),U(0,0,1,0,i.plane),i}function $(s,i,n){return!!q(s.plane,i,n)&&hs(s,n)}function ss(s,i,n){if($(s,i,n))return n;const t=is(s,i,M.get());return e(n,i.origin,r(M.get(),i.direction,u(i.origin,t)/g(i.direction))),n}function is(s,n,t){const a=Ns.get();ws(s,n,a,Ns.get());let r=Number.POSITIVE_INFINITY;for(const e of As){const c=Is(s,e,Ms.get()),u=M.get();if(B(a,c,u)){const s=h(M.get(),n.origin,u),a=Math.abs(i(b(n.direction,s)));an&&(n=o)}return Math.sqrt(n)}function cs(s,i){return Y(s.plane,i)&&hs(s,i)}function us(s,i,n,t){return ds(s,n,t)}function gs(s,i){const n=-s.plane[3];return T(ms(s),i)-n}function bs(s,i,n,t){const a=gs(s,i),o=r(Ts,ms(s),n-a);return e(t,i,o),t}function fs(s,i){return l(s.basis1,i.basis1)&&l(s.basis2,i.basis2)&&l(s.origin,i.origin)}function ls(s,i,n){return s!==n&&D(s,n),j(Ss,i),I(Ss,Ss),p(n.basis1,s.basis1,Ss),p(n.basis2,s.basis2,Ss),p(O(n.plane),O(s.plane),Ss),p(n.origin,s.origin,i),L(n.plane,n.origin,n.plane),n}function ps(s,i,n,t){return s!==t&&D(s,t),v(_s,w(_s),i,n),p(t.basis1,s.basis1,_s),p(t.basis2,s.basis2,_s),K(t),t}function ms(s){return O(s.plane)}function ds(s,i,n){switch(i){case 0:o(n,s.basis1),m(n,n);break;case 1:o(n,s.basis2),m(n,n);break;case 2:o(n,ms(s))}return n}function hs(s,i){const n=f(M.get(),i,s.origin),t=d(s.basis1),a=d(s.basis2),o=b(s.basis1,n),r=b(s.basis2,n);return-o-t<0&&o-t<0&&-r-a<0&&r-a<0}function js(s,i){const n=Ms.get();return o(n.origin,s.origin),o(n.vector,i),n}function Is(s,i,n){const{basis1:t,basis2:a,origin:o}=s,c=r(M.get(),t,i.origin[0]),u=r(M.get(),a,i.origin[1]);e(n.origin,c,u),e(n.origin,n.origin,o);const g=r(M.get(),t,i.direction[0]),b=r(M.get(),a,i.direction[1]);return r(n.vector,e(g,g,b),2),n}function vs(s,i){Math.abs(b(s.basis1,s.basis2)/(g(s.basis1)*g(s.basis2)))>1e-6&&R.warn(i,\"Provided basis vectors are not perpendicular\"),Math.abs(b(s.basis1,ms(s)))>1e-6&&R.warn(i,\"Basis vectors and plane normal are not perpendicular\"),Math.abs(-b(ms(s),s.origin)-s.plane[3])>1e-6&&R.warn(i,\"Plane offset is not consistent with plane origin\")}function ws(s,i,n,t){const a=ms(s);E(a,i.direction,i.origin,n),E(O(n),a,i.origin,t)}const Ps={plane:x(),origin:a(0,0,0),basis1:a(1,0,0),basis2:a(0,1,0)},Ns=new P(x),Ms=new P(S),Ts=n(),ys=new P((()=>({origin:null,basis1:null,basis2:null,plane:null}))),As=[{origin:[-1,-1],direction:[1,0]},{origin:[1,-1],direction:[0,1]},{origin:[1,1],direction:[-1,0]},{origin:[-1,1],direction:[0,-1]}],Ss=N(),_s=N();var xs=Object.freeze({__proto__:null,BoundedPlaneClass:z,create:G,wrap:W,copy:D,copyWithoutVerify:H,fromValues:J,updateUnboundedPlane:K,elevate:Q,setExtent:X,fromAABoundingRect:Z,intersectRay:$,intersectRayClosestSilhouette:ss,closestPointOnSilhouette:is,closestPoint:ns,projectPoint:ts,projectPointLocal:as,distance2:os,distance:rs,distanceToSilhouette:es,extrusionContainsPoint:cs,axisAt:us,altitudeAt:gs,setAltitudeAt:bs,equals:fs,transform:ls,rotate:ps,normal:ms,UP:Ps});export{ms as A,z as B,Ps as U,D as a,xs as b,G as c,H as d,cs as e,J as f,Q as g,Z as h,$ as i,ss as j,is as k,ns as l,as as m,os as n,rs as o,ts as p,es as q,us as r,X as s,gs as t,K as u,bs as v,W as w,fs as x,ls as y,ps as z};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{g as r,c as n,n as t}from\"./vec3.js\";import{sv4d as s}from\"../views/3d/support/stack.js\";import{a as o}from\"./vector.js\";function e(r=g){return[r[0],r[1],r[2],r[3]]}function a(r,n,t,o){return f(r,n,t,o,s.get())}function u(r,n){return f(r[0],r[1],r[2],n,s.get())}function c(r,n=e()){return f(r[0],r[1],r[2],r[3],n)}function f(r,n,t,s,o=e()){return o[0]=r,o[1]=n,o[2]=t,o[3]=s,o}function i(n,t,s=e()){return r(s,n),s[3]=t,s}function p(r,s,a=e()){return n(a,r,s),t(a,a),a[3]=o(r,s),a}function m(r){return r}const g=[0,0,1,0];var l=Object.freeze({__proto__:null,create:e,wrap:a,wrapAxisAngle:u,copy:c,fromValues:f,fromAxisAndAngle:i,fromPoints:p,axis:m,UP:g});export{g as U,l as a,u as b,e as c,c as d,i as e,f,p as g,m as h,a as w};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{n as r,l as t,b as c,a as n}from\"./vec3.js\";import{ObjectStack as e}from\"../core/ObjectStack.js\";import{sv3d as a}from\"../views/3d/support/stack.js\";import{c as o,b as s,e as i}from\"./ray.js\";function u(r){return r?{ray:o(r.ray),c0:r.c0,c1:r.c1}:{ray:o(),c0:0,c1:Number.MAX_VALUE}}function f(r,t,c){const n=_.get();return n.ray=r,n.c0=t,n.c1=c,n}function m(r,t=u()){return y(r.ray,r.c0,r.c1,t)}function y(r,t,c,n=u()){return s(r,n.ray),n.c0=t,n.c1=c,n}function g(r,t=u()){return s(r,t.ray),t.c0=0,t.c1=Number.MAX_VALUE,t}function p(t,c=u()){return b(t,r(a.get(),t.vector),c)}function b(r,c,n=u()){const e=t(r.vector);return i(r.origin,c,n.ray),n.c0=0,n.c1=e,n}function j(r,t){return A(r,r.c0,t)}function l(r,t){return A(r,r.c1,t)}function A(r,t,e){return c(e,r.ray.origin,n(e,r.ray.direction,t))}const _=new e((()=>({c0:0,c1:0,ray:null})));var d=Object.freeze({__proto__:null,create:u,wrap:f,copy:m,fromValues:y,fromRay:g,fromLineSegment:p,fromLineSegmentAndDirection:b,getStart:j,getEnd:l,getAt:A});export{b as a,u as b,d as c,l as d,m as e,g as f,j as g,y as h,p as i,A as j,f as w};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{c as t}from\"./vec3f64.js\";import{s as r}from\"./vec3.js\";import{m as e,a as s}from\"./mat4.js\";import{ObjectStack as n}from\"../core/ObjectStack.js\";import{b as o}from\"./vec4f64.js\";import{t as a}from\"./vec4.js\";import{sm4d as i,sv4d as f}from\"../views/3d/support/stack.js\";import{c,a as u,j as m,k as p,l,m as j,o as g,q as b}from\"./plane.js\";import{f as v,a as k,b as y}from\"./clipRay.js\";function P(t){return t?[c(t[0]),c(t[1]),c(t[2]),c(t[3]),c(t[4]),c(t[5])]:[c(),c(),c(),c(),c(),c()]}function _(){return[t(),t(),t(),t(),t(),t(),t(),t()]}function d(t,r=P()){for(let e=0;e<6;e++)u(t[e],r[e])}function h(t,n,o,c=L){const u=e(i.get(),n,t);s(u,u);for(let e=0;e<8;++e){const t=a(f.get(),C[e],u);r(c[e],t[0]/t[3],t[1]/t[3],t[2]/t[3])}R(o,c)}function R(t,r){m(r[4],r[0],r[3],t[0]),m(r[1],r[5],r[6],t[1]),m(r[4],r[5],r[1],t[2]),m(r[3],r[2],r[6],t[3]),m(r[0],r[1],r[2],t[4]),m(r[5],r[4],r[7],t[5])}function S(t,r){for(let e=0;e<6;e++)if(p(t[e],r))return!1;return!0}function w(t,r){return q(t,v(r,I.get()))}function x(t,r){for(let e=0;e<6;e++){const s=t[e];if(!l(s,r))return!1}return!0}function A(t,r,e){return q(t,k(r,e,I.get()))}function B(t,r){for(let e=0;e<6;e++){if(j(t[e],r)>0)return!1}return!0}function O(t,r){for(let e=0;e<6;e++)if(g(t[e],r))return!1;return!0}function q(t,r){for(let e=0;e<6;e++)if(!b(t[e],r))return!1;return!0}const z={bottom:[5,1,0,4],near:[0,1,2,3],far:[5,4,7,6],right:[1,5,6,2],left:[4,0,3,7],top:[7,3,2,6]},C=[o(-1,-1,-1,1),o(1,-1,-1,1),o(1,1,-1,1),o(-1,1,-1,1),o(-1,-1,1,1),o(1,-1,1,1),o(1,1,1,1),o(-1,1,1,1)],I=new n(y),L=_();var M=Object.freeze({__proto__:null,create:P,createPoints:_,copy:d,fromMatrix:h,computePlanes:R,intersectsSphere:S,intersectsRay:w,intersectClipRay:x,intersectsLineSegment:A,intersectsPoint:B,intersectsAABB:O,planePointIndices:z});export{_ as a,h as b,P as c,R as d,w as e,M as f,A as g,B as h,S as i,O as j,d as k,x as l,z as p};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../../../../core/maybe.js\";import r from\"../../../../core/ObjectPool.js\";import{generateUID as i}from\"../../../../core/uid.js\";import{i as s}from\"../../../../chunks/vec3.js\";class o{constructor(){this._disposed=!1}get disposed(){return this._disposed}get shaderTransformation(){return this._shaderTransformation}acquire(t,r,s,o,e,a){this.id=i(),this.geometry=t,this.material=r,this.transformation=s,this.instanceParameters=o,this.origin=e,this._shaderTransformation=a,this._disposed=!1}release(){this._disposed=!1}dispose(){this._disposed=!0}getStaticTransformation(){return this.transformation}getShaderTransformation(){return t(this._shaderTransformation)?this._shaderTransformation(this.transformation):this.transformation}computeAttachmentOrigin(t){return!!(this.material.computeAttachmentOrigin?this.material.computeAttachmentOrigin(this.geometry,t):this.geometry.computeAttachmentOrigin(t))&&(s(t,t,this.getStaticTransformation()),!0)}}o.pool=new r(o);export{o as GeometryRecord};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isNone as t,isSome as s,unwrap as r}from\"../../../../core/maybe.js\";import{c as e,b as i}from\"../../../../chunks/vec3f64.js\";import{e as a,a as n,l as h,b as o,g as c,n as l,q as f,f as m}from\"../../../../chunks/vec3.js\";import{a as u,b as p,c as d,m as b}from\"../../../../chunks/mat4.js\";import{a as g}from\"../../../../chunks/mat3f64.js\";import{a as y}from\"../../../../chunks/mat4f64.js\";import{a as v}from\"../../../../chunks/quatf64.js\";import{a as S}from\"../../../../chunks/vec4f64.js\";import{b as T}from\"../../../../chunks/mat3.js\";import{t as z}from\"../../../../chunks/vec4.js\";import{c as O}from\"../../../../chunks/quat.js\";import{c as _}from\"../../../../chunks/vec3f32.js\";import{c as L}from\"../../../../chunks/sphere.js\";import{e as x}from\"../../../../chunks/boundedPlane.js\";import{ray as M}from\"../../support/geometryUtils.js\";import{Object3D as q}from\"./Object3D.js\";function I(t){return(s,r,e)=>(a(X,s,r,e),!x(t,X))}class V{constructor(){this.verticalOffset=0,this.selectionMode=!1,this.hud=!0,this.selectOpaqueTerrainOnly=!0,this.invisibleTerrain=!1,this.backfacesTerrain=!0,this.isFiltered=!1,this.store=2}}class j{constructor(){this._transform=y(),this._transformInverse=new w({value:this._transform},u,y),this._transformInverseTranspose=new w(this._transformInverse,p,y),this._transformTranspose=new w({value:this._transform},p,y),this._transformInverseRotation=new w({value:this._transform},T,g)}invalidateLazyTransforms(){this._transformInverse.invalidate(),this._transformInverseTranspose.invalidate(),this._transformTranspose.invalidate(),this._transformInverseRotation.invalidate()}get transform(){return this._transform}get inverse(){return this._transformInverse.value}get inverseTranspose(){return this._transformInverseTranspose.value}get inverseRotation(){return this._transformInverseRotation.value}get transpose(){return this._transformTranspose.value}setTransformMatrix(t){d(this._transform,t)}multiplyTransform(t){b(this._transform,this._transform,t)}set(t){d(this._transform,t),this.invalidateLazyTransforms()}setAndInvalidateLazyTransforms(t,s){this.setTransformMatrix(t),this.multiplyTransform(s),this.invalidateLazyTransforms()}}class w{constructor(t,s,r){this.original=t,this.update=s,this.dirty=!0,this.transform=r()}invalidate(){this.dirty=!0}get value(){return this.dirty&&(this.update(this.transform,this.original.value),this.dirty=!1),this.transform}}class k{constructor(){this.min=new G,this.max=new G,this.hud=new G,this.ground=new G}init(t){this.min.init(t),this.max.init(t),this.hud.init(t),this.ground.init(t),this.all=[]}}class G{constructor(t){this.normal=e(),this.transformation=y(),this._ray=M.create(),this.init(t)}get ray(){return this._ray}get hasIntersectionPoint(){return null!=this.dist}get distanceInRenderSpace(){if(null!=this.dist)return n(Y,this.ray.direction,this.dist),h(Y)}getIntersectionPoint(t){return!!this.hasIntersectionPoint&&(n(Y,this.ray.direction,this.dist),o(t,this.ray.origin,Y),!0)}getTransformedNormal(t){return c(Z,this.normal),Z[3]=0,z(Z,Z,this.transformation),c(t,Z),l(t,t),t}init(t){this.dist=void 0,this.target=void 0,this.name=void 0,this.drapedLayerOrder=void 0,this.drapedLayerGraphicOrder=void 0,this.center=null,this.geometryId=null,this.triangleNr=null,this.intersector=\"Stage\",t?M.copy(t,this._ray):this._ray=M.create()}set(t,s,r,e,a,n,h,o,l,f){t instanceof q&&(t={type:\"stage\",obj:t}),this.dist=r,c(this.normal,e),d(this.transformation,a),this.target=t,this.name=s,this.drapedLayerOrder=n,this.center=h?i(h):null,this.geometryId=o,this.triangleNr=l,this.drapedLayerGraphicOrder=f}copyFrom(t){M.copy(t._ray,this._ray),this.dist=t.dist,this.target=t.target,this.name=t.name,this.drapedLayerOrder=t.drapedLayerOrder,this.center=t.center?i(t.center):null,this.geometryId=t.geometryId,this.triangleNr=t.triangleNr,this.intersector=t.intersector,this.drapedLayerGraphicOrder=t.drapedLayerGraphicOrder,c(this.normal,t.normal),d(this.transformation,t.transformation)}toOwner(t){if(!this.target)return null;switch(this.target.type){case\"stage\":return U(this.target.obj.metadata,t);case\"external\":switch(this.intersector){case\"PointRenderer\":return P(this.target,t);case\"I3S\":case\"IM\":case\"LodRenderer\":case\"OverlayRenderer\":return U(this.target.metadata,t);case\"TerrainRenderer\":return t.map&&t.map.ground}}return null}toGraphic(t){if(!this.target)return null;switch(this.target.type){case\"stage\":return R(this.target.obj.metadata,t);case\"external\":switch(this.intersector){case\"PointRenderer\":return N(this.target);case\"I3S\":case\"IM\":case\"LodRenderer\":case\"OverlayRenderer\":return R(this.target.metadata,t)}}return null}}function U(r,e){return t(r)||null==r.layerUid?null:s(e.graphicsView)&&r.layerUid===e.graphicsView.graphics3d.layer.id?e.graphics:e.map.findLayerByUid(r.layerUid)}function R(e,i){if(t(e))return null;const a=U(e,i);if(t(a))return null;if(a===i.graphics)return s(i.graphicsView)?r(i.graphicsView.getGraphicFromGraphicUid(e.graphicUid)):null;const n=i.allLayerViews.find((t=>t.layer===a));return n?F(n,e):null}function F(t,s){return!t||t.suspended?null:\"getGraphicFromIntersectorMetadata\"in t&&s?t.getGraphicFromIntersectorMetadata(s):\"getGraphicFromGraphicUid\"in t&&null!=s.graphicUid?t.getGraphicFromGraphicUid(s.graphicUid):null}function P(t,s){const r=t.metadata.layerUid;return null!=r?s.map.findLayerByUid(r):null}function N(t){return t.metadata.createGraphic()}class A{constructor(t=0){this.offset=t,this.tmpVertex=e()}applyToVertex(t,s,r){const e=t+this.localOrigin[0],i=s+this.localOrigin[1],a=r+this.localOrigin[2],n=this.offset/Math.sqrt(e*e+i*i+a*a);return this.tmpVertex[0]=t+e*n,this.tmpVertex[1]=s+i*n,this.tmpVertex[2]=r+a*n,this.tmpVertex}applyToAabb(t){const s=t[0]+this.localOrigin[0],r=t[1]+this.localOrigin[1],e=t[2]+this.localOrigin[2],i=t[3]+this.localOrigin[0],a=t[4]+this.localOrigin[1],n=t[5]+this.localOrigin[2],h=this.offset/Math.sqrt(s*s+r*r+e*e);t[0]+=s*h,t[1]+=r*h,t[2]+=e*h;const o=this.offset/Math.sqrt(i*i+a*a+n*n);return t[3]+=i*o,t[4]+=a*o,t[5]+=n*o,t}}class B{constructor(t=0){this.offset=t,this.componentLocalOriginLength=0,this.tmpVertex=e(),this.mbs=S(),this.obb={center:e(),halfSize:_(),quaternion:null}}set localOrigin(t){this.componentLocalOriginLength=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2])}applyToVertex(t,s,r){const e=t,i=s,a=r+this.componentLocalOriginLength,n=this.offset/Math.sqrt(e*e+i*i+a*a);return this.tmpVertex[0]=t+e*n,this.tmpVertex[1]=s+i*n,this.tmpVertex[2]=r+a*n,this.tmpVertex}applyToAabb(t){const s=t[0],r=t[1],e=t[2]+this.componentLocalOriginLength,i=t[3],a=t[4],n=t[5]+this.componentLocalOriginLength,h=this.offset/Math.sqrt(s*s+r*r+e*e);t[0]+=s*h,t[1]+=r*h,t[2]+=e*h;const o=this.offset/Math.sqrt(i*i+a*a+n*n);return t[3]+=i*o,t[4]+=a*o,t[5]+=n*o,t}applyToMbs(t){const s=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]),r=this.offset/s;return this.mbs[0]=t[0]+t[0]*r,this.mbs[1]=t[1]+t[1]*r,this.mbs[2]=t[2]+t[2]*r,this.mbs[3]=t[3]+t[3]*this.offset/s,this.mbs}applyToObb(t){const s=t.center,r=this.offset/Math.sqrt(s[0]*s[0]+s[1]*s[1]+s[2]*s[2]);this.obb.center[0]=s[0]+s[0]*r,this.obb.center[1]=s[1]+s[1]*r,this.obb.center[2]=s[2]+s[2]*r,f(this.obb.halfSize,t.halfSize,t.quaternion),o(this.obb.halfSize,this.obb.halfSize,t.center);const e=this.offset/Math.sqrt(this.obb.halfSize[0]*this.obb.halfSize[0]+this.obb.halfSize[1]*this.obb.halfSize[1]+this.obb.halfSize[2]*this.obb.halfSize[2]);return this.obb.halfSize[0]+=this.obb.halfSize[0]*e,this.obb.halfSize[1]+=this.obb.halfSize[1]*e,this.obb.halfSize[2]+=this.obb.halfSize[2]*e,m(this.obb.halfSize,this.obb.halfSize,t.center),O($,t.quaternion),f(this.obb.halfSize,this.obb.halfSize,$),this.obb.halfSize[0]*=this.obb.halfSize[0]<0?-1:1,this.obb.halfSize[1]*=this.obb.halfSize[1]<0?-1:1,this.obb.halfSize[2]*=this.obb.halfSize[2]<0?-1:1,this.obb.quaternion=t.quaternion,this.obb}}class D{constructor(t=0){this.offset=t,this.sphere=L(),this.tmpVertex=e()}applyToVertex(t,s,r){const e=this.objectTransform.transform;let i=e[0]*t+e[4]*s+e[8]*r+e[12],a=e[1]*t+e[5]*s+e[9]*r+e[13],n=e[2]*t+e[6]*s+e[10]*r+e[14];const h=this.offset/Math.sqrt(i*i+a*a+n*n);i+=i*h,a+=a*h,n+=n*h;const o=this.objectTransform.inverse;return this.tmpVertex[0]=o[0]*i+o[4]*a+o[8]*n+o[12],this.tmpVertex[1]=o[1]*i+o[5]*a+o[9]*n+o[13],this.tmpVertex[2]=o[2]*i+o[6]*a+o[10]*n+o[14],this.tmpVertex}applyToMinMax(t,s){const r=this.offset/Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]+=t[0]*r,t[1]+=t[1]*r,t[2]+=t[2]*r;const e=this.offset/Math.sqrt(s[0]*s[0]+s[1]*s[1]+s[2]*s[2]);s[0]+=s[0]*e,s[1]+=s[1]*e,s[2]+=s[2]*e}applyToAabb(t){const s=this.offset/Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]+=t[0]*s,t[1]+=t[1]*s,t[2]+=t[2]*s;const r=this.offset/Math.sqrt(t[3]*t[3]+t[4]*t[4]+t[5]*t[5]);return t[3]+=t[3]*r,t[4]+=t[4]*r,t[5]+=t[5]*r,t}applyToBoundingSphere(t){const s=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]),r=this.offset/s;return this.sphere[0]=t[0]+t[0]*r,this.sphere[1]=t[1]+t[1]*r,this.sphere[2]=t[2]+t[2]*r,this.sphere[3]=t[3]+t[3]*this.offset/s,this.sphere}}const C=new D;function E(t){return s(t)?(C.offset=t,C):null}const H=new B;function J(t){return s(t)?(H.offset=t,H):null}const K=new A;function Q(t){return s(t)?(K.offset=t,K):null}const W=\"terrain\",X=e(),Y=e(),Z=S(),$=v();export{B as I3SVerticalOffsetGlobalViewingMode,V as IntersectorOptions,G as IntersectorResult,k as IntersectorResults,j as IntersectorTransform,D as Object3DVerticalOffsetGlobalViewingMode,W as TERRAIN_ID,A as TerrainVerticalOffsetGlobalViewingMode,J as getVerticalOffsetI3S,E as getVerticalOffsetObject3D,Q as getVerticalOffsetTerrain,I as sliceFilterPredicate};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nconst S={DIFFUSE:0,NORMAL:1,EMISSION:2,OCCLUSION:3,METALLIC_ROUGHNESS:4,SSAO:6,SHADOW_MAP:7};export{S as DefaultTextureUnits};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nconst s=s=>{class e extends s{constructor(){super(...arguments),this._isDisposed=!1}dispose(){for(const e of null!=(s=this._managedDisposables)?s:[]){var s;const i=this[e];this[e]=null,i&&\"function\"==typeof i.dispose&&i.dispose()}this._isDisposed=!0}get isDisposed(){return this._isDisposed}}return e};class e extends(s(class{})){}function i(){return(s,e)=>{var i,o;s.hasOwnProperty(\"_managedDisposables\")||(s._managedDisposables=null!=(i=null==(o=s._managedDisposables)?void 0:o.slice())?i:[]);s._managedDisposables.unshift(e)}}export{e as AutoDisposable,s as AutoDisposableMixin,i as autoDispose};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{AutoDisposable as e}from\"./AutoDisposable.js\";class t extends e{constructor(e){super(),this.material=e.material,this.techniqueRep=e.techniqueRep,this.output=e.output}getTechnique(){return this.technique}getPipelineState(e,t){return this.getTechnique().pipeline}ensureResources(e){return 2}ensureParameters(e){}}export default t;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../../core/maybe.js\";import{DefaultTextureUnits as r}from\"./DefaultTextureUnits.js\";import i from\"./GLMaterial.js\";class s extends i{constructor(e){super(e),this._textureIDs=new Set,this._textureRepository=e.textureRep,this._textureId=e.textureId,this._initTransparent=!!e.initTextureTransparent,this._texture=this._acquireIfNotUndefined(this._textureId),this._textureNormal=this._acquireIfNotUndefined(e.normalTextureId),this._textureEmissive=this._acquireIfNotUndefined(e.emissiveTextureId),this._textureOcclusion=this._acquireIfNotUndefined(e.occlusionTextureId),this._textureMetallicRoughness=this._acquireIfNotUndefined(e.metallicRoughnessTextureId)}dispose(){this._textureIDs.forEach((e=>this._textureRepository.release(e))),this._textureIDs.clear()}updateTexture(e){e!==this._textureId&&(this._releaseIfNotUndefined(this._textureId),this._textureId=e,this._texture=this._acquireIfNotUndefined(this._textureId))}bindTexture(t,i){e(this._texture)&&(i.setUniform1i(\"tex\",r.DIFFUSE),t.bindTexture(this._texture.glTexture,r.DIFFUSE)),e(this._textureNormal)&&(i.setUniform1i(\"normalTexture\",r.NORMAL),t.bindTexture(this._textureNormal.glTexture,r.NORMAL)),e(this._textureEmissive)&&(i.setUniform1i(\"texEmission\",r.EMISSION),t.bindTexture(this._textureEmissive.glTexture,r.EMISSION)),e(this._textureOcclusion)&&(i.setUniform1i(\"texOcclusion\",r.OCCLUSION),t.bindTexture(this._textureOcclusion.glTexture,r.OCCLUSION)),e(this._textureMetallicRoughness)&&(i.setUniform1i(\"texMetallicRoughness\",r.METALLIC_ROUGHNESS),t.bindTexture(this._textureMetallicRoughness.glTexture,r.METALLIC_ROUGHNESS))}bindTextureScale(t,r){const i=e(this._texture)&&this._texture.glTexture;i&&i.descriptor.textureCoordinateScaleFactor?r.setUniform2fv(\"textureCoordinateScaleFactor\",i.descriptor.textureCoordinateScaleFactor):r.setUniform2f(\"textureCoordinateScaleFactor\",1,1)}_acquireIfNotUndefined(e){if(!t(e))return this._textureIDs.add(e),this._textureRepository.acquire(e,this._initTransparent)}_releaseIfNotUndefined(e){t(e)||(this._textureIDs.delete(e),this._textureRepository.release(e))}}export default s;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nconst o={position:0,normal:1,uv0:2,color:3,size:4,tangent:4,auxpos1:5,symbolColor:5,auxpos2:6,featureAttribute:6,instanceFeatureAttribute:6,instanceColor:7,model:8,modelNormal:12,modelOriginHi:11,modelOriginLo:15};export{o as Default3D};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../core/maybe.js\";import{Default3D as r}from\"./DefaultVertexAttributeLocations.js\";import{ContentObject as t}from\"./ContentObject.js\";import{copyParameters as i,updateParameters as s}from\"../materials/internal/MaterialUtil.js\";class a extends t{constructor(e,t){super(),this.type=3,this.supportsEdges=!1,this._visible=!0,this._renderPriority=0,this._insertOrder=0,this._vertexAttributeLocations=r,this._params=i(e,t),this.validateParameterValues(this._params)}dispose(){}get params(){return this._params}update(e){return!1}setParameterValues(e){s(this._params,e)&&(this.validateParameterValues(this._params),this.parametersChanged())}validateParameterValues(e){}get visible(){return this._visible}set visible(e){e!==this._visible&&(this._visible=e,this.parametersChanged())}isVisibleInPass(e){return!0}get renderOccluded(){return this.params.renderOccluded}get renderPriority(){return this._renderPriority}set renderPriority(e){e!==this._renderPriority&&(this._renderPriority=e,this.parametersChanged())}get insertOrder(){return this._insertOrder}set insertOrder(e){e!==this._insertOrder&&(this._insertOrder=e,this.parametersChanged())}get vertexAttributeLocations(){return this._vertexAttributeLocations}isVisible(){return this._visible}parametersChanged(){e(this.materialRepository)&&this.materialRepository.materialChanged(this)}}function n(e,r){return e.isVisible()&&e.isVisibleInPass(r.pass)&&0!=(e.renderOccluded&r.renderOccludedMask)}const d={renderOccluded:1};export{a as Material,d as materialParametersDefaults,n as materialPredicate};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{BufferViewVec4f as e,BufferViewVec4u8 as t,BufferViewVec2f as f,BufferViewVec3f as o}from\"../../../support/buffer/BufferView.js\";import{assert as s}from\"../../lib/Util.js\";function r(e,t,f,o){const s=f.typedBuffer,r=f.typedBufferStride,n=e.length;o*=r;for(let i=0;i1e-5||Math.abs(1-a*a+g*g+h*h)>1e-5||Math.abs(1-u*u+y*y+b*b)>1e-5,S=1e-6,m=1-S;if(s*=l,1===r)for(let f=0;fS){const t=Math.sqrt(e);k/=t,F/=t,M/=t}}i[s+0]=k,i[s+1]=F,i[s+2]=M,s+=l}else for(let f=0;fS){const t=Math.sqrt(e);F/=t,M/=t,j/=t}}for(let e=0;e0))}get key(){return this._keyDirty&&(this._keyDirty=!1,this._key=String.fromCharCode.apply(String,this._parameterBits)),this._key}snapshot(){const t=this._parameterNames,e={key:this.key};for(const r of t)e[r]=this[r];return e}}function r(e={}){return(r,s)=>{var a,i;r._parameterNames=null!=(a=r._parameterNames)?a:[],r._parameterNames.push(s);const o=r._parameterNames.length-1,h=e.count||2,n=Math.ceil(t(h)),m=null!=(i=r._parameterBits)?i:[0];let p=0;for(;m[p]+n>16;)p++,p>=m.length&&m.push(0);r._parameterBits=m;const y=m[p],_=(1<({function:{func:517,ref:a,mask:a},operation:{fail:7680,zFail:7680,zPass:7680}}),o=a=>({function:{func:519,ref:a,mask:a},operation:{fail:7680,zFail:7680,zPass:7681}}),c={function:{func:519,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:0}},t={function:{func:519,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:7681}},u={function:{func:514,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:7680}},e={function:{func:517,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:7680}};export{n as depthCompareAlways,a as depthCompareLess,s as renderWhenBitIsNotSet,o as replaceBitWhenDepthTestPasses,c as stencilBaseAllZerosParams,t as stencilToolMaskBaseParams,u as stencilToolMaskOccluderParams,e as stencilToolTransparentOccluderParams,i as stencilWriteMaskOff,f as stencilWriteMaskOn};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../chunks/tslib.es6.js\";import{f as t}from\"../../../../chunks/vec3f64.js\";import{ReloadableShaderModule as i}from\"../core/shaderTechnique/ReloadableShaderModule.js\";import{ShaderTechnique as r}from\"../core/shaderTechnique/ShaderTechnique.js\";import{ShaderTechniqueConfiguration as o,parameter as s}from\"../core/shaderTechnique/ShaderTechniqueConfiguration.js\";import{Default3D as a}from\"../lib/DefaultVertexAttributeLocations.js\";import n from\"../../../webgl/Program.js\";import{makePipelineState as l,defaultDepthWriteParams as c,defaultColorWriteParams as p}from\"../../../webgl/renderState.js\";import{View as u}from\"../core/shaderLibrary/util/View.glsl.js\";import{colorMixModes as h,bindScreenSizePerspective as d}from\"../materials/internal/MaterialUtil.js\";import{Slice as m}from\"../core/shaderLibrary/Slice.glsl.js\";import{OutputHighlight as f}from\"../core/shaderLibrary/output/OutputHighlight.glsl.js\";import{VisualVariables as v}from\"../core/shaderLibrary/shading/VisualVariables.glsl.js\";import{VerticalOffset as g}from\"../core/shaderLibrary/attributes/VerticalOffset.glsl.js\";import{blendingDefault as b,OITBlending as y,OITDepthTest as x,getOITPolygonOffset as T}from\"../lib/OrderIndependentTransparency.js\";import{bindMultipassTerrainUniforms as P}from\"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js\";import{stencilWriteMaskOn as M,stencilToolMaskBaseParams as S,stencilBaseAllZerosParams as O}from\"../lib/StencilUtils.js\";import{ReadShadowMap as C}from\"../core/shaderLibrary/shading/ReadShadowMap.glsl.js\";import{doublePrecisionRequiresObfuscation as D}from\"../core/shaderLibrary/util/DoublePrecision.glsl.js\";import{InstancedDoublePrecision as w}from\"../core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js\";import{PhysicallyBasedRenderingParameters as j}from\"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{D as A}from\"../../../../chunks/DefaultMaterial.glsl.js\";class E extends r{initializeProgram(e){const t=E.shader.get(),i=this.configuration,r=t.build({OITEnabled:0===i.transparencyPassType,output:i.output,viewingMode:e.viewingMode,receiveShadows:i.receiveShadows,slicePlaneEnabled:i.slicePlaneEnabled,sliceHighlightDisabled:i.sliceHighlightDisabled,sliceEnabledForVertexPrograms:!1,symbolColor:i.symbolColors,vvSize:i.vvSize,vvColor:i.vvColor,vvInstancingEnabled:!0,instanced:i.instanced,instancedColor:i.instancedColor,instancedDoublePrecision:i.instancedDoublePrecision,useOldSceneLightInterface:!1,pbrMode:i.usePBR?i.isSchematic?2:1:0,hasMetalnessAndRoughnessTexture:i.hasMetalnessAndRoughnessTexture,hasEmissionTexture:i.hasEmissionTexture,hasOcclusionTexture:i.hasOcclusionTexture,hasNormalTexture:i.hasNormalTexture,hasColorTexture:i.hasColorTexture,receiveAmbientOcclusion:i.receiveAmbientOcclusion,useCustomDTRExponentForWater:!1,normalType:i.normalsTypeDerivate?3:0,doubleSidedMode:i.doubleSidedMode,vertexTangets:i.vertexTangents,attributeTextureCoordinates:i.hasMetalnessAndRoughnessTexture||i.hasEmissionTexture||i.hasOcclusionTexture||i.hasNormalTexture||i.hasColorTexture?1:0,textureAlphaPremultiplied:i.textureAlphaPremultiplied,attributeColor:i.vertexColors,screenSizePerspectiveEnabled:i.screenSizePerspective,verticalOffsetEnabled:i.verticalOffset,offsetBackfaces:i.offsetBackfaces,doublePrecisionRequiresObfuscation:D(e.rctx),alphaDiscardMode:i.alphaDiscardMode,supportsTextureAtlas:!1,multipassTerrainEnabled:i.multipassTerrainEnabled,cullAboveGround:i.cullAboveGround});return new n(e.rctx,r.generateSource(\"vertex\"),r.generateSource(\"fragment\"),a)}bindPass(e,t,i){u.bindProjectionMatrix(this.program,i.camera.projectionMatrix);const r=this.configuration.output;(1===this.configuration.output||i.multipassTerrainEnabled||3===r)&&this.program.setUniform2fv(\"cameraNearFar\",i.camera.nearFar),i.multipassTerrainEnabled&&(this.program.setUniform2fv(\"inverseViewport\",i.inverseViewport),P(this.program,e,i)),7===r&&(this.program.setUniform1f(\"opacity\",t.opacity),this.program.setUniform1f(\"layerOpacity\",t.layerOpacity),this.program.setUniform4fv(\"externalColor\",t.externalColor),this.program.setUniform1i(\"colorMixMode\",h[t.colorMixMode])),0===r?(i.lighting.setUniforms(this.program,!1),this.program.setUniform3fv(\"ambient\",t.ambient),this.program.setUniform3fv(\"diffuse\",t.diffuse),this.program.setUniform4fv(\"externalColor\",t.externalColor),this.program.setUniform1i(\"colorMixMode\",h[t.colorMixMode]),this.program.setUniform1f(\"opacity\",t.opacity),this.program.setUniform1f(\"layerOpacity\",t.layerOpacity),this.configuration.usePBR&&j.bindUniforms(this.program,t,this.configuration.isSchematic)):4===r&&f.bindOutputHighlight(e,this.program,i),v.bindUniformsForSymbols(this.program,t),g.bindUniforms(this.program,t,i),d(t.screenSizePerspective,this.program,\"screenSizePerspectiveAlignment\"),2!==t.textureAlphaMode&&3!==t.textureAlphaMode||this.program.setUniform1f(\"textureAlphaCutoff\",t.textureAlphaCutoff)}bindDraw(e){const i=this.configuration.instancedDoublePrecision?t(e.camera.viewInverseTransposeMatrix[3],e.camera.viewInverseTransposeMatrix[7],e.camera.viewInverseTransposeMatrix[11]):e.origin;u.bindViewCustomOrigin(this.program,i,e.camera.viewMatrix),(0===this.configuration.output||7===this.configuration.output||1===this.configuration.output&&this.configuration.screenSizePerspective||2===this.configuration.output&&this.configuration.screenSizePerspective||4===this.configuration.output&&this.configuration.screenSizePerspective)&&u.bindCamPosition(this.program,i,e.camera.viewInverseTransposeMatrix),2===this.configuration.output&&this.program.setUniformMatrix4fv(\"viewNormal\",e.camera.viewInverseTransposeMatrix),this.configuration.instancedDoublePrecision&&w.bindCustomOrigin(this.program,i),m.bindUniforms(this.program,this.configuration,e.slicePlane,i),0===this.configuration.output&&C.bindViewCustomOrigin(this.program,e,i)}setPipeline(e,t){const i=this.configuration,r=3===e,o=2===e;return l({blending:0!==i.output&&7!==i.output||!i.transparent?null:r?b:y(e),culling:z(i),depthTest:{func:x(e)},depthWrite:r||o?i.writeDepth&&c:null,colorWrite:p,stencilWrite:i.sceneHasOcludees?M:null,stencilTest:i.sceneHasOcludees?t?S:O:null,polygonOffset:r||o?null:T(i.enableOffset)})}initializePipeline(){return this._occludeePipelineState=this.setPipeline(this.configuration.transparencyPassType,!0),this.setPipeline(this.configuration.transparencyPassType,!1)}getPipelineState(e){return e?this._occludeePipelineState:this.pipeline}}function U(e){return e.cullFace?0!==e.cullFace:!e.slicePlaneEnabled&&(!e.transparent&&!e.doubleSidedMode)}E.shader=new i(A,(()=>import(\"./DefaultMaterial.glsl.js\")));const z=e=>U(e)&&{face:1===e.cullFace?1028:1029,mode:2305};class R extends o{constructor(){super(...arguments),this.output=0,this.alphaDiscardMode=1,this.doubleSidedMode=0,this.isSchematic=!1,this.vertexColors=!1,this.offsetBackfaces=!1,this.symbolColors=!1,this.vvSize=!1,this.vvColor=!1,this.verticalOffset=!1,this.receiveShadows=!1,this.slicePlaneEnabled=!1,this.sliceHighlightDisabled=!1,this.receiveAmbientOcclusion=!1,this.screenSizePerspective=!1,this.textureAlphaPremultiplied=!1,this.hasColorTexture=!1,this.usePBR=!1,this.hasMetalnessAndRoughnessTexture=!1,this.hasEmissionTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.instanced=!1,this.instancedColor=!1,this.instancedDoublePrecision=!1,this.vertexTangents=!1,this.normalsTypeDerivate=!1,this.writeDepth=!0,this.sceneHasOcludees=!1,this.transparent=!1,this.enableOffset=!0,this.cullFace=0,this.transparencyPassType=3,this.multipassTerrainEnabled=!1,this.cullAboveGround=!0}}e([s({count:8})],R.prototype,\"output\",void 0),e([s({count:4})],R.prototype,\"alphaDiscardMode\",void 0),e([s({count:3})],R.prototype,\"doubleSidedMode\",void 0),e([s()],R.prototype,\"isSchematic\",void 0),e([s()],R.prototype,\"vertexColors\",void 0),e([s()],R.prototype,\"offsetBackfaces\",void 0),e([s()],R.prototype,\"symbolColors\",void 0),e([s()],R.prototype,\"vvSize\",void 0),e([s()],R.prototype,\"vvColor\",void 0),e([s()],R.prototype,\"verticalOffset\",void 0),e([s()],R.prototype,\"receiveShadows\",void 0),e([s()],R.prototype,\"slicePlaneEnabled\",void 0),e([s()],R.prototype,\"sliceHighlightDisabled\",void 0),e([s()],R.prototype,\"receiveAmbientOcclusion\",void 0),e([s()],R.prototype,\"screenSizePerspective\",void 0),e([s()],R.prototype,\"textureAlphaPremultiplied\",void 0),e([s()],R.prototype,\"hasColorTexture\",void 0),e([s()],R.prototype,\"usePBR\",void 0),e([s()],R.prototype,\"hasMetalnessAndRoughnessTexture\",void 0),e([s()],R.prototype,\"hasEmissionTexture\",void 0),e([s()],R.prototype,\"hasOcclusionTexture\",void 0),e([s()],R.prototype,\"hasNormalTexture\",void 0),e([s()],R.prototype,\"instanced\",void 0),e([s()],R.prototype,\"instancedColor\",void 0),e([s()],R.prototype,\"instancedDoublePrecision\",void 0),e([s()],R.prototype,\"vertexTangents\",void 0),e([s()],R.prototype,\"normalsTypeDerivate\",void 0),e([s()],R.prototype,\"writeDepth\",void 0),e([s()],R.prototype,\"sceneHasOcludees\",void 0),e([s()],R.prototype,\"transparent\",void 0),e([s()],R.prototype,\"enableOffset\",void 0),e([s({count:3})],R.prototype,\"cullFace\",void 0),e([s({count:4})],R.prototype,\"transparencyPassType\",void 0),e([s()],R.prototype,\"multipassTerrainEnabled\",void 0),e([s()],R.prototype,\"cullAboveGround\",void 0);export{E as DefaultMaterialTechnique,R as DefaultMaterialTechniqueConfiguration};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{ReloadableShaderModule as e}from\"../core/shaderTechnique/ReloadableShaderModule.js\";import{Default3D as r}from\"../lib/DefaultVertexAttributeLocations.js\";import s from\"../../../webgl/Program.js\";import{doublePrecisionRequiresObfuscation as i}from\"../core/shaderLibrary/util/DoublePrecision.glsl.js\";import{DefaultMaterialTechnique as t}from\"./DefaultMaterialTechnique.js\";import{R as o}from\"../../../../chunks/RealisticTree.glsl.js\";class a extends t{initializeProgram(e){const t=a.shader.get(),o=this.configuration,l=t.build({OITEnabled:0===o.transparencyPassType,output:o.output,viewingMode:e.viewingMode,receiveShadows:o.receiveShadows,slicePlaneEnabled:o.slicePlaneEnabled,sliceHighlightDisabled:o.sliceHighlightDisabled,sliceEnabledForVertexPrograms:!1,symbolColor:o.symbolColors,vvSize:o.vvSize,vvColor:o.vvColor,vvInstancingEnabled:!0,instanced:o.instanced,instancedColor:o.instancedColor,instancedDoublePrecision:o.instancedDoublePrecision,useOldSceneLightInterface:!1,pbrMode:o.usePBR?1:0,hasMetalnessAndRoughnessTexture:!1,hasEmissionTexture:!1,hasOcclusionTexture:!1,hasNormalTexture:!1,hasColorTexture:o.hasColorTexture,receiveAmbientOcclusion:o.receiveAmbientOcclusion,useCustomDTRExponentForWater:!1,normalType:0,doubleSidedMode:2,vertexTangets:!1,attributeTextureCoordinates:o.hasColorTexture?1:0,textureAlphaPremultiplied:o.textureAlphaPremultiplied,attributeColor:o.vertexColors,screenSizePerspectiveEnabled:o.screenSizePerspective,verticalOffsetEnabled:o.verticalOffset,offsetBackfaces:o.offsetBackfaces,doublePrecisionRequiresObfuscation:i(e.rctx),alphaDiscardMode:o.alphaDiscardMode,supportsTextureAtlas:!1,multipassTerrainEnabled:o.multipassTerrainEnabled,cullAboveGround:o.cullAboveGround});return new s(e.rctx,l.generateSource(\"vertex\"),l.generateSource(\"fragment\"),r)}}a.shader=new e(o,(()=>import(\"../core/shaderLibrary/default/RealisticTree.glsl.js\")));export{a as RealisticTreeTechnique};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{c as e,f as t}from\"../../../../chunks/vec3f64.js\";import{s as i,g as s,n as a,f as r,l as n,a as o,d as l,t as u}from\"../../../../chunks/vec3.js\";import{a as c}from\"../../../../chunks/mat3f64.js\";import{newLayout as h}from\"../../support/buffer/InterleavedLayout.js\";import{getVerticalOffsetObject3D as d}from\"../lib/intersectorUtils.js\";import p from\"../lib/GLMaterialTexture.js\";import{verticalOffsetAtDistance as m,intersectTriangleGeometry as f}from\"./internal/MaterialUtil.js\";import{Material as v,materialParametersDefaults as g}from\"../lib/Material.js\";import{writeDefaultAttributes as C}from\"./internal/bufferWriterUtils.js\";import{defaultMaskAlphaCutoff as b}from\"../core/shaderLibrary/util/AlphaDiscard.glsl.js\";import{OITPolygonOffsetLimit as x}from\"../lib/OrderIndependentTransparency.js\";import{DefaultMaterialTechniqueConfiguration as q,DefaultMaterialTechnique as S}from\"../shaders/DefaultMaterialTechnique.js\";import{RealisticTreeTechnique as T}from\"../shaders/RealisticTreeTechnique.js\";class y extends v{constructor(e){super(e,M),this.supportsEdges=!0,this.techniqueConfig=new q,this.vertexBufferLayout=y.getVertexBufferLayout(this.params),this.instanceBufferLayout=e.instanced?y.getInstanceBufferLayout(this.params):null}isVisibleInPass(e){return 4!==e&&6!==e&&7!==e||this.params.castShadows}isVisible(){const e=this.params;if(!super.isVisible()||0===e.layerOpacity)return!1;const t=e.instanced,i=e.vertexColors,s=e.symbolColors,a=!!t&&t.indexOf(\"color\")>-1,r=e.vvColorEnabled,n=\"replace\"===e.colorMixMode,o=e.opacity>0,l=e.externalColor&&e.externalColor[3]>0;return i&&(a||r||s)?!!n||o:i?n?l:o:a||r||s?!!n||o:n?l:o}getTechniqueConfig(e,t){return this.techniqueConfig.output=e,this.techniqueConfig.hasNormalTexture=!!this.params.normalTextureId,this.techniqueConfig.hasColorTexture=!!this.params.textureId,this.techniqueConfig.vertexTangents=this.params.vertexTangents,this.techniqueConfig.instanced=!!this.params.instanced,this.techniqueConfig.instancedDoublePrecision=this.params.instancedDoublePrecision,this.techniqueConfig.vvSize=this.params.vvSizeEnabled,this.techniqueConfig.verticalOffset=null!==this.params.verticalOffset,this.techniqueConfig.screenSizePerspective=null!==this.params.screenSizePerspective,this.techniqueConfig.slicePlaneEnabled=this.params.slicePlaneEnabled,this.techniqueConfig.sliceHighlightDisabled=this.params.sliceHighlightDisabled,this.techniqueConfig.alphaDiscardMode=this.params.textureAlphaMode,this.techniqueConfig.normalsTypeDerivate=\"screenDerivative\"===this.params.normals,this.techniqueConfig.transparent=this.params.transparent,this.techniqueConfig.writeDepth=this.params.writeDepth,this.techniqueConfig.sceneHasOcludees=this.params.sceneHasOcludees,this.techniqueConfig.cullFace=null!=this.params.cullFace?this.params.cullFace:0,this.techniqueConfig.multipassTerrainEnabled=!!t&&t.multipassTerrainEnabled,this.techniqueConfig.cullAboveGround=!t||t.cullAboveGround,0!==e&&7!==e||(this.techniqueConfig.vertexColors=this.params.vertexColors,this.techniqueConfig.symbolColors=this.params.symbolColors,this.params.treeRendering?this.techniqueConfig.doubleSidedMode=2:this.techniqueConfig.doubleSidedMode=this.params.doubleSided&&\"normal\"===this.params.doubleSidedType?1:this.params.doubleSided&&\"winding-order\"===this.params.doubleSidedType?2:0,this.techniqueConfig.instancedColor=!!this.params.instanced&&this.params.instanced.indexOf(\"color\")>-1,this.techniqueConfig.receiveShadows=this.params.receiveShadows&&this.params.shadowMappingEnabled,this.techniqueConfig.receiveAmbientOcclusion=!(!t||!t.ssaoEnabled)&&this.params.receiveSSAO,this.techniqueConfig.vvColor=this.params.vvColorEnabled,this.techniqueConfig.textureAlphaPremultiplied=!!this.params.textureAlphaPremultiplied,this.techniqueConfig.usePBR=this.params.usePBR,this.techniqueConfig.hasMetalnessAndRoughnessTexture=!!this.params.metallicRoughnessTextureId,this.techniqueConfig.hasEmissionTexture=!!this.params.emissiveTextureId,this.techniqueConfig.hasOcclusionTexture=!!this.params.occlusionTextureId,this.techniqueConfig.offsetBackfaces=!(!this.params.transparent||!this.params.offsetTransparentBackfaces),this.techniqueConfig.isSchematic=this.params.usePBR&&this.params.isSchematic,this.techniqueConfig.transparencyPassType=t?t.transparencyPassType:3,this.techniqueConfig.enableOffset=!t||t.camera.relativeElevation-1&&(t=t.vec4f(\"instanceColor\")),e.instanced&&e.instanced.indexOf(\"featureAttribute\")>-1&&(t=t.vec4f(\"instanceFeatureAttribute\")),t}}class P extends p{constructor(e){const t=e.material;super({...e,...t.params}),this.updateParameters()}updateParameters(e){const t=this.material.params;this.updateTexture(t.textureId),this.technique=t.treeRendering?this.techniqueRep.acquireAndReleaseExisting(T,this.material.getTechniqueConfig(this.output,e),this.technique):this.techniqueRep.acquireAndReleaseExisting(S,this.material.getTechniqueConfig(this.output,e),this.technique)}selectPipelines(){}_updateShadowState(e){e.shadowMappingEnabled!==this.material.params.shadowMappingEnabled&&this.material.setParameterValues({shadowMappingEnabled:e.shadowMappingEnabled})}_updateOccludeeState(e){e.hasOccludees!==this.material.params.sceneHasOcludees&&this.material.setParameterValues({sceneHasOcludees:e.hasOccludees})}ensureParameters(e){0!==this.output&&7!==this.output||(this._updateShadowState(e),this._updateOccludeeState(e)),this.updateParameters(e)}bind(e,t){e.bindProgram(this.technique.program),this.technique.bindPass(e,this.material.params,t),this.bindTexture(e,this.technique.program)}beginSlot(e){return e===(this.material.params.transparent?this.material.params.writeDepth?5:8:3)}getPipelineState(e,t){return this.technique.getPipelineState(t)}}const O=2.1,M={textureId:void 0,initTextureTransparent:!1,isSchematic:!1,usePBR:!1,normalTextureId:void 0,vertexTangents:!1,occlusionTextureId:void 0,emissiveTextureId:void 0,metallicRoughnessTextureId:void 0,emissiveFactor:[0,0,0],mrrFactors:[0,1,.5],ambient:[.2,.2,.2],diffuse:[.8,.8,.8],externalColor:[1,1,1,1],colorMixMode:\"multiply\",opacity:1,layerOpacity:1,vertexColors:!1,symbolColors:!1,doubleSided:!1,doubleSidedType:\"normal\",cullFace:void 0,instanced:void 0,instancedDoublePrecision:!1,normals:\"default\",receiveSSAO:!0,receiveShadows:!0,castShadows:!0,shadowMappingEnabled:!1,verticalOffset:null,screenSizePerspective:null,slicePlaneEnabled:!1,sliceHighlightDisabled:!1,offsetTransparentBackfaces:!1,vvSizeEnabled:!1,vvSizeMinSize:[1,1,1],vvSizeMaxSize:[100,100,100],vvSizeOffset:[0,0,0],vvSizeFactor:[1,1,1],vvSizeValue:[1,1,1],vvColorEnabled:!1,vvColorValues:[0,0,0,0,0,0,0,0],vvColorColors:[1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0],vvSymbolAnchor:[0,0,0],vvSymbolRotationMatrix:c(),transparent:!1,writeDepth:!0,textureAlphaMode:0,textureAlphaCutoff:b,textureAlphaPremultiplied:!1,sceneHasOcludees:!1,...g};class w{constructor(e,t){this.vertexBufferLayout=e,this.instanceBufferLayout=t}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return e.indices.get(\"position\").length}write(e,t,i,s){C(t,this.vertexBufferLayout,e.transformation,e.invTranspTransformation,i,s)}}const E=e(),B=e(),I=t(0,0,1),A=e(),L=e(),R=e(),D=e();export{O as COLOR_GAMMA,y as DefaultMaterial};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nconst e=[{name:\"position\",count:3,type:5126,offset:0,stride:12,normalized:!1}],t=[{name:\"position\",count:3,type:5126,offset:0,stride:20,normalized:!1},{name:\"uv0\",count:2,type:5126,offset:12,stride:20,normalized:!1}],o=[{name:\"position\",count:3,type:5126,offset:0,stride:32,normalized:!1},{name:\"normal\",count:3,type:5126,offset:12,stride:32,normalized:!1},{name:\"uv0\",count:2,type:5126,offset:24,stride:32,normalized:!1}],n=[{name:\"position\",count:3,type:5126,offset:0,stride:16,normalized:!1},{name:\"color\",count:4,type:5121,offset:12,stride:16,normalized:!1}],i=[{name:\"position\",count:2,type:5126,offset:0,stride:8,normalized:!1}],s=[{name:\"position\",count:2,type:5126,offset:0,stride:16,normalized:!1},{name:\"uv0\",count:2,type:5126,offset:8,stride:16,normalized:!1}];export{i as Pos2,s as Pos2Tex,e as Pos3,n as Pos3Col,o as Pos3NormalTex,t as Pos3Tex};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{Default3D as e}from\"./DefaultVertexAttributeLocations.js\";import t from\"../../../webgl/BufferObject.js\";import r from\"../../../webgl/Texture.js\";import a from\"../../../webgl/VertexArrayObject.js\";import{Pos2 as o,Pos2Tex as n}from\"./DefaultVertexBufferLayouts.js\";function i(r,i=o,l=e,m=-1,f=1){let u=null;switch(i){case n:u=new Float32Array([m,m,0,0,f,m,1,0,m,f,0,1,f,f,1,1]);break;case o:default:u=new Float32Array([m,m,f,m,m,f,f,f])}return new a(r,l,{geometry:i},{geometry:t.createVertex(r,35044,u)})}const l=4;function m(e,t=l){return new r(e,{target:3553,pixelFormat:6408,dataType:5121,samplingMode:9728,width:t,height:t})}function f(e,t,a=l){const o=new Uint8Array(a*a*4);for(let r=0;rt(`esri/libs/basisu/${e}`);i=import(\"../../chunks/basis_transcoder.js\").then((function(e){return e.b})).then((({default:t})=>t({locateFile:e}).then((e=>(e.initializeBasis(),delete e.then,e)))))}return i}let i;export{s as getBasisTranscoder};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isNone as e}from\"../../../../core/maybe.js\";import t from\"../../../webgl/Texture.js\";import{getBytesPerElementFormat as s}from\"../../../webgl/Util.js\";import{getBasisTranscoder as n}from\"../../../../libs/basisu/BasisU.js\";let r=null,a=null;async function i(){return e(a)&&(a=n(),r=await a),a}function o(t){if(e(r))return t.byteLength;const n=new r.BasisFile(new Uint8Array(t));if(n.getNumImages()<1)return 0;const a=n.getNumLevels(0),i=n.getHasAlpha(),o=n.getImageWidth(0,0),l=n.getImageHeight(0,0);n.close(),n.delete();const g=s(i?37496:37492),m=(4**a-1)/(3*4**(a-1));return Math.ceil(o*l*g*m)}async function l(s,n,a){e(r)&&(r=await i());const o=new r.BasisFile(new Uint8Array(a));if(o.getNumImages()<1)return null;const l=o.getNumLevels(0),g=o.getHasAlpha(),m=o.getImageWidth(0,0),c=o.getImageHeight(0,0),{compressedTextureETC:u,compressedTextureS3TC:p}=s.capabilities,[d,h]=u?g?[1,37496]:[0,37492]:p?g?[3,33779]:[2,33776]:[13,6408];o.startTranscoding();const f=[];for(let e=0;e1?9987:9729,hasMipmap:l>1,internalFormat:h,width:m,height:c};return new t(s,w,{type:\"compressed\",levels:f})}export{l as createTextureFromBasis,o as estimateBasisTextureMemoryUsage,i as loadBasis};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport e from\"../../../../core/Logger.js\";import{isPowerOfTwo as t}from\"../../../../core/mathUtils.js\";import r from\"../../../webgl/Texture.js\";const n=e.getLogger(\"esri.views.3d.webgl-engine.lib.DDSUtil\"),o=542327876,a=131072,i=4;function s(e){return e.charCodeAt(0)+(e.charCodeAt(1)<<8)+(e.charCodeAt(2)<<16)+(e.charCodeAt(3)<<24)}function l(e){return String.fromCharCode(255&e,e>>8&255,e>>16&255,e>>24&255)}const u=s(\"DXT1\"),c=s(\"DXT3\"),m=s(\"DXT5\"),h=31,d=0,p=1,g=2,f=3,w=4,x=7,C=20,D=21;function b(e,t,n,o){const{textureData:a,internalFormat:i,width:s,height:l}=A(n,o);t.samplingMode=a.levels.length>1?9987:9729,t.hasMipmap=a.levels.length>1,t.internalFormat=i,t.width=s,t.height=l;const u=new r(e,t,a);return e.bindTexture(u,0),u}function A(e,r){const s=new Int32Array(e,0,h);if(s[d]!==o)return n.error(\"Invalid magic number in DDS header\"),null;if(!(s[C]&i))return n.error(\"Unsupported format, must contain a FourCC code\"),null;const b=s[D];let A,v;switch(b){case u:A=8,v=33776;break;case c:A=16,v=33778;break;case m:A=16,v=33779;break;default:return n.error(\"Unsupported FourCC code:\",l(b)),null}let F=1,M=s[w],T=s[f];0==(3&M)&&0==(3&T)||(n.warn(\"Rounding up compressed texture size to nearest multiple of 4.\"),M=M+3&-4,T=T+3&-4);const U=M,j=T;let k,y;s[g]&a&&!1!==r&&(F=Math.max(1,s[x])),1===F||t(M)&&t(T)||(n.warn(\"Ignoring mipmaps of non power of two sized compressed texture.\"),F=1);let I=s[p]+4;const S=[];for(let t=0;t>2)*(T+3>>2)*A,k=new Uint8Array(e,I,y),S.push(k),I+=y,M=Math.max(1,M>>1),T=Math.max(1,T>>1);return{textureData:{type:\"compressed\",levels:S},internalFormat:v,width:U,height:j}}export{b as createDDSTexture,A as createDDSTextureData};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{neverReached as e}from\"../../../../core/compilerUtils.js\";import{isArrayBuffer as t,isUint8Array as r}from\"../../../../core/typedArrayUtil.js\";import{isNone as i,isSome as s}from\"../../../../core/maybe.js\";import a from\"../../../../core/Error.js\";import{isBlobProtocol as o,isDataProtocol as n}from\"../../../../core/urlUtils.js\";import{createAbortController as h,onAbort as l,createAbortError as m}from\"../../../../core/promiseUtils.js\";import p from\"../../../../core/Evented.js\";import{isPowerOfTwo as d,nextHighestPowerOfTwo as u}from\"../../../../core/mathUtils.js\";import{loadImageAsync as c}from\"../../../../support/requestUtils.js\";import{requestImage as g}from\"../../../../support/requestImageUtils.js\";import{assert as f}from\"./Util.js\";import{ContentObject as w}from\"./ContentObject.js\";import T from\"../../../webgl/capabilities/isWebGL2Context.js\";import x from\"../../../webgl/Texture.js\";import{vertexCount as D}from\"../../../webgl/Util.js\";import{createQuadVAO as M}from\"./glUtil3D.js\";import y from\"../../../webgl/FramebufferObject.js\";import{estimateBasisTextureMemoryUsage as F,createTextureFromBasis as b}from\"./BasisUtil.js\";import{createDDSTexture as I}from\"./DDSUtil.js\";class E extends w{constructor(e,t){super(),this.data=e,this.type=4,this.glTexture=null,this.powerOfTwoStretchInfo=null,this.loadingPromise=null,this.loadingController=null,this.events=new p,this.params=t||{},this.params.mipmap=!1!==this.params.mipmap,this.params.noUnpackFlip=this.params.noUnpackFlip||!1,this.params.preMultiplyAlpha=this.params.preMultiplyAlpha||!1,this.params.wrap=this.params.wrap||{s:10497,t:10497},this.params.powerOfTwoResizeMode=this.params.powerOfTwoResizeMode||1,this.estimatedTexMemRequired=E.estimateTexMemRequired(this.data,this.params),this.startPreload()}startPreload(){const e=this.data;i(e)||(e instanceof HTMLVideoElement?this.startPreloadVideoElement(e):e instanceof HTMLImageElement&&this.startPreloadImageElement(e))}startPreloadVideoElement(e){o(e.src)||\"auto\"===e.preload&&e.crossOrigin||(e.preload=\"auto\",e.crossOrigin=\"anonymous\",e.src=e.src)}startPreloadImageElement(e){n(e.src)||o(e.src)||e.crossOrigin||(e.crossOrigin=\"anonymous\",e.src=e.src)}static getDataDimensions(e){return e instanceof HTMLVideoElement?{width:e.videoWidth,height:e.videoHeight}:e}static estimateTexMemRequired(e,s){if(i(e))return 0;if(t(e)||r(e))return s.encoding===E.BASIS_ENCODING?F(e):e.byteLength;const{width:a,height:o}=e instanceof Image||e instanceof ImageData||e instanceof HTMLCanvasElement||e instanceof HTMLVideoElement?E.getDataDimensions(e):s;return(s.mipmap?4/3:1)*a*o*(s.components||4)||0}dispose(){this.data=void 0}get width(){return this.params.width}get height(){return this.params.height}createDescriptor(e){const t=this.params.mipmap&&!this.params.disableAnisotropy;return{target:3553,pixelFormat:6408,dataType:5121,wrapMode:this.params.wrap,flipped:!this.params.noUnpackFlip,samplingMode:this.params.mipmap?9987:9729,hasMipmap:this.params.mipmap,preMultiplyAlpha:this.params.preMultiplyAlpha,maxAnisotropy:t?e.parameters.maxMaxAnisotropy:void 0}}load(e,a){if(s(this.glTexture))return this.glTexture;if(s(this.loadingPromise))return this.loadingPromise;const o=this.data;return i(o)?(this.glTexture=new x(e,this.createDescriptor(e),null),e.bindTexture(this.glTexture,0),this.glTexture):\"string\"==typeof o?this.loadFromURL(e,a,o):o instanceof Image?this.loadFromImageElement(e,a,o):o instanceof HTMLVideoElement?this.loadFromVideoElement(e,a,o):o instanceof ImageData||o instanceof HTMLCanvasElement?this.loadFromImage(e,o,a):(t(o)||r(o))&&this.params.encoding===E.DDS_ENCODING?this.loadFromDDSData(e,o):(t(o)||r(o))&&this.params.encoding===E.BASIS_ENCODING?this.loadFromBasis(e,o):r(o)?this.loadFromPixelData(e,o):t(o)?this.loadFromPixelData(e,new Uint8Array(o)):null}get requiresFrameUpdates(){return this.data instanceof HTMLVideoElement}frameUpdate(e,t,r){if(!(this.data instanceof HTMLVideoElement)||i(this.glTexture))return r;if(this.data.readyState<2||r===this.data.currentTime)return r;if(s(this.powerOfTwoStretchInfo)){const{framebuffer:r,vao:i,sourceTexture:s}=this.powerOfTwoStretchInfo;s.setData(this.data),this.drawStretchedTexture(e,t,r,i,s,this.glTexture)}else{const{width:e,height:t}=this.data,{width:r,height:i}=this.glTexture.descriptor;e!==r||t!==i?this.glTexture.updateData(0,0,0,Math.min(e,r),Math.min(t,i),this.data):this.glTexture.setData(this.data)}return this.glTexture.descriptor.hasMipmap&&this.glTexture.generateMipmap(),this.data.currentTime}loadFromDDSData(e,t){return this.glTexture=I(e,this.createDescriptor(e),t,this.params.mipmap),e.bindTexture(this.glTexture,0),this.glTexture}loadFromBasis(e,t){return this.loadAsync((()=>b(e,this.createDescriptor(e),t).then((e=>(this.glTexture=e,e)))))}loadFromPixelData(e,t){f(this.params.width>0&&this.params.height>0);const r=this.createDescriptor(e);return r.pixelFormat=1===this.params.components?6409:3===this.params.components?6407:6408,r.width=this.params.width,r.height=this.params.height,this.glTexture=new x(e,r,t),e.bindTexture(this.glTexture,0),this.glTexture}async loadAsync(e){const t=h();this.loadingController=t;const r=e(t.signal);this.loadingPromise=r;const i=()=>{this.loadingController===t&&(this.loadingController=null),this.loadingPromise===r&&(this.loadingPromise=null)};return r.then(i,i),r}loadFromURL(e,t,r){return this.loadAsync((async i=>{const s=await g(r,{signal:i});return this.loadFromImage(e,s,t)}))}loadFromImageElement(e,t,r){return r.complete?this.loadFromImage(e,r,t):this.loadAsync((async i=>{const s=await c(r,r.src,!1,i);return this.loadFromImage(e,s,t)}))}loadFromVideoElement(e,t,r){return r.readyState>=2?this.loadFromImage(e,r,t):this.loadFromVideoElementAsync(e,t,r)}loadFromVideoElementAsync(e,t,r){return this.loadAsync((i=>new Promise(((o,n)=>{const h=()=>{r.removeEventListener(\"loadeddata\",p),r.removeEventListener(\"error\",d),s(u)&&u.remove()},p=()=>{r.readyState>=2&&(h(),o(this.loadFromImage(e,r,t)))},d=e=>{h(),n(e||new a(\"Failed to load video\"))};r.addEventListener(\"loadeddata\",p),r.addEventListener(\"error\",d);const u=l(i,(()=>d(m())))}))))}loadFromImage(e,t,r){const i=E.getDataDimensions(t);this.params.width=i.width,this.params.height=i.height;const s=this.createDescriptor(e);return s.pixelFormat=3===this.params.components?6407:6408,!this.requiresPowerOfTwo(e,s)||d(i.width)&&d(i.height)?(s.width=i.width,s.height=i.height,this.glTexture=new x(e,s,t),e.bindTexture(this.glTexture,0),this.glTexture):(this.glTexture=this.makePowerOfTwoTexture(e,t,i,s,r),e.bindTexture(this.glTexture,0),this.glTexture)}requiresPowerOfTwo(e,t){const r=33071,i=\"number\"==typeof t.wrapMode?t.wrapMode===r:t.wrapMode.s===r&&t.wrapMode.t===r;return!T(e.gl)&&(t.hasMipmap||!i)}makePowerOfTwoTexture(t,r,i,s,a){const{width:o,height:n}=i,h=u(o),l=u(n);let m;switch(s.width=h,s.height=l,this.params.powerOfTwoResizeMode){case 2:s.textureCoordinateScaleFactor=[o/h,n/l],m=new x(t,s),m.updateData(0,0,0,o,n,r);break;case 1:case null:case void 0:m=this.stretchToPowerOfTwo(t,r,s,a);break;default:e(this.params.powerOfTwoResizeMode)}return s.hasMipmap&&m.generateMipmap(),m}stretchToPowerOfTwo(e,t,r,i){const s=new x(e,r),a=new y(e,{colorTarget:0,depthStencilTarget:0},s),o=new x(e,{target:3553,pixelFormat:r.pixelFormat,dataType:5121,wrapMode:33071,samplingMode:9729,flipped:!!r.flipped,maxAnisotropy:8,preMultiplyAlpha:r.preMultiplyAlpha},t),n=M(e);return this.drawStretchedTexture(e,i,a,n,o,s),this.requiresFrameUpdates?this.powerOfTwoStretchInfo={vao:n,sourceTexture:o,framebuffer:a}:(n.dispose(!0),o.dispose(),a.detachColorTexture(),e.bindFramebuffer(null),a.dispose()),s}drawStretchedTexture(e,t,r,i,s,a){e.bindFramebuffer(r);const o=e.getViewport();e.setViewport(0,0,a.descriptor.width,a.descriptor.height);const n=t.program;e.bindProgram(n),n.setUniform4f(\"color\",1,1,1,1),n.setUniform1i(\"tex\",0),e.bindTexture(s,0),e.bindVAO(i),e.setPipelineState(t.pipeline),e.drawArrays(5,0,D(i,\"geometry\")),e.bindFramebuffer(null),e.setViewport(o.x,o.y,o.width,o.height)}unload(){if(s(this.powerOfTwoStretchInfo)){const{framebuffer:e,vao:t,sourceTexture:r}=this.powerOfTwoStretchInfo;t.dispose(!0),r.dispose(),e.dispose(),this.glTexture=null,this.powerOfTwoStretchInfo=null}if(s(this.glTexture)&&(this.glTexture.dispose(),this.glTexture=null),s(this.loadingController)){const e=this.loadingController;this.loadingController=null,this.loadingPromise=null,e.abort()}this.events.emit(\"unloaded\")}}E.DDS_ENCODING=\"image/vnd-ms.dds\",E.BASIS_ENCODING=\"image/x.basis\";export{E as Texture};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isNone as r}from\"../../../core/maybe.js\";import e from\"../../../core/Error.js\";import{isDataProtocol as o,dataToArrayBuffer as s}from\"../../../core/urlUtils.js\";import{throwIfAborted as t,throwIfAbortError as a}from\"../../../core/promiseUtils.js\";import i from\"../../../request.js\";import{result as m}from\"../../../core/asyncUtils.js\";class n{constructor(r){this.streamDataRequester=r}async loadJSON(r,e){return this.load(\"json\",r,e)}async loadBinary(r,e){return o(r)?(t(e),s(r)):this.load(\"binary\",r,e)}async loadImage(r,e){return this.load(\"image\",r,e)}async load(o,s,t){if(r(this.streamDataRequester))return(await i(s,{responseType:c[o]})).data;const n=await m(this.streamDataRequester.request(s,o,t));if(!0===n.ok)return n.value;throw a(n.error),new e(\"\",`Request for resource failed: ${n.error}`)}}const c={image:\"image\",binary:\"array-buffer\",json:\"json\"};export{n as DefaultLoadingContext};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isInteger as e,maximumValue as t,isSigned as r}from\"../views/3d/support/buffer/types.js\";function f(e,t,r){const f=e.typedBuffer,n=e.typedBufferStride,d=t.typedBuffer,o=t.typedBufferStride,s=r?r.count:t.count;let u=(r&&r.dstIndex?r.dstIndex:0)*n,p=(r&&r.srcIndex?r.srcIndex:0)*o;for(let c=0;c{const a={...o,...e.pbrMetallicRoughness},i=l({...t,...e.extras});return{...r,...e,pbrMetallicRoughness:a,extras:i}};function l(o){switch(o.ESRI_externalColorMixMode){case\"multiply\":case\"tint\":case\"ignore\":case\"replace\":break;default:e(o.ESRI_externalColorMixMode),o.ESRI_externalColorMixMode=\"tint\"}return o}const i={magFilter:9729,minFilter:9987,wrapS:10497,wrapT:10497},s=e=>({...i,...e});export{a as material,s as textureSampler};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction r(r){let e,t;return r.replace(/^(.*\\/)?([^/]*)$/,((r,a,i)=>(e=a||\"\",t=i||\"\",\"\"))),{dirPart:e,filePart:t}}export{r as splitURI};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{neverReached as e}from\"../../../../core/compilerUtils.js\";import{isDataProtocol as t,dataComponents as r,dataToArrayBuffer as n,makeAbsolute as o}from\"../../../../core/urlUtils.js\";import{Version as s}from\"../../../../core/Version.js\";import{m as a,t as i,r as u,s as c,k as p}from\"../../../../chunks/mat4.js\";import{a as d,b as f}from\"../../../../chunks/mat4f64.js\";import{a as l}from\"../../../../chunks/quatf64.js\";import{BufferViewUint32 as m,BufferViewUint16 as h,BufferViewUint8 as y,BufferViewVec3f as b,BufferViewVec4f as T,BufferViewVec2f as x,BufferViewVec4u8 as w,BufferViewVec4u16 as O,BufferViewVec3u8 as C,BufferViewVec3u16 as g,BufferViewVec2u32 as N,BufferViewVec2u16 as U,BufferViewVec2i16 as S,BufferViewVec2u8 as A,BufferViewVec2i8 as I}from\"../../support/buffer/BufferView.js\";import{g as R}from\"../../../../chunks/quat.js\";import{BinaryStreamReader as L}from\"./BinaryStreamReader.js\";import{material as v,textureSampler as E}from\"./fillDefaults.js\";import{splitURI as B}from\"./pathUtils.js\";import{m as M}from\"../../../../chunks/scalar.js\";const D={MAGIC:1179937895,CHUNK_TYPE_JSON:1313821514,CHUNK_TYPE_BIN:5130562,MIN_HEADER_LENGTH:20};class j{constructor(e,t,r,n,o){this.context=e,this.errorContext=t,this.uri=r,this.json=n,this.glbBuffer=o,this.bufferCache=new Map,this.textureCache=new Map,this.materialCache=new Map,this.nodeParentMap=new Map,this.nodeTransformCache=new Map,this.baseUri=B(this.uri).dirPart,this.checkVersionSupported(),this.checkRequiredExtensionsSupported(),t.errorUnsupportedIf(null==n.scenes,\"Scenes must be defined.\"),t.errorUnsupportedIf(null==n.meshes,\"Meshes must be defined\"),t.errorUnsupportedIf(null==n.nodes,\"Nodes must be defined.\"),this.computeNodeParents()}static async load(e,o,s,a){if(t(s)){const t=r(s);if(\"model/gltf-binary\"!==t.mediaType)try{const r=JSON.parse(t.isBase64?atob(t.data):t.data);return new j(e,o,s,r)}catch{}const a=n(s);if(j.isGLBData(a))return this.fromGLBData(e,o,s,a)}if(s.endsWith(\".gltf\")){const t=await e.loadJSON(s,a);return new j(e,o,s,t)}const i=await e.loadBinary(s,a);if(j.isGLBData(i))return this.fromGLBData(e,o,s,i);const u=await e.loadJSON(s,a);return new j(e,o,s,u)}static isGLBData(e){const t=new L(e);return t.remainingBytes()>=4&&t.readUint32()===D.MAGIC}static async fromGLBData(e,t,r,n){const o=await j.parseGLBData(t,n);return new j(e,t,r,o.json,o.binaryData)}static async parseGLBData(e,t){const r=new L(t);e.assert(r.remainingBytes()>=12,\"GLB binary data is insufficiently large.\");const n=r.readUint32(),o=r.readUint32(),s=r.readUint32();e.assert(n===D.MAGIC,\"Magic first 4 bytes do not fit to expected GLB value.\"),e.assert(t.byteLength>=s,\"GLB binary data is smaller than header specifies.\"),e.errorUnsupportedIf(2!==o,\"An unsupported GLB container version was detected. Only version 2 is supported.\");let a,i,u=0;for(;r.remainingBytes()>=8;){const t=r.readUint32(),n=r.readUint32();0===u?(e.assert(n===D.CHUNK_TYPE_JSON,\"First GLB chunk must be JSON.\"),e.assert(t>=0,\"No JSON data found.\"),a=await X(r.readUint8Array(t))):1===u?(e.errorUnsupportedIf(n!==D.CHUNK_TYPE_BIN,\"Second GLB chunk expected to be BIN.\"),i=r.readUint8Array(t)):e.warnUnsupported(\"More than 2 GLB chunks detected. Skipping.\"),u+=1}return a||e.error(\"No GLB JSON chunk detected.\"),{json:a,binaryData:i}}async getBuffer(e,t){const r=this.json.buffers[e],n=this.errorContext;if(null==r.uri)return n.assert(null!=this.glbBuffer,\"GLB buffer not present\"),this.glbBuffer;let o=this.bufferCache.get(e);if(!o){const s=await this.context.loadBinary(this.resolveUri(r.uri),t);o=new Uint8Array(s),this.bufferCache.set(e,o),n.assert(o.byteLength===r.byteLength,\"Buffer byte lengths should match.\")}return o}async getAccessor(e,t){const r=this.json.accessors[e],n=this.errorContext;n.errorUnsupportedIf(null==r.bufferView,\"Some accessor does not specify a bufferView.\"),n.errorUnsupportedIf(r.type in[\"MAT2\",\"MAT3\",\"MAT4\"],`AttributeType ${r.type} is not supported`);const o=this.json.bufferViews[r.bufferView],s=await this.getBuffer(o.buffer,t),a=F[r.type],i=k[r.componentType],u=a*i,c=o.byteStride||u;return{raw:s.buffer,byteStride:c,byteOffset:s.byteOffset+(o.byteOffset||0)+(r.byteOffset||0),entryCount:r.count,isDenselyPacked:c===u,componentCount:a,componentByteSize:i,componentType:r.componentType,min:r.min,max:r.max,normalized:!!r.normalized}}async getIndexData(e,t){if(null==e.indices)return null;const r=await this.getAccessor(e.indices,t);if(r.isDenselyPacked)switch(r.componentType){case 5121:return new Uint8Array(r.raw,r.byteOffset,r.entryCount);case 5123:return new Uint16Array(r.raw,r.byteOffset,r.entryCount);case 5125:return new Uint32Array(r.raw,r.byteOffset,r.entryCount)}else switch(r.componentType){case 5121:return M(this.wrapAccessor(y,r));case 5123:return M(this.wrapAccessor(h,r));case 5125:return M(this.wrapAccessor(m,r))}}async getPositionData(e,t){const r=this.errorContext;r.errorUnsupportedIf(null==e.attributes.POSITION,\"No POSITION vertex data found.\");const n=await this.getAccessor(e.attributes.POSITION,t);return r.errorUnsupportedIf(5126!==n.componentType,\"Expected type FLOAT for POSITION vertex attribute, but found \"+q[n.componentType]),r.errorUnsupportedIf(3!==n.componentCount,\"POSITION vertex attribute must have 3 components, but found \"+n.componentCount.toFixed()),this.wrapAccessor(b,n)}async getNormalData(e,t){const r=this.errorContext;r.assert(null!=e.attributes.NORMAL,\"No NORMAL vertex data found.\");const n=await this.getAccessor(e.attributes.NORMAL,t);return r.errorUnsupportedIf(5126!==n.componentType,\"Expected type FLOAT for NORMAL vertex attribute, but found \"+q[n.componentType]),r.errorUnsupportedIf(3!==n.componentCount,\"NORMAL vertex attribute must have 3 components, but found \"+n.componentCount.toFixed()),this.wrapAccessor(b,n)}async getTangentData(e,t){const r=this.errorContext;r.assert(null!=e.attributes.TANGENT,\"No TANGENT vertex data found.\");const n=await this.getAccessor(e.attributes.TANGENT,t);return r.errorUnsupportedIf(5126!==n.componentType,\"Expected type FLOAT for TANGENT vertex attribute, but found \"+q[n.componentType]),r.errorUnsupportedIf(4!==n.componentCount,\"TANGENT vertex attribute must have 4 components, but found \"+n.componentCount.toFixed()),new T(n.raw,n.byteOffset,n.byteStride,n.byteOffset+n.byteStride*n.entryCount)}async getTextureCoordinates(e,t){const r=this.errorContext;r.assert(null!=e.attributes.TEXCOORD_0,\"No TEXCOORD_0 vertex data found.\");const n=await this.getAccessor(e.attributes.TEXCOORD_0,t);return r.errorUnsupportedIf(2!==n.componentCount,\"TEXCOORD_0 vertex attribute must have 2 components, but found \"+n.componentCount.toFixed()),5126===n.componentType?this.wrapAccessor(x,n):(r.errorUnsupportedIf(!n.normalized,\"Integer component types are only supported for a normalized accessor for TEXCOORD_0.\"),V(n))}async getVertexColors(e,t){const r=this.errorContext;r.assert(null!=e.attributes.COLOR_0,\"No COLOR_0 vertex data found.\");const n=await this.getAccessor(e.attributes.COLOR_0,t);if(r.errorUnsupportedIf(4!==n.componentCount&&3!==n.componentCount,\"COLOR_0 attribute must have 3 or 4 components, but found \"+n.componentCount.toFixed()),4===n.componentCount){if(5126===n.componentType)return this.wrapAccessor(T,n);if(5121===n.componentType)return this.wrapAccessor(w,n);if(5123===n.componentType)return this.wrapAccessor(O,n)}else if(3===n.componentCount){if(5126===n.componentType)return this.wrapAccessor(b,n);if(5121===n.componentType)return this.wrapAccessor(C,n);if(5123===n.componentType)return this.wrapAccessor(g,n)}r.errorUnsupported(\"Unsupported component type for COLOR_0 attribute: \"+q[n.componentType])}hasPositions(e){return void 0!==e.attributes.POSITION}hasNormals(e){return void 0!==e.attributes.NORMAL}hasVertexColors(e){return void 0!==e.attributes.COLOR_0}hasTextureCoordinates(e){return void 0!==e.attributes.TEXCOORD_0}hasTangents(e){return void 0!==e.attributes.TANGENT}async getMaterial(e,t,r){const n=this.errorContext;let o=this.materialCache.get(e.material);if(!o){const s=null!=e.material?v(this.json.materials[e.material]):v(),a=s.pbrMetallicRoughness,i=this.hasVertexColors(e);let u,c,p,d,f;a.baseColorTexture&&(n.errorUnsupportedIf(0!==(a.baseColorTexture.texCoord||0),\"Only TEXCOORD with index 0 is supported.\"),u=await this.getTexture(a.baseColorTexture.index,t)),s.normalTexture&&(0!==(s.normalTexture.texCoord||0)?n.warnUnsupported(\"Only TEXCOORD with index 0 is supported for the normal map texture.\"):c=await this.getTexture(s.normalTexture.index,t)),s.occlusionTexture&&r&&(0!==(s.occlusionTexture.texCoord||0)?n.warnUnsupported(\"Only TEXCOORD with index 0 is supported for the occlusion texture.\"):p=await this.getTexture(s.occlusionTexture.index,t)),s.emissiveTexture&&r&&(0!==(s.emissiveTexture.texCoord||0)?n.warnUnsupported(\"Only TEXCOORD with index 0 is supported for the emissive texture.\"):d=await this.getTexture(s.emissiveTexture.index,t)),a.metallicRoughnessTexture&&r&&(0!==(a.metallicRoughnessTexture.texCoord||0)?n.warnUnsupported(\"Only TEXCOORD with index 0 is supported for the metallicRoughness texture.\"):f=await this.getTexture(a.metallicRoughnessTexture.index,t));const l=null!=e.material?e.material:-1;o={alphaMode:s.alphaMode,alphaCutoff:s.alphaCutoff,color:a.baseColorFactor,doubleSided:!!s.doubleSided,colorTexture:u,normalTexture:c,name:s.name,id:l,occlusionTexture:p,emissiveTexture:d,emissiveFactor:s.emissiveFactor,metallicFactor:a.metallicFactor,roughnessFactor:a.roughnessFactor,metallicRoughnessTexture:f,vertexColors:i,ESRI_externalColorMixMode:s.extras.ESRI_externalColorMixMode}}return o}async getTexture(e,t){const r=this.errorContext,n=this.json.textures[e],o=E(null!=n.sampler?this.json.samplers[n.sampler]:{});r.errorUnsupportedIf(null==n.source,\"Source is expected to be defined for a texture.\");const s=this.json.images[n.source];let a=this.textureCache.get(e);if(!a){let n;if(s.uri)n=await this.context.loadImage(this.resolveUri(s.uri),t);else{r.errorUnsupportedIf(null==s.bufferView,\"Image bufferView must be defined.\"),r.errorUnsupportedIf(null==s.mimeType,\"Image mimeType must be defined.\");const e=this.json.bufferViews[s.bufferView],o=await this.getBuffer(e.buffer,t);r.errorUnsupportedIf(null!=e.byteStride,\"byteStride not supported for image buffer\"),n=await J(new Uint8Array(o.buffer,o.byteOffset+(e.byteOffset||0),e.byteLength),s.mimeType)}a={data:n,wrapS:o.wrapS,wrapT:o.wrapT,minFilter:o.minFilter,name:s.name,id:e},this.textureCache.set(e,a)}return a}getNodeTransform(e){if(void 0===e)return _;let t=this.nodeTransformCache.get(e);if(!t){const r=this.getNodeTransform(this.getNodeParent(e)),n=this.json.nodes[e];n.matrix?t=a(d(),r,n.matrix):n.translation||n.rotation||n.scale?(t=f(r),n.translation&&i(t,t,n.translation),n.rotation&&(P[3]=R(P,n.rotation),u(t,t,P[3],P)),n.scale&&c(t,t,n.scale)):t=r,this.nodeTransformCache.set(e,t)}return t}wrapAccessor(e,t){return new e(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*(t.entryCount-1)+t.componentByteSize*t.componentCount)}resolveUri(e){return o(e,this.baseUri)}getNodeParent(e){return this.nodeParentMap.get(e)}checkVersionSupported(){const e=s.parse(this.json.asset.version,\"glTF\");G.validate(e)}checkRequiredExtensionsSupported(){const e=this.json,t=this.errorContext;e.extensionsRequired&&0!==e.extensionsRequired.length&&t.errorUnsupported(\"gltf loader was not able to load unsupported feature. Required extensions: \"+e.extensionsRequired.join(\", \"))}computeNodeParents(){this.json.nodes.forEach(((e,t)=>{e.children&&e.children.forEach((e=>{this.nodeParentMap.set(e,t)}))}))}}const G=new s(2,0,\"glTF\"),_=p(d(),Math.PI/2),P=l(),F={SCALAR:1,VEC2:2,VEC3:3,VEC4:4},k={5120:1,5121:1,5122:2,5123:2,5126:4,5125:4};function V(t){switch(t.componentType){case 5120:return new I(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case 5121:return new A(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case 5122:return new S(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case 5123:return new U(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case 5125:return new N(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case 5126:return new x(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);default:return void e(t.componentType)}}async function X(e){return new Promise(((t,r)=>{const n=new Blob([e]),o=new FileReader;o.onload=()=>{const e=o.result;t(JSON.parse(e))},o.onerror=e=>{r(e)},o.readAsText(n)}))}async function J(e,t){return new Promise(((r,n)=>{const o=new Blob([e],{type:t}),s=URL.createObjectURL(o),a=new Image;a.addEventListener(\"load\",(()=>{URL.revokeObjectURL(s),\"decode\"in a?a.decode().then((()=>r(a)),(()=>r(a))):r(a)})),a.addEventListener(\"error\",(e=>{URL.revokeObjectURL(s),n(e)})),a.src=s}))}const q={5120:\"BYTE\",5121:\"UNSIGNED_BYTE\",5122:\"SHORT\",5123:\"UNSIGNED_SHORT\",5125:\"UNSIGNED_INT\",5126:\"FLOAT\"};export{j as Resource};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../core/maybe.js\";import{b as o}from\"../../../chunks/mat4f64.js\";import{DefaultErrorContext as r}from\"./DefaultErrorContext.js\";import{makeMaterialParameters as s,makeTextureSource as a}from\"./LoaderResult.js\";import{Resource as i}from\"./internal/Resource.js\";let n=0;async function l(r,s,a={},l=!0){const d=await i.load(r,f,s,a),x=\"gltf_\"+n++,h={lods:[],materials:new Map,textures:new Map,meta:c(d)},w=!(!d.json.asset.extras||\"symbolResource\"!==d.json.asset.extras.ESRI_type);return await m(d,(async(r,s,i,n)=>{const c=void 0!==r.mode?r.mode:4,m=u(c);if(t(m))return void f.warnUnsupported(\"Unsupported primitive mode (\"+T[c]+\"). Skipping primitive.\");if(!d.hasPositions(r))return void f.warn(\"Skipping primitive without POSITION vertex attribute.\");const w=await d.getMaterial(r,a,l),S={transform:o(s),attributes:{position:await d.getPositionData(r,a),normal:null,texCoord0:null,color:null,tangent:null},indices:await d.getIndexData(r,a),primitiveType:m,material:p(h,w,x)};d.hasNormals(r)&&(S.attributes.normal=await d.getNormalData(r,a)),d.hasTangents(r)&&(S.attributes.tangent=await d.getTangentData(r,a)),d.hasTextureCoordinates(r)&&(S.attributes.texCoord0=await d.getTextureCoordinates(r,a)),d.hasVertexColors(r)&&(S.attributes.color=await d.getVertexColors(r,a));let g=null;e(h.meta)&&e(h.meta.ESRI_lod)&&\"screenSpaceRadius\"===h.meta.ESRI_lod.metric&&(g=h.meta.ESRI_lod.thresholds[i]),h.lods[i]=h.lods[i]||{parts:[],name:n,lodThreshold:g},h.lods[i].parts.push(S)})),{model:h,meta:{isEsriSymbolResource:w,uri:d.uri},customMeta:{}}}function u(e){switch(e){case 4:case 5:case 6:return e;default:return null}}function c(t){const o=t.json;let r=null;return o.nodes.forEach((t=>{const o=t.extras;e(o)&&(o.ESRI_proxyEllipsoid||o.ESRI_lod)&&(r=o)})),r}async function m(e,t){const o=e.json,r=o.scenes[o.scene||0].nodes,s=r.length>1;for(const i of r){const e=o.nodes[i],t=[a(i,0)];if(d(e)&&!s){const o=e.extensions.MSFT_lod.ids;t.push(...o.map(((e,t)=>a(e,t+1))))}await Promise.all(t)}async function a(r,s){const i=o.nodes[r],n=e.getNodeTransform(r);if(f.warnUnsupportedIf(null!=i.weights,\"Morph targets are not supported.\"),null!=i.mesh){const e=o.meshes[i.mesh];for(const o of e.primitives)await t(o,n,s,e.name)}for(const e of i.children||[])await a(e,s)}}function d(e){return e.extensions&&e.extensions.MSFT_lod&&Array.isArray(e.extensions.MSFT_lod.ids)}function p(e,t,o){const r=t=>{const r=`${o}_tex_${t&&t.id}${t&&t.name?\"_\"+t.name:\"\"}`;if(t&&!e.textures.has(r)){const o=a(t.data,{wrap:{s:x(t.wrapS),t:x(t.wrapT)},mipmap:h.some((e=>e===t.minFilter)),noUnpackFlip:!0});e.textures.set(r,o)}return r},i=`${o}_mat_${t.id}_${t.name}`;if(!e.materials.has(i)){const o=s({color:[t.color[0],t.color[1],t.color[2]],opacity:t.color[3],alphaMode:t.alphaMode,alphaCutoff:t.alphaCutoff,doubleSided:t.doubleSided,colorMixMode:t.ESRI_externalColorMixMode,textureColor:t.colorTexture?r(t.colorTexture):void 0,textureNormal:t.normalTexture?r(t.normalTexture):void 0,textureOcclusion:t.occlusionTexture?r(t.occlusionTexture):void 0,textureEmissive:t.emissiveTexture?r(t.emissiveTexture):void 0,textureMetallicRoughness:t.metallicRoughnessTexture?r(t.metallicRoughnessTexture):void 0,emissiveFactor:[t.emissiveFactor[0],t.emissiveFactor[1],t.emissiveFactor[2]],metallicFactor:t.metallicFactor,roughnessFactor:t.roughnessFactor});e.materials.set(i,o)}return i}function x(e){if(33071===e||33648===e||10497===e)return e;f.error(`Unexpected TextureSampler WrapMode: ${e}`)}const f=new r,h=[9987,9985],T=[\"POINTS\",\"LINES\",\"LINE_LOOP\",\"LINE_STRIP\",\"TRIANGLES\",\"TRIANGLE_STRIP\",\"TRIANGLE_FAN\"];export{l as load};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isUint16Array as t,isUint8Array as e}from\"../../../../core/typedArrayUtil.js\";import{generateDefaultIndexArray as r}from\"../../webgl-engine/lib/geometryDataUtils.js\";function n(n){return\"number\"==typeof n?r(n):t(n)||e(n)?new Uint32Array(n):n}function o(t){const e=\"number\"==typeof t?t:t.length;if(e<3)return new Uint16Array(0);const r=e-2,n=r<=65536?new Uint16Array(3*r):new Uint32Array(3*r);if(\"number\"==typeof t){let t=0;for(let e=0;e0||\"transparency\"===n||\"maskAndTransparency\"===n,o={ambient:i(t.diffuse),diffuse:i(t.diffuse),opacity:1-(t.transparency||0),transparent:a,textureAlphaMode:j?U(j.alphaChannelUsage):void 0,textureAlphaCutoff:.33,textureId:I,initTextureTransparent:!0,doubleSided:!0,cullFace:0,colorMixMode:t.externalColorMixMode||\"tint\",textureAlphaPremultiplied:!0};e(r)&&r.materialParamsMixin&&Object.assign(o,r.materialParamsMixin),P=new f(o),s[l.material]||(s[l.material]={}),s[l.material][l.texture]=P}a.push(P);const T=new m(p,b);h+=b.position?b.position.length:0,n.push(T)}return{name:p,stageResources:{textures:o,materials:a,geometries:n},pivotOffset:l.model.pivotOffset,boundingBox:j(n),numberOfVertices:h,lodThreshold:null}}function j(t){const r=l();return t.forEach((t=>{const n=t.boundingInfo;e(n)&&(c(r,n.getBBMin()),c(r,n.getBBMax()))})),r}async function A(t,r){const n=[];for(const o in t){const a=t[o],s=a.images[0].data;if(!s){y.warn(\"Externally referenced texture data is not yet supported\");continue}const i=a.encoding+\";base64,\"+s,u=\"/textureDefinitions/\"+o,l={noUnpackFlip:!0,wrap:{s:10497,t:10497},preMultiplyAlpha:!0},c=e(r)&&r.disableTextures?Promise.resolve(null):p(i,r);n.push(c.then((e=>({refId:u,image:e,params:l,alphaChannelUsage:\"rgba\"===a.channels?a.alphaChannelUsage||\"transparency\":\"none\"}))))}const a=await Promise.all(n),s={};for(const e of a)s[e.refId]=e;return s}function U(e){switch(e){case\"mask\":return 2;case\"maskAndTransparency\":return 3;case\"none\":return 1;case\"transparency\":default:return 0}}function M(e){const t=e.params;return{id:1,material:t.material,texture:t.texture,region:t.texture}}const I=new u(1,2,\"wosr\");export{A as createTextureResources,x as load,b as processLoadResult};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{logger as e}from\"../views/3d/support/buffer/math/common.js\";function t(t,r,f){if(t.count!==r.count)return void e.error(\"source and destination buffers need to have the same number of elements\");const o=t.count,n=f[0],u=f[1],d=f[2],s=f[3],c=f[4],i=f[5],a=f[6],p=f[7],y=f[8],B=f[9],m=f[10],h=f[11],l=f[12],S=f[13],b=f[14],v=f[15],M=t.typedBuffer,_=t.typedBufferStride,j=r.typedBuffer,g=r.typedBufferStride;for(let e=0;e>r,o[e+1]=u[t+1]>>r,o[e+2]=u[t+2]>>r,o[e+3]=u[t+3]>>r}}var n=Object.freeze({__proto__:null,transformMat4:t,transformMat3:r,scale:f,shiftRight:o});export{o as a,t as b,f as s,r as t,n as v};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{get as e,isSome as t,isNone as r}from\"../../../../core/maybe.js\";import{c as s}from\"../../../../chunks/vec3f64.js\";import{i as o,f as i,C as a,l as u,n,e as l}from\"../../../../chunks/vec3.js\";import{a as c}from\"../../../../chunks/mat4.js\";import{adjustStaticAGOUrl as m}from\"../../../../core/devEnvironmentUtils.js\";import{a as d}from\"../../../../chunks/mat3f64.js\";import{a as f}from\"../../../../chunks/mat4f64.js\";import{n as p}from\"../../../../chunks/mat3.js\";import{BufferViewVec3f as x,BufferViewVec4f as g,BufferViewVec2f as h,BufferViewVec4u8 as b,BufferViewVec4u16 as v,BufferViewVec3u8 as R,BufferViewVec3u16 as y}from\"../../support/buffer/BufferView.js\";import{t as B,a as M,s as w}from\"../../../../chunks/vec32.js\";import{empty as j,expandWithVec3 as C}from\"../../../../geometry/support/aaBoundingBox.js\";import{Geometry as E}from\"../../webgl-engine/lib/Geometry.js\";import{COLOR_GAMMA as T,DefaultMaterial as S}from\"../../webgl-engine/materials/DefaultMaterial.js\";import{Texture as A}from\"../../webgl-engine/lib/Texture.js\";import{DefaultLoadingContext as F}from\"../../glTF/DefaultLoadingContext.js\";import{n as O}from\"../../../../chunks/vec22.js\";import{c as I}from\"../../../../chunks/vec33.js\";import{c as k,f as L}from\"../../../../chunks/vec43.js\";import{createBuffer as N}from\"../../support/buffer/utils.js\";import{load as P}from\"../../glTF/loader.js\";import{triangleFanToTriangles as z,triangleStripToTriangles as D,trianglesToTriangles as V}from\"../../glTF/internal/indexUtils.js\";import{load as _,processLoadResult as W}from\"./wosrLoader.js\";import{t as U,s as G}from\"../../../../chunks/vec42.js\";async function $(r,s){const o=q(m(r));if(\"wosr\"===o.fileType){const e=await(s.cache?s.cache.loadWOSR(o.url,s):_(o.url,s)),t=W(e,s);return{lods:[t],referenceBoundingBox:t.boundingBox,isEsriSymbolResource:!1,isWosr:!0,remove:e.remove}}const i=await(s.cache?s.cache.loadGLTF(o.url,s,s.usePBR):P(new F(s.streamDataRequester),o.url,s,s.usePBR)),a=e(i.model.meta,\"ESRI_proxyEllipsoid\");i.meta.isEsriSymbolResource&&t(a)&&-1!==i.meta.uri.indexOf(\"/RealisticTrees/\")&&J(i,a);const u=i.meta.isEsriSymbolResource?{usePBR:s.usePBR,isSchematic:!1,treeRendering:i.customMeta.esriTreeRendering,mrrFactors:[0,1,.2]}:{usePBR:s.usePBR,isSchematic:!1,mrrFactors:[0,1,.5]},n={...s.materialParamsMixin,treeRendering:i.customMeta.esriTreeRendering};if(null!=o.specifiedLodIndex){const e=K(i,u,n,o.specifiedLodIndex);let t=e[0].boundingBox;if(0!==o.specifiedLodIndex){t=K(i,u,n,0)[0].boundingBox}return{lods:e,referenceBoundingBox:t,isEsriSymbolResource:i.meta.isEsriSymbolResource,isWosr:!1,remove:i.remove}}const l=K(i,u,n);return{lods:l,referenceBoundingBox:l[0].boundingBox,isEsriSymbolResource:i.meta.isEsriSymbolResource,isWosr:!1,remove:i.remove}}function q(e){const t=e.match(/(.*\\.(gltf|glb))(\\?lod=([0-9]+))?$/);if(t)return{fileType:\"gltf\",url:t[1],specifiedLodIndex:null!=t[4]?Number(t[4]):null};return e.match(/(.*\\.(json|json\\.gz))$/)?{fileType:\"wosr\",url:e,specifiedLodIndex:null}:{fileType:\"unknown\",url:e,specifiedLodIndex:null}}function K(e,r,s,o){const i=e.model,a=d(),u=new Array,n=new Map,l=new Map;return i.lods.forEach(((e,c)=>{if(void 0!==o&&c!==o)return;const m={name:e.name,stageResources:{textures:new Array,materials:new Array,geometries:new Array},lodThreshold:t(e.lodThreshold)?e.lodThreshold:null,pivotOffset:[0,0,0],numberOfVertices:0,boundingBox:j()};u.push(m),e.parts.forEach((e=>{const o=e.material+(e.attributes.normal?\"_normal\":\"\")+(e.attributes.color?\"_color\":\"\")+(e.attributes.texCoord0?\"_texCoord0\":\"\")+(e.attributes.tangent?\"_tangent\":\"\"),u=i.materials.get(e.material),c=t(e.attributes.texCoord0),d=t(e.attributes.normal);if(!n.has(o)){if(c){if(t(u.textureColor)&&!l.has(u.textureColor)){const e=i.textures.get(u.textureColor),t={...e.parameters,preMultiplyAlpha:!0};l.set(u.textureColor,new A(e.data,t))}if(t(u.textureNormal)&&!l.has(u.textureNormal)){const e=i.textures.get(u.textureNormal),t={...e.parameters,preMultiplyAlpha:!0};l.set(u.textureNormal,new A(e.data,t))}if(t(u.textureOcclusion)&&!l.has(u.textureOcclusion)){const e=i.textures.get(u.textureOcclusion),t={...e.parameters,preMultiplyAlpha:!0};l.set(u.textureOcclusion,new A(e.data,t))}if(t(u.textureEmissive)&&!l.has(u.textureEmissive)){const e=i.textures.get(u.textureEmissive),t={...e.parameters,preMultiplyAlpha:!0};l.set(u.textureEmissive,new A(e.data,t))}if(t(u.textureMetallicRoughness)&&!l.has(u.textureMetallicRoughness)){const e=i.textures.get(u.textureMetallicRoughness),t={...e.parameters,preMultiplyAlpha:!0};l.set(u.textureMetallicRoughness,new A(e.data,t))}}const a=u.color[0]**(1/T),m=u.color[1]**(1/T),f=u.color[2]**(1/T),p=u.emissiveFactor[0]**(1/T),x=u.emissiveFactor[1]**(1/T),g=u.emissiveFactor[2]**(1/T);n.set(o,new S({...r,transparent:\"BLEND\"===u.alphaMode,textureAlphaMode:Q(u.alphaMode),textureAlphaCutoff:u.alphaCutoff,diffuse:[a,m,f],ambient:[a,m,f],opacity:u.opacity,doubleSided:u.doubleSided,doubleSidedType:\"winding-order\",cullFace:u.doubleSided?0:2,vertexColors:!!e.attributes.color,vertexTangents:!!e.attributes.tangent,normals:d?\"default\":\"screenDerivative\",castShadows:!0,receiveSSAO:!0,textureId:t(u.textureColor)&&c?l.get(u.textureColor).id:void 0,colorMixMode:u.colorMixMode,normalTextureId:t(u.textureNormal)&&c?l.get(u.textureNormal).id:void 0,textureAlphaPremultiplied:!0,occlusionTextureId:t(u.textureOcclusion)&&c?l.get(u.textureOcclusion).id:void 0,emissiveTextureId:t(u.textureEmissive)&&c?l.get(u.textureEmissive).id:void 0,metallicRoughnessTextureId:t(u.textureMetallicRoughness)&&c?l.get(u.textureMetallicRoughness).id:void 0,emissiveFactor:[p,x,g],mrrFactors:[u.metallicFactor,u.roughnessFactor,r.mrrFactors[2]],isSchematic:!1,...s}))}const f=H(e.indices||e.attributes.position.count,e.primitiveType),j=e.attributes.position.count,F=N(x,j);B(F,e.attributes.position,e.transform);const P=[[\"position\",{data:F.typedBuffer,size:F.elementCount,exclusive:!0}]],z=[[\"position\",f]];if(t(e.attributes.normal)){const t=N(x,j);p(a,e.transform),M(t,e.attributes.normal,a),P.push([\"normal\",{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),z.push([\"normal\",f])}if(t(e.attributes.tangent)){const t=N(g,j);p(a,e.transform),U(t,e.attributes.tangent,a),P.push([\"tangent\",{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),z.push([\"tangent\",f])}if(t(e.attributes.texCoord0)){const t=N(h,j);O(t,e.attributes.texCoord0),P.push([\"uv0\",{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),z.push([\"uv0\",f])}if(t(e.attributes.color)){const t=N(b,j);if(4===e.attributes.color.elementCount)e.attributes.color instanceof g?G(t,e.attributes.color,255):e.attributes.color instanceof b?k(t,e.attributes.color):e.attributes.color instanceof v&&G(t,e.attributes.color,1/256);else{L(t,255,255,255,255);const r=new R(t.buffer,0,4);e.attributes.color instanceof x?w(r,e.attributes.color,255):e.attributes.color instanceof R?I(r,e.attributes.color):e.attributes.color instanceof y&&w(r,e.attributes.color,1/256)}P.push([\"color\",{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),z.push([\"color\",f])}const D=new E(P,z);m.stageResources.geometries.push(D),m.stageResources.materials.push(n.get(o)),c&&(t(u.textureColor)&&m.stageResources.textures.push(l.get(u.textureColor)),t(u.textureNormal)&&m.stageResources.textures.push(l.get(u.textureNormal)),t(u.textureOcclusion)&&m.stageResources.textures.push(l.get(u.textureOcclusion)),t(u.textureEmissive)&&m.stageResources.textures.push(l.get(u.textureEmissive)),t(u.textureMetallicRoughness)&&m.stageResources.textures.push(l.get(u.textureMetallicRoughness))),m.numberOfVertices+=j;const V=D.boundingInfo;t(V)&&(C(m.boundingBox,V.getBBMin()),C(m.boundingBox,V.getBBMax()))}))})),u}function Q(e){switch(e){case\"BLEND\":return 0;case\"MASK\":return 2;case\"OPAQUE\":return 1;default:return 0}}function H(e,t){switch(t){case 4:return V(e);case 5:return D(e);case 6:return z(e)}}function J(e,t){for(let m=0;m1&&l(y,y,v,s>-1?.2:Math.min(-4*s-3.8,1)),M.setVec(r,y),B.set(r,0,255*f),B.set(r,1,255*f),B.set(r,2,255*f),B.set(r,3,255)}p.attributes.normal=M,p.attributes.color=B}}}export{$ as fetch,K as gltfToEngineResources,q as parseUrl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction r(){const r=new Float32Array(16);return r[0]=1,r[5]=1,r[10]=1,r[15]=1,r}function n(r){const n=new Float32Array(16);return n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=r[3],n[4]=r[4],n[5]=r[5],n[6]=r[6],n[7]=r[7],n[8]=r[8],n[9]=r[9],n[10]=r[10],n[11]=r[11],n[12]=r[12],n[13]=r[13],n[14]=r[14],n[15]=r[15],n}function t(r,n,t,e,a,o,c,s,u,l,f,i,w,y,A,F){const _=new Float32Array(16);return _[0]=r,_[1]=n,_[2]=t,_[3]=e,_[4]=a,_[5]=o,_[6]=c,_[7]=s,_[8]=u,_[9]=l,_[10]=f,_[11]=i,_[12]=w,_[13]=y,_[14]=A,_[15]=F,_}function e(r,n){return new Float32Array(r,n,16)}const a=r();var o=Object.freeze({__proto__:null,create:r,clone:n,fromValues:t,createView:e,IDENTITY:a});export{a as I,n as a,e as b,r as c,t as f,o as m};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction n(n,o){e[0]=n,e[1]=n-e[0],o[0]=e[0],o[1]=e[1]}function o(n,o,t){for(let r=0;r>=\",\"++\",\"--\",\"<<\",\">>\",\"<=\",\">=\",\"==\",\"!=\",\"&&\",\"||\",\"+=\",\"-=\",\"*=\",\"/=\",\"%=\",\"&=\",\"^^\",\"^=\",\"|=\",\"(\",\")\",\"[\",\"]\",\".\",\"!\",\"~\",\"*\",\"/\",\"%\",\"+\",\"-\",\"<\",\">\",\"&\",\"^\",\"|\",\"?\",\":\",\"=\",\",\",\";\",\"{\",\"}\"])&&(e.exports=r)})),o=e((function(e){var r;void 0!==(r=[\"abs\",\"acos\",\"all\",\"any\",\"asin\",\"atan\",\"ceil\",\"clamp\",\"cos\",\"cross\",\"dFdx\",\"dFdy\",\"degrees\",\"distance\",\"dot\",\"equal\",\"exp\",\"exp2\",\"faceforward\",\"floor\",\"fract\",\"gl_BackColor\",\"gl_BackLightModelProduct\",\"gl_BackLightProduct\",\"gl_BackMaterial\",\"gl_BackSecondaryColor\",\"gl_ClipPlane\",\"gl_ClipVertex\",\"gl_Color\",\"gl_DepthRange\",\"gl_DepthRangeParameters\",\"gl_EyePlaneQ\",\"gl_EyePlaneR\",\"gl_EyePlaneS\",\"gl_EyePlaneT\",\"gl_Fog\",\"gl_FogCoord\",\"gl_FogFragCoord\",\"gl_FogParameters\",\"gl_FragColor\",\"gl_FragCoord\",\"gl_FragData\",\"gl_FragDepth\",\"gl_FragDepthEXT\",\"gl_FrontColor\",\"gl_FrontFacing\",\"gl_FrontLightModelProduct\",\"gl_FrontLightProduct\",\"gl_FrontMaterial\",\"gl_FrontSecondaryColor\",\"gl_LightModel\",\"gl_LightModelParameters\",\"gl_LightModelProducts\",\"gl_LightProducts\",\"gl_LightSource\",\"gl_LightSourceParameters\",\"gl_MaterialParameters\",\"gl_MaxClipPlanes\",\"gl_MaxCombinedTextureImageUnits\",\"gl_MaxDrawBuffers\",\"gl_MaxFragmentUniformComponents\",\"gl_MaxLights\",\"gl_MaxTextureCoords\",\"gl_MaxTextureImageUnits\",\"gl_MaxTextureUnits\",\"gl_MaxVaryingFloats\",\"gl_MaxVertexAttribs\",\"gl_MaxVertexTextureImageUnits\",\"gl_MaxVertexUniformComponents\",\"gl_ModelViewMatrix\",\"gl_ModelViewMatrixInverse\",\"gl_ModelViewMatrixInverseTranspose\",\"gl_ModelViewMatrixTranspose\",\"gl_ModelViewProjectionMatrix\",\"gl_ModelViewProjectionMatrixInverse\",\"gl_ModelViewProjectionMatrixInverseTranspose\",\"gl_ModelViewProjectionMatrixTranspose\",\"gl_MultiTexCoord0\",\"gl_MultiTexCoord1\",\"gl_MultiTexCoord2\",\"gl_MultiTexCoord3\",\"gl_MultiTexCoord4\",\"gl_MultiTexCoord5\",\"gl_MultiTexCoord6\",\"gl_MultiTexCoord7\",\"gl_Normal\",\"gl_NormalMatrix\",\"gl_NormalScale\",\"gl_ObjectPlaneQ\",\"gl_ObjectPlaneR\",\"gl_ObjectPlaneS\",\"gl_ObjectPlaneT\",\"gl_Point\",\"gl_PointCoord\",\"gl_PointParameters\",\"gl_PointSize\",\"gl_Position\",\"gl_ProjectionMatrix\",\"gl_ProjectionMatrixInverse\",\"gl_ProjectionMatrixInverseTranspose\",\"gl_ProjectionMatrixTranspose\",\"gl_SecondaryColor\",\"gl_TexCoord\",\"gl_TextureEnvColor\",\"gl_TextureMatrix\",\"gl_TextureMatrixInverse\",\"gl_TextureMatrixInverseTranspose\",\"gl_TextureMatrixTranspose\",\"gl_Vertex\",\"greaterThan\",\"greaterThanEqual\",\"inversesqrt\",\"length\",\"lessThan\",\"lessThanEqual\",\"log\",\"log2\",\"matrixCompMult\",\"max\",\"min\",\"mix\",\"mod\",\"normalize\",\"not\",\"notEqual\",\"pow\",\"radians\",\"reflect\",\"refract\",\"sign\",\"sin\",\"smoothstep\",\"sqrt\",\"step\",\"tan\",\"texture2D\",\"texture2DLod\",\"texture2DProj\",\"texture2DProjLod\",\"textureCube\",\"textureCubeLod\",\"texture2DLodEXT\",\"texture2DProjLodEXT\",\"textureCubeLodEXT\",\"texture2DGradEXT\",\"texture2DProjGradEXT\",\"textureCubeGradEXT\"])&&(e.exports=r)}));export{o as b,r as l,t as o};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../../core/maybe.js\";import{isPowerOfTwo as e}from\"../../core/mathUtils.js\";import i from\"./capabilities/isWebGL2Context.js\";const a=4,s=0;class o{constructor(t,e,i=null){this._context=null,this._glName=null,this._descriptor=void 0,this._samplingModeDirty=!1,this._wrapModeDirty=!1,t.instanceCounter.increment(0,this),this._context=t,this._descriptor={target:3553,samplingMode:9729,wrapMode:10497,flipped:!1,hasMipmap:!1,isOpaque:!1,unpackAlignment:4,preMultiplyAlpha:!1,...e},this.setData(i)}get glName(){return this._glName}get descriptor(){return this._descriptor}dispose(){if(this._context&&this._context.gl){if(this._glName){const t=this._context.gl;this._context.unbindTextureAllUnits(this),t.deleteTexture(this._glName),this._glName=null}this._context.instanceCounter.decrement(0,this),this._context=null}}release(){this.dispose()}resize(t,e){const i=this._descriptor;i.width===t&&i.height===e||(i.width=t,i.height=e,this.setData(null))}setData(e){if(!this._context||!this._context.gl)return;const i=this._context.gl;this._glName||(this._glName=i.createTexture()),void 0===e&&(e=null),null===e&&(this._descriptor.width=this._descriptor.width||a,this._descriptor.height=this._descriptor.height||a);const n=this._context.getBoundTexture(s);this._context.bindTexture(this,s);const p=this._descriptor;o._validateTexture(this._context,p),i.pixelStorei(i.UNPACK_ALIGNMENT,p.unpackAlignment),i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,p.flipped?1:0),i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,p.preMultiplyAlpha?1:0);const h=p.pixelFormat;let l=p.internalFormat?p.internalFormat:h;if(e instanceof ImageData||e instanceof HTMLImageElement||e instanceof HTMLCanvasElement||e instanceof HTMLVideoElement){let t=e.width,a=e.height;e instanceof HTMLVideoElement&&(t=e.videoWidth,a=e.videoHeight),p.width&&p.height&&console.assert(t===p.width&&a===p.height),i.texImage2D(i.TEXTURE_2D,0,l,h,p.dataType,e),p.hasMipmap&&this.generateMipmap(),void 0===p.width&&(p.width=t),void 0===p.height&&(p.height=a)}else{null!=p.width&&null!=p.height||console.error(\"Width and height must be specified!\"),i.DEPTH24_STENCIL8&&l===i.DEPTH_STENCIL&&(l=i.DEPTH24_STENCIL8);let a=p.width,s=p.height;if(r(e)){const t=Math.round(Math.log(Math.max(a,s))/Math.LN2)+1;p.hasMipmap=p.hasMipmap&&t===e.levels.length;for(let o=0;;++o){const t=e.levels[Math.min(o,e.levels.length-1)];if(i.compressedTexImage2D(i.TEXTURE_2D,o,l,a,s,0,t),1===a&&1===s||!p.hasMipmap)break;a=Math.max(1,a>>1),s=Math.max(1,s>>1)}}else if(t(e))i.texImage2D(i.TEXTURE_2D,0,l,a,s,0,h,p.dataType,e),p.hasMipmap&&this.generateMipmap();else for(let t=0;i.texImage2D(i.TEXTURE_2D,t,l,a,s,0,h,p.dataType,null),(1!==a||1!==s)&&p.hasMipmap;++t)a=Math.max(1,a>>1),s=Math.max(1,s>>1)}o._applySamplingMode(i,this._descriptor),o._applyWrapMode(i,this._descriptor),o._applyAnisotropicFilteringParameters(this._context,this._descriptor),n&&this._context.bindTexture(n,s)}updateData(t,e,i,a,o,r){r||console.error(\"An attempt to use uninitialized data!\"),this._glName||console.error(\"An attempt to update uninitialized texture!\");const n=this._context.gl,p=this._descriptor,h=this._context.getBoundTexture(s);this._context.bindTexture(this,s),(e<0||i<0||a>p.width||o>p.height||e+a>p.width||i+o>p.height)&&console.error(\"An attempt to update out of bounds of the texture!\"),n.pixelStorei(n.UNPACK_ALIGNMENT,p.unpackAlignment),n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,p.flipped?1:0),n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,p.preMultiplyAlpha?1:0),r instanceof ImageData||r instanceof HTMLImageElement||r instanceof HTMLCanvasElement||r instanceof HTMLVideoElement?n.texSubImage2D(n.TEXTURE_2D,t,e,i,p.pixelFormat,p.dataType,r):n.texSubImage2D(n.TEXTURE_2D,t,e,i,a,o,p.pixelFormat,p.dataType,r),this._context.bindTexture(h,s)}generateMipmap(){const t=this._descriptor;t.hasMipmap||(t.hasMipmap=!0,this._samplingModeDirty=!0,o._validateTexture(this._context,t)),9729===t.samplingMode?(this._samplingModeDirty=!0,t.samplingMode=9985):9728===t.samplingMode&&(this._samplingModeDirty=!0,t.samplingMode=9984);const e=this._context.getBoundTexture(s);this._context.bindTexture(this,s);const i=this._context.gl;i.generateMipmap(i.TEXTURE_2D),this._context.bindTexture(e,s)}setSamplingMode(t){t!==this._descriptor.samplingMode&&(this._descriptor.samplingMode=t,o._validateTexture(this._context,this._descriptor),this._samplingModeDirty=!0)}setWrapMode(t){t!==this._descriptor.wrapMode&&(this._descriptor.wrapMode=t,o._validateTexture(this._context,this._descriptor),this._wrapModeDirty=!0)}applyChanges(){const t=this._context.gl,e=this._descriptor;this._samplingModeDirty&&(o._applySamplingMode(t,e),this._samplingModeDirty=!1),this._wrapModeDirty&&(o._applyWrapMode(t,e),this._wrapModeDirty=!1)}static _validateTexture(t,a){(a.width<0||a.height<0)&&console.error(\"Negative dimension parameters are not allowed!\");const s=e(a.width)&&e(a.height);i(t.gl)||s||(\"number\"==typeof a.wrapMode?33071!==a.wrapMode&&console.error(\"Non-power-of-two textures must have a wrap mode of CLAMP_TO_EDGE!\"):33071===a.wrapMode.s&&33071===a.wrapMode.t||console.error(\"Non-power-of-two textures must have a wrap mode of CLAMP_TO_EDGE!\"),a.hasMipmap&&console.error(\"Mipmapping requires power-of-two textures!\"))}static _applySamplingMode(t,e){let i=e.samplingMode,a=e.samplingMode;9985===i||9987===i?(i=9729,e.hasMipmap||(a=9729)):9984!==i&&9986!==i||(i=9728,e.hasMipmap||(a=9728)),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,i),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,a)}static _applyWrapMode(t,e){\"number\"==typeof e.wrapMode?(t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,e.wrapMode),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,e.wrapMode)):(t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,e.wrapMode.s),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,e.wrapMode.t))}static _applyAnisotropicFilteringParameters(t,e){if(null==e.maxAnisotropy)return;const i=t.capabilities.textureFilterAnisotropic;if(!i)return;const a=t.gl;a.texParameterf(a.TEXTURE_2D,i.TEXTURE_MAX_ANISOTROPY,e.maxAnisotropy)}}function r(e){return t(e)&&\"type\"in e&&\"compressed\"===e.type}export default o;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{f as s}from\"../../../../../../chunks/vec3f32.js\";import{VertexTextureCoordinates as o}from\"../attributes/VertexTextureCoordinates.glsl.js\";const t=s(0,.6,.2);function r(s,t){const r=s.fragment,a=t.hasMetalnessAndRoughnessTexture||t.hasEmissionTexture||t.hasOcclusionTexture;1===t.pbrMode&&a&&s.include(o,t),2!==t.pbrMode?(0===t.pbrMode&&r.code.add(e`\n float getBakedOcclusion() { return 1.0; }\n `),1===t.pbrMode&&(r.uniforms.add(\"emissionFactor\",\"vec3\"),r.uniforms.add(\"mrrFactors\",\"vec3\"),r.code.add(e`\n vec3 mrr;\n vec3 emission;\n float occlusion;\n `),t.hasMetalnessAndRoughnessTexture&&(r.uniforms.add(\"texMetallicRoughness\",\"sampler2D\"),t.supportsTextureAtlas&&r.uniforms.add(\"texMetallicRoughnessSize\",\"vec2\"),r.code.add(e`\n void applyMetallnessAndRoughness(TextureLookupParameter params) {\n vec3 metallicRoughness = textureLookup(texMetallicRoughness, params).rgb;\n\n mrr[0] *= metallicRoughness.b;\n mrr[1] *= metallicRoughness.g;\n }`)),t.hasEmissionTexture&&(r.uniforms.add(\"texEmission\",\"sampler2D\"),t.supportsTextureAtlas&&r.uniforms.add(\"texEmissionSize\",\"vec2\"),r.code.add(e`\n void applyEmission(TextureLookupParameter params) {\n emission *= textureLookup(texEmission, params).rgb;\n }`)),t.hasOcclusionTexture?(r.uniforms.add(\"texOcclusion\",\"sampler2D\"),t.supportsTextureAtlas&&r.uniforms.add(\"texOcclusionSize\",\"vec2\"),r.code.add(e`\n void applyOcclusion(TextureLookupParameter params) {\n occlusion *= textureLookup(texOcclusion, params).r;\n }\n\n float getBakedOcclusion() {\n return occlusion;\n }\n `)):r.code.add(e`\n float getBakedOcclusion() { return 1.0; }\n `),r.code.add(e`\n void applyPBRFactors() {\n mrr = mrrFactors;\n emission = emissionFactor;\n occlusion = 1.0;\n ${a?\"vtc.uv = vuv0;\":\"\"}\n ${t.hasMetalnessAndRoughnessTexture?t.supportsTextureAtlas?\"vtc.size = texMetallicRoughnessSize; applyMetallnessAndRoughness(vtc);\":\"applyMetallnessAndRoughness(vtc);\":\"\"}\n ${t.hasEmissionTexture?t.supportsTextureAtlas?\"vtc.size = texEmissionSize; applyEmission(vtc);\":\"applyEmission(vtc);\":\"\"}\n ${t.hasOcclusionTexture?t.supportsTextureAtlas?\"vtc.size = texOcclusionSize; applyOcclusion(vtc);\":\"applyOcclusion(vtc);\":\"\"}\n }\n `))):r.code.add(e`\n const vec3 mrr = vec3(0.0, 0.6, 0.2);\n const vec3 emission = vec3(0.0);\n float occlusion = 1.0;\n\n void applyPBRFactors() {}\n\n float getBakedOcclusion() { return 1.0; }\n `)}!function(e){function s(e,s,o=!1){o||(e.setUniform3fv(\"mrrFactors\",s.mrrFactors),e.setUniform3fv(\"emissionFactor\",s.emissiveFactor))}e.bindUniforms=s}(r||(r={}));export{t as PBRSchematicMRRValues,r as PhysicallyBasedRenderingParameters};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as a}from\"../../shaderModules/interfaces.js\";function r(r,e){const m=r.fragment;m.code.add(a`\n struct ShadingNormalParameters {\n vec3 normalView;\n vec3 viewDirection;\n } shadingParams;\n `),1===e.doubleSidedMode?m.code.add(a`\n vec3 shadingNormal(ShadingNormalParameters params) {\n return dot(params.normalView, params.viewDirection) > 0.0 ? normalize(-params.normalView) : normalize(params.normalView);\n }\n `):2===e.doubleSidedMode?m.code.add(a`\n vec3 shadingNormal(ShadingNormalParameters params) {\n return gl_FrontFacing ? normalize(params.normalView) : normalize(-params.normalView);\n }\n `):m.code.add(a`\n vec3 shadingNormal(ShadingNormalParameters params) {\n return normalize(params.normalView);\n }\n `)}export{r as Normals};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction e(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function r(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15]]}function n(e,r,n,t,a,o,c,u,s,f,i,l,_,I,b,m){return[e,r,n,t,a,o,c,u,s,f,i,l,_,I,b,m]}function t(e,r){return new Float64Array(e,r,16)}const a=e();var o=Object.freeze({__proto__:null,create:e,clone:r,fromValues:n,createView:t,IDENTITY:a});export{a as I,e as a,r as b,t as c,n as f,o as m};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function o(o){o.attributes.add(\"position\",\"vec3\"),o.vertex.code.add(e`\n vec3 positionModel() { return position; }\n `)}export{o as PositionAttribute};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../views/3d/webgl-engine/core/shaderModules/interfaces.js\";import{Transform as o}from\"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js\";import{ShaderBuilder as r}from\"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js\";import{Slice as a}from\"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js\";import{ReadLinearDepth as i}from\"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js\";import{VisualVariables as l}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js\";import{symbolAlphaCutoff as t,DiscardOrAdjustAlpha as d}from\"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js\";import{VerticalOffset as n}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js\";import{multipassTerrainTest as s}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js\";import{ReadShadowMap as c}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js\";import{ForwardLinearDepth as g}from\"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js\";import{PhysicallyBasedRendering as v}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js\";import{InstancedDoublePrecision as m}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js\";import{TextureCoordinateAttribute as p}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js\";import{PhysicallyBasedRenderingParameters as u}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{Offset as b}from\"../views/3d/webgl-engine/core/shaderLibrary/Offset.glsl.js\";import{NormalAttribute as f}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js\";import{PositionAttribute as h}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js\";import{SymbolColor as w}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js\";import{VertexColor as x}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js\";import{DefaultMaterialAuxiliaryPasses as y}from\"../views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js\";import{EvaluateAmbientOcclusion as C}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js\";import{EvaluateSceneLighting as L}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js\";import{MixExternalColor as M}from\"../views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js\";function j(j){const E=new r,O=E.vertex.code,_=E.fragment.code;return E.vertex.uniforms.add(\"proj\",\"mat4\").add(\"view\",\"mat4\").add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\"),E.include(h),E.varyings.add(\"vpos\",\"vec3\"),E.include(l,j),E.include(m,j),E.include(n,j),0!==j.output&&7!==j.output||(E.include(f,j),E.include(o,{linearDepth:!1}),j.offsetBackfaces&&E.include(b),j.instancedColor&&E.attributes.add(\"instanceColor\",\"vec4\"),E.varyings.add(\"vNormalWorld\",\"vec3\"),E.varyings.add(\"localvpos\",\"vec3\"),j.multipassTerrainEnabled&&E.varyings.add(\"depth\",\"float\"),E.include(p,j),E.include(g,j),E.include(w,j),E.include(x,j),E.vertex.uniforms.add(\"externalColor\",\"vec4\"),E.varyings.add(\"vcolorExt\",\"vec4\"),O.add(e`\n void main(void) {\n forwardNormalizedVertexColor();\n vcolorExt = externalColor;\n ${j.instancedColor?\"vcolorExt *= instanceColor;\":\"\"}\n vcolorExt *= vvColor();\n vcolorExt *= getSymbolColor();\n forwardColorMixMode();\n\n if (vcolorExt.a < ${e.float(t)}) {\n gl_Position = vec4(1e38, 1e38, 1e38, 1.0);\n }\n else {\n vpos = calculateVPos();\n localvpos = vpos - view[3].xyz;\n vpos = subtractOrigin(vpos);\n vNormalWorld = dpNormal(vvLocalNormal(normalModel()));\n vpos = addVerticalOffset(vpos, localOrigin);\n gl_Position = transformPosition(proj, view, vpos);\n ${j.offsetBackfaces?\"gl_Position = offsetBackfacingClipPosition(gl_Position, vpos, vNormalWorld, camPos);\":\"\"}\n }\n ${j.multipassTerrainEnabled?e`depth = (view * vec4(vpos, 1.0)).z;`:\"\"}\n forwardLinearDepth();\n forwardTextureCoordinates();\n }\n `)),7===j.output&&(E.include(a,j),E.include(d,j),j.multipassTerrainEnabled&&(E.fragment.include(i),E.include(s,j)),E.fragment.uniforms.add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),E.fragment.uniforms.add(\"view\",\"mat4\"),j.hasColorTexture&&E.fragment.uniforms.add(\"tex\",\"sampler2D\"),E.fragment.include(M),_.add(e`\n void main() {\n discardBySlice(vpos);\n ${j.multipassTerrainEnabled?e`terrainDepthTest(gl_FragCoord, depth);`:\"\"}\n ${j.hasColorTexture?e`\n vec4 texColor = texture2D(tex, vuv0);\n ${j.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:e`vec4 texColor = vec4(1.0);`}\n ${j.attributeColor?e`\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:e`\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n\n gl_FragColor = vec4(opacity_);\n }\n `)),0===j.output&&(E.include(a,j),E.include(L,j),E.include(C,j),E.include(d,j),j.receiveShadows&&E.include(c,j),j.multipassTerrainEnabled&&(E.fragment.include(i),E.include(s,j)),E.fragment.uniforms.add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"ambient\",\"vec3\").add(\"diffuse\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),E.fragment.uniforms.add(\"view\",\"mat4\"),j.hasColorTexture&&E.fragment.uniforms.add(\"tex\",\"sampler2D\"),E.include(u,j),E.include(v,j),E.fragment.include(M),_.add(e`\n void main() {\n discardBySlice(vpos);\n ${j.multipassTerrainEnabled?e`terrainDepthTest(gl_FragCoord, depth);`:\"\"}\n ${j.hasColorTexture?e`\n vec4 texColor = texture2D(tex, vuv0);\n ${j.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:e`vec4 texColor = vec4(1.0);`}\n vec3 viewDirection = normalize(vpos - camPos);\n ${1===j.pbrMode?\"applyPBRFactors();\":\"\"}\n float ssao = evaluateAmbientOcclusionInverse();\n ssao *= getBakedOcclusion();\n\n float additionalAmbientScale = _oldHeuristicLighting(vpos + localOrigin);\n vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;\n ${j.receiveShadows?\"float shadow = readShadowMap(vpos, linearDepth);\":1===j.viewingMode?\"float shadow = lightingGlobalFactor * (1.0 - additionalAmbientScale);\":\"float shadow = 0.0;\"}\n vec3 matColor = max(ambient, diffuse);\n ${j.attributeColor?e`\n vec3 albedo_ = mixExternalColor(vColor.rgb * matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:e`\n vec3 albedo_ = mixExternalColor(matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n ${e`\n vec3 shadedNormal = normalize(vNormalWorld);\n albedo_ *= 1.2;\n vec3 viewForward = - vec3(view[0][2], view[1][2], view[2][2]);\n float alignmentLightView = clamp(dot(-viewForward, lightingMainDirection), 0.0, 1.0);\n float transmittance = 1.0 - clamp(dot(-viewForward, shadedNormal), 0.0, 1.0);\n float treeRadialFalloff = vColor.r;\n float backLightFactor = 0.5 * treeRadialFalloff * alignmentLightView * transmittance * (1.0 - shadow);\n additionalLight += backLightFactor * lightingMainIntensity;`}\n ${1===j.pbrMode||2===j.pbrMode?1===j.viewingMode?e`vec3 normalGround = normalize(vpos + localOrigin);`:e`vec3 normalGround = vec3(0.0, 0.0, 1.0);`:e``}\n ${1===j.pbrMode||2===j.pbrMode?e`\n float additionalAmbientIrradiance = additionalAmbientIrradianceFactor * lightingMainIntensity[2];\n vec3 shadedColor = evaluateSceneLightingPBR(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight, viewDirection, normalGround, mrr, emission, additionalAmbientIrradiance);`:\"vec3 shadedColor = evaluateSceneLighting(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight);\"}\n gl_FragColor = highlightSlice(vec4(shadedColor, opacity_), vpos);\n ${j.OITEnabled?\"gl_FragColor = premultiplyAlpha(gl_FragColor);\":\"\"}\n }\n `)),E.include(y,j),E}var E=Object.freeze({__proto__:null,build:j});export{E as R,j as b};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction e(){return[0,0,0,1]}function r(e){return[e[0],e[1],e[2],e[3]]}function n(e,r,n,t){return[e,r,n,t]}function t(e,r){return new Float64Array(e,r,4)}const a=e();var o=Object.freeze({__proto__:null,create:e,clone:r,fromValues:n,createView:t,IDENTITY:a});export{a as I,e as a,r as b,t as c,n as f,o as q};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isNone as e,isSome as t}from\"../../../../../core/maybe.js\";import{m as r,c as s,a as n,b as i}from\"../../../../../chunks/mat4.js\";import{a}from\"../../../../../chunks/mat4f64.js\";import{setMatrixTranslation3 as o}from\"../../lib/Util.js\";import{encodeDoubleArray as c}from\"../../lib/doublePrecisionUtils.js\";function u(t,r){return e(t)&&(t=[]),t.push(r),t}function l(t,r){if(e(t))return t;const s=t.filter((e=>e!==r));return 0===s.length?null:s}function f(e){return!!t(e)&&!e.visible}function m(e,t){const r=new Map;return r.set(0,t.acquire(e,0)),r.set(1,t.acquire(e,7)),r.set(4,t.acquire(e,3)),r.set(3,t.acquire(e,2)),r.set(2,t.acquire(e,1)),r.set(5,t.acquire(e,4)),r.set(7,t.acquire(e,3)),r.set(6,t.acquire(e,3)),r}function p(e,t){t.release(e,0),t.release(e,7),t.release(e,3),t.release(e,2),t.release(e,1),t.release(e,4)}function q(e,a,c){const u=e.origin.vec3;o(h,-u[0],-u[1],-u[2]),t(e.transformation)?r(a,h,e.transformation):s(a,h),c&&(n(c,a),i(c,c))}function b(e,t,r,s,n){g[0]=e.get(t,0),g[1]=e.get(t,1),g[2]=e.get(t,2),c(g,j,3),r.set(n,0,j[0]),s.set(n,0,j[1]),r.set(n,1,j[2]),s.set(n,1,j[3]),r.set(n,2,j[4]),s.set(n,2,j[5])}const g=new Float64Array(3),j=new Float32Array(6),h=a();export{m as acquireMaterials,u as addObject3DStateID,q as calculateTransformRelToOrigin,b as encodeDoubleVec3,f as isInstanceHidden,p as releaseMaterials,l as removeObject3DStateID};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../shaderModules/interfaces.js\";function a(a,r){0===r.output&&r.receiveShadows?(a.varyings.add(\"linearDepth\",\"float\"),a.vertex.code.add(e`\n void forwardLinearDepth() { linearDepth = gl_Position.w; }\n `)):1===r.output||3===r.output?(a.varyings.add(\"linearDepth\",\"float\"),a.vertex.uniforms.add(\"cameraNearFar\",\"vec2\"),a.vertex.code.add(e`\n void forwardLinearDepth() {\n linearDepth = (-position_view().z - cameraNearFar[0]) / (cameraNearFar[1] - cameraNearFar[0]);\n }\n `)):a.vertex.code.add(e`\n void forwardLinearDepth() {}\n `)}export{a as ForwardLinearDepth};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as v}from\"../../shaderModules/interfaces.js\";function e(e,o){o.vvInstancingEnabled&&(o.vvSize||o.vvColor)&&e.attributes.add(\"instanceFeatureAttribute\",\"vec4\"),o.vvSize?(e.vertex.uniforms.add(\"vvSizeMinSize\",\"vec3\"),e.vertex.uniforms.add(\"vvSizeMaxSize\",\"vec3\"),e.vertex.uniforms.add(\"vvSizeOffset\",\"vec3\"),e.vertex.uniforms.add(\"vvSizeFactor\",\"vec3\"),e.vertex.uniforms.add(\"vvSymbolRotationMatrix\",\"mat3\"),e.vertex.uniforms.add(\"vvSymbolAnchor\",\"vec3\"),e.vertex.code.add(v`\n vec3 vvScale(vec4 _featureAttribute) {\n return clamp(vvSizeOffset + _featureAttribute.x * vvSizeFactor, vvSizeMinSize, vvSizeMaxSize);\n }\n\n vec4 vvTransformPosition(vec3 position, vec4 _featureAttribute) {\n return vec4(vvSymbolRotationMatrix * ( vvScale(_featureAttribute) * (position + vvSymbolAnchor)), 1.0);\n }\n `),e.vertex.code.add(v`\n const float eps = 1.192092896e-07;\n vec4 vvTransformNormal(vec3 _normal, vec4 _featureAttribute) {\n vec3 vvScale = clamp(vvSizeOffset + _featureAttribute.x * vvSizeFactor, vvSizeMinSize + eps, vvSizeMaxSize);\n return vec4(vvSymbolRotationMatrix * _normal / vvScale, 1.0);\n }\n\n ${o.vvInstancingEnabled?v`\n vec4 vvLocalNormal(vec3 _normal) {\n return vvTransformNormal(_normal, instanceFeatureAttribute);\n }\n\n vec4 localPosition() {\n return vvTransformPosition(position, instanceFeatureAttribute);\n }`:\"\"}\n `)):e.vertex.code.add(v`\n vec4 localPosition() { return vec4(position, 1.0); }\n\n vec4 vvLocalNormal(vec3 _normal) { return vec4(_normal, 1.0); }\n `),o.vvColor?(e.vertex.constants.add(\"vvColorNumber\",\"int\",8),e.vertex.code.add(v`\n uniform float vvColorValues[vvColorNumber];\n uniform vec4 vvColorColors[vvColorNumber];\n\n vec4 vvGetColor(vec4 featureAttribute, float values[vvColorNumber], vec4 colors[vvColorNumber]) {\n float value = featureAttribute.y;\n if (value <= values[0]) {\n return colors[0];\n }\n\n for (int i = 1; i < vvColorNumber; ++i) {\n if (values[i] >= value) {\n float f = (value - values[i-1]) / (values[i] - values[i-1]);\n return mix(colors[i-1], colors[i], f);\n }\n }\n return colors[vvColorNumber - 1];\n }\n\n ${o.vvInstancingEnabled?v`\n vec4 vvColor() {\n return vvGetColor(instanceFeatureAttribute, vvColorValues, vvColorColors);\n }`:\"\"}\n `)):e.vertex.code.add(v`\n vec4 vvColor() { return vec4(1.0); }\n `)}!function(v){function e(v,e){e.vvSizeEnabled&&(v.setUniform3fv(\"vvSizeMinSize\",e.vvSizeMinSize),v.setUniform3fv(\"vvSizeMaxSize\",e.vvSizeMaxSize),v.setUniform3fv(\"vvSizeOffset\",e.vvSizeOffset),v.setUniform3fv(\"vvSizeFactor\",e.vvSizeFactor)),e.vvColorEnabled&&(v.setUniform1fv(\"vvColorValues\",e.vvColorValues),v.setUniform4fv(\"vvColorColors\",e.vvColorColors))}function o(v,o){e(v,o),o.vvOpacityEnabled&&(v.setUniform1fv(\"vvOpacityValues\",o.vvOpacityValues),v.setUniform1fv(\"vvOpacityOpacities\",o.vvOpacityOpacities))}function r(v,o){e(v,o),o.vvSizeEnabled&&(v.setUniform3fv(\"vvSymbolAnchor\",o.vvSymbolAnchor),v.setUniformMatrix3fv(\"vvSymbolRotationMatrix\",o.vvSymbolRotationMatrix))}v.bindUniforms=e,v.bindUniformsWithOpacity=o,v.bindUniformsForSymbols=r}(e||(e={}));export{e as VisualVariables};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function o(o){const d=e`\n vec3 decodeNormal(vec2 f) {\n float z = 1.0 - abs(f.x) - abs(f.y);\n return vec3(f + sign(f) * min(z, 0.0), z);\n }\n `;o.fragment.code.add(d),o.vertex.code.add(d)}export{o as DecodeNormal};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{DecodeNormal as r}from\"../util/DecodeNormal.glsl.js\";function o(o,d){0===d.normalType&&(o.attributes.add(\"normal\",\"vec3\"),o.vertex.code.add(e`\n vec3 normalModel() {\n return normal;\n }\n `)),1===d.normalType&&(o.include(r),o.attributes.add(\"normalCompressed\",\"vec2\"),o.vertex.code.add(e`\n vec3 normalModel() {\n return decodeNormal(normalCompressed);\n }\n `)),3===d.normalType&&(o.extensions.add(\"GL_OES_standard_derivatives\"),o.fragment.code.add(e`\n vec3 screenDerivativeNormal(vec3 positionView) {\n return normalize(cross(dFdx(positionView), dFdy(positionView)));\n }\n `))}export{o as NormalAttribute};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction n(n){return window.WebGL2RenderingContext&&n instanceof window.WebGL2RenderingContext}export default n;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../../shaderModules/interfaces.js\";function t(t){t.vertex.code.add(o`\n const float PI = 3.141592653589793;\n `),t.fragment.code.add(o`\n const float PI = 3.141592653589793;\n const float LIGHT_NORMALIZATION = 1.0 / PI;\n const float INV_PI = 0.3183098861837907;\n const float HALF_PI = 1.570796326794897;\n `)}export{t as PiUtils};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function r(r,t){r.fragment.uniforms.add(\"terrainDepthTexture\",\"sampler2D\"),r.fragment.uniforms.add(\"cameraNearFar\",\"vec2\"),r.fragment.uniforms.add(\"inverseViewport\",\"vec2\"),r.fragment.code.add(e`\n //Compare the linearized depths of the fragment and the terrain. If fragment is on the wrong side of the terrain, discard it.\n void terrainDepthTest(vec4 fragCoord, float fragmentDepth){\n\n float terrainDepth = linearDepthFromTexture(terrainDepthTexture, fragCoord.xy * inverseViewport, cameraNearFar);\n if(fragmentDepth ${t.cullAboveGround?\">\":\"<=\"} terrainDepth){\n discard;\n }\n }\n `)}function t(e,r,t){t.multipassTerrainEnabled&&t.terrainLinearDepthTexture&&(e.setUniform1i(\"terrainDepthTexture\",10),r.bindTexture(t.terrainLinearDepthTexture,10))}export{t as bindMultipassTerrainUniforms,r as multipassTerrainTest};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{RgbaFloatEncoding as a}from\"../util/RgbaFloatEncoding.glsl.js\";function t(t){t.fragment.include(a),t.fragment.uniforms.add(\"uShadowMapTex\",\"sampler2D\"),t.fragment.uniforms.add(\"uShadowMapNum\",\"int\"),t.fragment.uniforms.add(\"uShadowMapDistance\",\"vec4\"),t.fragment.uniforms.add(\"uShadowMapMatrix\",\"mat4\",4),t.fragment.uniforms.add(\"uDepthHalfPixelSz\",\"float\"),t.fragment.code.add(e`\n int chooseCascade(float _linearDepth, out mat4 mat) {\n vec4 distance = uShadowMapDistance;\n float depth = _linearDepth;\n\n //choose correct cascade\n int i = depth < distance[1] ? 0 : depth < distance[2] ? 1 : depth < distance[3] ? 2 : 3;\n\n mat = i == 0 ? uShadowMapMatrix[0] : i == 1 ? uShadowMapMatrix[1] : i == 2 ? uShadowMapMatrix[2] : uShadowMapMatrix[3];\n\n return i;\n }\n\n vec3 lightSpacePosition(vec3 _vpos, mat4 mat) {\n vec4 lv = mat * vec4(_vpos, 1.0);\n lv.xy /= lv.w;\n return 0.5 * lv.xyz + vec3(0.5);\n }\n\n vec2 cascadeCoordinates(int i, vec3 lvpos) {\n return vec2(float(i - 2 * (i / 2)) * 0.5, float(i / 2) * 0.5) + 0.5 * lvpos.xy;\n }\n\n float readShadowMapDepth(vec2 uv, sampler2D _depthTex) {\n return rgba2float(texture2D(_depthTex, uv));\n }\n\n float posIsInShadow(vec2 uv, vec3 lvpos, sampler2D _depthTex) {\n return readShadowMapDepth(uv, _depthTex) < lvpos.z ? 1.0 : 0.0;\n }\n\n float filterShadow(vec2 uv, vec3 lvpos, float halfPixelSize, sampler2D _depthTex) {\n float texSize = 0.5 / halfPixelSize;\n\n // filter, offset by half pixels\n vec2 st = fract((vec2(halfPixelSize) + uv) * texSize);\n\n float s00 = posIsInShadow(uv + vec2(-halfPixelSize, -halfPixelSize), lvpos, _depthTex);\n float s10 = posIsInShadow(uv + vec2(halfPixelSize, -halfPixelSize), lvpos, _depthTex);\n float s11 = posIsInShadow(uv + vec2(halfPixelSize, halfPixelSize), lvpos, _depthTex);\n float s01 = posIsInShadow(uv + vec2(-halfPixelSize, halfPixelSize), lvpos, _depthTex);\n\n return mix(mix(s00, s10, st.x), mix(s01, s11, st.x), st.y);\n }\n\n float readShadowMap(const in vec3 _vpos, float _linearDepth) {\n mat4 mat;\n int i = chooseCascade(_linearDepth, mat);\n\n if (i >= uShadowMapNum) { return 0.0; }\n\n vec3 lvpos = lightSpacePosition(_vpos, mat);\n\n // vertex completely outside? -> no shadow\n if (lvpos.z >= 1.0) { return 0.0; }\n if (lvpos.x < 0.0 || lvpos.x > 1.0 || lvpos.y < 0.0 || lvpos.y > 1.0) { return 0.0; }\n\n // calc coord in cascade texture\n vec2 uv = cascadeCoordinates(i, lvpos);\n\n return filterShadow(uv, lvpos, uDepthHalfPixelSz, uShadowMapTex);\n }\n `)}!function(e){function a(e,a,t){a.shadowMappingEnabled&&(a.shadowMap.bind(e,t),a.shadowMap.bindView(e,a.origin))}function t(e,a,t){a.shadowMappingEnabled&&a.shadowMap.bindView(e,t)}function o(e,a){a.shadowMappingEnabled&&a.shadowMap.bindView(e,a.origin)}e.bindUniforms=a,e.bindViewCustomOrigin=t,e.bindView=o}(t||(t={}));export{t as ReadShadowMap};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{RgbaFloatEncoding as r}from\"../util/RgbaFloatEncoding.glsl.js\";function a(a){a.include(r),a.code.add(e`\n float linearDepthFromFloat(float depth, vec2 nearFar) {\n return -(depth * (nearFar[1] - nearFar[0]) + nearFar[0]);\n }\n\n float linearDepthFromTexture(sampler2D depthTex, vec2 uv, vec2 nearFar) {\n return linearDepthFromFloat(rgba2float(texture2D(depthTex, uv)), nearFar);\n }\n `)}export{a as ReadLinearDepth};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import t from\"../../core/Logger.js\";import e from\"./Texture.js\";import i from\"./Renderbuffer.js\";const s=t.getLogger(\"esri.views.webgl.FrameBufferObject\");class r{constructor(t,s,h,n){if(this._context=t,this._glName=null,this._depthAttachment=null,this._stencilAttachment=null,this._colorAttachments=new Map,this._initialized=!1,this._desc={...s},t.instanceCounter.increment(4,this),h){let i;var o;if(Array.isArray(h))for(const s of h){const{attachmentPoint:r,texture:h}=s,n=h instanceof e?h:new e(t,h);i=n.descriptor,this._colorAttachments.set(r,n),this._validateColorAttachmentPoint(r),this._validateTextureDimensions(i,this._desc)}else h instanceof e?(i=h.descriptor,this._colorAttachments.set(36064,h)):(i=h,this._colorAttachments.set(36064,new e(t,h))),0!==(null==(o=this._desc)?void 0:o.colorTarget)&&console.error(\"Framebuffer is initialized with a texture however the descriptor indicates using a renderbuffer color attachment!\"),this._validateTextureDimensions(i,this._desc)}if(n instanceof i){var c;const t=null!=(c=this._desc.depthStencilTarget)?c:3;2===t?this._stencilAttachment=n:1===t||3===t?this._depthAttachment=n:console.error('If a Renderbuffer is provided, \"depthStencilTarget\" must be one of STENCIL_RENDER_BUFFER, DEPTH_RENDER_BUFFER or DEPTH_STENCIL_RENDER_BUFFER'),r._validateBufferDimensions(n.descriptor,this._desc)}else if(n){let t;this._context.capabilities.depthTexture||console.error(\"Extension WEBGL_depth_texture isn't supported therefore it is no possible to set the depth/stencil texture as an attachment!\"),n instanceof e?(this._depthStencilTexture=n,t=this._depthStencilTexture.descriptor):(t=n,this._depthStencilTexture=new e(this._context,t)),this._validateTextureDimensions(t,this._desc)}}dispose(){if(!this._desc)return;const t=this._context.getBoundFramebufferObject();if(this._disposeColorAttachments(),this._disposeDepthStencilAttachments(),this._glName){this._context.gl.deleteFramebuffer(this._glName),this._glName=null}this._context.bindFramebuffer(t),this._context.instanceCounter.decrement(4,this),this._desc=null}get glName(){return this._glName}get descriptor(){return this._desc}get colorTexture(){const t=this._colorAttachments.get(36064);return t&&t instanceof e?t:null}get colorAttachment(){return this._colorAttachments.get(36064)}get depthStencilAttachment(){return this._depthStencilTexture||this._depthAttachment||this._stencilAttachment}get depthStencilTexture(){return this._depthStencilTexture}get width(){return this._desc.width}get height(){return this._desc.height}getColorTexture(t){const i=this._colorAttachments.get(t);return i&&i instanceof e?i:null}attachColorTexture(t,e=36064){if(!t)return;this._validateColorAttachmentPoint(e);const i=t.descriptor;if(this._validateTextureDimensions(i,this._desc),this._disposeColorAttachments(),this._initialized){this._context.bindFramebuffer(this);const i=this._context.gl;i.framebufferTexture2D(i.FRAMEBUFFER,e,i.TEXTURE_2D,t.glName,0)}this._colorAttachments.set(e,t)}detachColorTexture(t=36064){const i=this._colorAttachments.get(t);if(i instanceof e){const e=i;if(this._initialized){this._context.bindFramebuffer(this);const e=this._context.gl;e.framebufferTexture2D(e.FRAMEBUFFER,t,e.TEXTURE_2D,null,0)}return this._colorAttachments.delete(t),e}}attachDepthStencilTexture(t){if(!t)return;const e=t.descriptor;if(34041!==e.pixelFormat&&console.error(\"Depth/Stencil texture must have a pixel type of DEPTH_STENCIL!\"),34042!==e.dataType&&console.error(\"Depth/Stencil texture must have data type of UNSIGNED_INT_24_8!\"),this._context.capabilities.depthTexture||console.error(\"Extension WEBGL_depth_texture isn't supported therefore it is no possible to set the depth/stencil texture!\"),this._validateTextureDimensions(e,this._desc),this._desc.depthStencilTarget&&4!==this._desc.depthStencilTarget&&(this._desc.depthStencilTarget=4),this._disposeDepthStencilAttachments(),this._initialized){this._context.bindFramebuffer(this);const e=this._context.gl;e.framebufferTexture2D(e.FRAMEBUFFER,e.DEPTH_STENCIL_ATTACHMENT,e.TEXTURE_2D,t.glName,0)}this._depthStencilTexture=t}detachDepthStencilTexture(){const t=this._depthStencilTexture;if(t&&this._initialized){this._context.bindFramebuffer(this);const t=this._context.gl;this._context.gl.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.TEXTURE_2D,null,0)}return this._depthStencilTexture=null,t}attachDepthStencilBuffer(t){if(!t)return;const e=t.descriptor;if(34041!==e.internalFormat&&33189!==e.internalFormat&&console.error(\"Depth/Stencil buffer must have correct internalFormat\"),r._validateBufferDimensions(e,this._desc),this._disposeDepthStencilAttachments(),this._desc.depthStencilTarget=34041===e.internalFormat?3:1,this._initialized){this._context.bindFramebuffer(this);const e=this._context.gl,i=1===this._desc.depthStencilTarget?e.DEPTH_ATTACHMENT:e.DEPTH_STENCIL_ATTACHMENT;e.framebufferRenderbuffer(e.FRAMEBUFFER,i,e.RENDERBUFFER,t.glName)}this._depthAttachment=t}detachDepthStencilBuffer(){const t=this._context.gl,e=this._depthAttachment;if(e&&this._initialized){this._context.bindFramebuffer(this);const e=1===this._desc.depthStencilTarget?t.DEPTH_ATTACHMENT:t.DEPTH_STENCIL_ATTACHMENT;t.framebufferRenderbuffer(t.FRAMEBUFFER,e,t.RENDERBUFFER,null)}return this._depthAttachment=null,e}copyToTexture(t,e,i,s,r,h,n){(t<0||e<0||r<0||h<0)&&console.error(\"Offsets cannot be negative!\"),(i<=0||s<=0)&&console.error(\"Copy width and height must be greater than zero!\");const o=this._desc,c=n.descriptor;3553!==n.descriptor.target&&console.error(\"Texture target must be TEXTURE_2D!\"),(t+i>o.width||e+s>o.height||r+i>c.width||h+s>c.height)&&console.error(\"Bad dimensions, the current input values will attempt to read or copy out of bounds!\");const a=this._context;a.bindTexture(n,0),a.bindFramebuffer(this),a.gl.copyTexSubImage2D(3553,0,r,h,t,e,i,s)}readPixels(t,e,i,s,r,h,n){(i<=0||s<=0)&&console.error(\"Copy width and height must be greater than zero!\"),n||console.error(\"Target memory is not initialized!\"),this._context.bindFramebuffer(this);this._context.gl.readPixels(t,e,i,s,r,h,n)}resize(t,e){const i=this._desc;if(i.width!==t||i.height!==e){if(!this._initialized)return i.width=t,i.height=e,this._colorAttachments.forEach((i=>{i&&i.resize(t,e)})),void(this._depthStencilTexture&&this._depthStencilTexture.resize(t,e));i.width=t,i.height=e,this._colorAttachments.forEach((i=>{i&&i.resize(t,e)})),null!=this._depthStencilTexture?this._depthStencilTexture.resize(t,e):(this._depthAttachment||this._stencilAttachment)&&(this._depthAttachment&&this._depthAttachment.resize(t,e),this._stencilAttachment&&this._stencilAttachment.resize(t,e)),this._context.getBoundFramebufferObject()===this&&this._context.bindFramebuffer(null),this._initialized=!1}}initializeAndBind(){var t,s,r,n;const o=this._context.gl;if(this._initialized)return void o.bindFramebuffer(o.FRAMEBUFFER,this.glName);this._glName&&o.deleteFramebuffer(this._glName);const c=this._context,a=o.createFramebuffer(),l=this._desc,_=null!=(t=l.colorTarget)?t:1,d=null!=(s=l.width)?s:1,f=null!=(r=l.height)?r:1;if(o.bindFramebuffer(o.FRAMEBUFFER,a),0===this._colorAttachments.size)if(0===_)this._colorAttachments.set(36064,h(c,l));else{const t=new i(c,{internalFormat:32854,width:d,height:f});this._colorAttachments.set(36064,t)}this._colorAttachments.forEach(((t,i)=>{t&&(t instanceof e?o.framebufferTexture2D(o.FRAMEBUFFER,i,o.TEXTURE_2D,t.glName,0):o.framebufferRenderbuffer(o.FRAMEBUFFER,o.COLOR_ATTACHMENT0,o.RENDERBUFFER,t.glName))}));const u=null!=(n=l.depthStencilTarget)?n:0;switch(u){case 1:case 3:{this._depthAttachment||(this._depthAttachment=new i(c,{internalFormat:1===l.depthStencilTarget?33189:34041,width:d,height:f}));const t=1===u?o.DEPTH_ATTACHMENT:o.DEPTH_STENCIL_ATTACHMENT;o.framebufferRenderbuffer(o.FRAMEBUFFER,t,o.RENDERBUFFER,this._depthAttachment.glName);break}case 2:this._stencilAttachment||(this._stencilAttachment=new i(c,{internalFormat:36168,width:d,height:f})),o.framebufferRenderbuffer(o.FRAMEBUFFER,o.STENCIL_ATTACHMENT,o.RENDERBUFFER,this._stencilAttachment.glName);break;case 4:if(!this._depthStencilTexture){c.capabilities.depthTexture||console.error(\"Extension WEBGL_depth_texture isn't supported therefore it is no possible to set the depth/stencil texture as an attachment!\");const t={target:3553,pixelFormat:34041,dataType:34042,samplingMode:9728,wrapMode:33071,width:d,height:f};this._depthStencilTexture=new e(c,t)}o.framebufferTexture2D(o.FRAMEBUFFER,o.DEPTH_STENCIL_ATTACHMENT,o.TEXTURE_2D,this._depthStencilTexture.glName,0)}this._glName=a,this._initialized=!0}_disposeColorAttachments(){this._colorAttachments.forEach(((t,i)=>{if(t instanceof e){if(this._initialized){this._context.bindFramebuffer(this);const t=this._context.gl;t.framebufferTexture2D(t.FRAMEBUFFER,i,t.TEXTURE_2D,null,0)}t.dispose()}else if(t instanceof WebGLRenderbuffer){const e=this._context.gl;this._initialized&&(this._context.bindFramebuffer(this),e.framebufferRenderbuffer(e.FRAMEBUFFER,i,e.RENDERBUFFER,null)),this._context.gl.deleteRenderbuffer(t)}})),this._colorAttachments.clear()}_disposeDepthStencilAttachments(){const t=this._context.gl;if(this._depthAttachment){if(this._initialized){this._context.bindFramebuffer(this);const e=1===this._desc.depthStencilTarget?t.DEPTH_ATTACHMENT:t.DEPTH_STENCIL_ATTACHMENT;t.framebufferRenderbuffer(t.FRAMEBUFFER,e,t.RENDERBUFFER,null)}this._depthAttachment.dispose(),this._depthAttachment=null}this._stencilAttachment&&(this._initialized&&(this._context.bindFramebuffer(this),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.STENCIL_ATTACHMENT,t.RENDERBUFFER,null)),this._stencilAttachment.dispose(),this._stencilAttachment=null),this._depthStencilTexture&&(this._initialized&&(this._context.bindFramebuffer(this),t.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.TEXTURE_2D,null,0)),this._depthStencilTexture.dispose(),this._depthStencilTexture=null)}static _validateBufferDimensions(t,e){console.assert(t.width>=0&&t.height>=0),void 0!==e.width&&e.width>=0&&void 0!==e.height&&e.height>=0?e.width===t.width&&e.height===t.height||console.error(\"Renderbuffer dimensions must match the framebuffer's!\"):(e.width=t.width,e.height=t.height)}_validateTextureDimensions(t,e){console.assert(t.width>=0&&t.height>=0),3553!==t.target&&console.error(\"Texture type must be TEXTURE_2D!\"),void 0!==e.width&&e.width>=0&&void 0!==e.height&&e.height>=0?e.width===t.width&&e.height===t.height||console.error(\"Color attachment texture must match the framebuffer's!\"):(e.width=t.width,e.height=t.height)}_validateColorAttachmentPoint(t){if(-1===r._MAX_COLOR_ATTACHMENTS){const t=this._context.capabilities.drawBuffers;if(t){const e=this._context.gl;r._MAX_COLOR_ATTACHMENTS=e.getParameter(t.MAX_COLOR_ATTACHMENTS)}else r._MAX_COLOR_ATTACHMENTS=1}const e=t-36064;e+1>r._MAX_COLOR_ATTACHMENTS&&s.error(\"esri.FrameBufferObject\",`illegal attachment point for color attachment: ${e+1}. Implementation supports up to ${r._MAX_COLOR_ATTACHMENTS} color attachments`)}}r._MAX_COLOR_ATTACHMENTS=-1;const h=(t,i)=>new e(t,{target:3553,pixelFormat:6408,dataType:5121,samplingMode:9728,wrapMode:33071,width:i.width,height:i.height});export default r;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../../core/maybe.js\";import{Z as s,c as i}from\"../../../../../chunks/vec3f64.js\";import{f as a}from\"../../../../../chunks/vec3.js\";import{glsl as o}from\"../shaderModules/interfaces.js\";function l(e,s){if(s.slicePlaneEnabled){e.extensions.add(\"GL_OES_standard_derivatives\"),s.sliceEnabledForVertexPrograms&&(e.vertex.uniforms.add(\"slicePlaneOrigin\",\"vec3\"),e.vertex.uniforms.add(\"slicePlaneBasis1\",\"vec3\"),e.vertex.uniforms.add(\"slicePlaneBasis2\",\"vec3\")),e.fragment.uniforms.add(\"slicePlaneOrigin\",\"vec3\"),e.fragment.uniforms.add(\"slicePlaneBasis1\",\"vec3\"),e.fragment.uniforms.add(\"slicePlaneBasis2\",\"vec3\");const i=o`\n struct SliceFactors {\n float front;\n float side0;\n float side1;\n float side2;\n float side3;\n };\n\n SliceFactors calculateSliceFactors(vec3 pos) {\n vec3 rel = pos - slicePlaneOrigin;\n\n vec3 slicePlaneNormal = -cross(slicePlaneBasis1, slicePlaneBasis2);\n float slicePlaneW = -dot(slicePlaneNormal, slicePlaneOrigin);\n\n float basis1Len2 = dot(slicePlaneBasis1, slicePlaneBasis1);\n float basis2Len2 = dot(slicePlaneBasis2, slicePlaneBasis2);\n\n float basis1Dot = dot(slicePlaneBasis1, rel);\n float basis2Dot = dot(slicePlaneBasis2, rel);\n\n return SliceFactors(\n dot(slicePlaneNormal, pos) + slicePlaneW,\n -basis1Dot - basis1Len2,\n basis1Dot - basis1Len2,\n -basis2Dot - basis2Len2,\n basis2Dot - basis2Len2\n );\n }\n\n bool sliceByFactors(SliceFactors factors) {\n return factors.front < 0.0\n && factors.side0 < 0.0\n && factors.side1 < 0.0\n && factors.side2 < 0.0\n && factors.side3 < 0.0;\n }\n\n bool sliceEnabled() {\n // a slicePlaneBasis1 vector of zero length is used to disable slicing in the shader during draped rendering.\n return dot(slicePlaneBasis1, slicePlaneBasis1) != 0.0;\n }\n\n bool sliceByPlane(vec3 pos) {\n return sliceEnabled() && sliceByFactors(calculateSliceFactors(pos));\n }\n\n #define rejectBySlice(_pos_) sliceByPlane(_pos_)\n #define discardBySlice(_pos_) { if (sliceByPlane(_pos_)) discard; }\n `,a=o`\n vec4 applySliceHighlight(vec4 color, vec3 pos) {\n SliceFactors factors = calculateSliceFactors(pos);\n\n if (sliceByFactors(factors)) {\n return color;\n }\n\n const float HIGHLIGHT_WIDTH = 1.0;\n const vec4 HIGHLIGHT_COLOR = vec4(0.0, 0.0, 0.0, 0.3);\n\n factors.front /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.front);\n factors.side0 /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.side0);\n factors.side1 /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.side1);\n factors.side2 /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.side2);\n factors.side3 /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.side3);\n\n float highlightFactor = (1.0 - step(0.5, factors.front))\n * (1.0 - step(0.5, factors.side0))\n * (1.0 - step(0.5, factors.side1))\n * (1.0 - step(0.5, factors.side2))\n * (1.0 - step(0.5, factors.side3));\n\n return mix(color, vec4(HIGHLIGHT_COLOR.rgb, color.a), highlightFactor * HIGHLIGHT_COLOR.a);\n }\n `,l=s.sliceHighlightDisabled?o`#define highlightSlice(_color_, _pos_) (_color_)`:o`\n ${a}\n #define highlightSlice(_color_, _pos_) (sliceEnabled() ? applySliceHighlight(_color_, _pos_) : (_color_))\n `;s.sliceEnabledForVertexPrograms&&e.vertex.code.add(i),e.fragment.code.add(i),e.fragment.code.add(l)}else{const i=o`\n #define rejectBySlice(_pos_) false\n #define discardBySlice(_pos_) {}\n #define highlightSlice(_color_, _pos_) (_color_)\n `;s.sliceEnabledForVertexPrograms&&e.vertex.code.add(i),e.fragment.code.add(i)}}!function(i){function o(e,s,a){i.bindUniforms(e,s,a.slicePlane,a.origin)}function l(i,o,l,r){o.slicePlaneEnabled&&(e(l)?(r?(a(c,l.origin,r),i.setUniform3fv(\"slicePlaneOrigin\",c)):i.setUniform3fv(\"slicePlaneOrigin\",l.origin),i.setUniform3fv(\"slicePlaneBasis1\",l.basis1),i.setUniform3fv(\"slicePlaneBasis2\",l.basis2)):(i.setUniform3fv(\"slicePlaneBasis1\",s),i.setUniform3fv(\"slicePlaneBasis2\",s),i.setUniform3fv(\"slicePlaneOrigin\",s)))}i.bindUniformsWithOrigin=o,i.bindUniforms=l}(l||(l={}));const c=i();export{l as Slice};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{c as e}from\"../../../../../../chunks/vec3f64.js\";import{glsl as i}from\"../../shaderModules/interfaces.js\";import{encodeDoubleArraySplit as r}from\"../../../lib/doublePrecisionUtils.js\";import{DoublePrecision as o}from\"../util/DoublePrecision.glsl.js\";function n(e,r){r.instanced&&r.instancedDoublePrecision&&(e.attributes.add(\"modelOriginHi\",\"vec3\"),e.attributes.add(\"modelOriginLo\",\"vec3\"),e.attributes.add(\"model\",\"mat3\"),e.attributes.add(\"modelNormal\",\"mat3\")),r.instancedDoublePrecision&&(e.vertex.include(o,r),e.vertex.uniforms.add(\"viewOriginHi\",\"vec3\"),e.vertex.uniforms.add(\"viewOriginLo\",\"vec3\"));const n=[i`\n vec3 calculateVPos() {\n ${r.instancedDoublePrecision?\"return model * localPosition().xyz;\":\"return localPosition().xyz;\"}\n }\n `,i`\n vec3 subtractOrigin(vec3 _pos) {\n ${r.instancedDoublePrecision?i`\n vec3 originDelta = dpAdd(viewOriginHi, viewOriginLo, -modelOriginHi, -modelOriginLo);\n return _pos - originDelta;`:\"return vpos;\"}\n }\n `,i`\n vec3 dpNormal(vec4 _normal) {\n ${r.instancedDoublePrecision?\"return normalize(modelNormal * _normal.xyz);\":\"return normalize(_normal.xyz);\"}\n }\n `,i`\n vec3 dpNormalView(vec4 _normal) {\n ${r.instancedDoublePrecision?\"return normalize((viewNormal * vec4(modelNormal * _normal.xyz, 1.0)).xyz);\":\"return normalize((viewNormal * _normal).xyz);\"}\n }\n `,r.vertexTangets?i`\n vec4 dpTransformVertexTangent(vec4 _tangent) {\n ${r.instancedDoublePrecision?\"return vec4(modelNormal * _tangent.xyz, _tangent.w);\":\"return _tangent;\"}\n\n }\n `:i``];e.vertex.code.add(n[0]),e.vertex.code.add(n[1]),e.vertex.code.add(n[2]),2===r.output&&e.vertex.code.add(n[3]),e.vertex.code.add(n[4])}!function(e){class i{}function o(e,i){r(i,t,a,3),e.setUniform3fv(\"viewOriginHi\",t),e.setUniform3fv(\"viewOriginLo\",a)}e.Uniforms=i,e.bindCustomOrigin=o}(n||(n={}));const t=e(),a=e();export{n as InstancedDoublePrecision};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport\"../../../../../../core/has.js\";import{glsl as t}from\"../../shaderModules/interfaces.js\";function u(u,e){t`\n /*\n * ${e.name}\n * ${0===e.output?\"RenderOutput: Color\":1===e.output?\"RenderOutput: Depth\":3===e.output?\"RenderOutput: Shadow\":2===e.output?\"RenderOutput: Normal\":4===e.output?\"RenderOutput: Highlight\":\"\"}\n */\n `}export{u as HeaderComment};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nfunction e(){return[1,0,0,0,1,0,0,0,1]}function r(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8]]}function n(e,r,n,t,a,o,u,c,f){return[e,r,n,t,a,o,u,c,f]}function t(e,r){return new Float64Array(e,r,9)}var a=Object.freeze({__proto__:null,create:e,clone:r,fromValues:n,createView:t});export{e as a,r as b,t as c,n as f,a as m};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function t(t,d){1===d.attributeTextureCoordinates&&(t.attributes.add(\"uv0\",\"vec2\"),t.varyings.add(\"vuv0\",\"vec2\"),t.vertex.code.add(e`\n void forwardTextureCoordinates() {\n vuv0 = uv0;\n }\n `)),2===d.attributeTextureCoordinates&&(t.attributes.add(\"uv0\",\"vec2\"),t.varyings.add(\"vuv0\",\"vec2\"),t.attributes.add(\"uvRegion\",\"vec4\"),t.varyings.add(\"vuvRegion\",\"vec4\"),t.vertex.code.add(e`\n void forwardTextureCoordinates() {\n vuv0 = uv0;\n vuvRegion = uvRegion;\n }\n `)),0===d.attributeTextureCoordinates&&t.vertex.code.add(e`\n void forwardTextureCoordinates() {}\n `)}export{t as TextureCoordinateAttribute};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as i}from\"../../shaderModules/interfaces.js\";function n(n,t){const e=n.fragment,a=void 0!==t.lightingSphericalHarmonicsOrder?t.lightingSphericalHarmonicsOrder:2;0===a?(e.uniforms.add(\"lightingAmbientSH0\",\"vec3\"),e.code.add(i`\n vec3 calculateAmbientIrradiance(vec3 normal, float ambientOcclusion) {\n vec3 ambientLight = 0.282095 * lightingAmbientSH0;\n return ambientLight * (1.0 - ambientOcclusion);\n }\n `)):1===a?(e.uniforms.add(\"lightingAmbientSH_R\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_G\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_B\",\"vec4\"),e.code.add(i`\n vec3 calculateAmbientIrradiance(vec3 normal, float ambientOcclusion) {\n vec4 sh0 = vec4(\n 0.282095,\n 0.488603 * normal.x,\n 0.488603 * normal.z,\n 0.488603 * normal.y\n );\n vec3 ambientLight = vec3(\n dot(lightingAmbientSH_R, sh0),\n dot(lightingAmbientSH_G, sh0),\n dot(lightingAmbientSH_B, sh0)\n );\n return ambientLight * (1.0 - ambientOcclusion);\n }\n `)):2===a&&(e.uniforms.add(\"lightingAmbientSH0\",\"vec3\"),e.uniforms.add(\"lightingAmbientSH_R1\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_G1\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_B1\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_R2\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_G2\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_B2\",\"vec4\"),e.code.add(i`\n vec3 calculateAmbientIrradiance(vec3 normal, float ambientOcclusion) {\n vec3 ambientLight = 0.282095 * lightingAmbientSH0;\n\n vec4 sh1 = vec4(\n 0.488603 * normal.x,\n 0.488603 * normal.z,\n 0.488603 * normal.y,\n 1.092548 * normal.x * normal.y\n );\n vec4 sh2 = vec4(\n 1.092548 * normal.y * normal.z,\n 0.315392 * (3.0 * normal.z * normal.z - 1.0),\n 1.092548 * normal.x * normal.z,\n 0.546274 * (normal.x * normal.x - normal.y * normal.y)\n );\n ambientLight += vec3(\n dot(lightingAmbientSH_R1, sh1),\n dot(lightingAmbientSH_G1, sh1),\n dot(lightingAmbientSH_B1, sh1)\n );\n ambientLight += vec3(\n dot(lightingAmbientSH_R2, sh2),\n dot(lightingAmbientSH_G2, sh2),\n dot(lightingAmbientSH_B2, sh2)\n );\n return ambientLight * (1.0 - ambientOcclusion);\n }\n `),1!==t.pbrMode&&2!==t.pbrMode||e.code.add(i`\n const vec3 skyTransmittance = vec3(0.9, 0.9, 1.0);\n\n vec3 calculateAmbientRadiance(float ambientOcclusion)\n {\n vec3 ambientLight = 1.2 * (0.282095 * lightingAmbientSH0) - 0.2;\n return ambientLight *= (1.0 - ambientOcclusion) * skyTransmittance;\n }\n `))}export{n as EvaluateAmbientLighting};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as i}from\"../../shaderModules/interfaces.js\";function t(t){const n=t.fragment;n.uniforms.add(\"lightingMainDirection\",\"vec3\"),n.uniforms.add(\"lightingMainIntensity\",\"vec3\"),n.uniforms.add(\"lightingFixedFactor\",\"float\"),n.code.add(i`\n vec3 evaluateMainLighting(vec3 normal_global, float shadowing) {\n float dotVal = clamp(-dot(normal_global, lightingMainDirection), 0.0, 1.0);\n\n // move lighting towards (1.0, 1.0, 1.0) if requested\n dotVal = mix(dotVal, 1.0, lightingFixedFactor);\n\n return lightingMainIntensity * ((1.0 - shadowing) * dotVal);\n }\n `)}export{t as EvaluateMainLighting};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{PiUtils as i}from\"./PiUtils.glsl.js\";import{ReadShadowMap as t}from\"./ReadShadowMap.glsl.js\";import{PhysicallyBasedRendering as o}from\"./PhysicallyBasedRendering.glsl.js\";import{EvaluateAmbientOcclusion as a}from\"./EvaluateAmbientOcclusion.glsl.js\";import{EvaluateAmbientLighting as n}from\"./EvaluateAmbientLighting.glsl.js\";import{EvaluateMainLighting as l}from\"./EvaluateMainLighting.glsl.js\";function r(r,c){const d=r.fragment;r.include(l),r.include(a,c),0!==c.pbrMode&&r.include(o,c),r.include(n,c),c.receiveShadows&&r.include(t,c),d.uniforms.add(\"lightingGlobalFactor\",\"float\"),d.uniforms.add(\"ambientBoostFactor\",\"float\"),r.include(i),d.code.add(e`\n const float GAMMA_SRGB = 2.1;\n const float INV_GAMMA_SRGB = 0.4761904;\n ${0===c.pbrMode?\"\":\"const vec3 GROUND_REFLECTANCE = vec3(0.2);\"}\n `),c.useOldSceneLightInterface?d.code.add(e`\n vec3 evaluateSceneLightingExt(vec3 normal, vec3 albedo, float shadow, float ssao, vec3 additionalLight) {\n // evaluate the main light\n #if defined(TREE_RENDERING)\n // Special case for tree rendering:\n // We shift the Lambert lobe to the back, allowing it to reach part of the hemisphere\n // facing away from the light. The idea is to get an effect where light is transmitted\n // through the tree.\n float minDot = -0.5;\n float dotRange = 1.0 - minDot;\n float dotNormalization = 0.66; // guessed & hand tweaked value, for an exact value we could precompute an integral over the sphere\n\n float dotVal = dotNormalization * (clamp(-dot(normal, lightingMainDirection), 1.0 - dotRange, 1.0) - minDot) * (1.0 / dotRange);\n #else\n float dotVal = clamp(-dot(normal, lightingMainDirection), 0.0, 1.0);\n #endif\n\n // move lighting towards (1.0, 1.0, 1.0) if requested\n dotVal = mix(dotVal, 1.0, lightingFixedFactor);\n\n vec3 mainLight = (1.0 - shadow) * lightingMainIntensity * dotVal;\n vec3 ambientLight = calculateAmbientIrradiance(normal, ssao);\n\n // inverse gamma correction on the albedo color\n vec3 albedoGammaC = pow(albedo, vec3(GAMMA_SRGB));\n\n // physically correct BRDF normalizes by PI\n vec3 totalLight = mainLight + ambientLight + additionalLight;\n totalLight = min(totalLight, vec3(PI));\n vec3 outColor = vec3((albedoGammaC / PI) * (totalLight));\n\n // apply gamma correction to the computed color\n outColor = pow(outColor, vec3(INV_GAMMA_SRGB));\n\n return outColor;\n }\n `):(1===c.viewingMode?d.code.add(e`\n float _oldHeuristicLighting(vec3 vPosWorld) {\n vec3 shadingNormalWorld = normalize(vPosWorld);\n float vndl = -dot(shadingNormalWorld, lightingMainDirection);\n\n return smoothstep(0.0, 1.0, clamp(vndl * 2.5, 0.0, 1.0));\n }\n `):d.code.add(e`\n float _oldHeuristicLighting(vec3 vPosWorld) {\n float vndl = -dot(vec3(0.0, 0.0, 1.0), lightingMainDirection);\n return smoothstep(0.0, 1.0, clamp(vndl * 2.5, 0.0, 1.0));\n }\n `),d.code.add(e`\n vec3 evaluateAdditionalLighting(float ambientOcclusion, vec3 vPosWorld) {\n float additionalAmbientScale = _oldHeuristicLighting(vPosWorld);\n return (1.0 - ambientOcclusion) * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor * lightingMainIntensity;\n }\n `),0===c.pbrMode||4===c.pbrMode?d.code.add(e`\n vec3 evaluateSceneLighting(vec3 normalWorld, vec3 baseColor, float mainLightShadow, float ambientOcclusion, vec3 additionalLight)\n {\n vec3 mainLighting = evaluateMainLighting(normalWorld, mainLightShadow);\n vec3 ambientLighting = calculateAmbientIrradiance(normalWorld, ambientOcclusion);\n // inverse gamma correction on the base color\n vec3 baseColorLinear = pow(baseColor, vec3(GAMMA_SRGB));\n\n // physically correct BRDF normalizes by PI\n vec3 totalLight = mainLighting + ambientLighting + additionalLight;\n totalLight = min(totalLight, vec3(PI));\n vec3 outColor = vec3((baseColorLinear / PI) * totalLight);\n\n // apply gamma correction to the computed color\n outColor = pow(outColor, vec3(INV_GAMMA_SRGB));\n\n return outColor;\n }\n `):1!==c.pbrMode&&2!==c.pbrMode||(d.code.add(e`\n const float fillLightIntensity = 0.25;\n const float horizonLightDiffusion = 0.4;\n const float additionalAmbientIrradianceFactor = 0.02;\n\n vec3 evaluateSceneLightingPBR(vec3 normal, vec3 albedo, float shadow, float ssao, vec3 additionalLight, vec3 viewDir, vec3 normalGround, vec3 mrr, vec3 _emission, float additionalAmbientIrradiance)\n {\n // Calculate half vector between view and light direction\n vec3 viewDirection = -viewDir;\n vec3 mainLightDirection = -lightingMainDirection;\n vec3 h = normalize(viewDirection + mainLightDirection);\n\n PBRShadingInfo inputs;\n inputs.NdotL = clamp(dot(normal, mainLightDirection), 0.001, 1.0);\n inputs.NdotV = clamp(abs(dot(normal, viewDirection)), 0.001, 1.0);\n inputs.NdotH = clamp(dot(normal, h), 0.0, 1.0);\n inputs.VdotH = clamp(dot(viewDirection, h), 0.0, 1.0);\n inputs.NdotNG = clamp(dot(normal, normalGround), -1.0, 1.0);\n vec3 reflectedView = normalize(reflect(viewDirection, normal));\n inputs.RdotNG = clamp(dot(reflectedView, normalGround), -1.0, 1.0);\n\n inputs.albedoLinear = pow(albedo, vec3(GAMMA_SRGB));\n inputs.ssao = ssao;\n\n inputs.metalness = mrr[0];\n inputs.roughness = clamp(mrr[1] * mrr[1], 0.001, 0.99);\n `),d.code.add(e`\n inputs.f0 = (0.16 * mrr[2] * mrr[2]) * (1.0 - inputs.metalness) + inputs.albedoLinear * inputs.metalness;\n inputs.f90 = vec3(clamp(dot(inputs.f0, vec3(50.0 * 0.33)), 0.0, 1.0)); // more accurate then using f90 = 1.0\n inputs.diffuseColor = inputs.albedoLinear * (vec3(1.0) - inputs.f0) * (1.0 - inputs.metalness);\n `),d.code.add(e`\n vec3 ambientDir = vec3(5.0 * normalGround[1] - normalGround[0] * normalGround[2], - 5.0 * normalGround[0] - normalGround[2] * normalGround[1], normalGround[1] * normalGround[1] + normalGround[0] * normalGround[0]);\n ambientDir = ambientDir != vec3(0.0)? normalize(ambientDir) : normalize(vec3(5.0, -1.0, 0.0));\n\n inputs.NdotAmbDir = abs(dot(normal, ambientDir));\n\n // Calculate the irradiance components: sun, fill lights and the sky.\n vec3 mainLightIrradianceComponent = inputs.NdotL * (1.0 - shadow) * lightingMainIntensity;\n vec3 fillLightsIrradianceComponent = inputs.NdotAmbDir * lightingMainIntensity * fillLightIntensity;\n // calculateAmbientIrradiance for localView and additionalLight for gloabalView\n vec3 ambientLightIrradianceComponent = calculateAmbientIrradiance(normal, ssao) + additionalLight;\n\n // Assemble the overall irradiance of the sky that illuminates the surface\n inputs.skyIrradianceToSurface = ambientLightIrradianceComponent + mainLightIrradianceComponent + fillLightsIrradianceComponent ;\n // Assemble the overall irradiance of the ground that illuminates the surface. for this we use the simple model that changes only the sky irradiance by the groundReflectance\n inputs.groundIrradianceToSurface = GROUND_REFLECTANCE * ambientLightIrradianceComponent + mainLightIrradianceComponent + fillLightsIrradianceComponent ;\n `),d.code.add(e`\n vec3 horizonRingDir = inputs.RdotNG * normalGround - reflectedView;\n vec3 horizonRingH = normalize(viewDirection + horizonRingDir);\n inputs.NdotH_Horizon = dot(normal, horizonRingH);\n\n vec3 mainLightRadianceComponent = normalDistribution(inputs.NdotH, inputs.roughness) * lightingMainIntensity * (1.0 - shadow);\n vec3 horizonLightRadianceComponent = normalDistribution(inputs.NdotH_Horizon, min(inputs.roughness + horizonLightDiffusion, 1.0)) * lightingMainIntensity * fillLightIntensity;\n vec3 ambientLightRadianceComponent = calculateAmbientRadiance(ssao) + additionalLight; // calculateAmbientRadiance for localView and additionalLight for gloabalView\n\n // Assemble the overall radiance of the sky that illuminates the surface\n inputs.skyRadianceToSurface = ambientLightRadianceComponent + mainLightRadianceComponent + horizonLightRadianceComponent;\n // Assemble the overall radiance of the ground that illuminates the surface. for this we use the simple model that changes only the sky radince by the groundReflectance\n inputs.groundRadianceToSurface = GROUND_REFLECTANCE * (ambientLightRadianceComponent + horizonLightRadianceComponent) + mainLightRadianceComponent;\n\n // Calculate average ambient radiance - this is used int the gamut mapping part to deduce the black level that is soft compressed\n inputs.averageAmbientRadiance = ambientLightIrradianceComponent[1] * (1.0 + GROUND_REFLECTANCE[1]);\n `),d.code.add(e`\n vec3 reflectedColorComponent = evaluateEnvironmentIllumination(inputs);\n vec3 additionalMaterialReflectanceComponent = inputs.albedoLinear * additionalAmbientIrradiance;\n vec3 emissionComponent = pow(_emission, vec3(GAMMA_SRGB));\n vec3 outColorLinear = reflectedColorComponent + additionalMaterialReflectanceComponent + emissionComponent;\n ${2===c.pbrMode?e`vec3 outColor = pow(max(vec3(0.0), outColorLinear - 0.005 * inputs.averageAmbientRadiance), vec3(INV_GAMMA_SRGB));`:e`vec3 outColor = pow(blackLevelSoftCompression(outColorLinear, inputs), vec3(INV_GAMMA_SRGB));`}\n return outColor;\n }\n `)))}export{r as EvaluateSceneLighting};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{glsl as a}from\"../../shaderModules/interfaces.js\";const d=.1,o=.001;function r(d,r){const e=d.fragment;switch(r.alphaDiscardMode){case 0:e.code.add(a`\n #define discardOrAdjustAlpha(color) { if (color.a < ${a.float(o)}) { discard; } }\n `);break;case 1:e.code.add(a`\n void discardOrAdjustAlpha(inout vec4 color) {\n color.a = 1.0;\n }\n `);break;case 2:e.uniforms.add(\"textureAlphaCutoff\",\"float\"),e.code.add(a`\n #define discardOrAdjustAlpha(color) { if (color.a < textureAlphaCutoff) { discard; } else { color.a = 1.0; } }\n `);break;case 3:d.fragment.uniforms.add(\"textureAlphaCutoff\",\"float\"),d.fragment.code.add(a`\n #define discardOrAdjustAlpha(color) { if (color.a < textureAlphaCutoff) { discard; } }\n `)}}export{r as DiscardOrAdjustAlpha,d as defaultMaskAlphaCutoff,o as symbolAlphaCutoff};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport{BufferViewVec2f as e,BufferViewVec2f64 as t,BufferViewVec3f as i,BufferViewVec3f64 as s,BufferViewVec4f as r,BufferViewVec4f64 as n,BufferViewMat3f as h,BufferViewMat3f64 as d,BufferViewMat4f as u,BufferViewMat4f64 as f,BufferViewVec4u8 as p,BufferViewFloat as l,BufferViewFloat64 as a,BufferViewUint8 as o,BufferViewUint16 as c,BufferViewInt8 as F,BufferViewVec2i8 as m,BufferViewVec2i16 as y,BufferViewVec2u8 as w,BufferViewVec4u16 as b,BufferViewUint32 as v}from\"./BufferView.js\";import{elementTypeSize as g}from\"./types.js\";class N{constructor(e,t){this.layout=e,this.buffer=\"number\"==typeof t?new ArrayBuffer(t*e.stride):t;for(const i of e.fieldNames){const t=e.fields.get(i);this[i]=new t.constructor(this.buffer,t.offset,this.stride)}}get stride(){return this.layout.stride}get count(){return this.buffer.byteLength/this.stride}get byteLength(){return this.buffer.byteLength}getField(e,t){const i=this[e];return i&&i.elementCount===t.ElementCount&&i.elementType===t.ElementType?i:null}slice(e,t){return new N(this.layout,this.buffer.slice(e*this.stride,t*this.stride))}copyFrom(e,t,i,s){const r=this.stride;if(r%4==0){const n=new Uint32Array(e.buffer,t*r,s*r/4);new Uint32Array(this.buffer,i*r,s*r/4).set(n)}else{const n=new Uint8Array(e.buffer,t*r,s*r);new Uint8Array(this.buffer,i*r,s*r).set(n)}}}class T{constructor(){this.stride=0,this.fields=new Map,this.fieldNames=[]}vec2f(t,i){return this.appendField(t,e,i),this}vec2f64(e,i){return this.appendField(e,t,i),this}vec3f(e,t){return this.appendField(e,i,t),this}vec3f64(e,t){return this.appendField(e,s,t),this}vec4f(e,t){return this.appendField(e,r,t),this}vec4f64(e,t){return this.appendField(e,n,t),this}mat3f(e,t){return this.appendField(e,h,t),this}mat3f64(e,t){return this.appendField(e,d,t),this}mat4f(e,t){return this.appendField(e,u,t),this}mat4f64(e,t){return this.appendField(e,f,t),this}vec4u8(e,t){return this.appendField(e,p,t),this}f32(e,t){return this.appendField(e,l,t),this}f64(e,t){return this.appendField(e,a,t),this}u8(e,t){return this.appendField(e,o,t),this}u16(e,t){return this.appendField(e,c,t),this}i8(e,t){return this.appendField(e,F,t),this}vec2i8(e,t){return this.appendField(e,m,t),this}vec2i16(e,t){return this.appendField(e,y,t),this}vec2u8(e,t){return this.appendField(e,w,t),this}vec4u16(e,t){return this.appendField(e,b,t),this}u32(e,t){return this.appendField(e,v,t),this}appendField(e,t,i){const s=t.ElementCount*g(t.ElementType),r=this.stride;this.fields.set(e,{size:s,constructor:t,offset:r,optional:i}),this.stride+=s,this.fieldNames.push(e)}alignTo(e){return this.stride=Math.floor((this.stride+e-1)/e)*e,this}hasField(e){return this.fieldNames.indexOf(e)>=0}createBuffer(e){return new N(this,e)}createView(e){return new N(this,e)}clone(){const e=new T;return e.stride=this.stride,e.fields=new Map,this.fields.forEach(((t,i)=>e.fields.set(i,t))),e.fieldNames=this.fieldNames.slice(),e.BufferType=this.BufferType,e}}function A(){return new T}export{N as InterleavedBuffer,T as InterleavedLayout,A as newLayout};\n"],"sourceRoot":""}