{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/views/3d/layers/i3s/I3SProjectionUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/PointCloudWorkerHandle.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/i3s/LoDUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/i3s/PagedNodeIndex.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/i3s/PointCloudRendererUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/i3s/PointGraphic.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/i3s/PointHighlights.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/shaders/PointRendererTechnique.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/i3s/PointRenderer.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/PointCloudLayerView3D.js","webpack:///./node_modules/@arcgis/core/views/layers/support/popupUtils.js","webpack:///./node_modules/@arcgis/core/chunks/PointRenderer.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/i3s/I3SUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/support/PopupSceneLayerView.js"],"names":["a","o","n","s","c","h","i","t","r","e","Math","ceil","log","LOG2E","isGeographic","radius","PI","round","max","min","cos","abs","M","m","super","geometryBuffer","primaryAttributeData","buffer","push","modulationAttributeData","filterAttributesData","u","userAttributesData","g","length","l","load","remove","indexOf","getParentId","sort","getRenderCenter","pop","this","_pages","pageSize","_nodeSR","_renderSR","nodes","renderObbs","parents","Uint32Array","getRenderObb","center","index","queue","masks","tempAabb","p","hasNodes","getNode","d","f","clippingBox","frustum","predicate","firstChild","childCount","hasPage","pageMiss","obb","obbs","renderer","type","toJSON","attributeStorageInfo","field","colorModulation","rendererJSON","isRGBRenderer","primaryAttribute","modulationAttribute","filters","map","filterJSON","attributeInfo","pointSizeAlgorithm","name","attributeValues","valueType","valuesPerElement","storageInfo","useElevation","encoding","toLowerCase","cloneProperties","pointCloudMetadata","constructOnly","prototype","context","highlights","Set","size","add","enableSet","removeSet","disableSet","delete","enabled","forEachNode","enableSetForNode","ids","get","id","forEach","addHighlight","disableSetForNode","removeHighlight","Map","nodeId","pointId","set","shader","configuration","build","output","slicePlaneEnabled","sliceHighlightDisabled","sliceEnabledForVertexPrograms","drawScreenSize","rctx","depthTest","func","depthWrite","colorWrite","stencilWrite","sceneHasOcludees","stencilTest","arguments","count","k","positions","offset","stride","normalized","colors","_params","isGround","_bindParameters","inverseViewport","highlightDepthTexture","_highlights","canRender","layerUid","_useFixedSizes","_scaleFactor","_minSizePx","_useRealWorldSymbolSizes","_size","_sizePx","_slicePlaneEnabled","_clipBox","_techniqueConfig","tempMatrix4","tempVec3","hasHighlights","_context","_techniqueRep","shaderTechniqueRep","requestRender","camera","perScreenPixelRatio","_","near","P","_getSizeParams","y","q","node","point","dist","normal","j","A","C","B","L","forAll","splatSize","G","isLeaf","x","S","z","D","v","origin","E","coordinates","b","$","options","store","I","metadata","createGraphic","N","intersector","results","all","pass","vao","_initNode","selectTechnique","program","setUniform3fv","useProgram","bindPipelineState","setUniformMatrix4fv","projectionMatrix","setUniform2f","far","isHighlightPass","fullViewport","pixelRatio","drawFixedSize","fixedSize","fullHeight","sliceHelper","plane","screenMinSize","W","viewMatrix","bindVAO","_renderHighlightFragments","drawArrays","component","_requestRender","nodeAdded","filterInPlace","nodeRemoved","removeAll","clear","K","Q","createVertex","rgb","drawScreenSpace","hasOccludees","releaseAndAcquire","_technique","J","filter","hasOwnProperty","isInstanceOfNode","ae","getLogger","de","le","he","maximumPointCount","_renderer","_rendererAdded","_renderedNodes","_nodeScales","_updateViewNeeded","_lodFactor","_maxLoggedBoxWarnings","_pageMultiplier","_nodeLoadEpoch","_indexQueue","_workQueue","Array","_idleQueue","_indexPagesLoading","_loadingNodes","_recalcWork","_layerIsVisible","_codedDomainPopulationPromise","_codedDomainPopulationAbortController","_totalWork","_index","_loadingInitNodePage","_nodeIdArray","layer","scaleFactor","useRealWorldSymbolSizes","pointsPerInch","outFields","fieldsIndex","from","view","clippingArea","renderSpatialReference","elevationInfo","mode","spatialReference","unit","resourceController","_worker","schedule","addResolvingPromise","promise","_tmpPoint","_indexRequester","createStreamDataRequester","_dataRequester","_initRenderer","_initNodePages","memoryController","_memCache","getMemCache","uid","updatingHandles","_setUpdateViewNeeded","_elevationOffsetChanged","_rendererChanged","_reload","state","handles","basemapTerrain","on","_scaleUpdateHandler","events","when","scheduler","registerTask","POINT_CLOUD_LAYER","registerIdleStateCallbacks","_idleBegin","_idleEnd","_clearNodeState","_updateLoading","cancelLoading","destroy","_destroyRenderer","abort","_createGraphic","_setPointsVisible","minSizePx","sqrt","sizePx","slicePlane","pointIdFilterMap","computeMapPointFromVec3d","_createGraphicAttributes","pointIndexInNode","attributePointIndexInNode","epoch","geometry","attributes","sourceLayer","_encodeGraphicAttribute","values","_stage","addRenderPlugin","removeRenderPlugin","useFixedSizes","minScale","maxScale","extent","pe","has","scale","contentCamera","viewForward","_updateQueues","_computeWork","notifyChange","_cancelNodeLoading","_cancelIndexLoading","abortController","cancelAll","_removeFromRenderer","suspended","_isRootNodeVisible","run","_updateWorkQueues","_processIndexQueue","_processWorkQueue","process","shift","_loadNodePage","then","addPage","_elevationOffset","done","_scheduleWorkEntry","_processWorkEntry","madeProgress","find","Promise","toString","resolve","loadNode","signal","_setupRendererData","_addToRenderer","catch","domain","queryCachedStatistics","ok","value","labels","isArray","codedValues","code","label","populateClassCodeCodedDomain","_splitGraphicsPerNode","async","_loadElevationAttributeFromGeometry","resourceId","_loadAndParseAttribute","_isValidPointGraphic","_loadAttribute","vertexCount","defaultGeometrySchema","_loadGeometry","isCollection","toArray","highlight","_graphicToPointDefinition","canResume","nodesPerPage","nodePerIndexBlock","renderCoordsHelper","_traverseVisible","createVisibilityTraverse","baseUrl","_requestNodePage","pointCount","lodThreshold","effectiveArea","inverseDensity","_getLodMemoryFactor","_computeNodesForMinimumDensity","_computePointCount","displayNodes","memoryFactor","_clippingBox","eye","_getScale","_computeAveragePixelArea","getScale","loadNodeAsync","error","loadAdditionalUserAttributes","w","schema","rendererInfo","filterInfo","elevationOffset","inSR","outSR","invoke","_requestData","key","token","apiKey","request","query","removeNode","put","ue","addNode","halfSize","warn","setRenderObb","points","ce","reduce","getUsedMemory","displayedNumberOfFeatures","maximumNumberOfFeatures","totalNumberOfFeatures","core","visibleNodes","readOnly","aliasOf","Boolean","_e","popupTemplate","getRequiredFields","lastEditInfoEnabled","objectIdField","typeIdField","globalIdField","relationships","includes","keyField","defaultPopupTemplateEnabled","defaultPopupTemplate","extensions","include","vertex","uniforms","varyings","fragment","Object","freeze","__proto__","X","parseInt","substring","lastIndexOf","Y","geometryBuffers","compressedAttributes","traverse","mbs","ne","ee","te","re","oe","rotationScale","position","se","ie","missingFields","originalFields","associatedLayer","loaded","parsedUrl","path","indices","graphics","featureIds","fields","fe","capabilities","maxRecordCount","objectIds","orderByFields","queryFeatures","features","resources","url","responseType","data","me","ye","indexCRS","geographicCRS","indexWKT","wkt","equals","ge","vertexCRS","projectedCRS","vertexWKT","be","wkid","we","Se","isWGS84","isWebMercator","ve","xe","geometryType","topology","vertexAttributes","Me","je","viewingMode","qe","Re","ke","Te","ze","Fe","defaultSymbol","getSymbols","symbolLayers","items","material","color","colorMixMode","Ae","opacity","We","edgeMaterial","castShadows","Ie","edges","alpha","Ce","Ue","$e","Pe","Be","quaternion","Oe","Ee","Ge","Ke","Le","Float64Array","He","Ze","De","Xe","inverseFlattening","Qe","Ne","serviceObb","Ve","hasZ","Je","rings","Ye","popupEnabled","_validateFetchPopupFeatures","reject","clientGraphics","prepareFetchPopupFeatures","whenGraphicAttributes","concat"],"mappings":"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","file":"js/chunk-6c7a01e0.bb2f9f58.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{c as t}from\"../../../../chunks/mat4f64.js\";import{c as o}from\"../../../../chunks/vec3f64.js\";import{computeTranslationToOriginAndRotation as r}from\"../../../../geometry/projection.js\";import{getReferenceEllipsoid as n}from\"../../../../geometry/projectionEllipsoid.js\";function a(o,n,a,s){const c=h(o,n,a),i=t();return r(a,c,i,s),i}const s=1,c=5-s;function h(t,r,a){const h=o(),i=t[3],e=2**(Math.ceil(Math.log(i)*Math.LOG2E/c)*c+s);if(a.isGeographic){const o=e/n(a).radius*180/Math.PI,r=Math.round(t[1]/o),s=Math.max(-90,Math.min(90,r*o)),c=o/Math.cos((Math.abs(s)-o/2)/180*Math.PI),i=Math.round(t[0]/c)*c;h[0]=i,h[1]=s}else{const o=Math.round(t[0]/e),r=Math.round(t[1]/e);h[0]=o*e,h[1]=r*e}const M=t[2]+r,m=Math.round(M/e);return h[2]=m*e,h}export{a as computeGlobalTransformation,h as getLocalOrigin};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../../../core/maybe.js\";import{WorkerHandle as r}from\"../../../core/workers/WorkerHandle.js\";class e extends r{constructor(t){super(\"PointCloudWorker\",\"transform\",t)}getTransferList(r){const e=[r.geometryBuffer];if(t(r.primaryAttributeData)&&r.primaryAttributeData.buffer&&e.push(r.primaryAttributeData.buffer),t(r.modulationAttributeData)&&r.modulationAttributeData.buffer&&e.push(r.modulationAttributeData.buffer),t(r.filterAttributesData))for(const u of r.filterAttributesData)t(u)&&u.buffer&&e.push(u.buffer);for(const t of r.userAttributesData)t.buffer&&e.push(t.buffer);return e}}export{e as PointCloudWorkerHandle};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{d as e}from\"../../../../chunks/vec3.js\";function t(e,t,g){for(let n=0;n=0&&(r[n]=!0,null!=l[o]?l[o].push(t[n]):l[o]=[t[n]])}for(let l=0;l=0&&(n[l]=!0,null!=o[r]?o[r].push(e[l]):o[r]=[e[l]])}const u=[];for(let r=0;r1||o[n][0]!==t[n])&&u.push({load:[t[n]],remove:o[n]});for(let n=0;n1||l[n][0]!==e[n])&&u.push({load:l[n],remove:[e[n]]});return u}const n=[!1],l=[null],r=[!1],o=[null];function h(e,t,n){let l=e;for(;l>0;){const e=t.indexOf(l);if(e>=0)return e;l=n.getParentId(l)}return t.indexOf(l)}function g(t,n,l){return t.sort(((t,r)=>{if(0===t.load.length&&0===r.load.length)return 0;if(0===t.load.length)return-1;if(0===r.load.length)return 1;if(0===t.remove.length&&0===r.remove.length){const o=l.getRenderCenter(t.load[0]),h=l.getRenderCenter(r.load[0]);return e(o,n)-e(h,n)}if(0===t.remove.length)return-1;if(0===r.remove.length)return 1;if(1===t.load.length&&1===r.load.length){const o=l.getRenderCenter(t.load[0]),h=l.getRenderCenter(r.load[0]);return e(o,n)-e(h,n)}if(1===t.load.length)return-1;if(1===r.load.length)return 1;{const o=l.getRenderCenter(t.remove[0]),h=l.getRenderCenter(r.remove[0]);return e(o,n)-e(h,n)}}))}function u(e,t,n){for(let l=0;lt&&1===r.remove.length&&d(e,r,n)}}function d(e,t,n){const l=[t.remove[0]],r=[];for(;1===l.length;){const e=l.pop();r.length=0;for(let o=0;o1?e.push({remove:[l[o]],load:r[o]}):l[o]=r[o][0]}export{t as nodeDiff,g as sortFrontToBack,u as splitWorkEntries,d as splitWorkEntry};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{create as e,contains as t,intersects as s}from\"../../../../geometry/support/aaBoundingBox.js\";import{transformObb as n}from\"./I3SUtil.js\";import{set as i,toAaBoundingBox as r,intersectPlane as o,ObbArray as p}from\"../../support/orientedBoundingBox.js\";class h{constructor(e,t,s){this._pages=[],this.pageSize=0,this._nodeSR=null,this._renderSR=null,this._nodeSR=e,this._renderSR=t,this.pageSize=s}addPage(e,t,s=0){for(;this._pages.lengtha(t,e,s)}}function a(e,n,i){const p=e.index;if(!p.hasNodes(0,1))return;const h=e.queue;h.length=0,h.push(0);const a=e.masks;for(a.length=0,a.push(0);h.length>0;){const g=h.pop();let u=a.pop();const c=p.getNode(g),d=p.getRenderObb(g);let f=!0;if(null!=n.clippingBox){const i=1<0?f=!1:s<0&&(u|=t)}}if(i.predicate(g,c,f)){const e=c.firstChild,t=c.childCount;let s=!1;const n=l(e,p.pageSize),r=l(e+t-1,p.pageSize);for(let o=n;o<=r;o++)if(!p.hasPage(o)){i.pageMiss(g,o),s=!0;break}if(!s)for(let i=0;i({filterJSON:e.toJSON(),attributeInfo:u(t.attributeStorageInfo,e.field)}))):[]}function n(t){const e=t&&t.pointSizeAlgorithm;return e&&\"splat\"===e.type?e:null}function o(t){const e=t&&t.pointSizeAlgorithm;return e&&\"fixed-size\"===e.type?e:null}function r(t){const e=t&&t.pointSizeAlgorithm;return!(!e||!e.type)&&\"fixed-size\"===e.type}function l(t,e){for(const n of t)if(n.name===e&&null!=n.attributeValues&&\"UInt8\"===n.attributeValues.valueType&&3===n.attributeValues.valuesPerElement)return{name:e,storageInfo:n,useElevation:!1};return null}function u(t,e){for(const n of t)if(n.name===e){const t=\"embedded-elevation\"===n.encoding;return{name:e,storageInfo:t?null:n,useElevation:t}}return\"elevation\"===e.toLowerCase()?{name:e,storageInfo:null,useElevation:!0}:null}export{u as getAttributeInfo,e as getFilterInfo,o as getFixedSizeAlgorithm,t as getRendererInfo,n as getSplatSizeAlgorithm,r as rendererUsesFixedSizes};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as r}from\"../../../../chunks/tslib.es6.js\";import o from\"../../../../Graphic.js\";import{property as e}from\"../../../../core/accessorSupport/decorators/property.js\";import\"../../../../core/has.js\";import\"../../../../core/accessorSupport/ensureType.js\";import\"../../../../core/Logger.js\";import{subclass as s}from\"../../../../core/accessorSupport/decorators/subclass.js\";var t;let p=t=class extends o{constructor(r){super(r)}clone(){return new t(this.cloneProperties())}cloneProperties(){const{pointCloudMetadata:r}=this;return{...super.cloneProperties(),pointCloudMetadata:r}}};r([e({constructOnly:!0})],p.prototype,\"pointCloudMetadata\",void 0),p=t=r([s(\"esri.views.3d.layers.i3s.PointGraphic\")],p);export{p as PointGraphic};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{makeHandle as e}from\"../../../../core/handleUtils.js\";import{isSome as t}from\"../../../../core/maybe.js\";import{Object3DStateID as i}from\"../../webgl-engine/lib/Object3DStateID.js\";class h{constructor(e){this.context=e,this.highlights=new Set}get hasHighlights(){return this.highlights.size>0}destroy(){this.highlights=null}add(t){const i=new s(t);return this.highlights.add(i),this.enableSet(i),e((()=>this.removeSet(i)))}removeSet(e){this.disableSet(e),this.highlights.delete(e)}enableSet(e){e.enabled||(e.enabled=!0,this.context.forEachNode((t=>this.enableSetForNode(e,t))))}enableSetForNode(e,t){if(!e.enabled)return;const i=e.ids.get(t.id);i&&i.forEach((i=>this.context.addHighlight(t,i,e.id)))}disableSet(e){e.enabled&&(e.enabled=!1,this.context.forEachNode((t=>this.disableSetForNode(e,t))))}disableSetForNode(e,t){e.enabled||this.context.removeHighlight(t,e.id)}nodeAdded(e){this.highlights.forEach((t=>this.enableSetForNode(t,e)))}nodeRemoved(e){this.highlights.forEach((t=>this.disableSetForNode(t,e)))}removeAll(){this.highlights.forEach((e=>this.disableSet(e)))}}class s{constructor(e){this.id=new i(0),this.ids=new Map,this.enabled=!1;for(const i of e)t(i)&&this.add(i.nodeId,i.pointId)}add(e,t){const i=this.ids.get(e);i?i.add(t):this.ids.set(e,new Set([t]))}}export{h as PointHighlights};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../chunks/tslib.es6.js\";import{ReloadableShaderModule as r}from\"../core/shaderTechnique/ReloadableShaderModule.js\";import{ShaderTechnique as t}from\"../core/shaderTechnique/ShaderTechnique.js\";import{parameter as i,ShaderTechniqueConfiguration as s}from\"../core/shaderTechnique/ShaderTechniqueConfiguration.js\";import{Default3D as o}from\"../lib/DefaultVertexAttributeLocations.js\";import{Program as n}from\"../lib/Program.js\";import{stencilWriteMaskOn as l,stencilBaseAllZerosParams as c}from\"../lib/StencilUtils.js\";import{P as a}from\"../../../../chunks/PointRenderer.glsl.js\";import{makePipelineState as u,defaultDepthWriteParams as d,defaultColorWriteParams as p}from\"../../../webgl/renderState.js\";class h extends t{constructor(e,r,t){super(e,r,t)}initializeProgram(e){const r=h.shader.get(),t=this.configuration,i=r.build({output:t.output,slicePlaneEnabled:t.slicePlaneEnabled,sliceHighlightDisabled:!1,sliceEnabledForVertexPrograms:!0,drawScreenSize:t.drawScreenSize});return new n(e.rctx,i,o)}initializePipeline(){return u({depthTest:{func:513},depthWrite:d,colorWrite:p,stencilWrite:this.configuration.sceneHasOcludees?l:null,stencilTest:this.configuration.sceneHasOcludees?c:null})}}h.shader=new r(a,(()=>import(\"./PointRenderer.glsl.js\")));class m extends s{constructor(){super(...arguments),this.output=0,this.slicePlaneEnabled=!1,this.drawScreenSize=!1,this.sceneHasOcludees=!1}}e([i({count:8})],m.prototype,\"output\",void 0),e([i()],m.prototype,\"slicePlaneEnabled\",void 0),e([i()],m.prototype,\"drawScreenSize\",void 0),e([i()],m.prototype,\"sceneHasOcludees\",void 0);export{h as PointRendererTechnique,m as PointRendererTechniqueConfiguration};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isNone as e,unwrap as i,disposeMaybe as t,isSome as s}from\"../../../../core/maybe.js\";import r from\"../../../../core/PooledArray.js\";import{i as n,t as o,m as a}from\"../../../../chunks/mat4.js\";import{c as h}from\"../../../../chunks/mat4f32.js\";import{I as l}from\"../../../../chunks/mat4f64.js\";import{f as c,l as d,a as u,o as m,d as p,p as g,s as f}from\"../../../../chunks/vec3.js\";import{c as _}from\"../../../../chunks/vec3f32.js\";import{c as x}from\"../../../../chunks/vec3f64.js\";import{s as S}from\"../../../../chunks/vec4.js\";import{create as z,POSITIVE_INFINITY as P,offset as b,contains as w,containsPoint as R,equals as y,set as q}from\"../../../../geometry/support/aaBoundingBox.js\";import{create as v}from\"../../../../geometry/support/plane.js\";import{fromPoints as M}from\"../../../../geometry/support/ray.js\";import{PointHighlights as j}from\"./PointHighlights.js\";import{minimumDistancePlane as F,maximumDistancePlane as H,intersectLine as V,toAaBoundingBox as U}from\"../../support/orientedBoundingBox.js\";import{bindSliceUniforms as A}from\"../../webgl-engine/core/shaderLibrary/Slice.glsl.js\";import{bindOutputHighlight as C}from\"../../webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js\";import{Default3D as B}from\"../../webgl-engine/lib/DefaultVertexAttributeLocations.js\";import{IntersectorResult as E}from\"../../webgl-engine/lib/intersectorUtils.js\";import{PointRendererTechniqueConfiguration as L,PointRendererTechnique as I}from\"../../webgl-engine/shaders/PointRendererTechnique.js\";import N from\"../../../webgl/BufferObject.js\";import O from\"../../../webgl/VertexArrayObject.js\";const k={positions:[{name:\"position\",count:3,type:5126,offset:0,stride:12,normalized:!1}],colors:[{name:\"color\",count:3,type:5121,offset:0,stride:3,normalized:!0}]};class T{constructor(e){this._params=e,this.type=\"Point\",this.isGround=!1,this._bindParameters={inverseViewport:[0,0],highlightDepthTexture:null},this._highlights=new j({forEachNode:e=>this.forEachNode(e),addHighlight:(e,i,t)=>this.addHighlight(e,i,t),removeHighlight:(e,i)=>this.removeHighlight(e,i)}),this.canRender=!0,this.layerUid=\"\",this._useFixedSizes=!1,this._scaleFactor=1,this._minSizePx=0,this._useRealWorldSymbolSizes=!1,this._size=0,this._sizePx=0,this._slicePlaneEnabled=!1,this._clipBox=z(P),this._techniqueConfig=new L,this.tempMatrix4=h(),this.tempVec3=_(),this.nodes=new r}get needsHighlight(){return this._highlights.hasHighlights}initializeRenderContext(e){this._context=e,this._techniqueRep=this._context.shaderTechniqueRep,e.requestRender()}uninitializeRenderContext(){}intersect(e,i,t,s){const r=x(),n=x(),o=x(),a=x(),h=v(),f=e.camera.perScreenPixelRatio/2,_=e.camera.near,P=this._getSizeParams();c(n,s,t);const y=1/d(n);u(n,n,y),m(o,n),S(h,n[0],n[1],n[2],-p(n,t));class q{constructor(){this.node=null,this.pointId=null,this.point=null,this.dist=null,this.normal=null,this.layerUid=\"\"}}const j=new q,A=new q,C=[],B=z(),L=z(this._clipBox);b(L,-t[0],-t[1],-t[2],L),this.nodes.forAll((l=>{const d=l.splatSize*this._scaleFactor;let u=F(l.obb,h),m=H(l.obb,h);u-=G(d,u+_,P,f,l.isLeaf),m-=G(d,m+_,P,f,l.isLeaf);const x=m<0,S=null!=j.dist&&null!=A.dist&&j.distm*y;if(x||S)return;const z=D(d,m+_,P,f,l.isLeaf);if(!V(l.obb,t,n,z))return;const v=z*z;U(l.obb,B),b(B,-t[0],-t[1],-t[2],B);const M=!w(L,B);c(a,l.origin,t);const E=l.coordinates.length/3;for(let h=0;hv)continue;let m=c+_;const x=G(d,m,P,f,l.isLeaf);if(c-x<0)continue;m-=x;const S=D(d,m,P,f,l.isLeaf);if(u>S*S)continue;const z=(c-x)*y,b=e=>{e.point=$(l,h,e.point),e.dist=z,e.normal=o,e.node=l,e.pointId=h,e.layerUid=this.layerUid};if((null==j.dist||zA.dist)&&(null==i||i(t,s,z))&&b(A),2===e.options.store&&(null==i||i(t,s,z))){const e=new q;b(e),C.push(e)}}}));const I=e=>{const{layerUid:i,node:t,pointId:s}=e;return{type:\"external\",point:e.point,metadata:{layerUid:i,createGraphic:()=>this._params.createGraphic(t,s,e.point)}}},N=(e,i)=>{const t=I(i),s=`${i.layerUid}/${i.node.id}/${i.pointId}`;e.set(t,s,i.dist,i.normal,l,void 0),e.intersector=\"PointRenderer\"};if(null!=j.dist){const i=e.results.min;(null==i.dist||j.disti.dist)&&N(i,A)}if(2===e.options.store){const i=M(t,s);for(const t of C){const s=new E(i);N(s,t),e.results.all.push(s)}}}render(e){if(0!==e.pass&&2!==e.pass&&5!==e.pass)return!1;const i=2===e.pass,t=e.rctx;this.nodes.forAll((i=>{null==i.vao&&this._initNode(e,i)}));const s=this._getSizeParams(),r=this.selectTechnique(e,s),h=r.program;if(null==h||0===this.nodes.length)return!0;const l=this._clipBox,c=!y(l,P,((e,i)=>e===i));c||(f(this.tempVec3,-1/0,-1/0,-1/0),h.setUniform3fv(\"uClipMin\",this.tempVec3),f(this.tempVec3,1/0,1/0,1/0),h.setUniform3fv(\"uClipMax\",this.tempVec3)),t.useProgram(h),r.bindPipelineState(t),h.setUniformMatrix4fv(\"uProjectionMatrix\",e.camera.projectionMatrix),i&&h.setUniform2f(\"nearFar\",e.camera.near,e.camera.far),e.isHighlightPass&&(this._bindParameters.inverseViewport[0]=1/e.camera.fullViewport[2],this._bindParameters.inverseViewport[1]=1/e.camera.fullViewport[3],this._bindParameters.highlightDepthTexture=e.highlightDepthTexture,C(h,this._bindParameters));const d=e.camera.pixelRatio;s.drawFixedSize&&h.setUniform2f(\"uPointScale\",s.fixedSize*d,e.camera.fullHeight);const u=this._slicePlaneEnabled?e.sliceHelper&&e.sliceHelper.plane:null;return this.nodes.forAll((i=>{if(0===i.coordinates.length||e.isHighlightPass&&!i.highlights)return;if(h.setUniform2f(\"uScreenMinMaxSize\",s.screenMinSize*d,W(i.isLeaf)*d),!s.drawFixedSize){const t=i.splatSize*this._scaleFactor;h.setUniform2f(\"uPointScale\",t*d,e.camera.fullHeight/d)}const m=i.origin;c&&(f(this.tempVec3,l[0]-m[0],l[1]-m[1],l[2]-m[2]),h.setUniform3fv(\"uClipMin\",this.tempVec3),f(this.tempVec3,l[3]-m[0],l[4]-m[1],l[5]-m[2]),h.setUniform3fv(\"uClipMax\",this.tempVec3)),n(this.tempMatrix4),o(this.tempMatrix4,this.tempMatrix4,m),a(this.tempMatrix4,e.camera.viewMatrix,this.tempMatrix4),h.setUniformMatrix4fv(\"uModelViewMatrix\",this.tempMatrix4),A(h,r.configuration,u,m),t.bindVAO(i.vao),e.isHighlightPass?this._renderHighlightFragments(t,i):t.drawArrays(0,0,i.coordinates.length/3)})),!0}_renderHighlightFragments(t,s){const r=s.highlights;if(e(r))return;let n=i(r[0].component),o=n+1;for(let e=1;e0&&t.drawArrays(0,n,e),n=s}o=s+1}const a=o-n;a>0&&t.drawArrays(0,n,a)}set useFixedSizes(e){this._useFixedSizes!==e&&(this._useFixedSizes=e,this._requestRender())}get useFixedSizes(){return this._useFixedSizes}set scaleFactor(e){this._scaleFactor!==e&&(this._scaleFactor=e,this._requestRender())}get scaleFactor(){return this._scaleFactor}set minSizePx(e){this._minSizePx!==e&&(this._minSizePx=e,this._requestRender())}get minSizePx(){return this._minSizePx}set useRealWorldSymbolSizes(e){this._useRealWorldSymbolSizes!==e&&(this._useRealWorldSymbolSizes=e,this._requestRender())}get useRealWorldSymbolSizes(){return this._useRealWorldSymbolSizes}set size(e){this._size!==e&&(this._size=e,this._requestRender())}get size(){return this._size}set sizePx(e){this._sizePx!==e&&(this._sizePx=e,this._requestRender())}get sizePx(){return this._sizePx}set clippingBox(e){q(this._clipBox,e||P)}get slicePlane(){return this._slicePlaneEnabled}set slicePlane(e){this._slicePlaneEnabled!==e&&(this._slicePlaneEnabled=e,this._requestRender())}get intersectionHandlerId(){return this.layerUid}addNode(e){this.nodes.push(e),this._highlights.nodeAdded(e),this._requestRender()}removeNode(e){let i=null;return this.nodes.filterInPlace((s=>s.id!==e||(i=s,s.vao=t(s.vao),this._highlights.nodeRemoved(s),!1))),this._requestRender(),i}forEachNode(e){this.nodes.forAll(e)}removeAll(){this.nodes.forAll((e=>e.vao=t(e.vao))),this._highlights.removeAll(),this.nodes.clear(),this._requestRender()}highlight(e){return this._highlights.add(e)}addHighlight(e,i,t){e.highlights=K(e.highlights,i,t),this._requestRender()}removeHighlight(e,i){e.highlights=Q(e.highlights,i),this._requestRender()}_initNode(e,i){const t=e.rctx;i.vao=new O(t,B,k,{positions:N.createVertex(t,35044,i.coordinates),colors:N.createVertex(t,35044,i.rgb)})}_requestRender(){this._context&&this._context.requestRender()}_getSizeParams(){const e=this._useFixedSizes,i=e&&!this._useRealWorldSymbolSizes;return{drawScreenSpace:i,drawFixedSize:e,fixedSize:i?this._sizePx:this._size,screenMinSize:e?0:this._minSizePx}}selectTechnique(e,i){return this._techniqueConfig.drawScreenSize=i.drawScreenSpace,this._techniqueConfig.slicePlaneEnabled=this._slicePlaneEnabled,this._techniqueConfig.sceneHasOcludees=e.hasOccludees,this._techniqueConfig.output=2===e.pass?1:5===e.pass?4:0,this._techniqueRep.releaseAndAcquire(I,this._techniqueConfig,this._technique)}}function W(e){return e?256:64}function D(e,i,t,s,r){if(t.drawScreenSpace)return t.fixedSize*i*s;const n=W(r)*i*s;return t.drawFixedSize?Math.min(t.fixedSize/2,n):t.screenMinSize>0?Math.min(Math.max(t.screenMinSize*i*s,e/2),n):Math.min(e/2,n)}function G(e,i,t,s,r){return t.drawScreenSpace?0:D(e,i,t,s,r)}function $(e,i,t){return null==t&&(t=x()),t[0]=e.origin[0]+e.coordinates[3*i],t[1]=e.origin[1]+e.coordinates[3*i+1],t[2]=e.origin[2]+e.coordinates[3*i+2],t}function J(e){return s(e.component)?e.component:-1}function K(i,t,s){e(i)&&(i=[]);const r={component:t,id:s};i.push(r);const n=J(r);let o=i.length-1;for(;o>0&&ne.id!==t));return 0===s.length?null:s}!function(e){function i(e){return e.hasOwnProperty(\"splatSize\")}e.isInstanceOfNode=i}(T||(T={}));export{T as PointRenderer};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../chunks/tslib.es6.js\";import{result as t,forEach as i}from\"../../../core/asyncUtils.js\";import r from\"../../../core/Collection.js\";import s from\"../../../core/Logger.js\";import{unwrapOr as o,isSome as n,isNone as a,mapSome as d}from\"../../../core/maybe.js\";import{createAbortController as l,eachAlways as h,isAbortError as u,eachAlwaysValues as p,throwIfAborted as c}from\"../../../core/promiseUtils.js\";import{pt2px as _}from\"../../../core/screenUtils.js\";import{estimateSize as m,isArrayBuffer as g}from\"../../../core/typedArrayUtil.js\";import{getMetersPerVerticalUnitForSR as f}from\"../../../core/unitUtils.js\";import{property as y}from\"../../../core/accessorSupport/decorators/property.js\";import\"../../../core/has.js\";import\"../../../core/accessorSupport/ensureType.js\";import{subclass as b}from\"../../../core/accessorSupport/decorators/subclass.js\";import{d as w}from\"../../../chunks/vec3.js\";import{a as N}from\"../../../chunks/vec3f32.js\";import{projectBoundingRect as x}from\"../../../geometry/projection.js\";import{create as P}from\"../../../geometry/support/aaBoundingBox.js\";import{containsPoint as v,create as C}from\"../../../geometry/support/aaBoundingRect.js\";import{create as S,fromNormalAndOffset as I}from\"../../../geometry/support/plane.js\";import{makeDehydratedPoint as A}from\"../../../layers/graphics/dehydratedFeatures.js\";import k from\"../../../layers/support/CodedValue.js\";import V from\"../../../layers/support/CodedValueDomain.js\";import\"../../../layers/support/Domain.js\";import\"../../../layers/support/InheritedDomain.js\";import\"../../../layers/support/RangeDomain.js\";import{unpackFieldNames as R}from\"../../../layers/support/fieldUtils.js\";import L from\"../../../layers/support/PromiseQueue.js\";import{getMetersPerUnit as j}from\"../../../symbols/support/unitConversionUtils.js\";import{LayerView3D as Q}from\"./LayerView3D.js\";import{PointCloudWorkerHandle as U}from\"./PointCloudWorkerHandle.js\";import{checkPointCloudLayerValid as D,checkPointCloudLayerCompatibleWithView as F}from\"./i3s/I3SUtil.js\";import{nodeDiff as z,sortFrontToBack as M,splitWorkEntries as W}from\"./i3s/LoDUtil.js\";import O from\"./i3s/PagedNodeIndex.js\";import{getSplatSizeAlgorithm as E,getFixedSizeAlgorithm as H,getRendererInfo as B,getFilterInfo as G,rendererUsesFixedSizes as q,getAttributeInfo as T}from\"./i3s/PointCloudRendererUtil.js\";import{getAttributeValues as $,readGeometry as J,elevationFromPositions as K}from\"./i3s/PointCloudWorkerUtil.js\";import{PointGraphic as Y}from\"./i3s/PointGraphic.js\";import{PointRenderer as X}from\"./i3s/PointRenderer.js\";import{PopupSceneLayerView as Z}from\"./support/PopupSceneLayerView.js\";import{projectToBoundingBox as ee}from\"../support/extentUtils.js\";import{minimumDistancePlane as te}from\"../support/orientedBoundingBox.js\";import{updatingProgress as ie}from\"../support/updatingProperties.js\";import re from\"../../layers/LayerView.js\";import{extractSafeScaleBounds as se,scaleBoundsPredicate as oe}from\"../../support/layerViewUtils.js\";import{TaskPriority as ne}from\"../../support/Scheduler.js\";const ae=s.getLogger(\"esri.views.3d.layers.PointCloudLayerView3D\"),de=8,le=S();let he=class extends(Z(Q(re))){constructor(){super(...arguments),this.type=\"point-cloud-3d\",this.maximumPointCount=4e6,this.slicePlaneEnabled=!1,this._renderer=null,this._rendererAdded=!1,this._renderedNodes=new Set,this._nodeScales=new Map,this._updateViewNeeded=!0,this._lodFactor=1,this._maxLoggedBoxWarnings=5,this._pageMultiplier=1,this._nodeLoadEpoch=0,this._indexQueue=[],this._workQueue=new Array,this._idleQueue=new L,this._indexPagesLoading=new Map,this._loadingNodes=new Map,this._recalcWork=!0,this._layerIsVisible=!1,this._codedDomainPopulationPromise=null,this._codedDomainPopulationAbortController=null,this._totalWork=0,this._index=null,this._loadingInitNodePage=!1,this._nodeIdArray=[]}get pointScale(){const e=E(this.layer&&this.layer.renderer),t=1;return e&&null!=e.scaleFactor?e.scaleFactor:t}get useRealWorldSymbolSizes(){const e=H(this.layer&&this.layer.renderer),t=!1;return e&&null!=e.useRealWorldSymbolSizes?e.useRealWorldSymbolSizes:t}get pointSize(){const e=H(this.layer&&this.layer.renderer),t=0;return e&&null!=e.size?e.size:t}get inverseDensity(){const e=96;return this.layer&&this.layer.renderer?1*e/this.layer.renderer.pointsPerInch:5}get availableFields(){const e=B(this.layer),t=new Set;e.primaryAttribute&&t.add(e.primaryAttribute.name),e.modulationAttribute&&t.add(e.primaryAttribute.name);const i=G(this.layer);if(i)for(const r of i)t.add(r.attributeInfo.name);if(this.layer.outFields)for(const r of R(this.layer.fieldsIndex,this.layer.outFields))t.add(r);return Array.from(t)}get _clippingBox(){if(!this.view||!this.view.clippingArea)return null;const e=P(),t=this.view.renderSpatialReference;return ee(this.view.clippingArea,e,t)?e:null}get _elevationOffset(){const e=this.layer&&this.layer.elevationInfo;if(e&&\"absolute-height\"===e.mode){const t=f(this.layer.spatialReference),i=j(e.unit);return o(e.offset,0)*i/t}return 0}initialize(){const e=this.view.resourceController;this._worker=new U((t=>e.schedule(t))),this.addResolvingPromise(this._worker.promise),this._tmpPoint=A(0,0,0,this.layer.spatialReference),D(this.layer),F(this.layer,this.view),this._indexRequester=e.createStreamDataRequester(2),this._dataRequester=e.createStreamDataRequester(3),this._initRenderer();const t=this._initNodePages(),i=this.view.resourceController.memoryController;this._memCache=i.getMemCache(this.layer.uid),this.updatingHandles.add(this,\"_clippingBox\",(()=>this._setUpdateViewNeeded()),2),this.updatingHandles.add(this,\"_elevationOffset\",(()=>this._elevationOffsetChanged()),2),this.updatingHandles.add(this.layer,\"renderer\",(()=>this._rendererChanged()),2),this.updatingHandles.add(this.layer,\"filters\",(()=>this._reload()),2),this.updatingHandles.add(this.layer,\"outFields\",(()=>this._reload()),2),this.updatingHandles.add(this.layer,\"scaleRangeId\",(()=>this._setUpdateViewNeeded())),this.updatingHandles.add(this,\"clippingArea\",(()=>this._setUpdateViewNeeded()),2),this.updatingHandles.add(this.view.state,\"contentCamera\",(()=>this._setUpdateViewNeeded())),this.handles.add([this.view.basemapTerrain.on(\"scale-change\",(e=>this._scaleUpdateHandler(e))),i.events.on(\"quality-changed\",(()=>this._setUpdateViewNeeded()))]),this.addResolvingPromise(t),this.when((()=>{this.handles.add([e.scheduler.registerTask(ne.POINT_CLOUD_LAYER,this),e.scheduler.registerIdleStateCallbacks((()=>this._idleBegin()),(()=>this._idleEnd())),this.updatingHandles.add(this,\"suspended\",(e=>{e?this._clearNodeState():this._setUpdateViewNeeded()}),2)])}),(()=>{this.updatingHandles.removeAll(),this.handles.removeAll()}))}_setUpdateViewNeeded(){this._updateViewNeeded=!0,this._updateLoading()}destroy(){this.cancelLoading(),this._worker&&(this._worker.destroy(),this._worker=null),this._destroyRenderer(),this._memCache.destroy(),this._memCache=null,this._codedDomainPopulationAbortController&&(this._codedDomainPopulationAbortController.abort(),this._codedDomainPopulationAbortController=null),this._codedDomainPopulationPromise=null}_initRenderer(){this._renderer=new X({createGraphic:(e,t,i)=>this._createGraphic(e,t,i)}),this._renderer.layerUid=this.layer.uid,this.updatingHandles.add(this,\"_clippingBox\",(e=>this._renderer.clippingBox=e),2),this.updatingHandles.add(this,\"suspended\",(e=>this._setPointsVisible(!e)),2),this.updatingHandles.add(this,\"pointScale\",(e=>this._renderer.scaleFactor=e),2),this._renderer.minSizePx=Math.sqrt(2),this.updatingHandles.add(this,\"useRealWorldSymbolSizes\",(e=>this._renderer.useRealWorldSymbolSizes=e),2),this.updatingHandles.add(this,\"pointSize\",(e=>{const t=_(e);this._renderer.size=e,this._renderer.sizePx=t}),2),this.updatingHandles.add(this,\"slicePlaneEnabled\",(e=>this._renderer.slicePlane=e),2),this.updatingHandles.add(this,\"inverseDensity\",(()=>this._setUpdateViewNeeded()),2),this.updatingHandles.add(this,\"maximumPointCount\",(()=>this._setUpdateViewNeeded()),2),this.updatingHandles.add(this.view,\"qualitySettings.sceneService.pointCloud.lodFactor\",(e=>{this._lodFactor=e,this._setUpdateViewNeeded()}),2)}_destroyRenderer(){this._renderer.removeAll(),this._setPointsVisible(!1)}_createGraphic(e,t,i){const r=n(e.pointIdFilterMap)?e.pointIdFilterMap[t]:t,s=this.view.computeMapPointFromVec3d(i),o=this._createGraphicAttributes(e,r);return new Y({pointCloudMetadata:{nodeId:e.id,pointIndexInNode:t,attributePointIndexInNode:r,epoch:this._nodeLoadEpoch},geometry:s,attributes:o,layer:this.layer,sourceLayer:this.layer})}_createGraphicAttributes(e,t){const i={};for(const r of e.attributes)this._encodeGraphicAttribute(r.attributeInfo,r.values,t,i);return i}_encodeGraphicAttribute(e,t,i,r){const s=e.storageInfo&&e.storageInfo.attributeValues,o=s?s.valuesPerElement:1;if(1===o)r[e.name]=t[i];else if(\"UInt8\"===s.valueType&&o<=4){let s=0;const n=i*o;for(let e=n;e{if(!this._renderedNodes.has(i))return void this._nodeScales.delete(i);const r=this._index.getNode(i);v(pe,r.obb.center)&&this._nodeScales.set(i,e.scale)})),this._setUpdateViewNeeded()):this._nodeScales.clear()}displayNodes(e){this._workQueue=z([...this._renderedNodes],e,this._index),M(this._workQueue,this.view.state.contentCamera.viewForward,this._index),W(this._workQueue,de,this._index),this._updateQueues(),this._totalWork=this._computeWork(),this._updateLoading(),this._layerIsVisible=e.length>0||this._loadingInitNodePage,this.notifyChange(\"suspended\")}cancelLoading(){this._cancelNodeLoading(),this._cancelIndexLoading()}_cancelNodeLoading(){const e=new Array;this._loadingNodes.forEach((({abortController:t})=>e.push(t))),this._loadingNodes.clear();for(const t of e)t.abort();this._workQueue=[],this._idleQueue.cancelAll(),this._totalWork=this._computeWork(),this._updateLoading()}_updateQueues(){const e=new Set;this._workQueue.forEach((t=>t.load.forEach((t=>e.add(t)))));const t=new Array,i=new Map;this._loadingNodes.forEach(((r,s)=>{e.has(s)?i.set(s,r):t.push(r)})),this._loadingNodes=i;for(const{abortController:r}of t)r.abort();this._workQueue=this._workQueue.filter((e=>{for(const t of e.load)if(this._loadingNodes.has(t))return this._recalcWork=!0,!1;return!0})),this._totalWork=this._computeWork(),this._updateLoading()}_cancelIndexLoading(){this._indexQueue=[],this._indexPagesLoading.forEach((({abortController:e})=>e.abort())),this._indexPagesLoading.clear(),this._totalWork=this._computeWork(),this._updateLoading()}_clearNodeState(){this._nodeLoadEpoch++,this._renderedNodes.forEach((e=>this._removeFromRenderer(e))),this._cancelNodeLoading()}_idleBegin(){this._setUpdateViewNeeded()}_idleEnd(){this._setUpdateViewNeeded()}get running(){return this.suspended?this._updateViewNeeded:this._updateViewNeeded||this._indexQueue.length>0||this._workQueue.length>0||this._idleQueue.length>0}runTask(e){if(this.suspended){if(this._updateViewNeeded){this._updateViewNeeded=!1;const e=this._isRootNodeVisible();e!==this._layerIsVisible&&(this._layerIsVisible=e,this.notifyChange(\"suspended\")),this._updateLoading()}}else{for(e.run((()=>this._updateWorkQueues()));this._indexQueue.length>0&&e.run((()=>this._processIndexQueue())););for(this._processWorkQueue(e);this._idleQueue.length>0&&e.run((()=>this._idleQueue.process())););}}_processIndexQueue(){const e=this._indexQueue.shift(),t=this._loadNodePage(e);return this._indexPagesLoading.set(e,t),t.promise.then((t=>{this._index.addPage(e,t,this._elevationOffset),this._setUpdateViewNeeded()})).then((()=>{this._indexPagesLoading.delete(e)}),(()=>{this._indexPagesLoading.delete(e)})),!0}_processWorkQueue(e){for(;!e.done;){const t=this._scheduleWorkEntry();if(a(t))return;this._processWorkEntry(t),e.madeProgress()}}_scheduleWorkEntry(){let e=this._workQueue.length;for(;e--;){const e=this._workQueue.shift();if(!e.remove.find((e=>!this._renderedNodes.has(e))))return e;this._workQueue.push(e)}return null}_processWorkEntry(e){if(0!==e.load.length)Promise.all(e.load.map((e=>{const t=l(),i=this._memCache.pop(e.toString());return n(i)?this._loadingNodes.set(e,{abortController:t,promise:Promise.resolve(i)}):this._loadingNodes.has(e)||this._loadingNodes.set(e,{abortController:t,promise:this.loadNode(e,t.signal)}),this._loadingNodes.get(e).promise}))).then((t=>{for(let i=0;i{})).then((()=>{for(const t of e.load)this._loadingNodes.delete(t);this._updateLoading(),this._recalcWork&&0===this._idleQueue.length&&0===this._indexQueue.length&&0===this._loadingNodes.size&&(this._recalcWork=!1,this._setUpdateViewNeeded())})),this._updateLoading();else for(const t of e.remove)this._removeFromRenderer(t)}async populateClassCodeCodedDomain(e,i){const r=\"CLASS_CODE\",s=this.layer.fieldsIndex.get(r);if(!s||s.domain)return;if(-1===e.indexOf(s.name))return;const o=await t(this.layer.queryCachedStatistics(r,{signal:i}));if(!1===o.ok)return;const n=o.value,a=n&&n.labels&&n.labels.labels;a&&Array.isArray(a)&&(s.domain=new V({name:\"CLASS_CODE\",codedValues:a.map((e=>new k({code:e.value,name:e.label})))}))}async prepareFetchPopupFeatures(e){return this._codedDomainPopulationPromise||(this._codedDomainPopulationAbortController=l(),this._codedDomainPopulationPromise=this.populateClassCodeCodedDomain(e,this._codedDomainPopulationAbortController.signal).then((()=>{this._codedDomainPopulationAbortController=null}))),this._codedDomainPopulationPromise}async whenGraphicAttributes(e,t){const r=this._splitGraphicsPerNode(e),s=this.layer.attributeStorageInfo,o=t.map((e=>T(s,e))),n=async(e,t)=>{const r=this._index.getNode(t);await i(o,(async t=>{const i=t.useElevation?await this._loadElevationAttributeFromGeometry(r.resourceId):await this._loadAndParseAttribute(r,t);if(i)for(const r of e)if(this._isValidPointGraphic(r)){const e=r.pointCloudMetadata.attributePointIndexInNode;this._encodeGraphicAttribute(t,i,e,r.attributes)}}))},a=[];return r.forEach(((e,t)=>{a.push(n(e,t))})),await h(a),e}_isValidPointGraphic(e){return e instanceof Y&&e.pointCloudMetadata&&e.pointCloudMetadata.epoch===this._nodeLoadEpoch}_splitGraphicsPerNode(e){const t=new Map;for(const i of e){if(!this._isValidPointGraphic(i))continue;const e=i.pointCloudMetadata,r=t.get(e.nodeId);r?r.push(i):t.set(e.nodeId,[i])}return t}async _loadAndParseAttribute(e,t){const i=await this._loadAttribute(e.resourceId,t,null);return n(i)?$({attributeInfo:t,buffer:i},null,e.vertexCount):null}async _loadElevationAttributeFromGeometry(e){const t=this.layer.store.defaultGeometrySchema,i=J(t,await this._loadGeometry(e,null));return K(i,i.length/3)}highlight(e){if(!e)return{remove(){}};const t=r.isCollection(e)?e.toArray():Array.isArray(e)?e:[e];return this._renderer.highlight(t.map((e=>this._graphicToPointDefinition(e))))}_graphicToPointDefinition(e){if(!this._isValidPointGraphic(e))return null;const{nodeId:t,pointIndexInNode:i}=e.pointCloudMetadata;return null!=t&&null!=i?{nodeId:t,pointId:i}:null}_computeWork(){let e=0;for(const t of this._workQueue)e+=t.load.length+t.remove.length;return e+=this._loadingNodes.size,e+=(this._indexQueue.length+this._indexPagesLoading.size)*this._index.pageSize,e+=this._loadingInitNodePage?100:0,e+=this._updateViewNeeded?100:0,e}get updatingProgressValue(){if(this.suspended)return this._updateViewNeeded?0:1;const e=this._computeWork();return 1-Math.min(this._totalWork,e)/this._totalWork}_updateLoading(){this.notifyChange(\"updating\"),this.notifyChange(\"updatingProgressValue\")}canResume(){return super.canResume()&&this._layerIsVisible}isUpdating(){return this.suspended?this._updateViewNeeded:this._computeWork()>0}_initNodePages(){const e=this.layer.store.index,t=e.nodesPerPage||e.nodePerIndexBlock;return this._index=new O(this.layer.spatialReference,this.view.renderCoordsHelper.spatialReference,t),this._cancelIndexLoading(),this._traverseVisible=this._index.createVisibilityTraverse(),this._loadingInitNodePage=!0,this._layerIsVisible=!0,this.notifyChange(\"suspended\"),this._updateLoading(),this._pageMultiplier=null!=e.nodesPerPage?1:e.nodePerIndexBlock,this._loadNodePage(0).promise.then((e=>{this._index.addPage(0,e,this._elevationOffset),this._loadingInitNodePage=!1,this._setUpdateViewNeeded()}))}_loadNodePage(e){const t=l(),i=`${this.baseUrl}/nodepages/${e*this._pageMultiplier}`;return{promise:this._requestNodePage(i,t.signal).then((t=>t.nodes.map(((t,i)=>({resourceId:null!=t.resourceId?t.resourceId:e*this._index.pageSize+i,obb:t.obb,firstChild:t.firstChild,childCount:t.childCount,vertexCount:null!=t.vertexCount?t.vertexCount:t.pointCount,lodThreshold:null!=t.lodThreshold?t.lodThreshold:t.effectiveArea}))))),abortController:t}}_updateWorkQueues(){if(!this._updateViewNeeded)return!1;let e=this.inverseDensity/this._lodFactor*this._getLodMemoryFactor();const t=this.maximumPointCount*this._lodFactor*this._getLodMemoryFactor();let i=this._computeNodesForMinimumDensity(e),r=this._computePointCount(i),s=Math.sqrt(r/(.75*t));for(;r>t;)e*=s,i=this._computeNodesForMinimumDensity(e),r=this._computePointCount(i),s=Math.sqrt(2);return this.displayNodes(i),this._updateViewNeeded=!1,this._updateLoading(),!0}_computePointCount(e){let t=0;for(let i=0;i(e=r,!1),pageMiss:()=>{}}),e}_computeNodesForMinimumDensity(e){const t=this.view.state.contentCamera,i=t.frustum,r=this._clippingBox,s=t.viewForward,o=w(s,t.eye),n=I(s,-o,le),a=t.perScreenPixelRatio/2,d=e*e,l=this._nodeIdArray;l.length=0;const{minScale:h,maxScale:u}=se(this.layer),p=0===h&&0===u?e=>l.push(e):e=>{const t=this._getScale(e);oe(t,h,u)&&l.push(e)};return this._traverseVisible({frustum:i,clippingBox:r},{predicate:(e,t,i)=>{if(!i)return!1;if(0===t.childCount)return p(e),!1;const r=this._index.getRenderObb(e);return!(this._computeAveragePixelArea(r,t.lodThreshold,t.vertexCount,n,a)<=d)||(p(e),!1)},pageMiss:(e,t)=>{p(e),this._indexQueue.indexOf(t)<0&&this._indexQueue.push(t)}}),l}_getScale(e){let t=this._nodeScales.get(e);if(null==t){const i=this._index.getNode(e).obb.center;this._tmpPoint.x=i[0],this._tmpPoint.y=i[1],this._tmpPoint.z=i[2],t=this.view.basemapTerrain.getScale(this._tmpPoint),this._nodeScales.set(e,t)}return t}_computeAveragePixelArea(e,t,i,r,s){const o=1e-7,n=Math.max(o,te(e,r));return t/(n*n)/(4*s*s)/i}loadNode(e,t){try{return this.loadNodeAsync(e,t)}catch(i){throw u(i)||ae.error(i),i}}async loadAdditionalUserAttributes(e,t,i){const r=this.layer.outFields;if(!r)return[];const s=R(this.layer.fieldsIndex,r),o=new Set(e.map((e=>n(e)?e.name:null))),a=this.layer.attributeStorageInfo,l=[];for(const n of s){if(o.has(n))continue;const e=T(a,n);e&&l.push(t(e))}const h=await p(l);return c(i),d(h,(e=>e))}async loadNodeAsync(e,t){const i=this._index.getNode(e),r=B(this.layer),s=G(this.layer),o=i.resourceId,d=async e=>{if(a(e))return null;if(e.useElevation)return{attributeInfo:e,buffer:null};const i=await this._loadAttribute(o,e,t);return n(i)?{attributeInfo:e,buffer:i}:null};return this._idleQueue.push((async()=>{const i=this._loadGeometry(o,t),{primaryAttribute:n,modulationAttribute:a}=r,l=d(n),h=d(a),u=s.map((e=>e.attributeInfo)),p=u.map((e=>d(e))),_=this.loadAdditionalUserAttributes([n,a,...u],d,t),[m,g,f,y,b]=await Promise.all([i,l,h,Promise.all(p),_]);c(t);const w={geometryBuffer:m,primaryAttributeData:g,modulationAttributeData:f,filterAttributesData:y,userAttributesData:b,schema:this.layer.store.defaultGeometrySchema,rendererInfo:r,filterInfo:s,obb:this._index.getRenderObb(e),elevationOffset:this._elevationOffset,inSR:this.layer.spatialReference.toJSON(),outSR:this.view.renderCoordsHelper.spatialReference.toJSON()};return this._worker.invoke(w,t)}),t)}async _loadGeometry(e,t){return this._requestData(`${this.baseUrl}/nodes/${e}/geometries/0`,t)}async _loadAttribute(e,t,i){if(a(t)||!t.storageInfo)return null;const r=t.storageInfo.key;return this._requestData(`${this.baseUrl}/nodes/${e}/attributes/${r}`,i)}_requestNodePage(e,t){const i={f:\"json\",token:this.layer.apiKey};return this._indexRequester.request(e,\"json\",{query:i,signal:t})}_requestData(e,t){return this._dataRequester.request(e,\"binary\",{query:{token:this.layer.apiKey},signal:t})}_removeFromRenderer(e){if(this._renderedNodes.has(e)){const t=this._renderer.removeNode(e);this._renderedNodes.delete(e),this._nodeScales.delete(e),this._memCache.put(t.id.toString(),t,ue(t))}}_addToRenderer(e){this._renderedNodes.has(e.id)||(this._renderedNodes.add(e.id),this._renderer.addNode(e))}_setupRendererData(e,t){const i=this._index.getNode(e),r=Math.sqrt(i.lodThreshold/i.vertexCount),s=this._index.getRenderObb(e);if(X.isInstanceOfNode(t))return t.splatSize=r,t.obb=s,t.origin=N(t.obb.center),t;const o=.01*Math.max(s.halfSize[0],s.halfSize[1],s.halfSize[2]);if(t.obb.halfSize[0]>s.halfSize[0]+o||t.obb.halfSize[1]>s.halfSize[1]+o||t.obb.halfSize[2]>s.halfSize[2]+o){if(this._maxLoggedBoxWarnings>0){const i=e=>`[${e.halfSize[0]}, ${e.halfSize[1]}, ${e.halfSize[2]}]`;ae.warn(`Node ${e} reported bounding box too small. got ${i(s)} but points cover ${i(t.obb)}`),0==--this._maxLoggedBoxWarnings&&ae.warn(\" Too many bounding box errors, stopping reporting for this layer.\")}this._index.setRenderObb(e,t.obb)}return{id:e,coordinates:t.points,origin:N(s.center),rgb:t.rgb,attributes:t.attributes,pointIdFilterMap:t.pointIdFilterMap,highlights:null,splatSize:r,obb:s,isLeaf:0===i.childCount}}getUsedMemory(){let e=0;return this._renderer.forEachNode((t=>{e+=ce,e+=m(t.coordinates);for(const i of t.attributes){const t=i.values;g(t.buffer)&&(e+=m(t))}})),e}getUnloadedMemory(){const e=this._renderedNodes.size;if(e<4)return 0;const t=[...this._renderedNodes].reduce(((e,t)=>e+this._index.getNode(t).vertexCount));let i=this._loadingNodes.size;for(let r=0;re+this._index.getNode(t).vertexCount),0),maximumNumberOfFeatures:this.maximumPointCount,totalNumberOfFeatures:-1,core:null,\"Loading Nodes\":this._loadingNodes.size,\"Index Queue\":this._indexQueue.length,\"Work Queue\":this._workQueue.length,\"Idle Queue\":this._idleQueue.length}}get test(){return{index:this._index,visibleNodes:this._renderedNodes}}};function ue(e){return 5*e.coordinates.length+128}e([y()],he.prototype,\"layer\",void 0),e([y({readOnly:!0,aliasOf:\"layer.parsedUrl.path\"})],he.prototype,\"baseUrl\",void 0),e([y({readOnly:!0})],he.prototype,\"pointScale\",null),e([y({readOnly:!0})],he.prototype,\"useRealWorldSymbolSizes\",null),e([y({readOnly:!0})],he.prototype,\"pointSize\",null),e([y({readOnly:!0})],he.prototype,\"inverseDensity\",null),e([y()],he.prototype,\"maximumPointCount\",void 0),e([y({readOnly:!0})],he.prototype,\"availableFields\",null),e([y({readOnly:!0})],he.prototype,\"_clippingBox\",null),e([y({readOnly:!0})],he.prototype,\"_elevationOffset\",null),e([y({type:Boolean})],he.prototype,\"slicePlaneEnabled\",void 0),e([y()],he.prototype,\"updating\",void 0),e([y(ie)],he.prototype,\"updatingProgress\",void 0),e([y({readOnly:!0})],he.prototype,\"updatingProgressValue\",null),he=e([b(\"esri.views.3d.layers.PointCloudLayerView3D\")],he);const pe=C(),ce=160;var _e=he;export{_e as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../core/maybe.js\";import{getFeatureEditFields as p,fixFields as l}from\"../../../layers/support/fieldUtils.js\";async function t(t,d=t.popupTemplate){if(!e(d))return[];const i=await d.getRequiredFields(t.fieldsIndex),{lastEditInfoEnabled:n}=d,{objectIdField:s,typeIdField:a,globalIdField:o,relationships:u}=t;if(i.includes(\"*\"))return[\"*\"];const f=n?await p(t):[],r=l(t.fieldsIndex,[...i,...f]);return a&&r.push(a),r&&s&&t.fieldsIndex.has(s)&&-1===r.indexOf(s)&&r.push(s),r&&o&&t.fieldsIndex.has(o)&&-1===r.indexOf(o)&&r.push(o),u&&u.forEach((e=>{const{keyField:p}=e;r&&p&&t.fieldsIndex.has(p)&&-1===r.indexOf(p)&&r.push(p)})),r}function d(p,l){return p.popupTemplate?p.popupTemplate:e(l)&&l.defaultPopupTemplateEnabled&&e(p.defaultPopupTemplate)?p.defaultPopupTemplate:null}export{d as getFetchPopupTemplate,t as getRequiredFields};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{Slice as e}from\"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js\";import{OutputHighlight as i}from\"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js\";import{RgbaFloatEncoding as o}from\"../views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js\";import{glsl as t}from\"../views/3d/webgl-engine/core/shaderModules/interfaces.js\";import{ShaderBuilder as a}from\"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js\";function r(r){const n=new a,d=0===r.output,c=1===r.output,s=4===r.output;return n.extensions.add(\"GL_OES_standard_derivatives\"),n.include(e,r),n.attributes.add(\"position\",\"vec3\"),n.attributes.add(\"color\",\"vec3\"),n.vertex.uniforms.add(\"uModelViewMatrix\",\"mat4\").add(\"uProjectionMatrix\",\"mat4\").add(\"uScreenMinMaxSize\",\"vec2\").add(\"uPointScale\",\"vec2\").add(\"uClipMin\",\"vec3\").add(\"uClipMax\",\"vec3\"),c?(n.vertex.uniforms.add(\"nearFar\",\"vec2\"),n.varyings.add(\"depth\",\"float\")):4!==r.output&&n.varyings.add(\"vColor\",\"vec3\"),n.vertex.code.add(t`\n void main(void) {\n // Move clipped points outside of clipspace\n if (position.x < uClipMin.x || position.y < uClipMin.y || position.z < uClipMin.z ||\n position.x > uClipMax.x || position.y > uClipMax.y || position.z > uClipMax.z) {\n gl_Position = vec4(0.0,0.0,0.0,2.0);\n gl_PointSize = 0.0;\n return;\n }\n\n if (rejectBySlice(position)) {\n gl_Position = vec4(0.0,0.0,0.0,2.0);\n gl_PointSize = 0.0;\n return;\n }\n\n // Position in camera space\n vec4 camera = uModelViewMatrix * vec4(position, 1.0);\n\n float pointSize = uPointScale.x;\n vec4 position = uProjectionMatrix * camera;\n ${r.drawScreenSize?t`\n float clampedScreenSize = pointSize;`:t`\n float pointRadius = 0.5 * pointSize;\n vec4 cameraOffset = camera + vec4(0.0, pointRadius, 0.0, 0.0);\n vec4 positionOffset = uProjectionMatrix * cameraOffset;\n float radius = abs(positionOffset.y - position.y);\n float viewHeight = uPointScale.y;\n // screen diameter = (2 * r / w) * (h / 2)\n float screenPointSize = (radius / position.w) * viewHeight;\n float clampedScreenSize = clamp(screenPointSize, uScreenMinMaxSize.x, uScreenMinMaxSize.y);\n // Shift towards camera, to move rendered point out of terrain i.e. to\n // the camera-facing end of the virtual point when considering it as a\n // 3D sphere.\n camera.xyz -= normalize(camera.xyz) * pointRadius * clampedScreenSize / screenPointSize;\n position = uProjectionMatrix * camera;`}\n\n gl_PointSize = clampedScreenSize;\n gl_Position = position;\n\n ${c?t`depth = (-camera.z - nearFar[0]) / (nearFar[1] - nearFar[0]);`:\"\"}\n ${d?t`vColor = color;`:\"\"}\n }\n `),n.fragment.include(o,r),s&&n.include(i),n.fragment.code.add(t`\n void main(void) {\n vec2 vOffset = gl_PointCoord - vec2(0.5, 0.5);\n float r2 = dot(vOffset, vOffset);\n\n if (r2 > 0.25) {\n discard;\n }\n ${c?t`gl_FragColor = float2rgba(depth);`:\"\"}\n ${s?t`outputHighlight();`:\"\"}\n ${d?t`gl_FragColor = vec4(vColor, 1.0);`:\"\"}\n }\n `),n}var n=Object.freeze({__proto__:null,build:r});export{n as P,r as b};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport e from\"../../../../request.js\";import{binaryIndexOf as t,flatten as r,splitIntoChunks as o}from\"../../../../core/arrayUtils.js\";import n from\"../../../../core/Error.js\";import a from\"../../../../core/has.js\";import{isSome as s,isNone as i}from\"../../../../core/maybe.js\";import{eachAlways as c}from\"../../../../core/promiseUtils.js\";import{isInt16Array as l,isInt32Array as u}from\"../../../../core/typedArrayUtil.js\";import{h as f}from\"../../../../chunks/mat3.js\";import{c as p}from\"../../../../chunks/mat3f64.js\";import{b as m}from\"../../../../chunks/mat4.js\";import{c as h}from\"../../../../chunks/mat4f64.js\";import{a as d,m as y,c as g}from\"../../../../chunks/quat.js\";import{b}from\"../../../../chunks/quatf32.js\";import{s as w,g as S,w as v,q as x,a as M,b as j,m as q}from\"../../../../chunks/vec3.js\";import{c as R}from\"../../../../chunks/vec3f64.js\";import{c as k}from\"../../../../chunks/vec4f64.js\";import{projectBoundingSphere as T,canProjectWithoutEngine as z,projectBuffer as F,computeTranslationToOriginAndRotation as A,projectVectorToVector as W}from\"../../../../geometry/projection.js\";import{getSphericalPCPF as I,getReferenceEllipsoid as C}from\"../../../../geometry/projectionEllipsoid.js\";import U from\"../../../../geometry/SpatialReference.js\";import{create as B}from\"../../../../geometry/support/aaBoundingBox.js\";import{create as K,empty as L,expandPointInPlace as G,intersects as E}from\"../../../../geometry/support/aaBoundingRect.js\";import{isPlateCarree as O}from\"../../../../geometry/support/spatialReferenceUtils.js\";import P from\"../../../../rest/support/Query.js\";import{readBinaryAttribute as $}from\"./I3SBinaryReader.js\";import{computeGlobalTransformation as Q}from\"./I3SProjectionUtil.js\";import{createSolidEdgeMaterial as Z,createMaterialFromEdges as D}from\"../support/edgeUtils.js\";import{parseColorMixMode as H}from\"../support/symbolColorUtils.js\";import{create as J,compute as N,corners as V}from\"../../support/orientedBoundingBox.js\";function X(e){return e&&parseInt(e.substring(e.lastIndexOf(\"/\")+1,e.length),10)}function Y(e){if(a(\"disable-feature:i3s-draco\")||!e)return!1;for(const r of e)for(const e of r.geometryBuffers){var t;if(\"draco\"===(null==(t=e.compressedAttributes)?void 0:t.encoding))return!0}return!1}function _(e,t,r,o,n,a){n.traverse(r,(r=>{let n=r.mbs;t!==o&&(n=ne,T(r.mbs,o,n,t));const s=ae(e,n);return 0!==s&&(a(r,s),!0)}))}function ee(e,t,r){let o=0,n=0;for(let a=0;a=0===r&&(o[a]=o[n],a++),n++}o.length=a}const re=B();function oe(e,t){if(0===t.rotationScale[1]&&0===t.rotationScale[2]&&0===t.rotationScale[3]&&0===t.rotationScale[5]&&0===t.rotationScale[6]&&0===t.rotationScale[7])return re[0]=(e[0]-t.position[0])/t.rotationScale[0],re[1]=(e[1]-t.position[1])/t.rotationScale[4],re[2]=(e[2]-t.position[2])/t.rotationScale[8],re[3]=(e[3]-t.position[0])/t.rotationScale[0],re[4]=(e[4]-t.position[1])/t.rotationScale[4],re[5]=(e[5]-t.position[2])/t.rotationScale[8],re}const ne=k();function ae(e,t){const r=t[0],o=t[1],n=t[3],a=e[0]-r,s=r-e[2],i=e[1]-o,c=o-e[3],l=Math.max(a,s,0),u=Math.max(i,c,0),f=l*l+u*u;if(f>n*n)return 0;if(f>0)return 1;return-Math.max(a,s,i,c)>n?3:2}function se(e,t){const r=t[0],o=t[1],n=t[2],a=t[3],s=e[0]-r,i=r-e[3],c=e[1]-o,l=o-e[4],u=e[2]-n,f=n-e[5],p=Math.max(s,i,0),m=Math.max(c,l,0),h=Math.max(u,f,0),d=p*p+m*m+h*h;if(d>a*a)return 0;if(d>0)return 1;return-Math.max(s,i,c,l,u,f)>a?3:2}function ie(e,t,r){const o=[],n=r&&r.missingFields,a=r&&r.originalFields;for(const s of e){const e=s.toLowerCase();let r=!1;for(const n of t)if(e===n.name.toLowerCase()){o.push(n.name),r=!0,a&&a.push(s);break}!r&&n&&n.push(s)}return o}async function ce(e,t,o,a,c){if(0===t.length)return[];const l=e.attributeStorageInfo;if(s(e.associatedLayer))try{return await ue(e.associatedLayer,t,o,a)}catch(u){if(e.associatedLayer.loaded)throw u}if(l){const s=le(t,o,c);if(i(s))throw new n(\"scenelayer:features-not-loaded\",\"Tried to query attributes for unloaded features\");const u=e.parsedUrl.path,f=await Promise.all(s.map((e=>pe(u,l,e.node,e.indices,a).then((t=>{for(let r=0;r=0){let e=o.get(r.node);e||(e={node:r.node,indices:[],graphics:[]},n.push(e),o.set(r.node,e)),e.indices.push(i),e.graphics.push(s);for(let r=t;r>0;r--)a[r]=a[r-1];a[0]=r;break}}}return n}async function ue(e,t,r,o){t.sort(((e,t)=>e.attributes[r]-t.attributes[r]));const n=t.map((e=>e.attributes[r])),a=[],s=ie(o,e.fields,{originalFields:a}),i=await fe(e,n,s);for(let c=0;cs){const n=o(t,s);return Promise.all(n.map((t=>fe(e,t,a)))).then(r)}const i=new P({objectIds:t,outFields:a,orderByFields:[e.objectIdField]});return e.queryFeatures(i).then((e=>{if(e&&e.features&&e.features.length===t.length)return e.features.map((e=>e.attributes));throw new n(\"scenelayer:feature-not-in-associated-layer\",\"Feature not found in associated feature layer\")}))}function pe(t,r,o,n,a){const s=[];for(const e of r)if(e&&-1!==a.indexOf(e.name)){const r=`${t}/nodes/${o.resources.attributes}/attributes/${e.key}/0`;s.push({url:r,storageInfo:e})}return c(s.map((t=>e(t.url,{responseType:\"array-buffer\"}).then((e=>$(t.storageInfo,e.data)))))).then((e=>{const t=[];for(const r of n){const o={};for(let t=0;t{if(!l)if(l=He,L(Ne),s(e.serviceObb)){Ue(e.serviceObb,r,Ve,t,n),V(Ve,l);for(const e of l)q(e,e,_e),G(Ne,e)}else{const o=e.mbs,a=o[3];W(o,r,Xe,t),q(Xe,Xe,_e),Xe[2]+=n;for(let e=0;e<8;++e){const t=1&e?a:-a,r=2&e?a:-a,o=4&e?a:-a,n=l[e];S(n,[Xe[0]+t,Xe[1]+r,Xe[2]+o]),G(Ne,n)}}};let f=1/0,p=-1/0;const h=e=>{if(\"replace\"!==e.type)return;const r=e.geometry;if(!r.hasZ)return;L(Je);const n=r.spatialReference||o,a=r.rings.reduce(((e,r)=>r.reduce(((e,r)=>(W(r,n,Xe,t),q(Xe,Xe,_e),G(Je,Xe),Math.min(Xe[2],e))),e)),1/0);u(),E(Ne,Je)&&(f=Math.min(f,a),p=Math.max(p,a))};if(a.forEach((e=>h(e))),f===1/0)return null;const d=(e,t,r)=>{q(Xe,r,c),e[t+0]=Xe[0],e[t+1]=Xe[1],e[t+2]=Xe[2],t+=24,r[2]=f,q(Xe,r,c),e[t+0]=Xe[0],e[t+1]=Xe[1],e[t+2]=Xe[2],t+=24,r[2]=p,q(Xe,r,c),e[t+0]=Xe[0],e[t+1]=Xe[1],e[t+2]=Xe[2]};for(let s=0;s<8;++s)d(Ye.data,3*s,l[s]);return N(Ye)}const Ze=h(),De=b(),He=[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]],Je=K(),Ne=K(),Ve=J(),Xe=[0,0,0],Ye={data:new Array(72),size:3},_e=h();export{We as SymbolInfo,Ce as addWraparound,ke as checkPointCloudLayerCompatibleWithView,Re as checkPointCloudLayerValid,je as checkSceneLayerCompatibleWithView,Me as checkSceneLayerValid,we as checkSpatialReference,ve as checkSpatialReferences,Qe as computeVisibilityObb,Y as containsDraco,X as extractWkid,ee as filterInPlace,ie as findFieldsCaseInsensitive,_ as findIntersectingNodes,be as getCacheKeySuffix,de as getCachedAttributeValue,oe as getClipAABB,ye as getIndexCrs,Ie as getSymbolInfo,ge as getVertexCrs,se as intersectBoundingBoxWithMbs,ae as intersectBoundingRectWithMbs,Se as isSupportedLocalModeProjection,te as objectIdFilter,Fe as rendererNeedsTextures,Ue as transformObb,Ae as transparentEdgeMaterial,ce as whenGraphicAttributes};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../chunks/tslib.es6.js\";import r from\"../../../../core/Error.js\";import{isSome as s}from\"../../../../core/maybe.js\";import\"../../../../core/accessorSupport/decorators/property.js\";import\"../../../../core/has.js\";import\"../../../../core/accessorSupport/ensureType.js\";import\"../../../../core/Logger.js\";import{subclass as t}from\"../../../../core/accessorSupport/decorators/subclass.js\";import{unpackFieldNames as o,populateMissingFields as p}from\"../../../../layers/support/fieldUtils.js\";import{getFetchPopupTemplate as a,getRequiredFields as i}from\"../../../layers/support/popupUtils.js\";const c=c=>{let u=class extends c{_validateFetchPopupFeatures(e){const{layer:s}=this,{popupEnabled:t}=s;if(!t)return new r(\"scenelayerview3d:fetchPopupFeatures\",\"Popups are disabled\",{layer:s});return a(s,e)?void 0:new r(\"scenelayerview3d:fetchPopupFeatures\",\"Layer does not define a popup template\",{layer:s})}async prepareFetchPopupFeatures(e){}async fetchPopupFeatures(e,r){const t=this._validateFetchPopupFeatures(r);if(t)return Promise.reject(t);const c=s(r)?r.clientGraphics:null;if(!c||0===c.length)return Promise.resolve([]);const u=[],n=[],l=\"scene\"===this.layer.type&&s(this.layer.associatedLayer)?this.layer.associatedLayer:this.layer,h=o(this.layer.fieldsIndex,await i(l,a(this.layer,r)));await this.prepareFetchPopupFeatures(h);const y=new Set;for(const s of c)p(h,s,y)?n.push(s):u.push(s);return 0===n.length?Promise.resolve(u):this.whenGraphicAttributes(n,[...y]).catch((()=>n)).then((e=>u.concat(e)))}};return u=e([t(\"esri.views.3d.layers.support.PopupSceneLayerView\")],u),u};export{c as PopupSceneLayerView};\n"],"sourceRoot":""}