@arcgis/core 5.2.0-next.29 → 5.2.0-next.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/assets/esri/core/t9n/Units_en.json +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/0af6b87a3d77bb93b893.js +1 -0
  4. package/assets/esri/core/workers/chunks/{7ff37a4f315f7621462b.js → 125edba5c618c6257cb8.js} +1 -1
  5. package/assets/esri/core/workers/chunks/{4ba4fd8fa31169760fee.js → 1282598516cd0e3056b7.js} +3 -3
  6. package/assets/esri/core/workers/chunks/414691f7758c78e2a704.js +1 -0
  7. package/assets/esri/core/workers/chunks/4452fd0c59431904d533.js +1 -0
  8. package/assets/esri/core/workers/chunks/451331f69d21c61ec93b.js +1 -0
  9. package/assets/esri/core/workers/chunks/{11f47a012dd8881e3d55.js → 4e803d12486c8de4c901.js} +23 -23
  10. package/assets/esri/core/workers/chunks/{992a90ecbab931198fd0.js → 4ecc345c3732f7fc130f.js} +1 -1
  11. package/assets/esri/core/workers/chunks/557300ec03bae84d8afc.js +1 -0
  12. package/assets/esri/core/workers/chunks/{b18b6bb85e52b03b85e3.js → 6df54132299b9e8f6dad.js} +18 -18
  13. package/assets/esri/core/workers/chunks/{c6f5688074ae89c37add.js → 7b1678dcf62481469544.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{a90619adff41658f8057.js → 8d21f3d6edbcd7b335d0.js} +1 -1
  15. package/assets/esri/core/workers/chunks/b1a0eb6598309e11337f.js +1 -0
  16. package/assets/esri/core/workers/chunks/bd0829eb79efff5b7223.js +1 -0
  17. package/assets/esri/core/workers/chunks/bee56a6ac99312f03109.js +1 -0
  18. package/assets/esri/core/workers/chunks/c7316fd2bdb7ac9eada3.js +1 -0
  19. package/assets/esri/core/workers/chunks/daf539e9f88fc9e101e4.js +1 -0
  20. package/assets/esri/core/workers/chunks/{9fe71d49c888fd871312.js → e2d500ac1a264d09c857.js} +1 -1
  21. package/assets/esri/core/workers/chunks/{aded4e704e09a28edc8f.js → f63e7b01c70352538b1e.js} +1 -1
  22. package/assets/esri/core/workers/chunks/f71f5778e03f68f27482.js +1 -0
  23. package/assets/esri/core/workers/chunks/fc9664d3282b052ef40f.js +1 -0
  24. package/assets/esri/widgets/Features/t9n/Features_en.json +1 -1
  25. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_en.json +1 -1
  26. package/chunks/CutFillComposition.glsl.js +16 -10
  27. package/chunks/CutFillDepth.glsl.js +1 -14
  28. package/chunks/HUDMaterial.glsl.js +7 -7
  29. package/chunks/Viewshed.glsl.js +3 -3
  30. package/config.js +1 -1
  31. package/core/PooledArray.js +1 -1
  32. package/geometry/support/lineSegment.js +1 -1
  33. package/geometry/support/triangle.js +1 -1
  34. package/kernel.js +1 -1
  35. package/layers/AnnotationFeatureLayer.js +1 -1
  36. package/layers/DimensionFeatureLayer.js +1 -1
  37. package/layers/knowledgeGraph/KnowledgeGraphSublayer.js +1 -1
  38. package/layers/knowledgeGraph/nodeMovementUtils.js +1 -1
  39. package/layers/mixins/ArcGISImageService.js +1 -1
  40. package/layers/raster/datasets/pixelReader.js +1 -1
  41. package/layers/support/ExportImageServiceParameters.js +1 -1
  42. package/package.json +1 -1
  43. package/support/revision.js +1 -1
  44. package/views/2d/engine/webgl/mesh/bufcut.js +1 -1
  45. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  46. package/views/2d/engine/webgl/util/AnnotationMatcher.js +1 -1
  47. package/views/2d/layers/features/layerAdapters/AnnotationLayerAdapter.js +1 -1
  48. package/views/2d/layers/features/layerAdapters/DimensionLayerAdapter.js +1 -1
  49. package/views/2d/layers/support/annodime/DimensionInfo.js +1 -1
  50. package/views/2d/layers/support/annodime/MatcherGeometryOverride.js +1 -1
  51. package/views/2d/layers/support/annodime/annotationGraphic.js +1 -1
  52. package/views/2d/layers/support/annodime/cimAnnotations.js +1 -1
  53. package/views/2d/layers/support/annodime/dimensionSymbols.js +1 -1
  54. package/views/2d/layers/support/annodime/dimensionUtils.js +1 -1
  55. package/views/2d/layers/support/annodime/fields.js +1 -1
  56. package/views/2d/layers/support/annodime/utils.js +1 -1
  57. package/views/2d/layers/support/annodime/virtualFields.js +1 -1
  58. package/views/3d/FocusAreasView.js +1 -1
  59. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
  60. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
  61. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  62. package/views/3d/support/hitTest.js +1 -1
  63. package/views/3d/webgl/RenderCamera.js +1 -1
  64. package/views/3d/webgl-engine/core/shaderLibrary/util/LocalFromScreenSpace.glsl.js +2 -2
  65. package/views/3d/webgl-engine/core/shaderModules/FloatsDrawUniform.js +2 -0
  66. package/views/3d/webgl-engine/effects/focusArea/{FocusAreaMaskNode.js → FocusAreaMask.js} +1 -1
  67. package/views/3d/webgl-engine/effects/focusArea/{FocusAreaColorNode.js → FocusAreaVisualization.js} +1 -1
  68. package/views/3d/webgl-engine/effects/geometry/{ObjectAndLayerIDRenderNode.js → ObjectAndLayerID.js} +1 -1
  69. package/views/3d/webgl-engine/effects/geometry/{RenderOccludedRenderNode.js → RenderOccluded.js} +1 -1
  70. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  71. package/views/3d/webgl-engine/lib/CutFillComputation.js +2 -0
  72. package/views/3d/webgl-engine/lib/CutFillVisualization.js +2 -0
  73. package/views/3d/webgl-engine/lib/{GaussianSplatRenderNode.js → GaussianSplatRenderer.js} +1 -1
  74. package/views/3d/webgl-engine/lib/GaussianSplatShadows.js +2 -0
  75. package/views/3d/webgl-engine/lib/Intersector.js +1 -1
  76. package/views/3d/webgl-engine/lib/Octree.js +1 -1
  77. package/views/3d/webgl-engine/lib/RayIntersections.js +1 -1
  78. package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
  79. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  80. package/views/3d/webgl-engine/lib/Viewshed.js +1 -1
  81. package/views/3d/webgl-engine/lib/ViewshedShadowMap.js +1 -1
  82. package/views/3d/webgl-engine/lib/geometryDataUtils.js +1 -1
  83. package/views/3d/webgl-engine/lib/intersectionConstants.js +2 -0
  84. package/views/3d/webgl-engine/lib/screenPolygonOverlapUtils.js +2 -0
  85. package/views/3d/webgl-engine/lib/screenPolygonTriangleIntersections.js +2 -0
  86. package/views/3d/webgl-engine/lib/triangleIntersectionUtils.js +1 -1
  87. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  88. package/views/3d/webgl-engine/materials/PolygonOffset.js +1 -1
  89. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  90. package/views/3d/webgl-engine/materials/TriangleMaterial.js +1 -1
  91. package/views/3d/webgl-engine/materials/intersectWithPolygonOffset.js +2 -0
  92. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  93. package/views/3d/webgl-engine/shaders/CutFillComposition.glsl.js +1 -1
  94. package/views/3d/webgl-engine/shaders/CutFillCompositionTechnique.js +1 -1
  95. package/views/3d/webgl-engine/shaders/CutFillDepth.glsl.js +1 -1
  96. package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
  97. package/views/3d/webgl-engine/shaders/Viewshed.glsl.js +1 -1
  98. package/views/3d/webgl-engine/shaders/ViewshedTechnique.js +1 -1
  99. package/views/SceneView.js +1 -1
  100. package/views/draw/support/Reshape.js +1 -1
  101. package/views/layers/FeatureLikeLayerView.js +1 -1
  102. package/views/support/euclideanAreaMeasurementUtils.js +1 -1
  103. package/views/webgl/ShaderBuilder.js +1 -1
  104. package/widgets/Attachments/support/attachmentUtils.js +1 -1
  105. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  106. package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
  107. package/widgets/BatchAttributeForm.js +1 -1
  108. package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
  109. package/widgets/Editor.js +1 -1
  110. package/widgets/FeatureForm/UtilityNetworkAssociationAddAssociationViewModel.js +1 -1
  111. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  112. package/widgets/OrientedImageryViewer/navigation/NavigationManager.js +1 -1
  113. package/widgets/PanoramicViewer/support/PanoramicTileNode.js +1 -1
  114. package/widgets/PanoramicViewer/utils.js +1 -1
  115. package/widgets/Sketch/support/OperationHandle.js +1 -1
  116. package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +1 -1
  117. package/assets/esri/core/workers/chunks/0d3c9112ae07fa4a97d6.js +0 -1
  118. package/assets/esri/core/workers/chunks/1849f72f23b434e6c78d.js +0 -1
  119. package/assets/esri/core/workers/chunks/218e2d8d6cd147c769ce.js +0 -1
  120. package/assets/esri/core/workers/chunks/294f2803aac000c99693.js +0 -1
  121. package/assets/esri/core/workers/chunks/2c15c227d057292d4fa8.js +0 -1
  122. package/assets/esri/core/workers/chunks/38a2f34661563c7c29c1.js +0 -1
  123. package/assets/esri/core/workers/chunks/5468a65698931603656d.js +0 -1
  124. package/assets/esri/core/workers/chunks/780519b60aa674a61a74.js +0 -1
  125. package/assets/esri/core/workers/chunks/88827e23f8938342781c.js +0 -1
  126. package/assets/esri/core/workers/chunks/bfe9c8ab35d9bf7e1035.js +0 -1
  127. package/assets/esri/core/workers/chunks/caf150028aeac91b8d80.js +0 -1
  128. package/assets/esri/core/workers/chunks/e98a8f80023c6023e72c.js +0 -1
  129. package/views/3d/webgl-engine/lib/CutFillComputationRenderNode.js +0 -2
  130. package/views/3d/webgl-engine/lib/CutFillVisualizationRenderNode.js +0 -2
  131. package/views/3d/webgl-engine/lib/GaussianSplatShadowRenderNode.js +0 -2
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[737],{20737(e,t,r){r.r(t),r.d(t,{default:()=>z});var s=r(5482),i=r(37838),a=r(11254),o=r(69540),n=r(7762),l=r(49186),u=r(36563),d=r(25728),p=r(17676),y=r(36708),h=r(84952),c=r(91429),b=r(16930),f=r(4146),g=r(52136),m=r(18768),v=r(63074),C=r(69208),w=r(47685),S=r(10086),E=r(34287),F=r(8303),I=r(54310),A=r(25036),M=r(82935),_=r(4902),L=r(92474),T=r(55156),Z=r(60950),O=r(89808),P=r(99959);const q=Symbol("isAnnotationFeatureGraphicOrigin");var j;class k extends P.A{get[(j=q,Z.ym)](){return this.layer}get[T.e](){return this.layer}get[O.Q](){return this.layer}constructor(e){super(),this[j]=!0,this.type="annotation-feature",this.sublayer=e}get layer(){return this.sublayer.parent}get id(){return`${this.layer.id}:__${this.sublayer.subtypeCode}__`}}let x=class extends((0,o.OU)((0,_.s)(L.x_))){constructor(e){super(e),this.graphicOrigin=new k(this),this.parent=null,this.subtypeCode=null,this.type="annotation-feature-sublayer",this.visible=!0}get title(){return this.parent?.subtypes?.find(e=>e.code===this.subtypeCode)?.name??null}};(0,s.Cg)([(0,c.MZ)({readOnly:!0,clonable:!1})],x.prototype,"graphicOrigin",void 0),(0,s.Cg)([(0,c.MZ)({clonable:!1})],x.prototype,"parent",void 0),(0,s.Cg)([(0,c.MZ)({type:Number})],x.prototype,"subtypeCode",void 0),(0,s.Cg)([(0,c.MZ)({readOnly:!0})],x.prototype,"title",null),(0,s.Cg)([(0,c.MZ)({readOnly:!0})],x.prototype,"type",void 0),(0,s.Cg)([(0,c.MZ)({type:Boolean})],x.prototype,"visible",void 0),x=(0,s.Cg)([(0,c.$K)("esri.layers.support.AnnotationFeatureSublayer")],x);var D=r(60694),G=r(10873),$=r(15426),Q=r(17036),R=r(30524),H=r(91908),N=r(97552),J=r(30291),V=r(36005);const U="annotation-feature-layer",B=(0,Q.p)(),K=n.A.ofType(x);let W=class extends((0,S.j)((0,v.dM)((0,M.e)((0,w.w6)((0,A.j)((0,I.J)((0,m.b)((0,E.q)((0,F.A)((0,d.M)((0,C.d)((0,g.p)((0,o.OU)(f.A)))))))))))))){constructor(e){super(e),this._sublayerLookup=new Map,this.barrierWeight="high",this.fields=null,this.fieldsIndex=null,this.operationalLayerType="ArcGISAnnotationLayer",this.outFields=null,this.popupEnabled=!0,this.popupTemplate=null,this.source=null,this.sublayers=new K,this.sublayerTitleMode="item-title",this.supportedSourceTypes=new Set(["Annotation Layer"]),this.type="annotation-feature",this._dataElementPromise=null,this.addHandles((0,y.wB)(()=>this.sublayers,(e,t)=>this._handleSublayersChange(e,t),y.OH))}destroy(){this.source?.destroy()}load(e){const t=e?.signal,r=this.loadFromPortal({supportedTypes:["Feature Service"]},e).catch(p.QP).then(async()=>{if(this.url&&null==this.layerId&&/FeatureServer|MapServer\/*$/i.test(this.url)){const e=await this._fetchFirstValidLayerId(t);null!=e&&(this.layerId=e)}if(!this.url)throw new l.A(`${U}:missing-url`,"AnnotationFeatureLayer must be created with a url");return this.initLayerProperties(await this.createGraphicsSource(t))}).then(()=>(0,$.VA)(this,"load",e));return this.addResolvingPromise(r),Promise.resolve(this)}get editingEnabled(){return this._isOverridden("editingEnabled")?this._get("editingEnabled"):this.loaded&&null!=this.capabilities&&this.capabilities.operations.supportsEditing&&this.userHasEditingPrivileges}set editingEnabled(e){this._overrideIfSome("editingEnabled",e)}get effectiveEditingEnabled(){return!1}get defaultPopupTemplate(){return this.createPopupTemplate()}readSublayers(e,t){const r=new K(t.subtypes.map(({code:e})=>new x({subtypeCode:e})).reverse());if(this.visibleLayers){const e=new Set(this.visibleLayers);r.forEach(t=>{t.visible=e.has(t.subtypeCode)})}return r}readTitleFromService(e,t){const{url:r}=this,s=t.name||(0,D.qg)(r)?.title;switch(this.sublayerTitleMode){case"item-title":if(r)return(0,D.yG)(r,s);break;case"item-title-and-service-name":{let e=this.portalItem?.title;if(e&&e!==s)return e=(0,D.cr)(e),s?`${e} - ${(0,D.cr)(s)}`:e;break}}return s?(0,D.cr)(s):void 0}readTitleFromPortalItem(e){return"item-title"===this.sublayerTitleMode?e:void 0}get visibleLayers(){return 0===this.sublayers.length?this._get("visibleLayers")??null:Array.from(new Set(this.sublayers?.toArray().filter(e=>e.visible).map(e=>e.subtypeCode).sort((e,t)=>e-t)??null))}set visibleLayers(e){this._set("visibleLayers",e)}createPopupTemplate(e){return(0,J.tn)(this,e)}async createGraphicsSource(e){const t={stack:[],error:void 0,hasError:!1};try{const{default:i}=await(0,p.qr)(Promise.all([r.e(893),r.e(3636),r.e(9714)]).then(r.bind(r,65515)),e),a=new i({layer:this,supportedSourceTypes:this.supportedSourceTypes});return(0,s.mS)(t,(0,u.Bf)((0,p.u7)(e,()=>a.cancelLoad())??(0,u.hA)()),!1),await a.load({signal:e}),a}catch(e){t.error=e,t.hasError=!0}finally{(0,s.hk)(t)}}createQuery(){const e=(0,$.VZ)(this);return e.where=this.definitionExpression||"1=1",e}async fetchDataElement(e){if(this._dataElementPromise)return this._dataElementPromise;if(!this.url)throw new Error("InternalError: A URL is required to retrieve the data element for this layer.");const t=(0,h.fj)(this.url,"queryDataElements"),r={f:"json",layers:this.layerId};return this._dataElementPromise=(0,a.A)(t,{...e,responseType:"json",query:r}).then(e=>{const t=e.data.layerDataElements,r=this.layerId,s=t.find(e=>e.layerId===r);if(!s)throw new l.A("fetchDataElement:not-available","A data element for this layer could not be retrieved.");return s.dataElement}),this._dataElementPromise}findSublayerForFeature(e){const t=this.fieldsIndex.get(this.subtypeField),r=e.attributes[t.name];return this.findSublayerForSubtypeCode(r)}findSublayerForSubtypeCode(e){return this._sublayerLookup.get(e)}getFieldDomain(e,t){return(0,$.Vq)(this,e,t,this.getField(e)?.domain??null)}async queryFeatures(e,t){const r=await this.load(),s=await r.source.queryFeatures(N.A.from(e)??r.createQuery(),t);if(s?.features)for(const e of s.features){const t=this.findSublayerForFeature(e);e.origin=t?.graphicOrigin,e.layer=e.sourceLayer=this}return s}async queryObjectIds(e,t){const r=await this.load();return r.source.queryObjectIds(N.A.from(e)??r.createQuery(),t)}async queryFeatureCount(e,t){const r=await this.load();return r.source.queryFeatureCount(N.A.from(e)??r.createQuery(),t)}async queryExtent(e,t){const r=await this.load();return r.source.queryExtent(N.A.from(e)??r.createQuery(),t)}serviceSupportsSpatialReference(e){return this.loaded&&(0,H.D)(this,e)}async initLayerProperties(e){this._set("source",e),e.sourceJSON&&(this.sourceJSON=e.sourceJSON,this.read(e.sourceJSON,{origin:"service",portalItem:this.portalItem,portal:this.portalItem?.portal,url:this.parsedUrl})),this._verifySource(),(0,R.sv)(this.timeInfo,this.fieldsIndex)}async hasDataChanged(){return(0,$.jp)(this)}_verifySource(){if(this.version&&this.version<10.8)throw new l.A(U+":unsupported-version","The feature service must be version 10.8 or above.");const e=["ZOrder","AnnotationClassID","Element","SymbolID","Status"],t=e.filter(e=>!this.fieldsIndex.has(e));if(this.fieldsIndex.has("FeatureID")||this.fieldsIndex.has("FeatureGlobalID")||t.unshift("FeatureID","FeatureGlobalID"),t.length)throw new l.A(U+":missing-fields","There are missing fields to operate properly",{requiredFields:e,missingFields:t})}_fetchFirstValidLayerId(e){return(0,a.A)(this.url??"",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e}).then(e=>{const t=e.data;if(!t)return;this.applyPreferredHost(t);const r=[...t.layers||[],...t.tables||[]];return r.find(({type:e})=>!e||this.supportedSourceTypes.has(e))?.id})}_handleSublayersChange(e,t){t&&(t.forEach(e=>{e.parent=null}),this.removeHandles("sublayers-owner"),this._sublayerLookup.clear()),e&&(e.forEach(e=>{e.parent=this,this._sublayerLookup.set(e.subtypeCode,e)}),this.addHandles([e.on("after-add",({item:e})=>{e.parent=this,this._sublayerLookup.set(e.subtypeCode,e)}),e.on("after-remove",({item:e})=>{e.parent=null,this._sublayerLookup.delete(e.subtypeCode)})],"sublayers-owner"))}};(0,s.Cg)([(0,c.MZ)({type:b.A,json:{origins:{service:{read:{source:"sourceSpatialReference"}}}}})],W.prototype,"attributeSpatialReference",void 0),(0,s.Cg)([(0,c.MZ)(G.es)],W.prototype,"barrierWeight",void 0),(0,s.Cg)([(0,c.MZ)({json:{write:!0}})],W.prototype,"editingEnabled",null),(0,s.Cg)([(0,c.MZ)({readOnly:!0})],W.prototype,"effectiveEditingEnabled",null),(0,s.Cg)([(0,c.MZ)({...B.fields,readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],W.prototype,"fields",void 0),(0,s.Cg)([(0,c.MZ)(B.fieldsIndex)],W.prototype,"fieldsIndex",void 0),(0,s.Cg)([(0,c.MZ)(G.id)],W.prototype,"id",void 0),(0,s.Cg)([(0,c.MZ)({type:["ArcGISAnnotationLayer"]})],W.prototype,"operationalLayerType",void 0),(0,s.Cg)([(0,c.MZ)(B.outFields)],W.prototype,"outFields",void 0),(0,s.Cg)([(0,c.MZ)(G.M6)],W.prototype,"popupEnabled",void 0),(0,s.Cg)([(0,c.MZ)({type:i.A,json:{name:"popupInfo",write:!0}})],W.prototype,"popupTemplate",void 0),(0,s.Cg)([(0,c.MZ)({readOnly:!0})],W.prototype,"defaultPopupTemplate",null),(0,s.Cg)([(0,c.MZ)({clonable:!1,readOnly:!0})],W.prototype,"source",void 0),(0,s.Cg)([(0,c.MZ)({type:K})],W.prototype,"sublayers",void 0),(0,s.Cg)([(0,V.w)("service","sublayers",["subtypes"])],W.prototype,"readSublayers",null),(0,s.Cg)([(0,c.MZ)({type:String})],W.prototype,"sublayerTitleMode",void 0),(0,s.Cg)([(0,V.w)("service","title",["name"])],W.prototype,"readTitleFromService",null),(0,s.Cg)([(0,V.w)("portal-item","title")],W.prototype,"readTitleFromPortalItem",null),(0,s.Cg)([(0,c.MZ)({json:{read:!1},value:"annotation-feature",readOnly:!0})],W.prototype,"type",void 0),(0,s.Cg)([(0,c.MZ)({type:[Number],json:{write:{ignoreOrigin:!0}}})],W.prototype,"visibleLayers",null),W=(0,s.Cg)([(0,c.$K)("esri.layers.AnnotationFeatureLayer")],W);const z=W}}]);
@@ -1,2 +0,0 @@
1
- /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as t}from"tslib";import{nextPowerOfTwo as e}from"../../../../core/mathUtils.js";import{disposeMaybe as i,destroyMaybe as r}from"../../../../core/maybe.js";import{property as s,subclass as h}from"../../../../core/accessorSupport/decorators.js";import{ortho as o}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{set as n}from"../../../../core/libs/gl-matrix-2/math/vec2.js";import{create as a}from"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{create as u}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{UNIT_X as c,ZEROS as l}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{RenderNodeOutput as d,InternalRenderCategory as p}from"../../webgl.js";import{Frustum as _}from"../../state/Frustum.js";import{glLayout as m}from"../../support/buffer/glUtil.js";import{newLayout as f}from"../../support/buffer/InterleavedLayout.js";import g from"../../webgl/RenderCamera.js";import C from"../../webgl/RenderNode.js";import{ShaderOutputConfiguration as F}from"../core/shaderLibrary/ShaderOutputConfiguration.js";import{VertexArrayObject as w}from"./VertexArrayObject.js";import{C as x}from"../../../../chunks/CutFillDepth.glsl.js";import{CutFillDepthTechnique as R}from"../shaders/CutFillDepthTechnique.js";import{CutFillDepthTechniqueConfiguration as T}from"../shaders/CutFillDepthTechniqueConfiguration.js";import{C as P}from"../../../../chunks/CutFillReduction.glsl.js";import{CutFillReductionTechnique as y}from"../shaders/CutFillReductionTechnique.js";import{CutFillReductionTechniqueConfiguration as b}from"../shaders/CutFillReductionTechniqueConfiguration.js";import{C as B}from"../../../../chunks/CutFillTargetDepth.glsl.js";import{CutFillTargetDepthTechnique as D}from"../shaders/CutFillTargetDepthTechnique.js";import{ImmediateTask as j,TaskPriority as E}from"../../../support/Scheduler.js";import{Yield as S}from"../../../support/Yield.js";import{PrimitiveType as q,DataType as O}from"../../../webgl/enums.js";import{Sync as v}from"../../../webgl/Sync.js";import{VertexBuffer as V}from"../../../webgl/VertexBuffer.js";let A=class extends C{constructor(t){super(t),this.consumes={required:[d.TRANSPARENT]},this.produces=p.CUTFILL_COMPUTATION,this._cutFillTargetDepthConfiguration=new F,this._cutFillDepthConfiguration=new T,this._cutFillReductionConfiguration=new b,this._cutFillTargetDepthParameters=new B,this._cutFillDepthParameters=new x,this._cutFillReductionParameters=new P,this.needsRender=!1,this.readyToRun=!1,this.done=!0,this._frameTask=j,this._result=new k,this._localOrigin=u(),this._maxTextureSize=512,this._width=0,this._height=0,this._reducedWidth=0,this._reducedHeight=0,this._depthFormat=14,this._colorFormat=11,this._numChannels=2,this._targetGeometryVao=null,this._numReductions=3,this._reductionPasses=0,this._pixelBufferSize=0,this._pixelBufferOffset=0,this._perReductionPixelBufferSize=0}initialize(){this._frameTask=this.view.resourceController.scheduler.registerTask(E.VOLUME_MEASUREMENT,this),this.addHandles(this._frameTask),this._maxTextureSize=Math.min(this._maxTextureSize,this.fboCache.rctx.parameters.maxTextureSize),this._cutFillTargetDepthConfiguration.output=9,this._frustum=new _(this.view.renderCoordsHelper)}destroy(){this._targetGeometryVao=i(this._targetGeometryVao);const t=this.gl;this._sync=r(this._sync),this._pixelBuffer&&(t.deleteBuffer(this._pixelBuffer),this._pixelBuffer=null,this._pixelBufferSize=0)}precompile(){this.view.stage.renderer.precompileCutFillOrthographicReferenceDepth()}render(){const t=this.input;if(!this._orthographicCamera||!this._targetGeometryVao||!this.needsRender||this._sync)return t;const e=this.techniques.getCompiled(D,this._cutFillTargetDepthConfiguration);this._cutFillDepthConfiguration.preparePass=0;const i=this.techniques.getCompiled(R,this._cutFillDepthConfiguration);this._cutFillDepthConfiguration.preparePass=1;const r=this.techniques.getCompiled(R,this._cutFillDepthConfiguration);this._cutFillReductionConfiguration.reductionPass=0;const s=this.techniques.getCompiled(y,this._cutFillReductionConfiguration);this._cutFillReductionConfiguration.reductionPass=1;const h=this.techniques.getCompiled(y,this._cutFillReductionConfiguration);this._cutFillReductionConfiguration.reductionPass=2;const o=this.techniques.getCompiled(y,this._cutFillReductionConfiguration);if(!(e&&i&&r&&s&&h&&o))return this.requestRender(1),t;this.needsRender=!1;const n=this.renderingContext,a=this.fboCache,u=this.gl,d=n.getViewport(),p=a.acquire(this._width,this._height,"cutfill reference depth",this._depthFormat);n.bindFramebuffer(p.fbo),n.setViewport(0,0,this._width,this._height),n.clear(1280),this.view.stage.renderer.renderCutFillOrthographicReferenceDepth(this._orthographicCamera);const _=a.acquire(this._width,this._height,"cutfill target depth",this._depthFormat);n.bindFramebuffer(_.fbo),n.setViewport(0,0,this._width,this._height),n.setClearDepth(1),n.clear(256),this._cutFillTargetDepthParameters.origin=this._localOrigin,this._cutFillTargetDepthParameters.cutFillCamera=this._orthographicCamera,n.bindTechnique(e,this.bindParameters,this._cutFillTargetDepthParameters),n.bindVAO(this._targetGeometryVao),n.drawArrays(q.TRIANGLES,0,this._targetGeometryVao.vertexCount("geometry"));const m=a.acquire(this._width,this._height,"cutfill reduction even",this._colorFormat),f=a.acquire(this._width,this._height,"cutfill reduction odd",this._colorFormat);return this._cutFillDepthParameters.referenceDepthTexture=p.depthTexture,this._cutFillDepthParameters.targetDepthTexture=_.depthTexture,this._pixelBuffer||(this._pixelBuffer=u.createBuffer()),u.bindBuffer(u.PIXEL_PACK_BUFFER,this._pixelBuffer),u.bufferData(u.PIXEL_PACK_BUFFER,this._pixelBufferSize,u.STREAM_READ),this._prepareFBO(m,this.width,this.height),n.bindTechnique(i,this.bindParameters,this._cutFillDepthParameters),n.screen.draw(),this._runPyramidReduction(m,f,s),this._prepareFBO(m,this.width,this.height,c),n.bindTechnique(r,this.bindParameters,this._cutFillDepthParameters),n.screen.draw(),this._runPyramidReduction(m,f,h),this._prepareFBO(m,this.width,this.height,l),n.bindTechnique(r,this.bindParameters,this._cutFillDepthParameters),n.screen.draw(),this._runPyramidReduction(m,f,o),p.release(),_.release(),m.release(),f.release(),u.bindBuffer(u.PIXEL_PACK_BUFFER,null),n.setViewport(d.x,d.y,d.width,d.height),this._sync=new v(u),setTimeout(()=>this.readyToRun=!0,0),t}update(t,i){if(!this.done)return;this.done=!1;const r=this.renderingContext,{cameraDimensions:{width:s,height:h},localOriginRenderSpace:o}=t,n=this._maxTextureSize,a=h/s,u=s>h?n:n/a,c=s>h?n*a:n;this._width=e(u),this._height=e(c);const l=[this._width,this._height];this._orthographicCamera=this._createCamera(t,l),this._frustum?.update(this._orthographicCamera),this._updateTargetVao(r,i),this._localOrigin=o,this._reductionPasses=Math.ceil(Math.log2(Math.min(this._width,this._height))),this._reducedWidth=Math.ceil(this._width/2**this._reductionPasses),this._reducedHeight=Math.ceil(this._height/2**this._reductionPasses),this._perReductionPixelBufferSize=this._reducedWidth*this._reducedHeight*this._numChannels*4,this._pixelBufferSize=this._perReductionPixelBufferSize*this._numReductions,this._pixelBufferOffset=0,this.needsRender=!0,this.requestRender(1)}runTask(){if(!this._sync)return void(this.readyToRun=!1);try{if(!this._sync.poll())return S}catch(e){return this.readyToRun=!1,void(this._sync=r(this._sync))}this.readyToRun=!1,this._sync=r(this._sync);const t=this.gl;this._cpuBuffer=new Float32Array(this._pixelBufferSize/4),t.bindBuffer(t.PIXEL_PACK_BUFFER,this._pixelBuffer),t.getBufferSubData(t.PIXEL_PACK_BUFFER,0,this._cpuBuffer),t.bindBuffer(t.PIXEL_PACK_BUFFER,null),this._updateResults(this._cpuBuffer),this.done=!0}getResult(){return this._result}get frustum(){return this._frustum}get width(){return this._width}get height(){return this._height}get updating(){return this.readyToRun||!this.done||this._frameTask.updating}_runPyramidReduction(t,e,i){const r=this.renderingContext,s=this.gl;let h=this._width,o=this._height;for(let n=0;n<this._reductionPasses;n++)h=Math.ceil(h/2),o=Math.ceil(o/2),this._cutFillReductionParameters.depthTexture=t.getTexture(),this._prepareFBO(e,h,o),r.bindTechnique(i,this.bindParameters,this._cutFillReductionParameters),r.screen.draw(),[t,e]=[e,t];s.readPixels(0,0,h,o,33319,O.FLOAT,this._pixelBufferOffset),this._pixelBufferOffset+=this._perReductionPixelBufferSize}_updateResults(t){const e=new U(0,1,a()),i=new U(0,0,a());for(let r=0;r<this._reducedWidth;r++)for(let s=0;s<this._reducedHeight;s++){let h=(r+s*this._reducedWidth)*this._numChannels;const o=this._reducedWidth*this._reducedHeight*this._numChannels;e.totalDepth+=t[h],i.totalDepth+=t[h+1],h+=o;const n=t[h];n<e.depthExtremum&&(e.depthExtremum=n,M(e.depthExtremumCoords,t[h+1],this._width)),h+=o;const a=t[h];a>i.depthExtremum&&(i.depthExtremum=a,M(i.depthExtremumCoords,t[h+1],this._width))}this._result=new k(this._width,this._height,e,i)}_prepareFBO(t,e,i,r=l){const s=this.renderingContext;s.bindFramebuffer(t.fbo),s.setViewport(0,0,e,i),s.setClearColor(r[0],r[1],r[2],r[3]),s.clear(16384)}_createCamera(t,e){const{cameraPositionRenderSpace:i,localOriginRenderSpace:r,northVector:s,cameraDimensions:{width:h,height:n},cameraNearFar:{near:a,far:u}}=t,c=new g({eye:i,center:r,up:s,near:a,far:u});return c.viewport=[0,0,e[0],e[1]],o(c.projectionMatrix,-h/2,h/2,-n/2,n/2,a,u),c}_updateTargetVao(t,e){this._targetGeometryVao=i(this._targetGeometryVao);const r=e.indices.length,s=z.createBuffer(r),h=s.position,{positions:o,indices:n}=e;for(let i=0;i<n.length;++i){const t=3*n[i];h.set(i,0,o[t]),h.set(i,1,o[t+1]),h.set(i,2,o[t+2])}const a=new V(t,m(z),s.buffer);this._targetGeometryVao=new w(t,a)}};t([s()],A.prototype,"consumes",void 0),t([s()],A.prototype,"produces",void 0),t([s()],A.prototype,"needsRender",void 0),t([s()],A.prototype,"readyToRun",void 0),t([s()],A.prototype,"done",void 0),t([s()],A.prototype,"updating",null),t([s()],A.prototype,"_frameTask",void 0),A=t([h("esri.views.3d.webgl-engine.lib.CutFillComputationRenderNode")],A);const z=f().vec3f("position").freeze();function M(t,e,i){const r=e%i,s=Math.floor(e/i);n(t,r,s)}class L{constructor(t,e){this.positions=t,this.indices=e}}class U{constructor(t,e,i){this.totalDepth=t,this.depthExtremum=e,this.depthExtremumCoords=i}}class k{constructor(t=0,e=0,i=new U(0,1,a()),r=new U(0,0,a())){this.width=t,this.height=e,this.cut=i,this.fill=r}}export{A as CutFillComputationRenderNode,k as CutFillComputationResult,U as CutFillDepthResult,L as TargetGeometryRenderInfo};
@@ -1,2 +0,0 @@
1
- /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{disposeMaybe as t}from"../../../../core/maybe.js";import{watch as i,syncAndInitial as s}from"../../../../core/reactiveUtils.js";import{property as o,subclass as r}from"../../../../core/accessorSupport/decorators.js";import{copy as a}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{InternalRenderCategory as l}from"../../webgl.js";import{glLayout as u}from"../../support/buffer/glUtil.js";import{newLayout as n}from"../../support/buffer/InterleavedLayout.js";import c from"../../webgl/RenderNode.js";import{VertexArrayObject as m}from"./VertexArrayObject.js";import{C as h}from"../../../../chunks/CutFillComposition.glsl.js";import{CutFillCompositionTechnique as d}from"../shaders/CutFillCompositionTechnique.js";import{C as f}from"../../../../chunks/CutFillMask.glsl.js";import{CutFillMaskTechnique as p}from"../shaders/CutFillMaskTechnique.js";import{DefaultMaterialPassParameters as C,DefaultMaterialDrawParameters as _,DefaultMaterialTechnique as b}from"../shaders/DefaultMaterialTechnique.js";import{DefaultMaterialTechniqueConfiguration as g}from"../shaders/DefaultMaterialTechniqueConfiguration.js";import{DepthStencilAttachment as V,PrimitiveType as v}from"../../../webgl/enums.js";import{noParameters as T}from"../../../webgl/NoParameters.js";import{VertexBuffer as w}from"../../../webgl/VertexBuffer.js";let F=class extends c{constructor(e){super(e),this.consumes={required:[l.CUTFILL_COLOR,l.GROUND_DEPTH]},this.produces=l.CUTFILL_COLOR,this.measureType="cut-fill",this._vaoCut=null,this._vaoFill=null,this._maskParameters=new f,this._cutVolumeParameters=new C,this._fillVolumeParameters=new C,this._compositeParameters=new h,this._drawParameters=new _;const t=1===e.view.state.viewingMode;this._cutVolumeConfiguration=new g(t),this._cutVolumeConfiguration.customDepthTest=2,this._cutVolumeConfiguration.writeDepth=!1,this._cutVolumeConfiguration.cullFace=1,this._cutVolumeConfiguration.doubleSidedMode=2,this._fillVolumeConfiguration=new g(t),this._fillVolumeConfiguration.customDepthTest=1,this._fillVolumeConfiguration.cullFace=2}initialize(){this.addHandles([i(()=>[this.cutColor,this.fillColor],()=>this._updateColors(),s),i(()=>this.measureType,()=>this.requestRender(1),s)])}destroy(){this._disposeVaos()}render(e){"cut-fill"===this.measureType?(this._cutVolumeConfiguration.cullFace=1,this._cutVolumeConfiguration.doubleSidedMode=2):(this._cutVolumeConfiguration.cullFace=0,this._cutVolumeConfiguration.doubleSidedMode=0);const t=this.techniques.getCompiled(b,this._cutVolumeConfiguration),i=this.techniques.getCompiled(b,this._fillVolumeConfiguration),s=this.techniques.getCompiled(p),o=this.techniques.getCompiled(d),r=this.input;if(!this._vaoCut||!this._vaoFill)return r;const a=this._vaoCut.vertexCount("geometry"),u=this._vaoFill.vertexCount("geometry");if(!(t&&i&&s&&o))return this.requestRender(1),r;const n=this.bindParameters,c=n.camera,m=c.fullViewport[2],h=c.fullViewport[3],f=this.renderingContext,C=this.fboCache,_=e.find(({name:e})=>e===l.GROUND_DEPTH),g=C.acquire(m,h,"cutfill color mask",2);g.attachDepth(_.getAttachment(V)),f.bindFramebuffer(g.fbo),f.setClearColor(0,0,0,1),f.clear(17408),f.setViewport(0,0,m,h),f.bindTechnique(s,n,T,this._maskParameters),f.setFaceCullingEnabled(!1),f.setStencilTestEnabled(!0),f.setStencilOpSeparate(1028,7680,34055,7680),f.setStencilOpSeparate(1029,7680,34056,7680),f.setDepthWriteEnabled(!1),f.bindVAO(this._vaoCut),f.setDepthTestEnabled(!0),f.setStencilWriteMask(255),f.setStencilFunction(519,0,255),f.setColorMask(!1,!1,!1,!1),f.drawArrays(v.TRIANGLES,0,a),f.setDepthTestEnabled(!1),f.setStencilWriteMask(0),f.setStencilFunction(517,0,255),f.setColorMask(!0,!1,!1,!1),f.drawArrays(v.TRIANGLES,0,a),f.bindVAO(this._vaoFill),f.setDepthTestEnabled(!0),f.setStencilWriteMask(255),f.setStencilFunction(519,0,255),f.setColorMask(!1,!0,!1,!1),f.drawArrays(v.TRIANGLES,0,u);const w=C.acquire(m,h,"cutfill color cut volume",5).acquireDepth(14);f.blitFramebuffer(r.fbo,w.fbo,256),f.bindFramebuffer(w.fbo),f.setClearColor(0,0,0,0),f.clear(16384),f.setColorMask(!0,!0,!0,!0),f.bindTechnique(t,this.bindParameters,this._cutVolumeParameters,this._drawParameters),f.bindVAO(this._vaoCut),f.drawArrays(v.TRIANGLES,0,a),w.detachDepth();const F=C.acquire(m,h,"cutfill color fill volume",5).acquireDepth(14);f.blitFramebuffer(r.fbo,F.fbo,256),f.bindFramebuffer(F.fbo),f.setClearColor(0,0,0,0),f.clear(16384),f.setColorMask(!0,!0,!0,!0),f.bindTechnique(i,this.bindParameters,this._fillVolumeParameters,this._drawParameters),f.bindVAO(this._vaoFill),f.drawArrays(v.TRIANGLES,0,u),F.detachDepth();const P=this.fboCache.acquire(m,h,this.produces);return f.bindFramebuffer(P.fbo),this._compositeParameters.color=r.getTexture(),this._compositeParameters.cutVolume=w.getTexture(),this._compositeParameters.fillVolume=F.getTexture(),this._compositeParameters.cutFillMask=g.getTexture(),this._compositeParameters.sceneDepth=r.getTexture(V),this._compositeParameters.referenceDepth=_.getTexture(V),this.borderColor.toUnitRGBA(this._compositeParameters.borderColor),f.bindTechnique(o,n,this._compositeParameters),f.screen.draw(),g.release(),w.release(),F.release(),P.moveAttachments(r),P}enable(){this.produces=l.CUTFILL_COLOR,this.requestRender(1)}disable(){this.produces="disabled",this.requestRender(1)}updateGeometries(e,t,i){this._disposeVaos(),this._vaoCut=this._createVao(e),this._vaoFill=this._createVao(t),this._maskParameters.origin=i,a(this._drawParameters.origin,i),this.requestRender(1)}_updateColors(){this._cutVolumeParameters.diffuse=this.cutColor.toUnitRGB(),this._cutVolumeParameters.opacity=this.cutColor.a,this._fillVolumeParameters.diffuse=this.fillColor.toUnitRGB(),this._fillVolumeParameters.opacity=this.fillColor.a,this.requestRender(1)}_createVao(e){const{vertices:t,normals:i,indicesBottom:s,indicesExtruded:o}=e,r=s.length+o.length,a=this.renderingContext,l=P.createBuffer(r),{position:n,normal:c}=l;let h=0;for(let u=0;u<s.length;u++){const e=3*s[u];n.set(h,0,t[e]),n.set(h,1,t[e+1]),n.set(h,2,t[e+2]),c.set(h,0,i[e]),c.set(h,1,i[e+1]),c.set(h,2,i[e+2]),h++}for(let u=0;u<o.length;u++){const e=3*o[u];n.set(h,0,t[e]),n.set(h,1,t[e+1]),n.set(h,2,t[e+2]),c.set(h,0,i[e]),c.set(h,1,i[e+1]),c.set(h,2,i[e+2]),h++}const d=new w(a,u(P),l.buffer);return new m(a,d)}_disposeVaos(){this._vaoCut=t(this._vaoCut),this._vaoFill=t(this._vaoFill)}};e([o()],F.prototype,"consumes",void 0),e([o()],F.prototype,"produces",void 0),e([o()],F.prototype,"cutColor",void 0),e([o()],F.prototype,"fillColor",void 0),e([o()],F.prototype,"borderColor",void 0),e([o()],F.prototype,"measureType",void 0),F=e([r("esri.views.3d.webgl-engine.lib.CutFillVisualizationRenderNode")],F);const P=n().vec3f("position").vec3f("normal").freeze();class q{constructor(e,t,i,s){this.vertices=e,this.indicesBottom=t,this.indicesExtruded=i,this.normals=s}}export{F as CutFillVisualizationRenderNode,q as VolumeGeometry};
@@ -1,2 +0,0 @@
1
- /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{property as t,subclass as i}from"../../../../core/accessorSupport/decorators.js";import{set as a,scale as s,floor as r,subtract as o}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as n}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{positiveInfinity as l}from"../../../../geometry/support/aaBoundingBox.js";import{InternalRenderCategory as h}from"../../webgl.js";import p from"../../webgl/RenderNode.js";import{GaussianSplatRenderNode as d}from"./GaussianSplatRenderNode.js";import{G as m}from"../../../../chunks/GaussianSplatShadow.glsl.js";import{GaussianSplatShadowTechnique as u}from"../shaders/GaussianSplatShadowTechnique.js";import{GaussianSplatTechniqueConfiguration as c}from"../shaders/GaussianSplatTechniqueConfiguration.js";import{PrimitiveType as _}from"../../../webgl/enums.js";let P=class extends p{constructor(e){super(e),this.produces=h.SHADOW_CASTERS,this.layerView=null,this._passParameters=new m,this._cameraPosition=n(),this._configuration=new c(e.view.state.isGlobal)}render(){const e=this.bindRenderTarget();return this._render(),e}queryDepthRange(e){return this.layerView.suspended?null:this._data.queryVisibleTileDepthRange(e,this.layerView.clippingBox)}get _data(){return this.layerView.data}get _clippingEnabled(){return null!=this.layerView.clippingBox}get _isIdle(){return 2===this.view.state.mode}_render(){const e=this._data;if(this.layerView.suspended||0===e.visibleGaussians||!e.orderTexture.texture||!e.textureAtlas.texture||!e.headerTexture.texture)return;this._updateShadowConfigurations();const t=this.techniques.getCompiled(u,this._configuration);t?(this._prepareShadowParameters(this.bindParameters.camera),this.renderingContext.bindTechnique(t,this.bindParameters,this._passParameters),this.renderingContext.drawArraysInstanced(_.TRIANGLE_STRIP,0,4,e.visibleGaussians)):this.requestRender(1)}_updateShadowConfigurations(){this._configuration.clippingEnabled=this._clippingEnabled,this._configuration.hasSlicePlane=this.layerView.slicePlaneEnabled&&null!=this.bindParameters.slicePlane,this._configuration.output=this.bindParameters.output}_prepareShadowParameters(e){const t=this._data;this._passParameters.splatOrder=t.orderTexture.texture,this._passParameters.splatAtlas=t.textureAtlas.texture,this._passParameters.splatHeader=t.headerTexture.texture;const{fullHeight:i,fullWidth:a}=e,s=this.view.qualitySettings.gaussianSplat,r=this._isIdle?s.idleMinimumSplatPixelRadius:s.nonIdleMinimumSplatPixelRadius;this._passParameters.minSplatRadius=r*Math.sqrt(a*i)/Math.sqrt(2073600),this._updateShadowCameraPosition(e),this._prepareShadowHighPrecisionCameraPosition(),this._passParameters.slicePlaneLocalOrigin=this._cameraPosition,this._updateShadowClipUniforms()}_updateShadowClipUniforms(){const e=this.layerView.clippingBox||l,[t,i,s,r,o,n]=e,[h,p,d]=this._cameraPosition,{clipMinCameraRelative:m,clipMaxCameraRelative:u}=this._passParameters;a(m,t-h,i-p,s-d),a(u,r-h,o-p,n-d)}_prepareShadowHighPrecisionCameraPosition(){s(this._passParameters.tileCameraPosition,this._cameraPosition,1/d.tileSize),r(this._passParameters.tileCameraPosition,this._passParameters.tileCameraPosition),s(this._passParameters.cameraDelta,this._passParameters.tileCameraPosition,d.tileSize),o(this._passParameters.cameraDelta,this._cameraPosition,this._passParameters.cameraDelta)}_updateShadowCameraPosition(e){const t=e.viewInverseTransposeMatrix;a(this._cameraPosition,t[3],t[7],t[11])}};e([t()],P.prototype,"produces",void 0),e([t({constructOnly:!0})],P.prototype,"layerView",void 0),P=e([i("esri.views.3d.webgl-engine.lib.GaussianSplatShadowRenderNode")],P);export{P as GaussianSplatShadowRenderNode};