@arcgis/core 4.34.0-next.36 → 4.34.0-next.38

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 (1338) hide show
  1. package/AttributeBinsGraphic.js +1 -1
  2. package/Basemap.js +1 -1
  3. package/Camera.js +1 -1
  4. package/CameraLayout.js +1 -1
  5. package/Color.js +1 -1
  6. package/Graphic.js +1 -1
  7. package/Ground.js +1 -1
  8. package/Map.js +1 -1
  9. package/PopupTemplate.js +1 -1
  10. package/Viewpoint.js +1 -1
  11. package/WebDocument2D.js +1 -1
  12. package/WebScene.js +1 -1
  13. package/analysis/Analysis.js +1 -1
  14. package/analysis/DimensionSimpleStyle.js +1 -1
  15. package/analysis/ElevationProfileLine.js +1 -1
  16. package/analysis/ElevationProfileLineChartOptions.js +1 -1
  17. package/analysis/ElevationProfileLineViewOptions.js +1 -1
  18. package/analysis/ElevationProfileUnits.js +1 -1
  19. package/analysis/LengthDimension.js +1 -1
  20. package/analysis/LineOfSightAnalysisObserver.js +1 -1
  21. package/analysis/LineOfSightAnalysisTarget.js +1 -1
  22. package/analysis/SlicePlane.js +1 -1
  23. package/analysis/Viewshed.js +1 -1
  24. package/analysis/VolumeMeasurement/CutFillOptions.js +1 -1
  25. package/analysis/support/AnalysisOriginWebScene.js +1 -1
  26. package/analysis/support/SliceAnalysisExcludedLayer.js +1 -1
  27. package/arcade/featureSetUtils.js +1 -1
  28. package/assets/esri/core/workers/RemoteClient.js +1 -1
  29. package/assets/esri/core/workers/chunks/00f3fe4a09bbdbc8f8b4.js +1 -0
  30. package/assets/esri/core/workers/chunks/{209c70ba2925171ef742.js → 01ae7d36bda6b6186786.js} +1 -1
  31. package/assets/esri/core/workers/chunks/01bd8f90e55081e65b38.js +1 -0
  32. package/assets/esri/core/workers/chunks/022091e5240b9d872dd2.js +1 -0
  33. package/assets/esri/core/workers/chunks/03df4668002eb4cb4f98.js +1 -0
  34. package/assets/esri/core/workers/chunks/{c4a20b8038bfbb2af329.js → 09f0c9f0b6aa58ae3c52.js} +1 -1
  35. package/assets/esri/core/workers/chunks/0a27f9b11d03874809ee.js +346 -0
  36. package/assets/esri/core/workers/chunks/{ce8f0ed9179c0d314df8.js → 0e8d3d38e9b1f6abf6f2.js} +1 -1
  37. package/assets/esri/core/workers/chunks/0faec78b2dd6990a5da0.js +1 -0
  38. package/assets/esri/core/workers/chunks/14b536e0c1de6c7422bc.js +1 -0
  39. package/assets/esri/core/workers/chunks/19391d60c76a1dc7c262.js +1 -0
  40. package/assets/esri/core/workers/chunks/1acc620bfd2983d6853f.js +1 -0
  41. package/assets/esri/core/workers/chunks/{6b5be459ec4c418cc6fd.js → 1d9212a70df68a508dca.js} +1 -1
  42. package/assets/esri/core/workers/chunks/21aaf2dede61f28727a9.js +1 -0
  43. package/assets/esri/core/workers/chunks/21dd626a5b5ea6a7e18e.js +1 -0
  44. package/assets/esri/core/workers/chunks/224872bfd923cf4c9d78.js +1 -0
  45. package/assets/esri/core/workers/chunks/23a85252e4164354553e.js +1 -0
  46. package/assets/esri/core/workers/chunks/257428fff4bef42716e0.js +1 -0
  47. package/assets/esri/core/workers/chunks/27027493a8dba8305693.js +1 -0
  48. package/assets/esri/core/workers/chunks/2a26c3fc324d672ebe88.js +1 -0
  49. package/assets/esri/core/workers/chunks/{7efc3ac70a005a771b9c.js → 2c399991e8627baa51b3.js} +1 -1
  50. package/assets/esri/core/workers/chunks/306a68137e62656b0f05.js +1 -0
  51. package/assets/esri/core/workers/chunks/{4c54239974a5847b8fdd.js → 30b9c131b69297ee186f.js} +1 -1
  52. package/assets/esri/core/workers/chunks/31ad9949b08a5b07218c.js +989 -0
  53. package/assets/esri/core/workers/chunks/31c6716d9ca188d3b870.js +1 -0
  54. package/assets/esri/core/workers/chunks/31e6eb2685872baf538a.js +1 -0
  55. package/assets/esri/core/workers/chunks/3264d58aeef8cf074b86.js +1 -0
  56. package/assets/esri/core/workers/chunks/3358c1b04490706681cc.js +1 -0
  57. package/assets/esri/core/workers/chunks/3386420c9ae891db5be7.js +2 -0
  58. package/assets/esri/core/workers/chunks/3488e88882f40199ab33.js +1 -0
  59. package/assets/esri/core/workers/chunks/34f677e8c1691c10e4e9.js +1 -0
  60. package/assets/esri/core/workers/chunks/35df19d1eab3a694c3fa.js +1 -0
  61. package/assets/esri/core/workers/chunks/3984ca7e05f30724adaf.js +1 -0
  62. package/assets/esri/core/workers/chunks/4162c633efefc63c5506.js +1 -0
  63. package/assets/esri/core/workers/chunks/{0852abaa440c14cc2b36.js → 4459c8e495a37d4c4eb8.js} +1 -1
  64. package/assets/esri/core/workers/chunks/{6e36b247a24172edd5ea.js → 476a6e5ca558db2adaa1.js} +1 -1
  65. package/assets/esri/core/workers/chunks/48369e4c340413c531ff.js +1 -0
  66. package/assets/esri/core/workers/chunks/49eac96a01931b8c4ace.js +1 -0
  67. package/assets/esri/core/workers/chunks/4ae15645e68e7f6dd6b7.js +1 -0
  68. package/assets/esri/core/workers/chunks/508c302fed242956d3b7.js +1 -0
  69. package/assets/esri/core/workers/chunks/5156410dd84ea1232a6c.js +1 -0
  70. package/assets/esri/core/workers/chunks/{c64aa9793764eba2c6da.js → 51ddda291bbbf5db9905.js} +1 -1
  71. package/assets/esri/core/workers/chunks/{bd6c6acf23db2a2e8ef8.js → 53e166944a42af027345.js} +1 -1
  72. package/assets/esri/core/workers/chunks/{4b9003ddfe61dc3729f4.js → 54658c87396223d85abd.js} +1 -1
  73. package/assets/esri/core/workers/chunks/5b2d40a2ce2594ce8eef.js +1 -0
  74. package/assets/esri/core/workers/chunks/{36024406932b0a44a74a.js → 5b2ff220aebe464dac23.js} +1 -1
  75. package/assets/esri/core/workers/chunks/5b91a49202129eedaf00.js +1 -0
  76. package/assets/esri/core/workers/chunks/{a0dfd99dc8f4eac0b7ae.js → 5d1d909354c90cb8eb60.js} +1 -1
  77. package/assets/esri/core/workers/chunks/5fe3c279d57f44416c28.js +1 -0
  78. package/assets/esri/core/workers/chunks/60d889c58a542e59b07b.js +1 -0
  79. package/assets/esri/core/workers/chunks/647cff1eaaf1b622f439.js +1 -0
  80. package/assets/esri/core/workers/chunks/6530449cd1975deb61f1.js +1 -0
  81. package/assets/esri/core/workers/chunks/6759319f3fd2d03c446b.js +1 -0
  82. package/assets/esri/core/workers/chunks/69dc5a7abc1fda2474ad.js +1 -0
  83. package/assets/esri/core/workers/chunks/{e91800c1ea026e5b2d9b.js → 6acffacbb4a03af52e3b.js} +1 -1
  84. package/assets/esri/core/workers/chunks/6b5b609b357924fa35be.js +1 -0
  85. package/assets/esri/core/workers/chunks/{d6eff6cc30acdca04835.js → 6c167daf115cd6abb3e5.js} +1 -1
  86. package/assets/esri/core/workers/chunks/6e82c1d1e02e320ec5e7.js +1 -0
  87. package/assets/esri/core/workers/chunks/712c740cf58c2e282efc.js +1 -0
  88. package/assets/esri/core/workers/chunks/7159e7a3274e64b337ce.js +1 -0
  89. package/assets/esri/core/workers/chunks/{0e7e4426daba4a008849.js → 719b89341b26c3568c2f.js} +1 -1
  90. package/assets/esri/core/workers/chunks/7617fe2fbf223c108f1e.js +1 -0
  91. package/assets/esri/core/workers/chunks/774844eea928efa811f2.js +1 -0
  92. package/assets/esri/core/workers/chunks/77ee4afaa4a1c7047940.js +1 -0
  93. package/assets/esri/core/workers/chunks/{904e701e1a12f67beaee.js → 787d281b2fe1edf6cf30.js} +1 -1
  94. package/assets/esri/core/workers/chunks/78de16f65ea297452a65.js +1 -0
  95. package/assets/esri/core/workers/chunks/{056fdd5570af28d334cd.js → 79b389baf972d329c38d.js} +1 -1
  96. package/assets/esri/core/workers/chunks/{0ca8d6516323fc28dd58.js → 7a5808c6e67c43274d86.js} +1 -1
  97. package/assets/esri/core/workers/chunks/7b1fc59822ac2d421a5a.js +1 -0
  98. package/assets/esri/core/workers/chunks/7b82ed4cc475c782256b.js +1 -0
  99. package/assets/esri/core/workers/chunks/7b95da70d39ba316b051.js +1 -0
  100. package/assets/esri/core/workers/chunks/7c97c4c8c2cf73835517.js +1 -0
  101. package/assets/esri/core/workers/chunks/{7a4730c1e6a5355b7a05.js → 7d082bfcd13ad6e8c89d.js} +1 -1
  102. package/assets/esri/core/workers/chunks/7e04b4592128e884b58c.js +1 -0
  103. package/assets/esri/core/workers/chunks/7ef29640de297a0cf744.js +1 -0
  104. package/assets/esri/core/workers/chunks/{ac88e0aabbd6c1f1ec98.js → 7f523fa4d4ade4316625.js} +1 -1
  105. package/assets/esri/core/workers/chunks/80a930881a99ceda240a.js +1 -0
  106. package/assets/esri/core/workers/chunks/{69d44e08861fb8cdd954.js → 82de1b50ae286f1e6c44.js} +1 -1
  107. package/assets/esri/core/workers/chunks/85bfd380d4f522ff8e83.js +1 -0
  108. package/assets/esri/core/workers/chunks/{a82d7e2eecfe654a65de.js → 88308a0dcc479688e67c.js} +1 -1
  109. package/assets/esri/core/workers/chunks/{360223d8bd4ee77ecda1.js → 896c7d137bfd7a8fa0bc.js} +1 -1
  110. package/assets/esri/core/workers/chunks/{74db0831bcbd48152c1d.js → 899f493412acd5a5d91f.js} +1 -1
  111. package/assets/esri/core/workers/chunks/{20a96c17d1a117dfdf77.js → 8ad95fe91ba0a9f284a2.js} +1 -1
  112. package/assets/esri/core/workers/chunks/{b331543767c35e5edcc6.js → 8c1bd9bcfc59497de3b5.js} +1 -1
  113. package/assets/esri/core/workers/chunks/8ca95499e00ce8b0af9a.js +1 -0
  114. package/assets/esri/core/workers/chunks/8d51b6823ef5d290c670.js +1 -0
  115. package/assets/esri/core/workers/chunks/{1512ed7b869b3e8e07bc.js → 8e40c409a9b0a2a768a9.js} +1 -1
  116. package/assets/esri/core/workers/chunks/9155dbfce5ef2c25bbbf.js +1 -0
  117. package/assets/esri/core/workers/chunks/{7d25f57299c642e727a6.js → 91be247f868ce6596c9e.js} +1 -1
  118. package/assets/esri/core/workers/chunks/9247d768c3eccc0828a9.js +1 -0
  119. package/assets/esri/core/workers/chunks/{02bd15e0adaffcdd645b.js → 947085d176bd3a930e6f.js} +1 -1
  120. package/assets/esri/core/workers/chunks/{dca2b487152cde45fb65.js → 94850c094e076d81a016.js} +1 -1
  121. package/assets/esri/core/workers/chunks/9595b39e882f9a9ac839.js +1 -0
  122. package/assets/esri/core/workers/chunks/962c0ef63de1635fb4aa.js +1 -0
  123. package/assets/esri/core/workers/chunks/98ac849cccc4d5316021.js +1 -0
  124. package/assets/esri/core/workers/chunks/9928e432b884c75c3436.js +1 -0
  125. package/assets/esri/core/workers/chunks/{e9a366c225b0687293e3.js → 9b5e04d87116ce2b68b2.js} +1 -1
  126. package/assets/esri/core/workers/chunks/9c60599131860f635483.js +1 -0
  127. package/assets/esri/core/workers/chunks/9cd9b22354dbdf1b1df0.js +1 -0
  128. package/assets/esri/core/workers/chunks/9e7af4c3c0f8cf0f5c5b.js +1 -0
  129. package/assets/esri/core/workers/chunks/9f869b331dff505b6b55.js +1 -0
  130. package/assets/esri/core/workers/chunks/9ffbd5216aa0a45a4199.js +1 -0
  131. package/assets/esri/core/workers/chunks/a13a36207f265f720255.js +1 -0
  132. package/assets/esri/core/workers/chunks/a5c0b365b9f55e63ab52.js +1 -0
  133. package/assets/esri/core/workers/chunks/{0550e775677597f3752c.js → a89c060ad302381aaf7d.js} +1 -1
  134. package/assets/esri/core/workers/chunks/a939d2af7e4a359c7b4d.js +1 -0
  135. package/assets/esri/core/workers/chunks/aaab7694eb333ad480f5.js +1 -0
  136. package/assets/esri/core/workers/chunks/{871da12fb3029177df6f.js → ad106f5f6d6848f40de3.js} +1 -1
  137. package/assets/esri/core/workers/chunks/{dec9656997683ef01ba6.js → ad1e5c24c1eae5ab8e45.js} +1 -1
  138. package/assets/esri/core/workers/chunks/{c9fe9792312f0161ef5a.js → b1b6300451cc4ccefd46.js} +1 -1
  139. package/assets/esri/core/workers/chunks/b1c2e5e0a70fb5d27da5.js +1 -0
  140. package/assets/esri/core/workers/chunks/b40845b45f8d7cd347a1.js +1 -0
  141. package/assets/esri/core/workers/chunks/b5f6a0607b620b027cdd.js +1 -0
  142. package/assets/esri/core/workers/chunks/{8abcf9d3343dd8d45103.js → b884bd2f50aaccfa24c5.js} +1 -1
  143. package/assets/esri/core/workers/chunks/{1285ccdde515aca9a2d5.js → bb23371335ac049861e6.js} +1 -1
  144. package/assets/esri/core/workers/chunks/{469a018d94080fbcde22.js → bbdadced49446c907361.js} +1 -1
  145. package/assets/esri/core/workers/chunks/{c06dda7263e64d696c88.js → c110941e87923ba47193.js} +1 -1
  146. package/assets/esri/core/workers/chunks/c51e2a048df152abd901.js +1 -0
  147. package/assets/esri/core/workers/chunks/{b00ad853fa4826d0ceb3.js → c660b6e67d5d13583f19.js} +1 -1
  148. package/assets/esri/core/workers/chunks/c6e3d4c6bb02d58d5cfe.js +1 -0
  149. package/assets/esri/core/workers/chunks/c8c85ba6451b5dfc2fc0.js +1 -0
  150. package/assets/esri/core/workers/chunks/c8d57588267e2fc4406c.js +1 -0
  151. package/assets/esri/core/workers/chunks/ca7c9756802214e41c56.js +1 -0
  152. package/assets/esri/core/workers/chunks/cca36750c86352c6d1f9.js +1 -0
  153. package/assets/esri/core/workers/chunks/cf474c055a85bdbfa8d0.js +1 -0
  154. package/assets/esri/core/workers/chunks/{9f933a7e9d3b0cd69383.js → d08b80583a23ba253c7e.js} +1 -1
  155. package/assets/esri/core/workers/chunks/d29f894491618931d92a.js +1 -0
  156. package/assets/esri/core/workers/chunks/d465e1b3a8a53d9c0a12.js +1 -0
  157. package/assets/esri/core/workers/chunks/d5262c95116d3bdfd117.js +1 -0
  158. package/assets/esri/core/workers/chunks/d578c3880eaf2dd62324.js +1 -0
  159. package/assets/esri/core/workers/chunks/{b8bd0f1be54b318990f6.js → d7c679374aa2d256becf.js} +1 -1
  160. package/assets/esri/core/workers/chunks/d93b24e863379116b2aa.js +1 -0
  161. package/assets/esri/core/workers/chunks/{6589133542fa130c0628.js → dd1d9913b33d4e48baff.js} +1 -1
  162. package/assets/esri/core/workers/chunks/de499e33035b56b6697d.js +1 -0
  163. package/assets/esri/core/workers/chunks/e177d0ab454dfa024b39.js +1 -0
  164. package/assets/esri/core/workers/chunks/{948ecf0bfbc886ec3b52.js → e1b25b1ce3bd4f0f2cda.js} +1 -1
  165. package/assets/esri/core/workers/chunks/{eedf97211883713c413e.js → e1b573840ec1f7c3afd3.js} +1 -1
  166. package/assets/esri/core/workers/chunks/{b117e054a2bc54f5f93b.js → e3f2cdf5d71a7040894b.js} +1 -1
  167. package/assets/esri/core/workers/chunks/e666ca4d14b6490485d6.js +1 -0
  168. package/assets/esri/core/workers/chunks/{672751823261a5763684.js → e92d9e0ac789bcf1cdf4.js} +1 -1
  169. package/assets/esri/core/workers/chunks/{d3b932ff2299c89c2582.js → e95a8c988ef822723503.js} +1 -1
  170. package/assets/esri/core/workers/chunks/{9f43736d6d80c8e858b2.js → eb7dd722e4cd7f83b3f5.js} +1 -1
  171. package/assets/esri/core/workers/chunks/ec9ed7c9d64f88fcb806.js +1 -0
  172. package/assets/esri/core/workers/chunks/f42938e1602306cfa7a8.js +1 -0
  173. package/assets/esri/core/workers/chunks/{77e083d1e425026fa030.js → f4b145feab275b268c2e.js} +1 -1
  174. package/assets/esri/core/workers/chunks/f4d7cbd33ef8710d7316.js +1 -0
  175. package/assets/esri/core/workers/chunks/f88fe2e8fbc763bdc940.js +1 -0
  176. package/assets/esri/core/workers/chunks/{451ae19a0a120b27c6da.js → fb0f729eff2f2911d6c3.js} +1 -1
  177. package/assets/esri/core/workers/chunks/{ce0683921ccefc580018.js → fd3009164d5e38fda85f.js} +1 -1
  178. package/assets/esri/core/workers/chunks/{236fc659747e812f6424.js → ff34fdda7899e784ac73.js} +1 -1
  179. package/chunks/ColorMaterial.glsl.js +2 -2
  180. package/chunks/DefaultMaterial.glsl.js +4 -4
  181. package/chunks/HUDMaterial.glsl.js +5 -5
  182. package/chunks/LineMarker.glsl.js +19 -19
  183. package/chunks/Pattern.glsl.js +6 -6
  184. package/chunks/RibbonLine.glsl.js +2 -2
  185. package/chunks/TimeExtent.js +1 -1
  186. package/chunks/TimeInterval.js +1 -1
  187. package/chunks/languageUtils.js +1 -1
  188. package/chunks/pe.js +1 -1
  189. package/colorUtils.js +1 -1
  190. package/config.js +1 -1
  191. package/core/Clonable.d.ts +1 -1
  192. package/core/Clonable.js +1 -1
  193. package/core/Collection.js +1 -1
  194. package/core/Evented.d.ts +1 -1
  195. package/core/Evented.js +1 -1
  196. package/core/Identifiable.d.ts +1 -1
  197. package/core/Identifiable.js +1 -1
  198. package/core/JSONSupport.d.ts +1 -1
  199. package/core/JSONSupport.js +1 -1
  200. package/core/Loadable.d.ts +1 -1
  201. package/core/Loadable.js +1 -1
  202. package/core/Promise.d.ts +1 -1
  203. package/core/Promise.js +1 -1
  204. package/core/has.js +1 -1
  205. package/core/loadAll.js +1 -1
  206. package/core/object.js +1 -1
  207. package/core/workers/RemoteClient.js +1 -1
  208. package/core/workers/utils.js +1 -1
  209. package/editing/sharedTemplates/SharedTemplate.js +1 -1
  210. package/editing/sharedTemplates/SharedTemplateMetadata.js +1 -1
  211. package/editing/sharedTemplates/SharedTemplateProvider.js +1 -1
  212. package/editing/sharedTemplates/templateDefinitions/TemplateDefinitionBase.js +1 -1
  213. package/editing/sharedTemplates/templateDefinitions/parts/TemplatePartBase.js +1 -1
  214. package/effects/FocusArea.js +1 -1
  215. package/effects/FocusAreaOutline.js +1 -1
  216. package/effects/FocusAreas.js +1 -1
  217. package/form/ExpressionInfo.js +1 -1
  218. package/form/FormTemplate.js +1 -1
  219. package/form/elements/Element.js +1 -1
  220. package/form/elements/UtilityNetworkAssociationsElement.js +1 -1
  221. package/form/elements/inputs/Input.js +1 -1
  222. package/form/elements/inputs/attachments/Input.js +1 -1
  223. package/geometry/Geometry.js +1 -1
  224. package/geometry/HeightModelInfo.js +1 -1
  225. package/geometry/Mesh.js +1 -1
  226. package/geometry/SpatialReference.js +1 -1
  227. package/geometry/support/MeshComponent.js +1 -1
  228. package/geometry/support/MeshGeoreferencedVertexSpace.js +1 -1
  229. package/geometry/support/MeshLocalVertexSpace.js +1 -1
  230. package/geometry/support/MeshMaterial.js +1 -1
  231. package/geometry/support/MeshTexture.js +1 -1
  232. package/geometry/support/MeshTextureTransform.js +1 -1
  233. package/geometry/support/MeshTransform.js +1 -1
  234. package/geometry/support/MeshVertexAttributes.js +1 -1
  235. package/geometry/support/heightModelInfoUtils.js +1 -1
  236. package/geometry/support/meshUtils/Metadata.js +1 -1
  237. package/graphic/GeoRSSGraphicOrigin.d.ts +4 -0
  238. package/graphic/GeoRSSGraphicOrigin.js +5 -0
  239. package/graphic/GraphicOrigin.js +1 -1
  240. package/graphic/KnowledgeGraphGraphicOrigin.d.ts +4 -0
  241. package/graphic/KnowledgeGraphGraphicOrigin.js +5 -0
  242. package/graphic/MapImageGraphicOrigin.d.ts +4 -0
  243. package/graphic/MapImageGraphicOrigin.js +5 -0
  244. package/graphic/MapNotesGraphicOrigin.d.ts +4 -0
  245. package/graphic/MapNotesGraphicOrigin.js +5 -0
  246. package/graphic/OrientedImageryGraphicOrigin.d.ts +4 -0
  247. package/graphic/OrientedImageryGraphicOrigin.js +5 -0
  248. package/graphic/ParquetGraphicOrigin.d.ts +4 -0
  249. package/graphic/ParquetGraphicOrigin.js +5 -0
  250. package/graphic/SubtypeGroupGraphicOrigin.d.ts +4 -0
  251. package/graphic/SubtypeGroupGraphicOrigin.js +5 -0
  252. package/graphic/TileGraphicOrigin.d.ts +4 -0
  253. package/graphic/TileGraphicOrigin.js +5 -0
  254. package/graphic/graphicOrigins.d.ts +8 -0
  255. package/graphic/graphicOrigins.js +1 -1
  256. package/graphic/isGeoRSSGraphicOrigin.js +5 -0
  257. package/graphic/isKnowledgeGraphGraphicOrigin.js +5 -0
  258. package/graphic/isMapImageGraphicOrigin.js +5 -0
  259. package/graphic/isMapNotesGraphicOrigin.js +5 -0
  260. package/graphic/isOrientedImageryGraphicOrigin.js +5 -0
  261. package/graphic/isParquetGraphicOrigin.js +5 -0
  262. package/graphic/isSubtypeGroupGraphicOrigin.js +5 -0
  263. package/graphic/isTileGraphicOrigin.js +5 -0
  264. package/grids/MeasuredGrid.js +1 -1
  265. package/ground/NavigationConstraint.js +1 -1
  266. package/identity/IdentityManagerBase.js +1 -1
  267. package/identity/OAuthInfo.js +1 -1
  268. package/identity/ServerInfo.js +1 -1
  269. package/interfaces.d.ts +228 -0
  270. package/kernel.js +1 -1
  271. package/layers/BuildingSceneLayer.js +1 -1
  272. package/layers/CSVLayer.js +1 -1
  273. package/layers/FeatureLayer.js +1 -1
  274. package/layers/GaussianSplatLayer.js +5 -0
  275. package/layers/GeoJSONLayer.js +1 -1
  276. package/layers/ImageryLayer.js +1 -1
  277. package/layers/ImageryTileLayer.js +1 -1
  278. package/layers/Layer.js +1 -1
  279. package/layers/MapNotesLayer.js +1 -1
  280. package/layers/OGCFeatureLayer.js +1 -1
  281. package/layers/OrientedImageryLayer.js +1 -1
  282. package/layers/ParquetLayer.js +1 -1
  283. package/layers/SceneLayer.js +1 -1
  284. package/layers/StreamLayer.js +1 -1
  285. package/layers/SubtypeGroupLayer.js +1 -1
  286. package/layers/WCSLayer.js +1 -1
  287. package/layers/WFSLayer.js +1 -1
  288. package/layers/buildingSublayers/BuildingComponentSublayer.js +1 -1
  289. package/layers/buildingSublayers/BuildingGroupSublayer.js +1 -1
  290. package/layers/buildingSublayers/BuildingSublayer.js +1 -1
  291. package/layers/buildingSublayers/utils.js +5 -0
  292. package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
  293. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  294. package/layers/graphics/data/FeatureStore.js +1 -1
  295. package/layers/graphics/sources/CSVSource.js +1 -1
  296. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  297. package/layers/graphics/sources/GeoJSONSource.js +1 -1
  298. package/layers/graphics/sources/MemorySource.js +1 -1
  299. package/layers/graphics/sources/OGCFeatureSource.js +1 -1
  300. package/layers/graphics/sources/ParquetSource.js +1 -1
  301. package/layers/graphics/sources/WFSSource.js +1 -1
  302. package/layers/knowledgeGraph/IdealEdgeLengthTypeOptions.js +1 -1
  303. package/layers/knowledgeGraph/KnowledgeGraphSublayer.js +1 -1
  304. package/layers/mixins/EditBusLayer.js +1 -1
  305. package/layers/mixins/OperationalLayer.js +1 -1
  306. package/layers/mixins/TemporalSceneLayer.js +1 -1
  307. package/layers/mixins/operationalLayerModuleMap.js +1 -1
  308. package/layers/orientedImagery/core/CameraOrientationHPR.js +1 -1
  309. package/layers/orientedImagery/core/CameraOrientationLTP.js +1 -1
  310. package/layers/orientedImagery/core/CameraOrientationOPK.js +1 -1
  311. package/layers/orientedImagery/core/CameraOrientationYPR.js +1 -1
  312. package/layers/orientedImagery/core/ElevationSourceDefinitions.js +1 -1
  313. package/layers/orientedImagery/core/ExposurePoint.js +1 -1
  314. package/layers/pointCloudFilters/PointCloudFilter.js +1 -1
  315. package/layers/support/AggregateField.js +1 -1
  316. package/layers/support/BuildingFilter.js +1 -1
  317. package/layers/support/BuildingFilterAuthoringInfo.js +1 -1
  318. package/layers/support/BuildingFilterAuthoringInfoBlock.js +1 -1
  319. package/layers/support/BuildingFilterAuthoringInfoType.js +1 -1
  320. package/layers/support/BuildingFilterBlock.js +1 -1
  321. package/layers/support/BuildingFilterMode.js +1 -1
  322. package/layers/support/BuildingSummaryStatistics.js +1 -1
  323. package/layers/support/CodedValue.js +1 -1
  324. package/layers/support/ControlPointsGeoreference.js +1 -1
  325. package/layers/support/DimensionalDefinition.js +1 -1
  326. package/layers/support/DisplayFilter.js +1 -1
  327. package/layers/support/DisplayFilterInfo.js +1 -1
  328. package/layers/support/Domain.js +1 -1
  329. package/layers/support/EditFieldsInfo.js +1 -1
  330. package/layers/support/ExportImageServiceParameters.js +1 -1
  331. package/layers/support/ExpressionInfo.js +1 -1
  332. package/layers/support/FacilityLayerInfo.js +1 -1
  333. package/layers/support/FeatureEffect.js +1 -1
  334. package/layers/support/FeatureFilter.js +1 -1
  335. package/layers/support/FeatureIndex.js +1 -1
  336. package/layers/support/FeatureReduction.js +1 -1
  337. package/layers/support/FeatureReductionCluster.js +1 -1
  338. package/layers/support/FeatureTemplate.js +1 -1
  339. package/layers/support/FeatureType.js +1 -1
  340. package/layers/support/Field.js +1 -1
  341. package/layers/support/GeometryFieldsInfo.js +1 -1
  342. package/layers/support/GeoreferenceBase.js +1 -1
  343. package/layers/support/I3SLayerDefinitions.js +1 -1
  344. package/layers/support/KMLMapImage.js +1 -1
  345. package/layers/support/KMLSublayer.js +1 -1
  346. package/layers/support/LOD.js +1 -1
  347. package/layers/support/LabelClass.js +1 -1
  348. package/layers/support/LabelExpressionInfo.js +1 -1
  349. package/layers/support/LayerContingentValuesCache.js +1 -1
  350. package/layers/support/LayerFloorInfo.js +1 -1
  351. package/layers/support/LayerTimeOptions.js +1 -1
  352. package/layers/support/LevelLayerInfo.js +1 -1
  353. package/layers/support/LocalMediaElementSource.js +1 -1
  354. package/layers/support/MapImage.js +1 -1
  355. package/layers/support/MediaElementBase.js +1 -1
  356. package/layers/support/MosaicRule.js +1 -1
  357. package/layers/support/MultidimensionalSubset.js +1 -1
  358. package/layers/support/OrderByInfo.js +1 -1
  359. package/layers/support/ParquetEncodingBase.js +1 -1
  360. package/layers/support/ParquetEncodingLocation.js +1 -1
  361. package/layers/support/ParquetEncodingWkb.js +1 -1
  362. package/layers/support/PixelBlock.js +1 -1
  363. package/layers/support/PlaybackInfo.js +1 -1
  364. package/layers/support/PolygonCollection.js +1 -1
  365. package/layers/support/PurgeOptions.js +1 -1
  366. package/layers/support/RangeInfo.js +1 -1
  367. package/layers/support/RasterBandInfo.js +1 -1
  368. package/layers/support/RasterFunction.js +1 -1
  369. package/layers/support/RasterFunctionInfo.js +1 -1
  370. package/layers/support/RasterFunctionProperties.js +1 -1
  371. package/layers/support/RasterFunctionTemplate.js +1 -1
  372. package/layers/support/RasterFunctionVariable.js +1 -1
  373. package/layers/support/RasterInfo.js +1 -1
  374. package/layers/support/RasterSensorInfo.js +1 -1
  375. package/layers/support/RasterStorageInfo.js +1 -1
  376. package/layers/support/Relationship.js +1 -1
  377. package/layers/support/RouteStopSymbols.js +1 -1
  378. package/layers/support/RouteSymbols.js +1 -1
  379. package/layers/support/SceneFilter.js +1 -1
  380. package/layers/support/SceneModification.js +1 -1
  381. package/layers/support/SceneModifications.js +1 -1
  382. package/layers/support/SiteLayerInfo.js +1 -1
  383. package/layers/support/StreamConnection.js +1 -1
  384. package/layers/support/Sublayer.js +1 -1
  385. package/layers/support/Subtype.js +1 -1
  386. package/layers/support/SubtypeSublayer.js +1 -1
  387. package/layers/support/TelemetryData.js +1 -1
  388. package/layers/support/TelemetryDisplay.js +1 -1
  389. package/layers/support/TileInfo.js +1 -1
  390. package/layers/support/TileMatrixSet.js +1 -1
  391. package/layers/support/TimeInfo.js +1 -1
  392. package/layers/support/TrackInfo.js +1 -1
  393. package/layers/support/TrackPartInfo.js +1 -1
  394. package/layers/support/VideoFrame.js +1 -1
  395. package/layers/support/VideoTimeExtent.js +1 -1
  396. package/layers/support/WMSSublayer.js +1 -1
  397. package/layers/support/WMTSLayerInfo.js +1 -1
  398. package/layers/support/WMTSStyle.js +1 -1
  399. package/layers/support/WMTSSublayer.js +1 -1
  400. package/layers/support/lazyLayerLoader.js +1 -1
  401. package/layers/support/rasterDatasets/BaseRaster.js +1 -1
  402. package/layers/support/rasterFunctions/BaseFunctionArguments.js +1 -1
  403. package/layers/support/rasterFunctions/BaseRasterFunction.js +1 -1
  404. package/layers/support/rasterTransforms/BaseRasterTransform.js +1 -1
  405. package/layers/support/source/DataLayerSource.js +1 -1
  406. package/layers/support/source/MapLayerSource.js +1 -1
  407. package/layers/support/source/QueryTableDataSource.js +1 -1
  408. package/layers/support/source/RasterDataSource.js +1 -1
  409. package/layers/support/source/TableDataSource.js +1 -1
  410. package/layers/voxel/VoxelColorStop.js +1 -1
  411. package/layers/voxel/VoxelDimension.js +1 -1
  412. package/layers/voxel/VoxelDynamicSection.js +1 -1
  413. package/layers/voxel/VoxelFormat.js +1 -1
  414. package/layers/voxel/VoxelIrregularSpacing.js +1 -1
  415. package/layers/voxel/VoxelIsosurface.js +1 -1
  416. package/layers/voxel/VoxelOpacityStop.js +1 -1
  417. package/layers/voxel/VoxelRangeFilter.js +1 -1
  418. package/layers/voxel/VoxelRegularSpacing.js +1 -1
  419. package/layers/voxel/VoxelSection.js +1 -1
  420. package/layers/voxel/VoxelSimpleShading.js +1 -1
  421. package/layers/voxel/VoxelSlice.js +1 -1
  422. package/layers/voxel/VoxelTransferFunctionStyle.js +1 -1
  423. package/layers/voxel/VoxelUniqueValue.js +1 -1
  424. package/layers/voxel/VoxelVariable.js +1 -1
  425. package/layers/voxel/VoxelVariableStyle.js +1 -1
  426. package/layers/voxel/VoxelVolume.js +1 -1
  427. package/layers/voxel/VoxelVolumeIndex.js +1 -1
  428. package/layers/voxel/VoxelVolumeStyle.js +1 -1
  429. package/libs/linkchartlayout/LinkChartLayout.js +1 -1
  430. package/linkChart/ChronologicalLayoutSettings.js +1 -1
  431. package/linkChart/LayoutSettings.js +1 -1
  432. package/linkChart/LinkChartProperties.js +1 -1
  433. package/linkChart/NonspatialDataDisplay.js +1 -1
  434. package/linkChart/OrganicLayoutSettings.js +1 -1
  435. package/networks/CircuitManager.js +1 -1
  436. package/networks/Network.js +1 -1
  437. package/networks/RulesTable.js +1 -1
  438. package/networks/UnitIdentifierManager.js +1 -1
  439. package/networks/UtilityNetwork.js +1 -1
  440. package/networks/support/NetworkSystemLayers.js +1 -1
  441. package/networks/support/Terminal.js +1 -1
  442. package/networks/support/TerminalConfiguration.js +1 -1
  443. package/networks/support/TraceConfiguration.js +1 -1
  444. package/networks/support/UtilityNetworkLookupHelper.js +1 -1
  445. package/package.json +2 -2
  446. package/popup/ElementExpressionInfo.js +1 -1
  447. package/popup/ExpressionInfo.js +1 -1
  448. package/popup/FieldInfo.js +1 -1
  449. package/popup/LayerOptions.js +1 -1
  450. package/popup/RelatedRecordsInfo.js +1 -1
  451. package/popup/content/AttachmentsContent.js +1 -1
  452. package/popup/content/Content.js +1 -1
  453. package/popup/content/RelationshipContent.js +1 -1
  454. package/popup/content/UtilityNetworkAssociationsContent.js +1 -1
  455. package/popup/content/mixins/MediaInfo.js +1 -1
  456. package/popup/content/support/ChartMediaInfoValue.js +1 -1
  457. package/popup/content/support/ImageMediaInfoValue.js +1 -1
  458. package/popup/support/AttachmentsOrderByInfo.js +1 -1
  459. package/popup/support/FieldInfoFormat.js +1 -1
  460. package/popup/support/RelatedRecordsInfoFieldOrder.js +1 -1
  461. package/popup/support/UtilityNetworkAssociationType.js +1 -1
  462. package/portal/Portal.js +1 -1
  463. package/portal/PortalFolder.js +1 -1
  464. package/portal/PortalGroup.js +1 -1
  465. package/portal/PortalItem.js +1 -1
  466. package/portal/PortalUser.js +1 -1
  467. package/renderers/FlowRenderer.js +1 -1
  468. package/renderers/PieChartRenderer.js +1 -1
  469. package/renderers/PointCloudClassBreaksRenderer.js +1 -1
  470. package/renderers/PointCloudRenderer.js +1 -1
  471. package/renderers/PointCloudStretchRenderer.js +1 -1
  472. package/renderers/PointCloudUniqueValueRenderer.js +1 -1
  473. package/renderers/RasterColormapRenderer.js +1 -1
  474. package/renderers/RasterShadedReliefRenderer.js +1 -1
  475. package/renderers/RasterStretchRenderer.js +1 -1
  476. package/renderers/Renderer.js +1 -1
  477. package/renderers/VectorFieldRenderer.js +1 -1
  478. package/renderers/support/AttributeColorInfo.js +1 -1
  479. package/renderers/support/AuthoringInfo.js +1 -1
  480. package/renderers/support/AuthoringInfoClassBreakInfo.js +1 -1
  481. package/renderers/support/AuthoringInfoFieldInfo.js +1 -1
  482. package/renderers/support/AuthoringInfoSizeStop.js +1 -1
  483. package/renderers/support/AuthoringInfoVisualVariable.js +1 -1
  484. package/renderers/support/ClassBreakInfo.js +1 -1
  485. package/renderers/support/ColormapInfo.js +1 -1
  486. package/renderers/support/DotDensityLegendOptions.js +1 -1
  487. package/renderers/support/HeatmapColorStop.js +1 -1
  488. package/renderers/support/HeatmapLegendOptions.js +1 -1
  489. package/renderers/support/OthersCategory.js +1 -1
  490. package/renderers/support/RasterPresetRenderer.js +1 -1
  491. package/renderers/support/RasterSymbolizer.js +1 -1
  492. package/renderers/support/RendererLegendOptions.js +1 -1
  493. package/renderers/support/UniqueValue.js +1 -1
  494. package/renderers/support/UniqueValueClass.js +1 -1
  495. package/renderers/support/UniqueValueGroup.js +1 -1
  496. package/renderers/support/UniqueValueInfo.js +1 -1
  497. package/renderers/support/pointCloud/ColorClassBreakInfo.js +1 -1
  498. package/renderers/support/pointCloud/ColorModulation.js +1 -1
  499. package/renderers/support/pointCloud/ColorUniqueValueInfo.js +1 -1
  500. package/renderers/support/pointCloud/PointSizeAlgorithm.js +1 -1
  501. package/renderers/support/pointCloud/fieldsMap.js +5 -0
  502. package/renderers/visualVariables/VisualVariable.js +1 -1
  503. package/renderers/visualVariables/support/ColorSizeStop.js +1 -1
  504. package/renderers/visualVariables/support/ColorStop.js +1 -1
  505. package/renderers/visualVariables/support/OpacityStop.js +1 -1
  506. package/renderers/visualVariables/support/SizeStop.js +1 -1
  507. package/renderers/visualVariables/support/VisualVariableLegendOptions.js +1 -1
  508. package/rest/featureService/FeatureService.js +1 -1
  509. package/rest/knowledgeGraph/DataModel.js +1 -1
  510. package/rest/knowledgeGraph/FieldIndex.js +1 -1
  511. package/rest/knowledgeGraph/GraphObject.js +1 -1
  512. package/rest/knowledgeGraph/GraphObjectType.js +1 -1
  513. package/rest/knowledgeGraph/GraphProperty.js +1 -1
  514. package/rest/knowledgeGraph/KnowledgeGraph.js +1 -1
  515. package/rest/knowledgeGraph/Path.js +1 -1
  516. package/rest/knowledgeGraph/ProtoFeatureCollection.js +1 -1
  517. package/rest/knowledgeGraph/ServiceDefinition.js +1 -1
  518. package/rest/knowledgeGraph/SourceTypeValueBehavior.js +1 -1
  519. package/rest/knowledgeGraph/toolService/findPaths/CIMFilteredFindPathsConfiguration.js +1 -1
  520. package/rest/knowledgeGraph/toolService/findPaths/CIMFilteredFindPathsEntity.js +1 -1
  521. package/rest/knowledgeGraph/toolService/findPaths/CIMFilteredFindPathsPathFilter.js +1 -1
  522. package/rest/knowledgeGraph/toolService/findPaths/CIMKGTraversalDirection.js +1 -1
  523. package/rest/knowledgeGraph/wasmInterface/WasmDataModelWrapperInterfaces.js +1 -1
  524. package/rest/knowledgeGraph/wasmInterface/WasmQueryWrapperInterfaces.js +1 -1
  525. package/rest/knowledgeGraph/wasmInterface/WasmSerializedLayerData.js +1 -1
  526. package/rest/knowledgeGraph/wasmInterface/wasmToDataModelFactories.js +1 -1
  527. package/rest/knowledgeGraph/wasmInterface/wasmToFeatureFactories.js +1 -1
  528. package/rest/knowledgeGraph/wasmInterface/wasmToQueryResponseObjFactories.js +1 -1
  529. package/rest/networks/circuits/support/CircuitVerifyResult.js +1 -1
  530. package/rest/networks/circuits/support/CreateAlterCircuitParameters.js +1 -1
  531. package/rest/networks/circuits/support/DeleteCircuitsParameters.js +1 -1
  532. package/rest/networks/circuits/support/EditCircuitsResult.js +1 -1
  533. package/rest/networks/circuits/support/ExportCircuitsParameters.js +1 -1
  534. package/rest/networks/circuits/support/ExportCircuitsResult.js +1 -1
  535. package/rest/networks/circuits/support/QueryCircuitsParameters.js +1 -1
  536. package/rest/networks/circuits/support/QueryCircuitsResult.js +1 -1
  537. package/rest/networks/circuits/support/VerifyCircuitsParameters.js +1 -1
  538. package/rest/networks/circuits/support/VerifyCircuitsResult.js +1 -1
  539. package/rest/networks/support/AggregatedGeometry.js +1 -1
  540. package/rest/networks/support/Association.js +1 -1
  541. package/rest/networks/support/AssociationGeometriesResult.js +1 -1
  542. package/rest/networks/support/CircuitPath.js +1 -1
  543. package/rest/networks/support/CircuitPathConnectivityElement.js +1 -1
  544. package/rest/networks/support/CircuitTraceResult.js +1 -1
  545. package/rest/networks/support/FunctionResult.js +1 -1
  546. package/rest/networks/support/NetworkElement.js +1 -1
  547. package/rest/networks/support/QueryAssociationsParameters.js +1 -1
  548. package/rest/networks/support/QueryAssociationsResult.js +1 -1
  549. package/rest/networks/support/QueryNamedTraceConfigurationsParameters.js +1 -1
  550. package/rest/networks/support/QueryNamedTraceConfigurationsResult.js +1 -1
  551. package/rest/networks/support/SynthesizeAssociationGeometriesParameters.js +1 -1
  552. package/rest/networks/support/TraceLocation.js +1 -1
  553. package/rest/networks/support/TraceParameters.js +1 -1
  554. package/rest/networks/support/TraceResult.js +1 -1
  555. package/rest/networks/support/ValidateNetworkTopologyParameters.js +1 -1
  556. package/rest/networks/support/ValidateNetworkTopologyResult.js +1 -1
  557. package/rest/networks/unitIdentifiers/support/EditUnitIdentifiersResult.js +1 -1
  558. package/rest/networks/unitIdentifiers/support/InsertGapParameters.js +1 -1
  559. package/rest/networks/unitIdentifiers/support/QueryUnitIdentifiersParameters.js +1 -1
  560. package/rest/networks/unitIdentifiers/support/ResetParameters.js +1 -1
  561. package/rest/networks/unitIdentifiers/support/ResizeParameters.js +1 -1
  562. package/rest/networks/unitIdentifiers/support/UnitQueryResult.js +1 -1
  563. package/rest/query/support/AttachmentInfo.js +1 -1
  564. package/rest/support/AddressCandidate.js +1 -1
  565. package/rest/support/AddressToLocationsParameters.js +1 -1
  566. package/rest/support/AddressesToLocationsParameters.js +1 -1
  567. package/rest/support/ArealUnit.js +1 -1
  568. package/rest/support/AreasAndLengthsParameters.js +1 -1
  569. package/rest/support/AttachmentQuery.js +1 -1
  570. package/rest/support/AttributeBinsFeatureSet.js +1 -1
  571. package/rest/support/AttributeBinsGrouping.js +1 -1
  572. package/rest/support/AttributeBinsQuery.js +1 -1
  573. package/rest/support/BaseImageMeasureParameters.js +1 -1
  574. package/rest/support/BaseImageMeasureResult.js +1 -1
  575. package/rest/support/BinParametersBase.js +1 -1
  576. package/rest/support/BufferParameters.js +1 -1
  577. package/rest/support/CameraInfo.js +1 -1
  578. package/rest/support/ClassBreaksDefinition.js +1 -1
  579. package/rest/support/ClosestFacilityParameters.js +1 -1
  580. package/rest/support/ClosestFacilitySolveResult.js +1 -1
  581. package/rest/support/ColorRamp.js +1 -1
  582. package/rest/support/DataFile.js +1 -1
  583. package/rest/support/DataLayer.js +1 -1
  584. package/rest/support/DateBinTimeInterval.js +1 -1
  585. package/rest/support/DensifyParameters.js +1 -1
  586. package/rest/support/DirectionLine.js +1 -1
  587. package/rest/support/DirectionPoint.js +1 -1
  588. package/rest/support/DirectionsEvent.js +1 -1
  589. package/rest/support/DirectionsString.js +1 -1
  590. package/rest/support/FeatureSet.js +1 -1
  591. package/rest/support/FindImagesParameters.js +1 -1
  592. package/rest/support/FindImagesResult.js +1 -1
  593. package/rest/support/FindParameters.js +1 -1
  594. package/rest/support/FindResult.js +1 -1
  595. package/rest/support/FullTextSearch.js +1 -1
  596. package/rest/support/GPMessage.js +1 -1
  597. package/rest/support/GeneralizeParameters.js +1 -1
  598. package/rest/support/GenerateRendererParameters.js +1 -1
  599. package/rest/support/IdentifyParameters.js +1 -1
  600. package/rest/support/IdentifyResult.js +1 -1
  601. package/rest/support/ImageAngleParameters.js +1 -1
  602. package/rest/support/ImageAngleResult.js +1 -1
  603. package/rest/support/ImageBoundaryParameters.js +1 -1
  604. package/rest/support/ImageBoundaryResult.js +1 -1
  605. package/rest/support/ImageGPSInfo.js +1 -1
  606. package/rest/support/ImageGPSInfoParameters.js +1 -1
  607. package/rest/support/ImageGPSInfoResult.js +1 -1
  608. package/rest/support/ImageHistogramParameters.js +1 -1
  609. package/rest/support/ImageIdentifyParameters.js +1 -1
  610. package/rest/support/ImageIdentifyResult.js +1 -1
  611. package/rest/support/ImageInspectionInfo.js +1 -1
  612. package/rest/support/ImagePixelLocationParameters.js +1 -1
  613. package/rest/support/ImagePixelLocationResult.js +1 -1
  614. package/rest/support/ImageSample.js +1 -1
  615. package/rest/support/ImageSampleParameters.js +1 -1
  616. package/rest/support/ImageSampleResult.js +1 -1
  617. package/rest/support/ImageToMapMultirayParameters.js +1 -1
  618. package/rest/support/ImageToMapParameters.js +1 -1
  619. package/rest/support/ImageUrlParameters.js +1 -1
  620. package/rest/support/ImageUrlResult.js +1 -1
  621. package/rest/support/ImageVolume.js +1 -1
  622. package/rest/support/ImageVolumeParameters.js +1 -1
  623. package/rest/support/ImageVolumeResult.js +1 -1
  624. package/rest/support/JobInfo.js +1 -1
  625. package/rest/support/LegendLayer.js +1 -1
  626. package/rest/support/LengthsParameters.js +1 -1
  627. package/rest/support/LinearUnit.js +1 -1
  628. package/rest/support/LocationToAddressParameters.js +1 -1
  629. package/rest/support/MapToImageParameters.js +1 -1
  630. package/rest/support/MeasureAreaFromImageResult.js +1 -1
  631. package/rest/support/MeasureFromImageParameters.js +1 -1
  632. package/rest/support/MeasureLengthFromImageResult.js +1 -1
  633. package/rest/support/MultipartColorRamp.js +1 -1
  634. package/rest/support/NetworkAttribute.js +1 -1
  635. package/rest/support/NetworkDataset.js +1 -1
  636. package/rest/support/NetworkServiceDescription.js +1 -1
  637. package/rest/support/NetworkUrl.js +1 -1
  638. package/rest/support/OffsetParameters.js +1 -1
  639. package/rest/support/ParameterValue.js +1 -1
  640. package/rest/support/PointBarrier.js +1 -1
  641. package/rest/support/PolygonBarrier.js +1 -1
  642. package/rest/support/PolylineBarrier.js +1 -1
  643. package/rest/support/ProjectParameters.js +1 -1
  644. package/rest/support/QuantizationParameters.js +1 -1
  645. package/rest/support/Query.js +1 -1
  646. package/rest/support/RasterData.js +1 -1
  647. package/rest/support/RelationParameters.js +1 -1
  648. package/rest/support/RelationshipQuery.js +1 -1
  649. package/rest/support/RouteInfo.js +1 -1
  650. package/rest/support/RouteParameters.js +1 -1
  651. package/rest/support/RouteResult.js +1 -1
  652. package/rest/support/RouteSettings.js +1 -1
  653. package/rest/support/RouteSolveResult.js +1 -1
  654. package/rest/support/ServiceAreaParameters.js +1 -1
  655. package/rest/support/ServiceAreaSolveResult.js +1 -1
  656. package/rest/support/StatisticDefinition.js +1 -1
  657. package/rest/support/Stop.js +1 -1
  658. package/rest/support/SuggestLocationsParameters.js +1 -1
  659. package/rest/support/SuggestionCandidate.js +1 -1
  660. package/rest/support/TopFeaturesQuery.js +1 -1
  661. package/rest/support/TopFilter.js +1 -1
  662. package/rest/support/TranslateContent.js +1 -1
  663. package/rest/support/TranslateParameters.js +1 -1
  664. package/rest/support/TranslateResult.js +1 -1
  665. package/rest/support/TravelMode.js +1 -1
  666. package/rest/support/TrimExtendParameters.js +1 -1
  667. package/rest/support/UniqueValueDefinition.js +1 -1
  668. package/rest/support/imageMeasureUtils.js +1 -1
  669. package/rest/versionManagement/gdbVersion/support/AlterVersionParameters.js +1 -1
  670. package/rest/versionManagement/gdbVersion/support/ConflictsParameters.js +1 -1
  671. package/rest/versionManagement/gdbVersion/support/ConflictsResult.js +1 -1
  672. package/rest/versionManagement/gdbVersion/support/DeleteForwardEditsParameters.js +1 -1
  673. package/rest/versionManagement/gdbVersion/support/DifferencesParameters.js +1 -1
  674. package/rest/versionManagement/gdbVersion/support/DifferencesResult.js +1 -1
  675. package/rest/versionManagement/gdbVersion/support/InspectConflictsParameters.js +1 -1
  676. package/rest/versionManagement/gdbVersion/support/PostParameters.js +1 -1
  677. package/rest/versionManagement/gdbVersion/support/PostResult.js +1 -1
  678. package/rest/versionManagement/gdbVersion/support/ReconcileParameters.js +1 -1
  679. package/rest/versionManagement/gdbVersion/support/ReconcileResult.js +1 -1
  680. package/rest/versionManagement/gdbVersion/support/RestoreRowsParameters.js +1 -1
  681. package/rest/versionManagement/gdbVersion/support/RestoreRowsResult.js +1 -1
  682. package/rest/versionManagement/support/CreateVersionParameters.js +1 -1
  683. package/rest/versionManagement/support/DeleteVersionParameters.js +1 -1
  684. package/rest/versionManagement/support/GetVersionInfosParameters.js +1 -1
  685. package/rest/versionManagement/support/GetVersionInfosResult.js +1 -1
  686. package/smartMapping/raster/support/adapters/RasterLayerAdapter.js +1 -1
  687. package/smartMapping/support/adapters/FeatureLayerBinningAdapter.js +1 -1
  688. package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
  689. package/smartMapping/support/adapters/LayerAdapter.js +1 -1
  690. package/support/MapFloorInfo.js +1 -1
  691. package/support/actions/ActionBase.js +1 -1
  692. package/support/revision.js +1 -1
  693. package/symbols/Font.js +1 -1
  694. package/symbols/LineStyleMarker3D.js +1 -1
  695. package/symbols/LineSymbolMarker.js +1 -1
  696. package/symbols/PathSymbol3DLayer.js +1 -1
  697. package/symbols/Symbol.js +1 -1
  698. package/symbols/Symbol3DLayer.js +1 -1
  699. package/symbols/WaterSymbol3DLayer.js +1 -1
  700. package/symbols/callouts/Callout3D.js +1 -1
  701. package/symbols/callouts/LineCallout3DBorder.js +1 -1
  702. package/symbols/edges/Edges3D.js +1 -1
  703. package/symbols/patterns/LinePattern3D.js +1 -1
  704. package/symbols/patterns/Pattern3D.js +1 -1
  705. package/symbols/support/ElevationInfo.js +1 -1
  706. package/symbols/support/FeatureExpressionInfo.js +1 -1
  707. package/symbols/support/IconSymbol3DLayerResource.js +1 -1
  708. package/symbols/support/ObjectSymbol3DLayerResource.js +1 -1
  709. package/symbols/support/Symbol3DEmissive.js +1 -1
  710. package/symbols/support/Symbol3DHalo.js +1 -1
  711. package/symbols/support/Symbol3DIconOutline.js +1 -1
  712. package/symbols/support/Symbol3DMaterial.js +1 -1
  713. package/symbols/support/Symbol3DOutline.js +1 -1
  714. package/symbols/support/Symbol3DTextBackground.js +1 -1
  715. package/symbols/support/Symbol3DVerticalOffset.js +1 -1
  716. package/symbols/support/previewSymbol3D.js +1 -1
  717. package/tables/AttributeTableTemplate.js +1 -1
  718. package/tables/elements/AttributeTableAttachmentElement.js +1 -1
  719. package/tables/elements/AttributeTableElement.js +1 -1
  720. package/tables/elements/AttributeTableFieldElement.js +1 -1
  721. package/tables/elements/AttributeTableGroupElement.js +1 -1
  722. package/tables/elements/AttributeTableRelationshipElement.js +1 -1
  723. package/tables/support/FieldOrder.js +1 -1
  724. package/undoredo/support/Services.js +1 -1
  725. package/versionManagement/VersionManagementService.js +1 -1
  726. package/versionManagement/VersioningState.js +1 -1
  727. package/views/2d/AnimationManager.js +1 -1
  728. package/views/2d/ViewState.js +1 -1
  729. package/views/2d/constraints/GeometryConstraint.js +1 -1
  730. package/views/2d/constraints/RotationConstraint.js +1 -1
  731. package/views/2d/constraints/ZoomConstraint.js +1 -1
  732. package/views/2d/engine/DisplayObject.js +1 -1
  733. package/views/2d/engine/ManagedCanvas.js +1 -1
  734. package/views/2d/engine/Stage.js +1 -1
  735. package/views/2d/engine/flow/styles/Imagery.js +1 -1
  736. package/views/2d/engine/flow/styles/Particles.js +1 -1
  737. package/views/2d/engine/flow/styles/Streamlines.js +1 -1
  738. package/views/2d/engine/imagery/BrushVectorField.js +1 -1
  739. package/views/2d/engine/imagery/RasterVFDisplayObject.js +1 -1
  740. package/views/2d/engine/vectorTiles/RenderBucket.js +1 -1
  741. package/views/2d/engine/vectorTiles/VTLPainter3D.js +1 -1
  742. package/views/2d/engine/vectorTiles/VectorTileContainer.js +1 -1
  743. package/views/2d/engine/vectorTiles/decluttering/CollisionJob.js +1 -1
  744. package/views/2d/engine/vectorTiles/shaders/VTLBackgroundMaterial.js +1 -1
  745. package/views/2d/engine/vectorTiles/shaders/VTLCircleMaterial.js +1 -1
  746. package/views/2d/engine/vectorTiles/shaders/VTLFillMaterial.js +1 -1
  747. package/views/2d/engine/vectorTiles/shaders/VTLLineMaterial.js +1 -1
  748. package/views/2d/engine/vectorTiles/shaders/VTLMaterial.js +1 -1
  749. package/views/2d/engine/vectorTiles/shaders/VTLSymbolMaterial.js +1 -1
  750. package/views/2d/engine/webgl/BitBlitRenderer.js +1 -1
  751. package/views/2d/engine/webgl/ClippingInfo.js +1 -1
  752. package/views/2d/engine/webgl/FeatureDisplayList.js +1 -1
  753. package/views/2d/engine/webgl/MaterialManager.js +1 -1
  754. package/views/2d/engine/webgl/Mesh2D.js +1 -1
  755. package/views/2d/engine/webgl/Painter.js +1 -1
  756. package/views/2d/engine/webgl/Profiler.js +1 -1
  757. package/views/2d/engine/webgl/TextureManager.js +1 -1
  758. package/views/2d/engine/webgl/Utils.js +1 -1
  759. package/views/2d/engine/webgl/VertexStream.js +1 -1
  760. package/views/2d/engine/webgl/WorldExtentClipRenderer.js +1 -1
  761. package/views/2d/engine/webgl/animations/store/AnimationStore.js +1 -1
  762. package/views/2d/engine/webgl/brushes/BrushClip.js +1 -1
  763. package/views/2d/engine/webgl/brushes/WGLBrushStencil.js +1 -1
  764. package/views/2d/engine/webgl/brushes/WGLBrushTileDebugInfo.js +1 -1
  765. package/views/2d/engine/webgl/brushes/WGLBrushVTLBackground.js +1 -1
  766. package/views/2d/engine/webgl/collisions/LabelMetric.js +1 -1
  767. package/views/2d/engine/webgl/cpuMapped/MappedMesh.js +1 -1
  768. package/views/2d/engine/webgl/effects/HittestEffect.js +1 -1
  769. package/views/2d/engine/webgl/effects/highlight/HighlightRenderer.js +1 -1
  770. package/views/2d/engine/webgl/effects/post-processing/Bloom.js +1 -1
  771. package/views/2d/engine/webgl/effects/post-processing/Blur.js +1 -1
  772. package/views/2d/engine/webgl/effects/post-processing/Colorize.js +1 -1
  773. package/views/2d/engine/webgl/effects/post-processing/DropShadow.js +1 -1
  774. package/views/2d/engine/webgl/meshing/Mesh.js +1 -1
  775. package/views/2d/engine/webgl/shaderGraph/GLSLShaderModule.js +1 -1
  776. package/views/2d/engine/webgl/shaderGraph/GraphShaderModule.js +1 -1
  777. package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityResources.js +1 -1
  778. package/views/2d/engine/webgl/shaderGraph/techniques/heatmap/HeatmapResources.js +1 -1
  779. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelMeshWriter.js +1 -1
  780. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/textureUtils.js +1 -1
  781. package/views/2d/engine/webgl/shaderGraph/typed/TypedShaderProgram.js +1 -1
  782. package/views/2d/engine/webgl/shaders/BackgroundPrograms.js +1 -1
  783. package/views/2d/engine/webgl/shaders/BitBlitPrograms.js +1 -1
  784. package/views/2d/engine/webgl/shaders/HighlightPrograms.js +1 -1
  785. package/views/2d/engine/webgl/shaders/MaterialPrograms.js +1 -1
  786. package/views/2d/engine/webgl/shaders/StencilPrograms.js +1 -1
  787. package/views/2d/engine/webgl/shaders/TileInfoPrograms.js +1 -1
  788. package/views/2d/interactive/editingTools/ControlPointsTransformTool.js +1 -1
  789. package/views/2d/interactive/editingTools/TransformTool.js +1 -1
  790. package/views/2d/layerViewModuleImportUtils.js +1 -1
  791. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  792. package/views/2d/layers/GeoRSSLayerView2D.js +1 -1
  793. package/views/2d/layers/MediaLayerView2D.js +1 -1
  794. package/views/2d/layers/StreamLayerView2D.js +1 -1
  795. package/views/2d/layers/TileLayerView2D.js +1 -1
  796. package/views/2d/layers/features/FeatureSourceEventLog.js +1 -1
  797. package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
  798. package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
  799. package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
  800. package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
  801. package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
  802. package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
  803. package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
  804. package/views/2d/layers/features/layerAdapters/StreamLayerAdapter.js +1 -1
  805. package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
  806. package/views/2d/layers/features/processor/AAggregateStrategy.js +1 -1
  807. package/views/2d/layers/features/schema/processor/LabelMatcherSchema.js +1 -1
  808. package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
  809. package/views/2d/layers/features/schema/processor/SubtypeProcessorSchema.js +1 -1
  810. package/views/2d/layers/features/sources/strategies/StreamLoadStrategy.js +1 -1
  811. package/views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js +1 -1
  812. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  813. package/views/2d/layers/features/support/TileStore.js +1 -1
  814. package/views/2d/layers/graphics/GraphicBoundsRenderer.js +1 -1
  815. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  816. package/views/2d/layers/support/DebugOverlay.js +1 -1
  817. package/views/2d/layers/support/RouteLayerInteraction.js +1 -1
  818. package/views/3d/FocusAreasView.js +1 -1
  819. package/views/3d/analysis/AnalysisView3D.js +1 -1
  820. package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementPathHelper.js +1 -1
  821. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  822. package/views/3d/analysis/LineOfSightAnalysisView3D.js +1 -1
  823. package/views/3d/constraints/AltitudeConstraint.js +1 -1
  824. package/views/3d/constraints/ClipDistanceConstraint.js +1 -1
  825. package/views/3d/constraints/Constraints.js +1 -1
  826. package/views/3d/constraints/TiltConstraint.js +1 -1
  827. package/views/3d/environment/ChapmanAtmosphereTechnique.js +1 -1
  828. package/views/3d/environment/CloudsCompositionTechnique.js +1 -1
  829. package/views/3d/environment/CloudsRenderer.js +1 -1
  830. package/views/3d/environment/CloudsTechnique.js +1 -1
  831. package/views/3d/environment/CloudyWeather.js +1 -1
  832. package/views/3d/environment/EnvironmentManager.js +1 -1
  833. package/views/3d/environment/FogTechnique.js +1 -1
  834. package/views/3d/environment/FoggyWeather.js +1 -1
  835. package/views/3d/environment/LocalAtmosphere.js +1 -1
  836. package/views/3d/environment/MarsAtmosphere.js +1 -1
  837. package/views/3d/environment/NoiseTextureAtlasTechnique.js +1 -1
  838. package/views/3d/environment/Precipitation.js +1 -1
  839. package/views/3d/environment/RainyWeather.js +1 -1
  840. package/views/3d/environment/SimpleAtmosphereTechnique.js +1 -1
  841. package/views/3d/environment/SnowyWeather.js +1 -1
  842. package/views/3d/environment/SunLighting.js +1 -1
  843. package/views/3d/environment/SunnyWeather.js +1 -1
  844. package/views/3d/environment/VirtualLighting.js +1 -1
  845. package/views/3d/glTF/internal/Resource.js +1 -1
  846. package/views/3d/glTF/loader.js +1 -1
  847. package/views/3d/interactive/Manipulator3D.js +1 -1
  848. package/views/3d/interactive/editingTools/ManipulatedObject3DGraphic.js +1 -1
  849. package/views/3d/interactive/editingTools/ManipulatedObject3DMediaElement.js +1 -1
  850. package/views/3d/interactive/editingTools/manipulations/MoveXYAxisManipulation.js +1 -1
  851. package/views/3d/interactive/editingTools/manipulations/MoveZManipulation.js +1 -1
  852. package/views/3d/interactive/editingTools/media/MediaElementManipulator3D.js +1 -1
  853. package/views/3d/interactive/editingTools/move/MoveTool3D.js +1 -1
  854. package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
  855. package/views/3d/interactive/editingTools/reshape/ReshapeTool3D.js +1 -1
  856. package/views/3d/interactive/editingTools/transform/ExtentTransformTool.js +1 -1
  857. package/views/3d/interactive/editingTools/transform/ScaleRotateTransform.js +1 -1
  858. package/views/3d/interactive/editingTools/transform/TransformTool3D.js +1 -1
  859. package/views/3d/interactive/visualElements/DrapedVisualElementResources.js +1 -1
  860. package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
  861. package/views/3d/layerViewModuleImportUtils.js +1 -1
  862. package/views/3d/layers/BuildingSublayerView3D.js +1 -1
  863. package/views/3d/layers/FlowSubView3D.js +1 -1
  864. package/views/3d/layers/GaussianSplatLayerView3D.js +5 -0
  865. package/views/3d/layers/GraphicsView3D.js +1 -1
  866. package/views/3d/layers/GraphicsView3DDummyLayer.js +1 -1
  867. package/views/3d/layers/I3SMeshView3D.js +1 -1
  868. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  869. package/views/3d/layers/TiledLayerView3D.js +1 -1
  870. package/views/3d/layers/graphics/GraphicState.js +1 -1
  871. package/views/3d/layers/graphics/Graphics3DElevationAlignment.js +1 -1
  872. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  873. package/views/3d/layers/graphics/Graphics3DFeatureStore.js +1 -1
  874. package/views/3d/layers/graphics/Graphics3DGraphicsPipeline.js +1 -1
  875. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  876. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  877. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  878. package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
  879. package/views/3d/layers/graphics/StreamController.js +1 -1
  880. package/views/3d/layers/graphics/pipeline/Feature3DPipeline.js +1 -1
  881. package/views/3d/layers/graphics/pipeline/Feature3DPipelineWorker.js +1 -1
  882. package/views/3d/layers/graphics/pipeline/Feature3DPipelineWorkerHandle.js +1 -1
  883. package/views/3d/layers/graphics/pipeline/featureSet/TiledFeatureStore.js +1 -1
  884. package/views/3d/layers/graphics/pipeline/rendering/DirectRenderer.js +1 -1
  885. package/views/3d/layers/graphics/pipeline/rendering/FeaturePipelineRenderManager.js +1 -1
  886. package/views/3d/layers/graphics/pipeline/rendering/LodRenderer.js +1 -1
  887. package/views/3d/layers/graphics/pipeline/rendering/RenderCommandContext.js +1 -1
  888. package/views/3d/layers/graphics/pipeline/symbolization/IconSymbolLayerRenderer.js +1 -1
  889. package/views/3d/layers/graphics/pipeline/symbolization/ObjectSymbolLayerRenderer.js +1 -1
  890. package/views/3d/layers/graphics/pipeline/symbolization/primitiveObjectUtils.js +1 -1
  891. package/views/3d/layers/graphics/polygonUtils.js +1 -1
  892. package/views/3d/layers/i3s/I3SGraphicsMap.js +1 -1
  893. package/views/3d/layers/i3s/I3SQueryFeatureStore.js +1 -1
  894. package/views/3d/layers/i3s/LayerElevationProvider.js +1 -1
  895. package/views/3d/layers/i3s/PointCloudRenderer.js +1 -1
  896. package/views/3d/layers/support/FastSymbolUpdates.js +1 -1
  897. package/views/3d/layers/support/FeatureTile.js +1 -1
  898. package/views/3d/layers/support/FlowTileTree3DDebugger.js +5 -0
  899. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  900. package/views/3d/layers/support/StageLayerElevationProvider.js +1 -1
  901. package/views/3d/state/ViewState.js +1 -1
  902. package/views/3d/state/controllers/AnimationController.js +1 -1
  903. package/views/3d/support/CombinedElevationProvider.js +1 -1
  904. package/views/3d/support/DisplayQualityProfile.js +1 -1
  905. package/views/3d/support/EventedSet.js +1 -1
  906. package/views/3d/support/GraphicsMap.js +1 -1
  907. package/views/3d/support/LimitGraphicsMap.js +1 -1
  908. package/views/3d/support/buffer/InterleavedLayout.js +1 -1
  909. package/views/3d/support/buffer/glUtil.js +1 -1
  910. package/views/3d/support/flow/geometryUtils.js +1 -1
  911. package/views/3d/support/pointsOfInterest/ContentGeometryUpdates.js +1 -1
  912. package/views/3d/support/pointsOfInterest/SurfaceGeometryUpdates.js +1 -1
  913. package/views/3d/terrain/BlendLayersTechnique.js +1 -1
  914. package/views/3d/terrain/OverlayRenderer.js +1 -1
  915. package/views/3d/terrain/PatchGeometryFactory.js +1 -1
  916. package/views/3d/terrain/PatchRenderData.js +1 -1
  917. package/views/3d/terrain/RasterColorizerTechnique.js +1 -1
  918. package/views/3d/terrain/TerrainAttributes.js +1 -1
  919. package/views/3d/terrain/TerrainAttributesCache.js +1 -1
  920. package/views/3d/terrain/TerrainRenderer.js +1 -1
  921. package/views/3d/terrain/TerrainSurface.js +1 -1
  922. package/views/3d/terrain/TileCompositor.js +1 -1
  923. package/views/3d/terrain/isTerrainSurfaceLayer.js +1 -1
  924. package/views/3d/terrain/tileUtils.js +1 -1
  925. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  926. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  927. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
  928. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  929. package/views/3d/webgl-engine/collections/Component/SourceGeometry.js +1 -1
  930. package/views/3d/webgl-engine/core/FBOCacheFormats.js +1 -1
  931. package/views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js +2 -2
  932. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +2 -2
  933. package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +4 -4
  934. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +2 -2
  935. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +1 -1
  936. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +1 -1
  937. package/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js +4 -4
  938. package/views/3d/webgl-engine/core/shaderModules/glsl.js +1 -1
  939. package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechnique.js +1 -1
  940. package/views/3d/webgl-engine/effects/RenderNodes.js +1 -1
  941. package/views/3d/webgl-engine/effects/ScreenSpaceGeometry.js +1 -1
  942. package/views/3d/webgl-engine/effects/bloom/BloomBlurTechnique.js +1 -1
  943. package/views/3d/webgl-engine/effects/bloom/BloomCompositionTechnique.js +1 -1
  944. package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizerNode.js +3 -3
  945. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorTechnique.js +1 -1
  946. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskNode.js +1 -1
  947. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskTechnique.js +1 -1
  948. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  949. package/views/3d/webgl-engine/effects/haze/HazeCompositingTechnique.js +1 -1
  950. package/views/3d/webgl-engine/effects/haze/HazeTechnique.js +1 -1
  951. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  952. package/views/3d/webgl-engine/effects/highlight/HighlightApplyTechnique.js +1 -1
  953. package/views/3d/webgl-engine/effects/highlight/HighlightBlurTechnique.js +1 -1
  954. package/views/3d/webgl-engine/effects/highlight/HighlightDownsampleTechnique.js +1 -1
  955. package/views/3d/webgl-engine/effects/highlight/HighlightToSingleTechnique.js +1 -1
  956. package/views/3d/webgl-engine/effects/highlight/ShadowHighlight.js +1 -1
  957. package/views/3d/webgl-engine/effects/highlight/ShadowHighlightTechnique.js +1 -1
  958. package/views/3d/webgl-engine/effects/laserlines/LaserlinePathData.js +1 -1
  959. package/views/3d/webgl-engine/effects/laserlines/LaserlineTechnique.js +1 -1
  960. package/views/3d/webgl-engine/effects/magnifier/Magnifier.js +1 -1
  961. package/views/3d/webgl-engine/effects/magnifier/MagnifierTechnique.js +1 -1
  962. package/views/3d/webgl-engine/effects/smaa/SMAABlendWeightsTechnique.js +1 -1
  963. package/views/3d/webgl-engine/effects/smaa/SMAABlurTechnique.js +1 -1
  964. package/views/3d/webgl-engine/effects/smaa/SMAAEdgeDetectTechnique.js +1 -1
  965. package/views/3d/webgl-engine/effects/ssao/SSAOBlurTechnique.js +1 -1
  966. package/views/3d/webgl-engine/effects/ssao/SSAOTechnique.js +1 -1
  967. package/views/3d/webgl-engine/effects/stars/Stars.js +1 -1
  968. package/views/3d/webgl-engine/effects/stars/StarsTechnique.js +1 -1
  969. package/views/3d/webgl-engine/effects/transparency/OITBlendTechnique.js +1 -1
  970. package/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js +1 -1
  971. package/views/3d/webgl-engine/lib/DrapedHeatmapRenderer.js +1 -1
  972. package/views/3d/webgl-engine/lib/GPUPointOcclusionQuery.js +1 -1
  973. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  974. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  975. package/views/3d/webgl-engine/lib/Material.js +1 -1
  976. package/views/3d/webgl-engine/lib/Octree.js +1 -1
  977. package/views/3d/webgl-engine/lib/Program.js +1 -1
  978. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  979. package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
  980. package/views/3d/webgl-engine/lib/RenderingContextOptions.js +5 -0
  981. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  982. package/views/3d/webgl-engine/lib/ShadowCastRenderer.js +1 -1
  983. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  984. package/views/3d/webgl-engine/lib/Texture.js +1 -1
  985. package/views/3d/webgl-engine/lib/TextureRepository.js +1 -1
  986. package/views/3d/webgl-engine/lib/TextureTechnique.js +1 -1
  987. package/views/3d/webgl-engine/lib/WebGLLayer.js +1 -1
  988. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
  989. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  990. package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
  991. package/views/3d/webgl-engine/lib/glUtil3D.js +1 -1
  992. package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
  993. package/views/3d/webgl-engine/lib/lodRendering/InstanceOctree.js +1 -1
  994. package/views/3d/webgl-engine/lib/lodRendering/LodComponentData.js +1 -1
  995. package/views/3d/webgl-engine/lib/lodRendering/LodLevel.js +1 -1
  996. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  997. package/views/3d/webgl-engine/lib/lodRendering/LodResources.js +1 -1
  998. package/views/3d/webgl-engine/lib/lodRendering/RenderInstanceData.js +1 -1
  999. package/views/3d/webgl-engine/lib/octreeUtils.js +1 -1
  1000. package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
  1001. package/views/3d/webgl-engine/materials/DefaultBufferWriter.js +1 -1
  1002. package/views/3d/webgl-engine/materials/DefaultLayouts.js +1 -1
  1003. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  1004. package/views/3d/webgl-engine/materials/DefaultTechniqueConfiguration.js +1 -1
  1005. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  1006. package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
  1007. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  1008. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  1009. package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
  1010. package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
  1011. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  1012. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  1013. package/views/3d/webgl-engine/materials/PathTechniqueConfiguration.js +1 -1
  1014. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  1015. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  1016. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  1017. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  1018. package/views/3d/webgl-engine/materials/WaterTechniqueConfiguration.js +1 -1
  1019. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  1020. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  1021. package/views/3d/webgl-engine/materials/renderers/VaoCache.js +1 -1
  1022. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  1023. package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
  1024. package/views/3d/webgl-engine/shaders/AnimatedLine.glsl.js +5 -5
  1025. package/views/3d/webgl-engine/shaders/AtmosphereCompositingTechnique.js +1 -1
  1026. package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
  1027. package/views/3d/webgl-engine/shaders/CheckerBoardTechniqueConfiguration.js +1 -1
  1028. package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
  1029. package/views/3d/webgl-engine/shaders/ColorMaterialTechniqueConfiguration.js +1 -1
  1030. package/views/3d/webgl-engine/shaders/CompositingTechnique.js +1 -1
  1031. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  1032. package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
  1033. package/views/3d/webgl-engine/shaders/HUDCompositingTechnique.js +1 -1
  1034. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  1035. package/views/3d/webgl-engine/shaders/HUDMaterialTechniqueConfiguration.js +1 -1
  1036. package/views/3d/webgl-engine/shaders/HeatmapDensityTechnique.js +1 -1
  1037. package/views/3d/webgl-engine/shaders/HeatmapTechnique.js +1 -1
  1038. package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
  1039. package/views/3d/webgl-engine/shaders/ImageMaterialTechniqueConfiguration.js +1 -1
  1040. package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
  1041. package/views/3d/webgl-engine/shaders/LineMarkerTechnique.js +1 -1
  1042. package/views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js +1 -1
  1043. package/views/3d/webgl-engine/shaders/MeasurementArrowTechnique.js +1 -1
  1044. package/views/3d/webgl-engine/shaders/NativeLineTechnique.js +1 -1
  1045. package/views/3d/webgl-engine/shaders/OutputColorHighlightOID.glsl.js +0 -1
  1046. package/views/3d/webgl-engine/shaders/OverlayCompositingTechnique.js +1 -1
  1047. package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
  1048. package/views/3d/webgl-engine/shaders/PatternTechniqueConfiguration.js +1 -1
  1049. package/views/3d/webgl-engine/shaders/PointRendererTechnique.js +1 -1
  1050. package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
  1051. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  1052. package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
  1053. package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
  1054. package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechniqueConfiguration.js +1 -1
  1055. package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechnique.js +1 -1
  1056. package/views/3d/webgl-engine/shaders/ShadowCastClearTechnique.js +1 -1
  1057. package/views/3d/webgl-engine/shaders/ShadowCastVisualizeTechnique.js +1 -1
  1058. package/views/3d/webgl-engine/shaders/SlicePlaneMaterialTechnique.js +1 -1
  1059. package/views/3d/webgl-engine/shaders/TerrainTechnique.js +1 -1
  1060. package/views/3d/webgl-engine/shaders/ViewshedTechnique.js +1 -1
  1061. package/views/3d/webgl-engine/statistics/RendererPerformanceInfo.js +1 -1
  1062. package/views/3d/webgl.js +1 -1
  1063. package/views/SceneView.js +1 -1
  1064. package/views/SelectionManager.js +1 -1
  1065. package/views/Theme.js +1 -1
  1066. package/views/VideoView.js +1 -1
  1067. package/views/View.js +1 -1
  1068. package/views/View2D.js +1 -1
  1069. package/views/ViewAnimation.js +1 -1
  1070. package/views/analysis/ElevationProfileResult.js +1 -1
  1071. package/views/draw/DrawAction.js +1 -1
  1072. package/views/draw/DrawGraphicTool.js +1 -1
  1073. package/views/draw/DrawManipulator.js +1 -1
  1074. package/views/draw/DrawOperation.js +1 -1
  1075. package/views/draw/support/Box.js +1 -1
  1076. package/views/draw/support/ConnectedReshapeManager.js +1 -1
  1077. package/views/draw/support/GraphicMover.js +1 -1
  1078. package/views/draw/support/Reshape.js +1 -1
  1079. package/views/interactive/GraphicManipulator.js +1 -1
  1080. package/views/interactive/InteractiveToolBase.js +1 -1
  1081. package/views/interactive/Tooltip.js +1 -1
  1082. package/views/interactive/editGeometry/EditGeometry.js +1 -1
  1083. package/views/interactive/editGeometry/EditGeometryOperations.js +1 -1
  1084. package/views/interactive/snapping/Settings.js +1 -1
  1085. package/views/interactive/snapping/SnappingManager.js +1 -1
  1086. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js +1 -1
  1087. package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorker.js +1 -1
  1088. package/views/layers/LayerView.js +1 -1
  1089. package/views/layers/support/ClipArea.js +1 -1
  1090. package/views/support/GroundViewElevationSampler.js +1 -1
  1091. package/views/support/PixelHighlightOptions.js +1 -1
  1092. package/views/support/Scheduler.js +1 -1
  1093. package/views/support/TileTreeDebugger.js +1 -1
  1094. package/views/support/imageReprojection.js +1 -1
  1095. package/views/support/screenshotUtils.js +1 -1
  1096. package/views/ui/UI.js +1 -1
  1097. package/views/webgl/FramebufferObject.js +1 -1
  1098. package/views/webgl/InstanceCounter.js +1 -1
  1099. package/views/webgl/Parameters.js +1 -1
  1100. package/views/webgl/Program.js +1 -1
  1101. package/views/webgl/ProgramCache.js +1 -1
  1102. package/views/webgl/ProgramTemplate.js +1 -1
  1103. package/views/webgl/RenderingContext.js +1 -1
  1104. package/views/webgl/RenderingContextOptions.js +5 -0
  1105. package/views/webgl/ShaderBuilder.js +1 -1
  1106. package/views/webgl/Texture.js +1 -1
  1107. package/views/webgl/TextureDescriptor.js +1 -1
  1108. package/views/webgl/Util.js +1 -1
  1109. package/views/webgl/VertexArrayObject.js +1 -1
  1110. package/views/webgl/VertexAttributeLayouts.js +5 -0
  1111. package/views/webgl/VertexAttributeLocations.js +5 -0
  1112. package/views/{3d/terrain/RenderOrder.js → webgl/VertexBuffer.js} +1 -0
  1113. package/views/webgl/capabilities/Capabilities.js +1 -1
  1114. package/views/webgl/enums.js +1 -1
  1115. package/views/webgl/heatmapTextureUtils.js +1 -1
  1116. package/views/webgl/rasterUtils.js +1 -1
  1117. package/views/webgl/testAppleAmdDrawArrays.js +1 -1
  1118. package/views/webgl/testFloatBufferBlend.js +1 -1
  1119. package/views/webgl/testSVGPremultipliedAlpha.js +1 -1
  1120. package/views/webgl/textureUtils.js +1 -1
  1121. package/webdoc/GeotriggersInfo.js +1 -1
  1122. package/webdoc/IPSInfo.js +1 -1
  1123. package/webdoc/RangeInfo.js +1 -1
  1124. package/webdoc/Widgets.js +1 -1
  1125. package/webdoc/applicationProperties/Search.js +1 -1
  1126. package/webdoc/applicationProperties/SearchLayer.js +1 -1
  1127. package/webdoc/applicationProperties/SearchLayerField.js +1 -1
  1128. package/webdoc/applicationProperties/SearchTable.js +1 -1
  1129. package/webdoc/applicationProperties/SearchTableField.js +1 -1
  1130. package/webdoc/applicationProperties/Viewing.js +1 -1
  1131. package/webdoc/geotriggersInfo/DeviceLocationFeed.js +1 -1
  1132. package/webdoc/geotriggersInfo/ExpressionInfo.js +1 -1
  1133. package/webdoc/geotriggersInfo/FeatureFenceParameters.js +1 -1
  1134. package/webdoc/geotriggersInfo/FeatureFilter.js +1 -1
  1135. package/webdoc/geotriggersInfo/FeatureLayerSource.js +1 -1
  1136. package/webdoc/geotriggersInfo/Geotrigger.js +1 -1
  1137. package/webdoc/geotriggersInfo/GeotriggerNotificationOptions.js +1 -1
  1138. package/webdoc/ips/AppleIPSProperties.js +1 -1
  1139. package/webdoc/ips/Configuration.js +1 -1
  1140. package/webdoc/ips/GNSSProperties.js +1 -1
  1141. package/webdoc/ips/PathSnappingProperties.js +1 -1
  1142. package/webdoc/ips/PositioningService.js +1 -1
  1143. package/webdoc/ips/SmoothingProperties.js +1 -1
  1144. package/webdoc/support/SlideThumbnail.js +1 -1
  1145. package/webdoc/widgets/FloorFilter.js +1 -1
  1146. package/webdoc/widgets/Range.js +1 -1
  1147. package/webdoc/widgets/TimeSlider.js +1 -1
  1148. package/webmap/ApplicationProperties.js +1 -1
  1149. package/webmap/Bookmark.js +1 -1
  1150. package/webmap/InitialViewProperties.js +1 -1
  1151. package/webmap/background/ColorBackground.js +1 -1
  1152. package/webscene/ApplicationProperties.js +1 -1
  1153. package/webscene/Environment.js +1 -1
  1154. package/webscene/InitialViewProperties.js +1 -1
  1155. package/webscene/Presentation.js +1 -1
  1156. package/webscene/Slide.js +1 -1
  1157. package/webscene/SlideLegendInfo.js +1 -1
  1158. package/webscene/SunLighting.js +1 -1
  1159. package/webscene/TransportationNetwork.js +1 -1
  1160. package/webscene/VirtualLighting.js +1 -1
  1161. package/webscene/background/Background.js +1 -1
  1162. package/webscene/support/Description.js +1 -1
  1163. package/webscene/support/FeatureReference.js +1 -1
  1164. package/webscene/support/FeatureReferenceId.js +1 -1
  1165. package/webscene/support/LayerReference.js +1 -1
  1166. package/webscene/support/SlideElements.js +1 -1
  1167. package/webscene/support/SlideEnvironment.js +1 -1
  1168. package/webscene/support/SlideGround.js +1 -1
  1169. package/webscene/support/SlidePopupInfo.js +1 -1
  1170. package/webscene/support/SlideVisibleLayer.js +1 -1
  1171. package/webscene/support/Title.js +1 -1
  1172. package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
  1173. package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
  1174. package/widgets/BasemapGallery/support/BasemapGalleryItem.js +1 -1
  1175. package/widgets/BasemapGallery/support/PortalBasemapsSource.js +1 -1
  1176. package/widgets/BasemapLayerList/BasemapLayerListViewModel.js +1 -1
  1177. package/widgets/BasemapLayerList.js +1 -1
  1178. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  1179. package/widgets/BatchAttributeForm/templates/ElementTemplateBase.js +1 -1
  1180. package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
  1181. package/widgets/Bookmarks.js +1 -1
  1182. package/widgets/CatalogLayerList/CatalogLayerListViewModel.js +1 -1
  1183. package/widgets/CatalogLayerList.js +1 -1
  1184. package/widgets/CoordinateConversion/CoordinateConversionViewModel.js +1 -1
  1185. package/widgets/Daylight/DaylightViewModel.js +1 -1
  1186. package/widgets/DirectionalPad/DirectionalPadViewModel.js +1 -1
  1187. package/widgets/Directions/DirectionsViewModel.js +1 -1
  1188. package/widgets/Directions/support/directionsUtils.js +1 -1
  1189. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
  1190. package/widgets/Editor/EditorViewModel.js +1 -1
  1191. package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
  1192. package/widgets/Editor/UpdateFeaturesWorkflowData.js +1 -1
  1193. package/widgets/Editor/Workflow.js +1 -1
  1194. package/widgets/Editor/support/SketchController.js +1 -1
  1195. package/widgets/ElevationProfile/ElevationProfileInteraction.js +1 -1
  1196. package/widgets/ElevationProfile/ElevationProfileLine.js +1 -1
  1197. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  1198. package/widgets/Feature/FeatureViewModel.js +1 -1
  1199. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  1200. package/widgets/FeatureForm/Format.js +1 -1
  1201. package/widgets/FeatureForm/UtilityNetworkAssociationInput.js +1 -1
  1202. package/widgets/FeatureTable/Grid/GridViewModel.js +1 -1
  1203. package/widgets/FeatureTable/support/ColumnTemplateBase.js +1 -1
  1204. package/widgets/FeatureTable/support/TableTemplate.js +1 -1
  1205. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
  1206. package/widgets/FeatureTemplates/TemplateItemGroup.js +1 -1
  1207. package/widgets/Home/HomeViewModel.js +1 -1
  1208. package/widgets/LayerList/LayerListViewModel.js +1 -1
  1209. package/widgets/LayerList/ListItem.js +1 -1
  1210. package/widgets/LayerList/ListItemPanel.js +1 -1
  1211. package/widgets/LayerList.js +1 -1
  1212. package/widgets/LinkChartLayoutSwitcher/LinkChartLayoutSwitcherViewModel.js +1 -1
  1213. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  1214. package/widgets/OrientedImageryViewer/adapters/sketch/MeasurementAdapter.js +1 -1
  1215. package/widgets/OrientedImageryViewer/adapters/sketch/TriangulatedMeasurementAdapter.js +1 -1
  1216. package/widgets/OrientedImageryViewer/components/ImageOverlays.js +1 -1
  1217. package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
  1218. package/widgets/OrientedImageryViewer/components/NavigationAction.js +1 -1
  1219. package/widgets/PanoramicViewer/PanoramicViewerViewModel.js +1 -1
  1220. package/widgets/PanoramicViewer/PanoramicZoomConditions.js +1 -1
  1221. package/widgets/Print/CustomTemplate.js +1 -1
  1222. package/widgets/Print/PrintViewModel.js +1 -1
  1223. package/widgets/Search/SearchSource.js +1 -1
  1224. package/widgets/Search/SearchViewModel.js +1 -1
  1225. package/widgets/Sketch/SketchViewModel.js +1 -1
  1226. package/widgets/Sketch/support/OperationHandle.js +1 -1
  1227. package/widgets/TableList/ListItem.js +1 -1
  1228. package/widgets/TableList/ListItemPanel.js +1 -1
  1229. package/widgets/TableList/TableListViewModel.js +1 -1
  1230. package/widgets/TableList.js +1 -1
  1231. package/widgets/TimeSlider/TimeSliderViewModel.js +1 -1
  1232. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  1233. package/widgets/ValuePicker/ValuePickerViewModel.js +1 -1
  1234. package/widgets/Widget.js +1 -1
  1235. package/widgets/support/AnchorElementViewModel.js +1 -1
  1236. package/widgets/support/GeolocationPositioning.js +1 -1
  1237. package/widgets/support/GridControls/GridControlsViewModel.js +1 -1
  1238. package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.js +1 -1
  1239. package/widgets/support/Selector2D/SelectionOperation.js +1 -1
  1240. package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +1 -1
  1241. package/assets/esri/core/workers/chunks/038bd2fec9a91b5a949d.js +0 -1
  1242. package/assets/esri/core/workers/chunks/04798411698a48438bd3.js +0 -1
  1243. package/assets/esri/core/workers/chunks/093de3942e1ead231990.js +0 -1
  1244. package/assets/esri/core/workers/chunks/0997e09fe5b0aba1f804.js +0 -1
  1245. package/assets/esri/core/workers/chunks/0c0080b652cf8afc4e6b.js +0 -1
  1246. package/assets/esri/core/workers/chunks/0f6207d84d15484a3181.js +0 -1
  1247. package/assets/esri/core/workers/chunks/125fdea50620d4db2678.js +0 -1
  1248. package/assets/esri/core/workers/chunks/152128775b4740e779ab.js +0 -1
  1249. package/assets/esri/core/workers/chunks/173c5b8fa1ac7aa6e072.js +0 -1
  1250. package/assets/esri/core/workers/chunks/1dc410bc070cabb7198d.js +0 -1
  1251. package/assets/esri/core/workers/chunks/1e58b1e191498417c21d.js +0 -1
  1252. package/assets/esri/core/workers/chunks/2032b649350a75ba294f.js +0 -1
  1253. package/assets/esri/core/workers/chunks/2105d2cc75e75bf8f1c0.js +0 -1
  1254. package/assets/esri/core/workers/chunks/21246dfe99a4c5906f71.js +0 -1
  1255. package/assets/esri/core/workers/chunks/221748295a5ec633177e.js +0 -1
  1256. package/assets/esri/core/workers/chunks/2a695b50a384c45ace9a.js +0 -1
  1257. package/assets/esri/core/workers/chunks/2ad63b8d6986ac21c398.js +0 -1
  1258. package/assets/esri/core/workers/chunks/2c29f8a708a03cb703ab.js +0 -1
  1259. package/assets/esri/core/workers/chunks/2df9bfddc737d89c94b8.js +0 -1
  1260. package/assets/esri/core/workers/chunks/34ddb8da5c5c8533bd71.js +0 -1
  1261. package/assets/esri/core/workers/chunks/37bfc1a771792b6697fd.js +0 -990
  1262. package/assets/esri/core/workers/chunks/40b0c5368b8322498189.js +0 -1
  1263. package/assets/esri/core/workers/chunks/427deb82fae9c500b375.js +0 -1
  1264. package/assets/esri/core/workers/chunks/4433c195c62a59739c06.js +0 -1
  1265. package/assets/esri/core/workers/chunks/4930bf8f57f481f3a4a3.js +0 -1
  1266. package/assets/esri/core/workers/chunks/4ac6bf9ff1cfbde87c7b.js +0 -1
  1267. package/assets/esri/core/workers/chunks/4bb6148df66e62a5fcf0.js +0 -1
  1268. package/assets/esri/core/workers/chunks/4fb13252a985131d3dae.js +0 -1
  1269. package/assets/esri/core/workers/chunks/528212fb0474bdb2ec92.js +0 -1
  1270. package/assets/esri/core/workers/chunks/5dba8c0c957becedf7f7.js +0 -1
  1271. package/assets/esri/core/workers/chunks/5f995450f720483fcffa.js +0 -1
  1272. package/assets/esri/core/workers/chunks/61aed9a292c981921869.js +0 -1
  1273. package/assets/esri/core/workers/chunks/641ca71d7c1a07bde66a.js +0 -1
  1274. package/assets/esri/core/workers/chunks/6aeff5908c41600a5dfc.js +0 -1
  1275. package/assets/esri/core/workers/chunks/6b6ab092f578b20c8e56.js +0 -1
  1276. package/assets/esri/core/workers/chunks/6c72e2c09ed62cb2fd79.js +0 -1
  1277. package/assets/esri/core/workers/chunks/7099ff8dc699fedea931.js +0 -1
  1278. package/assets/esri/core/workers/chunks/752eabfbed7b8b65cf3f.js +0 -1
  1279. package/assets/esri/core/workers/chunks/7848ea5ca13ec350779a.js +0 -1
  1280. package/assets/esri/core/workers/chunks/7a4ec66a577f7f7996c5.js +0 -1
  1281. package/assets/esri/core/workers/chunks/81be8d23b8dfa4937eaf.js +0 -1
  1282. package/assets/esri/core/workers/chunks/82c10f2418e2f754388c.js +0 -1
  1283. package/assets/esri/core/workers/chunks/831d58235b8b9eb4cdc8.js +0 -1
  1284. package/assets/esri/core/workers/chunks/8d914ea9b18b32fd62b8.js +0 -1
  1285. package/assets/esri/core/workers/chunks/90a0c1c5c851cc9b6d6d.js +0 -1
  1286. package/assets/esri/core/workers/chunks/969a9edba4be8dcbcedd.js +0 -1
  1287. package/assets/esri/core/workers/chunks/9742804f8ee350bf8052.js +0 -1
  1288. package/assets/esri/core/workers/chunks/97a56b058f8472fec1b2.js +0 -1
  1289. package/assets/esri/core/workers/chunks/9a54c96b48e94d816881.js +0 -1
  1290. package/assets/esri/core/workers/chunks/a2bfb7b2f3f909dc5e59.js +0 -1
  1291. package/assets/esri/core/workers/chunks/a53f2529b7067c28f320.js +0 -1
  1292. package/assets/esri/core/workers/chunks/a6b6915b7321f77f765f.js +0 -1
  1293. package/assets/esri/core/workers/chunks/aa12ba96fb8c91105473.js +0 -1
  1294. package/assets/esri/core/workers/chunks/ab73df4f809430db6249.js +0 -1
  1295. package/assets/esri/core/workers/chunks/acb95ae6203f708d71b4.js +0 -1
  1296. package/assets/esri/core/workers/chunks/ae7f1499912c86973921.js +0 -1
  1297. package/assets/esri/core/workers/chunks/afb7e346779adefa4b05.js +0 -1
  1298. package/assets/esri/core/workers/chunks/b28855db6a30d4d4f348.js +0 -1
  1299. package/assets/esri/core/workers/chunks/b4bbd38df56e57783cc0.js +0 -1
  1300. package/assets/esri/core/workers/chunks/b50841f898d4eb420b73.js +0 -1
  1301. package/assets/esri/core/workers/chunks/b98a049561b12a0555b7.js +0 -1
  1302. package/assets/esri/core/workers/chunks/bf60d4da0dff1e14da8e.js +0 -1
  1303. package/assets/esri/core/workers/chunks/c0718a0461839be41a2a.js +0 -1
  1304. package/assets/esri/core/workers/chunks/c0aee315b6218d6456cd.js +0 -1
  1305. package/assets/esri/core/workers/chunks/c0ec1600a86bb9a848d4.js +0 -1
  1306. package/assets/esri/core/workers/chunks/c9b11c7170c99f9e0e93.js +0 -1
  1307. package/assets/esri/core/workers/chunks/ca88859fc69fcb4568c0.js +0 -1
  1308. package/assets/esri/core/workers/chunks/cc3ca1729af33688c1e3.js +0 -1
  1309. package/assets/esri/core/workers/chunks/cd150c7e1516134c7437.js +0 -1
  1310. package/assets/esri/core/workers/chunks/cde79c3644166d4798a8.js +0 -1
  1311. package/assets/esri/core/workers/chunks/d092a4b8fe3d37a6333d.js +0 -1
  1312. package/assets/esri/core/workers/chunks/d4cadde4a9cbfe2c51d8.js +0 -1
  1313. package/assets/esri/core/workers/chunks/d6a188a7d55db69ba30b.js +0 -1
  1314. package/assets/esri/core/workers/chunks/d6b2ab614f308db50c4a.js +0 -346
  1315. package/assets/esri/core/workers/chunks/d7172dc531b4548a8c60.js +0 -1
  1316. package/assets/esri/core/workers/chunks/d88935ae5669d14c5b29.js +0 -1
  1317. package/assets/esri/core/workers/chunks/d9f206e7ac1fad940be7.js +0 -2
  1318. package/assets/esri/core/workers/chunks/dab82564928265b9f22d.js +0 -1
  1319. package/assets/esri/core/workers/chunks/e7cbd1b5e4cb32851a5c.js +0 -1
  1320. package/assets/esri/core/workers/chunks/e82b1f91465d569012c4.js +0 -1
  1321. package/assets/esri/core/workers/chunks/e892ed8b0b990d7eba28.js +0 -1
  1322. package/assets/esri/core/workers/chunks/e897c5ce83db8a71b0a2.js +0 -1
  1323. package/assets/esri/core/workers/chunks/eec36628e638e244f452.js +0 -1
  1324. package/assets/esri/core/workers/chunks/ef3a11f7e047cff6183c.js +0 -1
  1325. package/assets/esri/core/workers/chunks/efec0f496491a0647051.js +0 -1
  1326. package/assets/esri/core/workers/chunks/f01a939af200616eb169.js +0 -1
  1327. package/assets/esri/core/workers/chunks/f19426eb53d8430ded51.js +0 -1
  1328. package/assets/esri/core/workers/chunks/f255b2232f6f049d462d.js +0 -1
  1329. package/assets/esri/core/workers/chunks/f3358b19af0f03f16543.js +0 -1
  1330. package/assets/esri/core/workers/chunks/f4c38a9c01c29b5a6244.js +0 -1
  1331. package/assets/esri/core/workers/chunks/f6c1854f36b029fa6c37.js +0 -1
  1332. package/assets/esri/core/workers/chunks/fa01d418237d7fa67efc.js +0 -1
  1333. package/assets/esri/core/workers/chunks/fe6fa1f2c2d54d41645e.js +0 -1
  1334. package/assets/esri/core/workers/chunks/ff736cb5a9fd18368244.js +0 -1
  1335. package/views/2d/engine/webgl/DefaultVertexAttributeLayouts.js +0 -5
  1336. package/views/2d/engine/webgl/shaderGraph/typed/TypedVertexArrayObject.js +0 -5
  1337. package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +0 -5
  1338. /package/assets/esri/core/workers/chunks/{d9f206e7ac1fad940be7.js.LICENSE.txt → 3386420c9ae891db5be7.js.LICENSE.txt} +0 -0
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as t}from"tslib";import e from"../../../../../core/Accessor.js";import{reallocGrowthFactor as s}from"../../../../../core/arrayUtils.js";import i from"../../../../../core/Evented.js";import{property as a}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/Logger.js";import{subclass as r}from"../../../../../core/accessorSupport/decorators/subclass.js";import{fromMat4 as o,invert as n,transpose as l}from"../../../../../core/libs/gl-matrix-2/math/mat3.js";import{create as h}from"../../../../../core/libs/gl-matrix-2/factories/mat3f64.js";import{multiply as c}from"../../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as g}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{i as m}from"../../../../../chunks/vec32.js";import{create as d}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{BufferViewMat4f64 as f,BufferViewVec3f64 as p,BufferViewMat3f as u,BufferViewVec2f as _,BufferViewVec4f64 as v,BufferViewVec4f as b,BufferViewVec4u8 as M,BufferViewUint8 as F}from"../../../../../geometry/support/buffer/BufferView.js";import{scaleFromMatrix as T}from"../../../support/mathUtils.js";import{newLayout as y}from"../../../support/buffer/InterleavedLayout.js";import{assert as w}from"../Util.js";import{initialCapacity as S}from"./RenderInstanceData.js";function j(t){let e=y().mat4f64("localTransform").mat4f64("globalTransform").vec4f64("boundingSphere").vec3f64("modelOrigin").mat3f("instanceModel").mat3f("instanceModelNormal").vec2f("modelScaleFactors");return t.includes("featureAttribute")&&(e=e.vec4f("featureAttribute")),t.includes("color")&&(e=e.vec4u8("color")),t.includes("objectAndLayerIdColor")&&(e=e.vec4u8("objectAndLayerIdColor")),e=e.u8("state").u8("lodLevel"),e}class O{constructor(t){this.localTransform=t.getField("localTransform",f),this.globalTransform=t.getField("globalTransform",f),this.modelOrigin=t.getField("modelOrigin",p),this.model=t.getField("instanceModel",u),this.modelNormal=t.getField("instanceModelNormal",u),this.modelScaleFactors=t.getField("modelScaleFactors",_),this.boundingSphere=t.getField("boundingSphere",v),this.featureAttribute=t.getField("featureAttribute",b),this.color=t.getField("color",M),this.objectAndLayerIdColor=t.getField("objectAndLayerIdColor",M),this.state=t.getField("state",F),this.lodLevel=t.getField("lodLevel",F)}}let x=class extends e{constructor(t,e){super(t),this.events=new i.EventEmitter,this._capacity=0,this._size=0,this._next=0,this._highlightOptionsMap=new Map,this._highlightOptionsMapPrev=new Map,this._layout=j(e),this._capacity=S,this._buffer=this._layout.createBuffer(this._capacity),this._view=new O(this._buffer)}get capacity(){return this._capacity}get size(){return this._size}get view(){return this._view}addInstance(){this._size+1>this._capacity&&this._grow();const t=this._findSlot();return this._view.state.set(t,1),this._size++,this.events.emit("instances-changed"),t}removeInstance(t){const e=this._view.state;w(t>=0&&t<this._capacity&&!!(1&e.get(t)),"invalid instance handle"),this._getStateFlag(t,18)?this._setStateFlags(t,32):this.freeInstance(t),this.events.emit("instances-changed")}freeInstance(t){const e=this._view.state;w(t>=0&&t<this._capacity&&!!(1&e.get(t)),"invalid instance handle"),e.set(t,0),this._size--}setLocalTransform(t,e,s=!0){this._view.localTransform.setMat(t,e),s&&this.updateModelTransform(t)}getLocalTransform(t,e){this._view.localTransform.getMat(t,e)}setGlobalTransform(t,e,s=!0){this._view.globalTransform.setMat(t,e),s&&this.updateModelTransform(t)}getGlobalTransform(t,e){this._view.globalTransform.getMat(t,e)}updateModelTransform(t){const e=this._view,s=A,i=I;e.localTransform.getMat(t,C),e.globalTransform.getMat(t,V);const a=c(V,V,C);m(s,a[12],a[13],a[14]),e.modelOrigin.setVec(t,s),o(i,a),e.model.setMat(t,i);const r=T(A,a);r.sort(),e.modelScaleFactors.set(t,0,r[1]),e.modelScaleFactors.set(t,1,r[2]),n(i,i),l(i,i),e.modelNormal.setMat(t,i),this._setStateFlags(t,64),this.events.emit("instance-transform-changed",{index:t})}getModelTransform(t,e){const s=this._view;s.model.getMat(t,I),s.modelOrigin.getVec(t,A),e[0]=I[0],e[1]=I[1],e[2]=I[2],e[3]=0,e[4]=I[3],e[5]=I[4],e[6]=I[5],e[7]=0,e[8]=I[6],e[9]=I[7],e[10]=I[8],e[11]=0,e[12]=A[0],e[13]=A[1],e[14]=A[2],e[15]=1}applyShaderTransformation(t,e){null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,t,e)}getCombinedModelTransform(t,e){return this.getModelTransform(t,e),null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,t,e),e}getCombinedLocalTransform(t,e){this._view.localTransform.getMat(t,e),null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,t,e)}getCombinedMaxScaleFactor(t){let e=this._view.modelScaleFactors.get(t,1);return null!=this.shaderTransformation&&(this.shaderTransformation.scaleFactor(A,this,t),e*=Math.max(A[0],A[1],A[2])),e}getCombinedMedianScaleFactor(t){let e=this._view.modelScaleFactors.get(t,0);return null!=this.shaderTransformation&&(this.shaderTransformation.scaleFactor(A,this,t),e*=L(A[0],A[1],A[2])),e}getModel(t,e){this._view.model.getMat(t,e)}setFeatureAttribute(t,e){this._view.featureAttribute.setVec(t,e)}getFeatureAttribute(t,e){this._view.featureAttribute.getVec(t,e)}setColor(t,e){this._view.color.setVec(t,e)}setObjectAndLayerIdColor(t,e){this._view.objectAndLayerIdColor.setVec(t,e)}setVisible(t,e){e!==this.getVisible(t)&&(this._setStateFlag(t,4,e),this.events.emit("instance-visibility-changed",{index:t}))}getVisible(t){return this._getStateFlag(t,4)}setHighlight(t,e){const{_highlightOptionsMap:s}=this,i=s.get(t);e?e!==i&&(s.set(t,e),this._setStateFlag(t,8,!0),this.events.emit("instance-highlight-changed")):i&&(s.delete(t),this._setStateFlag(t,8,!1),this.events.emit("instance-highlight-changed"))}get highlightOptionsMap(){return this._highlightOptionsMap}getHighlightStateFlag(t){return this._getStateFlag(t,8)}geHighlightOptionsPrev(t){const e=this._highlightOptionsMapPrev.get(t)??null;return this._highlightOptionsMapPrev.delete(t),e}getHighlightName(t){const e=this.highlightOptionsMap.get(t)??null;return e?this._highlightOptionsMapPrev.set(t,e):this._highlightOptionsMapPrev.delete(t),e}getState(t){return this._view.state.get(t)}getLodLevel(t){return this._view.lodLevel.get(t)}countFlags(t){let e=0;for(let s=0;s<this._capacity;++s){this.getState(s)&t&&++e}return e}_setStateFlags(t,e){const s=this._view.state;e=s.get(t)|e,s.set(t,e)}_clearStateFlags(t,e){const s=this._view.state;e=s.get(t)&~e,s.set(t,e)}_setStateFlag(t,e,s){s?this._setStateFlags(t,e):this._clearStateFlags(t,e)}_getStateFlag(t,e){return!!(this._view.state.get(t)&e)}_grow(){this._capacity=Math.max(S,Math.floor(this._capacity*s)),this._buffer=this._layout.createBuffer(this._capacity).copyFrom(this._buffer),this._view=new O(this._buffer)}_findSlot(){const t=this._view.state;let e=this._next;for(;1&t.get(e);)e=e+1===this._capacity?0:e+1;return this._next=e+1===this._capacity?0:e+1,e}};function L(t,e,s){return Math.max(Math.min(t,e),Math.min(Math.max(t,e),s))}t([a({constructOnly:!0})],x.prototype,"shaderTransformation",void 0),t([a()],x.prototype,"_size",void 0),t([a({readOnly:!0})],x.prototype,"size",null),x=t([r("esri.views.3d.webgl-engine.lib.lodRendering.InstanceData")],x);const A=d(),I=h(),C=g(),V=g();export{x as InstanceData,O as InstanceDataView};
5
+ import{__decorate as t}from"tslib";import e from"../../../../../core/Accessor.js";import{reallocGrowthFactor as s}from"../../../../../core/arrayUtils.js";import{EventEmitter as i}from"../../../../../core/Evented.js";import{property as a}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/Logger.js";import{subclass as r}from"../../../../../core/accessorSupport/decorators/subclass.js";import{fromMat4 as o,invert as n,transpose as l}from"../../../../../core/libs/gl-matrix-2/math/mat3.js";import{create as h}from"../../../../../core/libs/gl-matrix-2/factories/mat3f64.js";import{multiply as c}from"../../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as g}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{i as m}from"../../../../../chunks/vec32.js";import{create as f}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{BufferViewVec4f as d,BufferViewVec4u8 as p,BufferViewUint8 as u}from"../../../../../geometry/support/buffer/BufferView.js";import{scaleFromMatrix as _}from"../../../support/mathUtils.js";import{newLayout as v}from"../../../support/buffer/InterleavedLayout.js";import{olidEnabled as b}from"../../effects/geometry/olidUtils.js";import{assert as M}from"../Util.js";class T{constructor(t){this.localTransform=t.localTransform,this.globalTransform=t.globalTransform,this.modelOrigin=t.modelOrigin,this.model=t.instanceModel,this.modelNormal=t.instanceModelNormal,this.modelScaleFactors=t.modelScaleFactors,this.boundingSphere=t.boundingSphere,this.featureAttribute=t.getField("instanceFeatureAttribute",d),this.color=t.getField("instanceColor",p),this.olidColor=t.getField("instanceOlidColor",p),this.state=t.getField("state",u),this.lodLevel=t.getField("lodLevel",u)}}let F=class extends e{constructor(t,e){super(t),this.events=new i,this._capacity=0,this._size=0,this._next=0,this._highlightOptionsMap=new Map,this._highlightOptionsMapPrev=new Map,this._layout=S(e),this._capacity=A,this._buffer=this._layout.createBuffer(this._capacity),this._view=new T(this._buffer)}get capacity(){return this._capacity}get size(){return this._size}get view(){return this._view}addInstance(){this._size+1>this._capacity&&this._grow();const t=this._findSlot();return this._view.state.set(t,1),this._size++,this.events.emit("instances-changed"),t}removeInstance(t){const e=this._view.state;M(t>=0&&t<this._capacity&&!!(1&e.get(t)),"invalid instance handle"),this._getStateFlag(t,18)?this._setStateFlags(t,32):this.freeInstance(t),this.events.emit("instances-changed")}freeInstance(t){const e=this._view.state;M(t>=0&&t<this._capacity&&!!(1&e.get(t)),"invalid instance handle"),e.set(t,0),this._size--}setLocalTransform(t,e,s=!0){this._view.localTransform.setMat(t,e),s&&this.updateModelTransform(t)}getLocalTransform(t,e){this._view.localTransform.getMat(t,e)}setGlobalTransform(t,e,s=!0){this._view.globalTransform.setMat(t,e),s&&this.updateModelTransform(t)}getGlobalTransform(t,e){this._view.globalTransform.getMat(t,e)}updateModelTransform(t){const e=this._view,s=j,i=x;e.localTransform.getMat(t,C),e.globalTransform.getMat(t,L);const a=c(L,L,C);m(s,a[12],a[13],a[14]),e.modelOrigin.setVec(t,s),o(i,a),e.model.setMat(t,i);const r=_(j,a);r.sort(),e.modelScaleFactors.set(t,0,r[1]),e.modelScaleFactors.set(t,1,r[2]),n(i,i),l(i,i),e.modelNormal.setMat(t,i),this._setStateFlags(t,64),this.events.emit("instance-transform-changed",{index:t})}getModelTransform(t,e){const s=this._view;s.model.getMat(t,x),s.modelOrigin.getVec(t,j),e[0]=x[0],e[1]=x[1],e[2]=x[2],e[3]=0,e[4]=x[3],e[5]=x[4],e[6]=x[5],e[7]=0,e[8]=x[6],e[9]=x[7],e[10]=x[8],e[11]=0,e[12]=j[0],e[13]=j[1],e[14]=j[2],e[15]=1}applyShaderTransformation(t,e){null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,t,e)}getCombinedModelTransform(t,e){return this.getModelTransform(t,e),null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,t,e),e}getCombinedLocalTransform(t,e){this._view.localTransform.getMat(t,e),null!=this.shaderTransformation&&this.shaderTransformation.applyTransform(this,t,e)}getCombinedMaxScaleFactor(t){let e=this._view.modelScaleFactors.get(t,1);return null!=this.shaderTransformation&&(this.shaderTransformation.scaleFactor(j,this,t),e*=Math.max(j[0],j[1],j[2])),e}getCombinedMedianScaleFactor(t){let e=this._view.modelScaleFactors.get(t,0);return null!=this.shaderTransformation&&(this.shaderTransformation.scaleFactor(j,this,t),e*=w(j[0],j[1],j[2])),e}getModel(t,e){this._view.model.getMat(t,e)}setFeatureAttribute(t,e){this._view.featureAttribute?.setVec(t,e)}getFeatureAttribute(t,e){this._view.featureAttribute?.getVec(t,e)}setColor(t,e){this._view.color?.setVec(t,e)}setObjectAndLayerIdColor(t,e){this._view.olidColor?.setVec(t,e)}setVisible(t,e){e!==this.getVisible(t)&&(this._setStateFlag(t,4,e),this.events.emit("instance-visibility-changed",{index:t}))}getVisible(t){return this._getStateFlag(t,4)}setHighlight(t,e){const{_highlightOptionsMap:s}=this,i=s.get(t);e?e!==i&&(s.set(t,e),this._setStateFlag(t,8,!0),this.events.emit("instance-highlight-changed")):i&&(s.delete(t),this._setStateFlag(t,8,!1),this.events.emit("instance-highlight-changed"))}get highlightOptionsMap(){return this._highlightOptionsMap}getHighlightStateFlag(t){return this._getStateFlag(t,8)}geHighlightOptionsPrev(t){const e=this._highlightOptionsMapPrev.get(t)??null;return this._highlightOptionsMapPrev.delete(t),e}getHighlightName(t){const e=this.highlightOptionsMap.get(t)??null;return e?this._highlightOptionsMapPrev.set(t,e):this._highlightOptionsMapPrev.delete(t),e}getState(t){return this._view.state.get(t)}getLodLevel(t){return this._view.lodLevel.get(t)}countFlags(t){let e=0;for(let s=0;s<this._capacity;++s){this.getState(s)&t&&++e}return e}_setStateFlags(t,e){const s=this._view.state;e=s.get(t)|e,s.set(t,e)}_clearStateFlags(t,e){const s=this._view.state;e=s.get(t)&~e,s.set(t,e)}_setStateFlag(t,e,s){s?this._setStateFlags(t,e):this._clearStateFlags(t,e)}_getStateFlag(t,e){return!!(this._view.state.get(t)&e)}_grow(){this._capacity=Math.max(A,Math.floor(this._capacity*s)),this._buffer=this._layout.createBuffer(this._capacity).copyFrom(this._buffer),this._view=new T(this._buffer)}_findSlot(){const t=this._view.state;let e=this._next;for(;1&t.get(e);)e=e+1===this._capacity?0:e+1;return this._next=e+1===this._capacity?0:e+1,e}};function w(t,e,s){return Math.max(Math.min(t,e),Math.min(Math.max(t,e),s))}t([a({constructOnly:!0})],F.prototype,"shaderTransformation",void 0),t([a()],F.prototype,"_size",void 0),t([a({readOnly:!0})],F.prototype,"size",null),F=t([r("esri.views.3d.webgl-engine.lib.lodRendering.InstanceData")],F);const y=v().mat4f64("localTransform").mat4f64("globalTransform").vec4f64("boundingSphere").vec3f64("modelOrigin").mat3f("instanceModel").mat3f("instanceModelNormal").vec2f("modelScaleFactors");function S(t){return O(y.clone(),t).u8("state").u8("lodLevel")}function O(t,e){return e.instancedFeatureAttribute&&t.vec4f("instanceFeatureAttribute"),e.instancedColor&&t.vec4u8("instanceColor"),b()&&t.vec4u8("instanceOlidColor"),t}const j=f(),x=h(),C=g(),L=g(),A=64;export{F as InstanceData,T as InstanceDataView,O as addOptionalLayoutFields,A as initialCapacity};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{create as t}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{t as e}from"../../../../../chunks/vec32.js";import{w as s,c as i,a as r}from"../../../../../chunks/sphere.js";import{maxScale as a}from"../../../support/mathUtils.js";import h from"../Octree.js";class n extends h{constructor(e,r){super(t=>s(this._instanceData.view.boundingSphere.getVec(t,this._tmpSphere)),{maximumDepth:25}),this._instanceData=e,this._boundingSphere=r,this._tmpSphere=i(),this._tmpMat4=t()}addInstance(t){const s=this._instanceData.view.boundingSphere,i=this._instanceData.getCombinedModelTransform(t,this._tmpMat4);e(r(this._tmpSphere),this._boundingSphere.center,i),this._tmpSphere[3]=this._boundingSphere.radius*a(i),s.setVec(t,this._tmpSphere),this.add([t])}removeInstance(t){this.remove([t])}}export{n as InstanceOctree};
5
+ import{create as t}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{t as e}from"../../../../../chunks/vec32.js";import{w as s,c as i,a as r}from"../../../../../chunks/sphere.js";import{maxScale as a}from"../../../support/mathUtils.js";import{Octree as h}from"../Octree.js";class n extends h{constructor(e,r){super(t=>s(this._instanceData.view.boundingSphere.getVec(t,this._tmpSphere)),{maximumDepth:25}),this._instanceData=e,this._boundingSphere=r,this._tmpSphere=i(),this._tmpMat4=t()}addInstance(t){const s=this._instanceData.view.boundingSphere,i=this._instanceData.getCombinedModelTransform(t,this._tmpMat4);e(r(this._tmpSphere),this._boundingSphere.center,i),this._tmpSphere[3]=this._boundingSphere.radius*a(i),s.setVec(t,this._tmpSphere),this.add([t])}removeInstance(t){this.remove([t])}}export{n as InstanceOctree};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{glLayout as e}from"../../../support/buffer/glUtil.js";import{Default3D as t}from"../DefaultVertexAttributeLocations.js";import{GLMaterials as r}from"../GLMaterials.js";import{VertexArrayObject as o}from"../VertexArrayObject.js";import{BufferObject as s}from"../../../../webgl/BufferObject.js";class i{constructor(i,a){const n=i.renderContext.rctx,m=a.geometry,u=a.geometry.getRenderGeometry(),f=u.material;this._materials=i.materials,f.setParameters({instancedDoublePrecision:!0}),this.geometry=m,this.material=f,this.glMaterials=new r(f,this._materials),this.vertexBufferLayout=u.vertexBufferLayout,this.vbo=s.createVertex(n,35044,u.buffer),this.vao=new o(n,t,new Map([["geometry",e(u.vertexBufferLayout)]]),new Map([["geometry",this.vbo]])),this.vertexCount=u.elementCount}destroy(){this.glMaterials.dispose(),this.vbo.dispose(),this.vao.dispose()}get boundingInfo(){return this.geometry.boundingInfo}get triangleCount(){return this.vertexCount/3}get usedMemory(){return 128+this.vbo.usedMemory+this.vao.usedMemory}intersect(e,t,r,o,s,i,a,n){return this.geometry.intersect(e,t,r,o,s,i,a,n)}}export{i as LodComponentData};
5
+ import{glLayout as e}from"../../../support/buffer/glUtil.js";import{GLMaterials as t}from"../GLMaterials.js";import{VertexArrayObject as r}from"../VertexArrayObject.js";import{BufferObject as s}from"../../../../webgl/BufferObject.js";import{VertexBuffer as o}from"../../../../webgl/VertexBuffer.js";class i{constructor(i,m){this.geometry=m;const n=i.renderContext.rctx,a=m.renderGeometry,{material:u,layout:l,buffer:g}=a;this._materials=i.materials,u.setParameters({instancedDoublePrecision:!0}),this.glMaterials=new t(u,this._materials),this.vbo=s.createVertex(n,35044,g),this.vao=new r(n,new o(e(l),this.vbo))}destroy(){this.glMaterials.dispose(),this.vbo.dispose(),this.vao.dispose()}get material(){return this.geometry.renderGeometry.material}get layout(){return this.geometry.renderGeometry.layout}get boundingInfo(){return this.geometry.boundingInfo}get numTriangles(){return this.numVertices/3}get numVertices(){return this.geometry.renderGeometry.numVertices}get usedMemory(){return 128+this.vbo.usedMemory+this.vao.usedMemory}intersect(e,t,r,s,o,i,m,n){return this.geometry.intersect(e,t,r,s,o,i,m,n)}}export{i as LodComponentData};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{isSome as o}from"../../../../../core/arrayUtils.js";import{isAborted as n,throwIfAborted as t}from"../../../../../core/promiseUtils.js";import{create as e}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{empty as r,expandWithVec3 as i,center as s,diameter as c}from"../../../../../geometry/support/aaBoundingBox.js";import{LodComponentData as u}from"./LodComponentData.js";class a{static async create(e,r,i){const s=await Promise.allSettled(r.components.map(o=>e.controller.schedule(()=>new u(e,o),i))),c=s.map(o=>"fulfilled"===o.status?o.value:null).filter(o);if(n(i)||c.length!==s.length){c.forEach(o=>o.destroy()),t(i);for(const o of s)if("rejected"===o.status)throw o.reason}return new a(r.minScreenSpaceRadius,c)}constructor(o,n){this.minScreenSpaceRadius=o,this.components=n}destroy(){this.components.forEach(o=>o.destroy())}intersect(o,n,t,e,r,i,s){this.components.forEach(c=>c.intersect(o,n,t,e,r,i,this.boundingSphere,s))}get boundingBox(){if(null==this._boundingBox){const o=r();this.components.forEach(n=>{null!=n.boundingInfo&&(i(o,n.boundingInfo.bbMin),i(o,n.boundingInfo.bbMax))}),this._boundingBox=o}return this._boundingBox}get boundingSphere(){if(null==this._boundingSphere){const o=this.boundingBox,n=e();s(o,n),this._boundingSphere={center:n,radius:.5*c(o)}}return this._boundingSphere}get triangleCount(){return this.components.reduce((o,n)=>o+n.triangleCount,0)}}export{a as LodLevel};
5
+ import{isSome as o}from"../../../../../core/arrayUtils.js";import{isAborted as n,throwIfAborted as t}from"../../../../../core/promiseUtils.js";import{create as e}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{empty as r,expandWithVec3 as i,center as s,diameter as c}from"../../../../../geometry/support/aaBoundingBox.js";import{LodComponentData as u}from"./LodComponentData.js";class a{static async create(e,r,i){const s=await Promise.allSettled(r.components.map(o=>e.controller.schedule(()=>new u(e,o.geometry),i))),c=s.map(o=>"fulfilled"===o.status?o.value:null).filter(o);if(n(i)||c.length!==s.length){c.forEach(o=>o.destroy()),t(i);for(const o of s)if("rejected"===o.status)throw o.reason}return new a(r.minScreenSpaceRadius,c)}constructor(o,n){this.minScreenSpaceRadius=o,this.components=n}destroy(){this.components.forEach(o=>o.destroy())}intersect(o,n,t,e,r,i,s){this.components.forEach(c=>c.intersect(o,n,t,e,r,i,this.boundingSphere,s))}get boundingBox(){if(null==this._boundingBox){const o=r();this.components.forEach(n=>{null!=n.boundingInfo&&(i(o,n.boundingInfo.bbMin),i(o,n.boundingInfo.bbMax))}),this._boundingBox=o}return this._boundingBox}get boundingSphere(){if(null==this._boundingSphere){const o=this.boundingBox,n=e();s(o,n),this._boundingSphere={center:n,radius:.5*c(o)}}return this._boundingSphere}get triangleCount(){return this.components.reduce((o,n)=>o+n.numTriangles,0)}}export{a as LodLevel};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import{isSome as t}from"../../../../../core/arrayUtils.js";import n from"../../../../../core/Error.js";import{someMap as r,getOrCreateMapValue as s}from"../../../../../core/MapUtils.js";import{destroyMaybe as a}from"../../../../../core/maybe.js";import{isAborted as i,throwIfAborted as o}from"../../../../../core/promiseUtils.js";import{property as l}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/Logger.js";import{subclass as c}from"../../../../../core/accessorSupport/decorators/subclass.js";import{create as h}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{d,e as u,t as m}from"../../../../../chunks/vec32.js";import{create as f}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{create as p,fromValues as _}from"../../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{debugFlags as g}from"../../../support/debugFlags.js";import{glLayout as y}from"../../../support/buffer/glUtil.js";import{newLayout as v}from"../../../support/buffer/InterleavedLayout.js";import b from"../../../webgl/RenderCamera.js";import{AsyncRenderPlugin as I}from"../../effects/RenderPlugin.js";import{Default3D as C}from"../DefaultVertexAttributeLocations.js";import{DepthRange as D}from"../DepthRange.js";import{assert as R}from"../Util.js";import{InstanceData as E}from"./InstanceData.js";import{InstanceOctree as L}from"./InstanceOctree.js";import{LevelSelector as x}from"./LevelSelector.js";import{LodLevel as j}from"./LodLevel.js";import{RenderInstanceData as S}from"./RenderInstanceData.js";import{colorMixModes as w}from"../../materials/internal/MaterialUtil.js";import{encodeDoubleVec3 as M}from"../../materials/renderers/utils.js";import{DefaultMaterialDrawParameters as A}from"../../shaders/DefaultMaterialTechnique.js";import{defaultHighlightName as O}from"../../../../support/HighlightDefaults.js";import{TaskPriority as U,noBudget as T}from"../../../../support/Scheduler.js";import{bindVertexBufferLayout as F}from"../../../../webgl/Util.js";const q=e=>{const t=e.baseBoundingSphere.radius,n=e.levels.map(e=>e.minScreenSpaceRadius);return new x(t,n)};let H=class extends I{constructor(e,t){super(e),this.type=6,this.isGround=!1,this._levels=[],this._defaultRenderInstanceData=new Array,this._highlightRenderInstanceDataMap=new Map,this._instanceIndex=0,this._cycleStartIndex=0,this._slicePlane=!1,this._camera=new b,this._updateCyclesWithStaticCamera=-1,this._needFullCycle=!1,this.produces=new Map([[2,e=>this._produces(e)],[4,e=>!!this._hasTransparentLevels()&&this._produces(e)]]),this._instanceData=new E({shaderTransformation:e.shaderTransformation},e.optionalFields),this.addHandles(t.registerTask(U.LOD_RENDERER,this))}initialize(){this._instanceBufferLayout=N(this.optionalFields),this._glInstanceBufferLayout=y(this._instanceBufferLayout,1),this.addHandles([this._instanceData.events.on("instances-changed",()=>this._requestUpdateCycle()),this._instanceData.events.on("instance-transform-changed",({index:e})=>{this._requestUpdateCycle(),this.metadata.notifyGraphicGeometryChanged(e)}),this._instanceData.events.on("instance-visibility-changed",({index:e})=>{this._requestUpdateCycle(!0),this.metadata.notifyGraphicVisibilityChanged(e)}),this._instanceData.events.on("instance-highlight-changed",()=>this._requestUpdateCycle(!0))])}get _allRenderInstanceData(){return[this._defaultRenderInstanceData,...this._highlightRenderInstanceDataMap.values()]}get _allRenderInstanceDataExceptHighlightShadow(){const e=[this._defaultRenderInstanceData];for(const t of this._highlightRenderInstanceDataMap)t[0]!==O&&e.push(t[1]);return e}hasHighlight(e){return this._highlightRenderInstanceDataMap.has(e)}get _enableLevelSelection(){return this.symbol.levels.length>1}get levels(){return this._levels}get baseBoundingBox(){return this._levels[this._levels.length-1].boundingBox}get baseBoundingSphere(){return this._levels[this._levels.length-1].boundingSphere}get baseMaterial(){return this._levels[this._levels.length-1].components[0].material}get slicePlaneEnabled(){return this._slicePlane}set slicePlaneEnabled(e){this._slicePlane=e}get layerViewUid(){return this.metadata.layerViewUid}get instanceData(){return this._instanceData}get hasEmissions(){return this._levels.some(e=>e.components.some(e=>e.material.hasEmissions))}get usedMemory(){return this._allRenderInstanceData.reduce((e,t)=>t.reduce((e,t)=>e+t.usedMemory,e),this._levels.reduce((e,t)=>e+t.components.reduce((e,t)=>e+t.usedMemory,0),0))}get renderStats(){const e=this._instanceData.size,t=[];return this._levels.forEach((e,n)=>{const r=this._allRenderInstanceData[0][n].size+this._allRenderInstanceData[1][n].size,s=e.triangleCount;t.push({renderedInstances:r,renderedTriangles:r*s,trianglesPerInstance:s})}),{totalInstances:e,renderedInstances:t.reduce((e,t)=>e+t.renderedInstances,0),renderedTriangles:t.reduce((e,t)=>e+t.renderedTriangles,0),levels:t}}_createRenderInstanceDataArray(e=[]){const{rctx:t}=this._context.renderContext;return this.symbol.levels.map(n=>{e.push(new S(t,this._instanceBufferLayout))}),e}async initializeRenderContext(e,n){this._context=e,this._createRenderInstanceDataArray(this._defaultRenderInstanceData);const r=await Promise.allSettled(this.symbol.levels.map(t=>j.create(e,t,n))),s=r.map(e=>"fulfilled"===e.status?e.value:null).filter(t);if(i(n)||s.length!==r.length){s.forEach(e=>e.destroy()),o(n);for(const e of r)if("rejected"===e.status)throw e.reason}this._levels=s,this._levelSelector=q(this)}uninitializeRenderContext(){this._invalidateOctree(),this._levels.forEach(e=>e.destroy()),this._defaultRenderInstanceData.forEach(e=>e.destroy()),this._highlightRenderInstanceDataMap.forEach(e=>e.forEach(e=>e.destroy()))}_hasTransparentLevels(){return this._levels.some(e=>e.components.some(e=>{const t=e.material.produces.get(4);return t?.(0)}))}hasHighlights(){return r(this._highlightRenderInstanceDataMap,e=>e.some(e=>e.size>0))}_produces(e){return(8!==e||this.hasHighlights())&&(5!==e||this.hasHighlight(O))}prepareRender(e){if(!g.LOD_INSTANCE_RENDERER_DISABLE_UPDATES){if(this._enableLevelSelection){const t=e.bind.contentCamera.equals(this._camera);this._camera.copyFrom(e.bind.contentCamera),t||this._requestUpdateCycle()}this._needFullCycle&&(this.runTask(T),this._needFullCycle=!1)}}acquireTechniques(e){if(!this.baseMaterial.visible||!this.baseMaterial.isVisibleForOutput(e.output))return null;const t=this._getInstanceDatas(e);if(!t)return null;const n=new Array,r=this.levels;return t.forEach(t=>r.forEach(({components:r},s)=>r.forEach(r=>n.push(this._beginComponent(e,t[s],r))))),n}render(e,t){const n=this._getInstanceDatas(e);if(!n||null==t)return;let r=0;e.rctx.bindVAO();const s=this.levels;n.forEach(n=>s.forEach(({components:s},a)=>s.forEach(s=>this._renderComponent(e,t[r++],n[a],s,a))))}_getInstanceDatas(e){const{output:t,bind:n}=e,r=8===t,s=5===t,a=6!==t;if(!r&&!s)return a?this._allRenderInstanceData:this._allRenderInstanceDataExceptHighlightShadow;const{_highlightRenderInstanceDataMap:i}=this;if(a){if(r){const e=n.highlight?.name;if(!e)return null;const t=i.get(e);return t?[t]:null}const e=i.get(O);return s?e?[e]:null:Array.from(i.values())}return null}intersect(e,t,n,r){if(!this.baseMaterial.visible||null==this._octree)return;const s=f();d(s,r,n);const a=s=>{this._instanceData.getCombinedModelTransform(s,W),e.transform.set(W),m(k,n,e.transform.inverse),m(G,r,e.transform.inverse);const a=this._instanceData.getState(s),i=this._instanceData.getLodLevel(s),o=this._levels.length;R(!!(18&a),"invalid instance state"),R(i>=0&&i<o,"invaid lod level"),this._levels[i].intersect(e,t,k,G,s,this.metadata,o)};this.baseMaterial.parameters.verticalOffset?this._octree.forEach(a):this._octree.forEachAlongRay(n,s,a)}notifyShaderTransformationChanged(){this._invalidateOctree(),this._requestUpdateCycle()}get _octree(){if(null==this._octreeCached){const e=this._instanceData,t=e.view?.state;if(!t)return null;this._octreeCached=new L(e,this.baseBoundingSphere);for(let n=0;n<e.capacity;++n)18&t.get(n)&&this._octreeCached.addInstance(n)}return this._octreeCached}_invalidateOctree(){this._octreeCached=a(this._octreeCached)}queryDepthRange(e){if(null==this._octree)return new D;const t=e.viewForward,n=this._octree.findClosest(t,1,e.frustum),r=this._octree.findClosest(t,-1,e.frustum);if(null==n||null==r)return new D;const s=e.eye,a=this._instanceData.view;a.boundingSphere.getVec(n,z),d(z,z,s);const i=u(z,t)-z[3];a.boundingSphere.getVec(r,z),d(z,z,s);const o=u(z,t)+z[3];return new D(i,o)}_requestUpdateCycle(e=!1){this._updateCyclesWithStaticCamera=-1,this._cycleStartIndex=this._instanceIndex,e&&(this._needFullCycle=!0,this._context.requestRender())}_startUpdateCycle(){this._updateCyclesWithStaticCamera++,this._allRenderInstanceData.forEach(e=>e.forEach(e=>e.startUpdateCycle()))}get readyToRun(){return this._instanceData.size>0&&this._updateCyclesWithStaticCamera<1}runTask(e){const{_enableLevelSelection:t,_camera:r,_levelSelector:a}=this;this._allRenderInstanceData.forEach(e=>e.forEach(e=>e.beginUpdate()));const i=this._instanceData,o=i.view;let l=i.size;const c=i.capacity;let h=this._instanceIndex;const d=Math.ceil(c/500),{_highlightRenderInstanceDataMap:u}=this;for(let m=0;m<l&&!e.done;++m){h===this._cycleStartIndex&&this._startUpdateCycle();const m=o.state.get(h);let f=0;if(!(1&m)){h=h+1===c?0:h+1,l++;continue}const p=o.lodLevel.get(h);if(2&m&&this._defaultRenderInstanceData[p].freeTail(),16&m){const e=i.geHighlightOptionsPrev(h);if(e){const t=u.get(e);if(!t)throw new n("internal:lod-renderer","Internal error in lodRenderer");t[p].freeTail(),t.every(e=>e.isEmpty)&&(t.forEach(e=>e.destroy()),u.delete(e))}}if(32&m)i.freeInstance(h);else if(4&m){let e=0;if(t&&(o.modelOrigin.getVec(h,P),e=a.selectLevel(P,i.getCombinedMedianScaleFactor(h),r)),f=-83&m,e>=0)if(8&m){const t=i.getHighlightName(h);if(t){const r=()=>{const e=this._createRenderInstanceDataArray();return e.forEach(e=>e.beginUpdate()),e},a=s(u,t,r);if(e>=a.length)throw new n("internal:lod-renderer",`LodRenderer internal error - missing lodLevel ${e}`);B(a[e],o,h)}f|=16}else B(this._defaultRenderInstanceData[e],o,h),f|=2;o.state.set(h,f),o.lodLevel.set(h,e)}else f=-83&m,o.state.set(h,f);if(null!=this._octreeCached){const e=!!(18&m),t=!!(18&f);!e&&t?this._octreeCached.addInstance(h):e&&!t?this._octreeCached.removeInstance(h):e&&t&&64&m&&(this._octreeCached.removeInstance(h),this._octreeCached.addInstance(h))}h=h+1===c?0:h+1,h%d===0&&e.madeProgress()}this._instanceIndex=h,this._allRenderInstanceData.forEach(e=>e.forEach(e=>e.endUpdate())),this._context.requestRender()}_beginComponent(e,t,n){if(0===t.size)return null;const r=n.glMaterials.load(e.rctx,e.bind.slot,e.output);return r?.beginSlot(e.bind)}_renderComponent(e,t,n,r,s){if(!t)return;const{bind:a,rctx:i}=e;i.runAppleAmdDriverHelper();const o=i.bindTechnique(t,a,r.material.parameters,Z);i.bindVAO(r.vao),t.ensureAttributeLocations(r.vao),g.LOD_INSTANCE_RENDERER_COLORIZE_BY_LEVEL&&0===e.output&&(o.setUniform4fv("externalColor",Y[Math.min(s,Y.length-1)]),o.setUniform1i("symbolColorMixMode",w.replace));const l=n.capacity,c=n.headIndex,h=n.tailIndex,d=n.firstIndex,u=this._glInstanceBufferLayout,m=(e,s)=>{F(i,C,n.buffer,u,e),i.drawArraysInstanced(t.primitiveType,0,r.vertexCount,s-e)};r.material.transparent&&null!=d?c>h?(R(d>=h&&d<=c,"invalid firstIndex"),m(d,c),m(h,d)):c<h&&(d<=c?(R(d>=0&&d<=c,"invalid firstIndex"),m(d,c),m(h,l),m(0,d)):(R(d>=h&&d<=l,"invalid firstIndex"),m(d,l),m(0,c),m(h,d))):c>h?m(h,c):c<h&&(m(0,c),m(h,l)),i.unbindBuffer(34962),i.bindVAO(null)}};function B(e,t,n){const r=e.allocateHead();V(t,n,e.view,r)}function V(e,t,n,r){M(e.modelOrigin,t,n.modelOriginHi,n.modelOriginLo,r),n.model.copyFrom(r,e.model,t),n.modelNormal.copyFrom(r,e.modelNormal,t),e.color&&n.color&&n.color.copyFrom(r,e.color,t),e.objectAndLayerIdColor&&n.objectAndLayerIdColor&&n.objectAndLayerIdColor.copyFrom(r,e.objectAndLayerIdColor,t),e.featureAttribute&&n.featureAttribute&&n.featureAttribute.copyFrom(r,e.featureAttribute,t)}function N(e){let t=v().vec3f("instanceModelOriginHi").vec3f("instanceModelOriginLo").mat3f("instanceModel").mat3f("instanceModelNormal");return null!=e&&e.includes("featureAttribute")&&(t=t.vec4f("instanceFeatureAttribute")),null!=e&&e.includes("color")&&(t=t.vec4u8("instanceColor")),null!=e&&e.includes("objectAndLayerIdColor")&&(t=t.vec4u8("instanceObjectAndLayerIdColor")),t}e([l({constructOnly:!0})],H.prototype,"symbol",void 0),e([l({constructOnly:!0})],H.prototype,"optionalFields",void 0),e([l({constructOnly:!0})],H.prototype,"metadata",void 0),e([l({constructOnly:!0})],H.prototype,"shaderTransformation",void 0),e([l()],H.prototype,"_instanceData",void 0),e([l()],H.prototype,"_cycleStartIndex",void 0),e([l({readOnly:!0})],H.prototype,"_enableLevelSelection",null),e([l()],H.prototype,"_updateCyclesWithStaticCamera",void 0),e([l({readOnly:!0})],H.prototype,"readyToRun",null),H=e([c("esri.views.3d.webgl-engine.lib.lodRendering.LodRenderer")],H);const P=f(),z=p(),W=h(),k=f(),G=f(),Y=[_(1,0,1,1),_(0,0,1,1),_(0,1,0,1),_(1,1,0,1),_(1,0,0,1)],Z=new A;export{H as LodRenderer};
5
+ import{__decorate as e}from"tslib";import{isSome as t}from"../../../../../core/arrayUtils.js";import s from"../../../../../core/Error.js";import{someMap as r,getOrCreateMapValue as n}from"../../../../../core/MapUtils.js";import{destroyMaybe as a}from"../../../../../core/maybe.js";import{isAborted as i,throwIfAborted as o}from"../../../../../core/promiseUtils.js";import{property as l}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/Logger.js";import{subclass as c}from"../../../../../core/accessorSupport/decorators/subclass.js";import{create as h}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{d,e as u,t as m}from"../../../../../chunks/vec32.js";import{create as f}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{create as p,freeze as _}from"../../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{debugFlags as g}from"../../../support/debugFlags.js";import{glLayout as y}from"../../../support/buffer/glUtil.js";import v from"../../../webgl/RenderCamera.js";import{AsyncRenderPlugin as b}from"../../effects/RenderPlugin.js";import{DepthRange as I}from"../DepthRange.js";import{assert as C}from"../Util.js";import{InstanceData as D}from"./InstanceData.js";import{InstanceOctree as R}from"./InstanceOctree.js";import{LevelSelector as E}from"./LevelSelector.js";import{LodLevel as x}from"./LodLevel.js";import{getRenderInstanceDataLayout as S,RenderInstanceData as w}from"./RenderInstanceData.js";import{colorMixModes as L}from"../../materials/internal/MaterialUtil.js";import{encodeDoubleVec3 as j}from"../../materials/renderers/utils.js";import{DefaultMaterialDrawParameters as U}from"../../shaders/DefaultMaterialTechnique.js";import{defaultHighlightName as T}from"../../../../support/HighlightDefaults.js";import{TaskPriority as O,noBudget as A}from"../../../../support/Scheduler.js";import{bindVertexBufferLayout as M}from"../../../../webgl/Util.js";import{fromLayout as q}from"../../../../webgl/VertexAttributeLocations.js";const B=e=>{const t=e.baseBoundingSphere.radius,s=e.levels.map(e=>e.minScreenSpaceRadius);return new E(t,s)};let F=class extends b{constructor(e,t){super(e),this.type=6,this.isGround=!1,this._levels=[],this._defaultRenderInstanceData=new Array,this._highlightRenderInstanceDatas=new Map,this._instanceIndex=0,this._cycleStartIndex=0,this._slicePlane=!1,this._camera=new v,this._updateCyclesWithStaticCamera=-1,this._needFullCycle=!1,this.produces=new Map([[2,e=>this._produces(e)],[4,e=>!!this._hasTransparentLevels()&&this._produces(e)]]),this._instanceData=new D({shaderTransformation:e.shaderTransformation},e.symbol.materialParameters),this.addHandles(t.registerTask(O.LOD_RENDERER,this))}initialize(){this._instanceBufferLayout=S(this.symbol.materialParameters),this._glInstanceBufferLayout=y(this._instanceBufferLayout,1),this.addHandles([this._instanceData.events.on("instances-changed",()=>this._requestUpdateCycle()),this._instanceData.events.on("instance-transform-changed",({index:e})=>{this._requestUpdateCycle(),this.metadata.notifyGraphicGeometryChanged(e)}),this._instanceData.events.on("instance-visibility-changed",({index:e})=>{this._requestUpdateCycle(!0),this.metadata.notifyGraphicVisibilityChanged(e)}),this._instanceData.events.on("instance-highlight-changed",()=>this._requestUpdateCycle(!0))])}get _allRenderInstanceData(){return[this._defaultRenderInstanceData,...this._highlightRenderInstanceDatas.values()]}get _allRenderInstanceDataExceptHighlightShadow(){const e=[this._defaultRenderInstanceData];for(const t of this._highlightRenderInstanceDatas)t[0]!==T&&e.push(t[1]);return e}hasHighlight(e){return this._highlightRenderInstanceDatas.has(e)}get _enableLevelSelection(){return this.symbol.levels.length>1}get levels(){return this._levels}get baseBoundingBox(){return this._levels[this._levels.length-1].boundingBox}get baseBoundingSphere(){return this._levels[this._levels.length-1].boundingSphere}get baseMaterial(){return this._levels[this._levels.length-1].components[0].material}get slicePlaneEnabled(){return this._slicePlane}set slicePlaneEnabled(e){this._slicePlane=e}get layerViewUid(){return this.metadata.layerViewUid}get instanceData(){return this._instanceData}get hasEmissions(){return this._levels.some(e=>e.components.some(e=>e.material.hasEmissions))}get usedMemory(){return this._allRenderInstanceData.reduce((e,t)=>t.reduce((e,t)=>e+t.usedMemory,e),this._levels.reduce((e,t)=>e+t.components.reduce((e,t)=>e+t.usedMemory,0),0))}get renderStats(){const e=this._instanceData.size,t=[];return this._levels.forEach((e,s)=>{const r=this._allRenderInstanceData[0][s].size+this._allRenderInstanceData[1][s].size,n=e.triangleCount;t.push({renderedInstances:r,renderedTriangles:r*n,trianglesPerInstance:n})}),{totalInstances:e,renderedInstances:t.reduce((e,t)=>e+t.renderedInstances,0),renderedTriangles:t.reduce((e,t)=>e+t.renderedTriangles,0),levels:t}}_createRenderInstanceDataArray(){const{rctx:e}=this._context.renderContext;return this.symbol.levels.map(t=>new w(e,this._instanceBufferLayout))}async initializeRenderContext(e,s){this._context=e,this._defaultRenderInstanceData=this._createRenderInstanceDataArray();const r=await Promise.allSettled(this.symbol.levels.map(t=>x.create(e,t,s))),n=r.map(e=>"fulfilled"===e.status?e.value:null).filter(t);if(i(s)||n.length!==r.length){n.forEach(e=>e.destroy()),o(s);for(const e of r)if("rejected"===e.status)throw e.reason}this._levels=n,this._levelSelector=B(this)}uninitializeRenderContext(){this._invalidateOctree(),this._levels.forEach(e=>e.destroy()),this._defaultRenderInstanceData.forEach(e=>e.destroy()),this._highlightRenderInstanceDatas.forEach(e=>e.forEach(e=>e.destroy()))}_hasTransparentLevels(){return this._levels.some(e=>e.components.some(e=>{const t=e.material.produces.get(4);return t?.(0)}))}hasHighlights(){return r(this._highlightRenderInstanceDatas,e=>e.some(e=>e.size>0))}_produces(e){return(8!==e||this.hasHighlights())&&(5!==e||this.hasHighlight(T))}prepareRender(e){if(!g.LOD_INSTANCE_RENDERER_DISABLE_UPDATES){if(this._enableLevelSelection){const t=e.bind.contentCamera.equals(this._camera);this._camera.copyFrom(e.bind.contentCamera),t||this._requestUpdateCycle()}this._needFullCycle&&(this.runTask(A),this._needFullCycle=!1)}}acquireTechniques(e){if(!this.baseMaterial.visible||!this.baseMaterial.isVisibleForOutput(e.output))return null;const t=this._getInstanceDatas(e);if(!t)return null;const s=new Array,r=this.levels;return t.forEach(t=>r.forEach(({components:r},n)=>r.forEach(r=>s.push(this._beginComponent(e,t[n],r))))),s}render(e,t){const s=this._getInstanceDatas(e);if(!s||null==t)return;let r=0;const n=this.levels;s.forEach(s=>n.forEach(({components:n},a)=>n.forEach(n=>this._renderComponent(e,t[r++],s[a],n,a)))),e.rctx.unbindBuffer(34962),e.rctx.bindVAO(null)}_getInstanceDatas(e){const{output:t,bind:s}=e,r=8===t,n=5===t,a=6!==t;if(!r&&!n)return a?this._allRenderInstanceData:this._allRenderInstanceDataExceptHighlightShadow;const{_highlightRenderInstanceDatas:i}=this;if(a){if(r){const e=s.highlight?.name;if(!e)return null;const t=i.get(e);return t?[t]:null}const e=i.get(T);return n?e?[e]:null:Array.from(i.values())}return null}intersect(e,t,s,r){if(!this.baseMaterial.visible||null==this._octree)return;const n=f();d(n,r,s);const a=n=>{this._instanceData.getCombinedModelTransform(n,N),e.transform.set(N),m(W,s,e.transform.inverse),m(k,r,e.transform.inverse);const a=this._instanceData.getState(n),i=this._instanceData.getLodLevel(n),o=this._levels.length;C(!!(18&a),"invalid instance state"),C(i>=0&&i<o,"invaid lod level"),this._levels[i].intersect(e,t,W,k,n,this.metadata,o)};this.baseMaterial.parameters.verticalOffset?this._octree.forEach(a):this._octree.forEachAlongRay(s,n,a)}notifyShaderTransformationChanged(){this._invalidateOctree(),this._requestUpdateCycle()}get _octree(){if(null==this._octreeCached){const e=this._instanceData,t=e.view?.state;if(!t)return null;this._octreeCached=new R(e,this.baseBoundingSphere);for(let s=0;s<e.capacity;++s)18&t.get(s)&&this._octreeCached.addInstance(s)}return this._octreeCached}_invalidateOctree(){this._octreeCached=a(this._octreeCached)}queryDepthRange(e){if(null==this._octree)return new I;const t=e.viewForward,s=this._octree.findClosest(t,1,e.frustum),r=this._octree.findClosest(t,-1,e.frustum);if(null==s||null==r)return new I;const n=e.eye,a=this._instanceData.view;a.boundingSphere.getVec(s,z),d(z,z,n);const i=u(z,t)-z[3];a.boundingSphere.getVec(r,z),d(z,z,n);const o=u(z,t)+z[3];return new I(i,o)}_requestUpdateCycle(e=!1){this._updateCyclesWithStaticCamera=-1,this._cycleStartIndex=this._instanceIndex,e&&(this._needFullCycle=!0,this._context.requestRender())}_startUpdateCycle(){this._updateCyclesWithStaticCamera++,this._allRenderInstanceData.forEach(e=>e.forEach(e=>e.startUpdateCycle()))}get readyToRun(){return this._instanceData.size>0&&this._updateCyclesWithStaticCamera<1}runTask(e){const{_enableLevelSelection:t,_camera:r,_levelSelector:a}=this;this._allRenderInstanceData.forEach(e=>e.forEach(e=>e.beginUpdate()));const i=this._instanceData,o=i.view;let l=i.size;const c=i.capacity;let h=this._instanceIndex;const d=Math.ceil(c/500),{_highlightRenderInstanceDatas:u}=this;for(let m=0;m<l&&!e.done;++m){h===this._cycleStartIndex&&this._startUpdateCycle();const m=o.state.get(h);let f=0;if(!(1&m)){h=h+1===c?0:h+1,l++;continue}const p=o.lodLevel.get(h);if(2&m&&this._defaultRenderInstanceData[p].freeTail(),16&m){const e=i.geHighlightOptionsPrev(h);if(e){const t=u.get(e);if(!t)throw new s("internal:lod-renderer","Internal error in lodRenderer");t[p].freeTail(),t.every(e=>e.isEmpty)&&(t.forEach(e=>e.destroy()),u.delete(e))}}if(32&m)i.freeInstance(h);else if(4&m){let e=0;if(t&&(o.modelOrigin.getVec(h,V),e=a.selectLevel(V,i.getCombinedMedianScaleFactor(h),r)),f=-83&m,e>=0)if(8&m){const t=i.getHighlightName(h);if(t){const r=()=>{const e=this._createRenderInstanceDataArray();return e.forEach(e=>e.beginUpdate()),e},a=n(u,t,r);if(e>=a.length)throw new s("internal:lod-renderer",`LodRenderer internal error - missing lodLevel ${e}`);H(a[e],o,h)}f|=16}else H(this._defaultRenderInstanceData[e],o,h),f|=2;o.state.set(h,f),o.lodLevel.set(h,e)}else f=-83&m,o.state.set(h,f);if(null!=this._octreeCached){const e=!!(18&m),t=!!(18&f);!e&&t?this._octreeCached.addInstance(h):e&&!t?this._octreeCached.removeInstance(h):e&&t&&64&m&&(this._octreeCached.removeInstance(h),this._octreeCached.addInstance(h))}h=h+1===c?0:h+1,h%d===0&&e.madeProgress()}this._instanceIndex=h,this._allRenderInstanceData.forEach(e=>e.forEach(e=>e.endUpdate())),this._context.requestRender()}_beginComponent(e,t,s){if(0===t.size)return null;const r=s.glMaterials.load(e.rctx,e.bind.slot,e.output);return r?.beginSlot(e.bind)}_renderComponent(e,t,s,r,n){if(!t)return;const{bind:a,rctx:i}=e;i.runAppleAmdDriverHelper();const o=i.bindTechnique(t,a,r.material.parameters,Y),l=this._glInstanceBufferLayout;o.assertCompatibleVertexAttributeLocations(r.vao,q(l)),i.bindVAO(r.vao),g.LOD_INSTANCE_RENDERER_COLORIZE_BY_LEVEL&&0===e.output&&(o.setUniform4fv("externalColor",G[Math.min(n,G.length-1)]),o.setUniform1i("symbolColorMixMode",L.replace));const c=s.capacity,h=s.headIndex,d=s.tailIndex,u=s.firstIndex,m=(e,n)=>{M(i,o.locations,s.buffer,l,e),i.drawArraysInstanced(t.primitiveType,0,r.numVertices,n-e)};r.material.transparent&&null!=u?h>d?(C(u>=d&&u<=h,"invalid firstIndex"),m(u,h),m(d,u)):h<d&&(u<=h?(C(u>=0&&u<=h,"invalid firstIndex"),m(u,h),m(d,c),m(0,u)):(C(u>=d&&u<=c,"invalid firstIndex"),m(u,c),m(0,h),m(d,u))):h>d?m(d,h):h<d&&(m(0,h),m(d,c))}};function H(e,t,s){const r=e.allocateHead();P(t,s,e.view,r)}function P(e,t,s,r){j(e.modelOrigin,t,s.modelOriginHi,s.modelOriginLo,r),s.model.copyFrom(r,e.model,t),s.modelNormal.copyFrom(r,e.modelNormal,t),e.color&&s.color&&s.color.copyFrom(r,e.color,t),e.olidColor&&s.olidColor&&s.olidColor.copyFrom(r,e.olidColor,t),e.featureAttribute&&s.featureAttribute&&s.featureAttribute.copyFrom(r,e.featureAttribute,t)}e([l({constructOnly:!0})],F.prototype,"symbol",void 0),e([l({constructOnly:!0})],F.prototype,"metadata",void 0),e([l({constructOnly:!0})],F.prototype,"shaderTransformation",void 0),e([l()],F.prototype,"_instanceData",void 0),e([l()],F.prototype,"_cycleStartIndex",void 0),e([l({readOnly:!0})],F.prototype,"_enableLevelSelection",null),e([l()],F.prototype,"_updateCyclesWithStaticCamera",void 0),e([l({readOnly:!0})],F.prototype,"readyToRun",null),F=e([c("esri.views.3d.webgl-engine.lib.lodRendering.LodRenderer")],F);const V=f(),z=p(),N=h(),W=f(),k=f(),G=[_(1,0,1,1),_(0,0,1,1),_(0,1,0,1),_(1,1,0,1),_(1,0,0,1)],Y=new U;export{F as LodRenderer};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{unique as e}from"../../../../../core/arrayUtils.js";import{estimateNumberArrayMemory as t,baseTypedArrayMemory as r}from"../../../../../core/memoryEstimations.js";import{IntersectorResult as s}from"../IntersectorResult.js";import{LodTarget as n}from"./Intersector.js";class i{constructor(e,t,r,s){this.material=e,this.bufferWriter=e.createBufferWriter(),this.vertexBufferLayout=this.bufferWriter.vertexBufferLayout,this.buffer=t,this.elementCount=r,this.boundingInfo=s}get numTriangles(){return this.elementCount/3}get numVertices(){return this.elementCount}computeUsedMemory(){return this.buffer.byteLength+r}getRenderGeometry(){return this}intersect(e,t,r,s,n,i,o,m){const a=this.bufferWriter,c=this.buffer;a.intersect(c,this.material.parameters,null,e,r,s,(r,s,a)=>u(r,s,a,e,t,i,o,n,m))}}class o{constructor(e){this.engineGeometry=e}get material(){return this.engineGeometry.material}get numVertices(){return this.engineGeometry.attributes.get("position").indices.length}get numTriangles(){return this.engineGeometry.indexCount/3}get boundingInfo(){return this.engineGeometry.boundingInfo}computeUsedMemory(){return Array.from(this.engineGeometry.attributes.values()).reduce((e,r)=>e+t(r.data,r.indices),0)}getRenderGeometry(){const e=this.material,t=this.engineGeometry,r=t.attributes,s=t.boundingInfo,n=e.createBufferWriter(),o=n.vertexBufferLayout,u=n.elementCount(r),m=o.createBuffer(u);return n.write(null,null,r,null,m,0),new i(e,m.buffer,u,s)}intersect(e,t,r,s,n,i,o,m){const a=this.engineGeometry;this.material.intersect(a,e.transform.transform,e,r,s,(r,s,a)=>u(r,s,a,e,t,i,o,n,m))}}function u(e,t,r,i,o,u,m,a,c){if(e<0)return;if(o&&!o(i.rayBegin,i.rayEnd,e))return;const l=new n(u.layerViewUid,u.graphicUid(a),r,m,c);if((null==i.results.min.distance||e<i.results.min.distance)&&i.results.min.set(6,l,e,t,i.transform.transform),(null==i.results.max.distance||e>i.results.max.distance)&&i.results.max.set(6,l,e,t,i.transform.transform),2===i.options.store){const r=new s(i.results.min.ray);r.set(6,l,e,t,i.transform.transform),i.results.all.push(r)}}class m{constructor(e,t=null){this.geometry=e,this.textures=t}get material(){return this.geometry.material}get numTriangles(){return this.geometry.numTriangles}}class a{constructor(t,r,s){this.components=t,this.minScreenSpaceRadius=r,this.pivotOffset=s;const n=e(this.components.map(e=>e.geometry));this.numVertices=n.reduce((e,t)=>e+t.numVertices,0)}}class c{constructor(e){this.levels=e,this.levels.sort((e,t)=>e.minScreenSpaceRadius===t.minScreenSpaceRadius?e.numVertices-t.numVertices:e.minScreenSpaceRadius-t.minScreenSpaceRadius)}getMaterials(){const t=[];return this.levels.forEach(e=>e.components.forEach(e=>t.push(e.geometry.material))),e(t)}getTextures(){const t=new Array;return this.levels.forEach(e=>e.components.forEach(e=>{null!=e.textures&&t.push(...e.textures)})),e(t)}getGeometries(){const t=new Array;return this.levels.forEach(e=>e.components.forEach(e=>{t.push(e.geometry)})),e(t)}getEngineGeometries(){return this.getGeometries().map(e=>e.engineGeometry).filter(e=>null!=e)}computeUsedMemory(){const e=this.getGeometries(),t=this.getTextures(),r=e.reduce((e,t)=>e+t.computeUsedMemory(),0);return t.reduce((e,t)=>e+t.usedMemory,0)+r}}export{o as LodComponentEngineGeometry,i as LodComponentRenderGeometry,m as LodComponentResources,a as LodLevelResources,c as LodResources};
5
+ import{unique as e}from"../../../../../core/arrayUtils.js";import{estimateNumberArrayMemory as t,baseTypedArrayMemory as r}from"../../../../../core/memoryEstimations.js";import{IntersectorResult as s}from"../IntersectorResult.js";import{LodTarget as n}from"./Intersector.js";class i{constructor(e,t,r,s){this.material=e,this.buffer=t,this.numVertices=r,this.boundingInfo=s,this.bufferWriter=e.createBufferWriter()}get layout(){return this.bufferWriter.layout}get numTriangles(){return this.numVertices/3}computeUsedMemory(){return this.buffer.byteLength+r}get renderGeometry(){return this}intersect(e,t,r,s,n,i,o,m){const a=this.bufferWriter,c=this.buffer;a.intersect(c,this.material.parameters,null,e,r,s,(r,s,a)=>u(r,s,a,e,t,i,o,n,m))}}class o{constructor(e){this.engineGeometry=e;const t=this.material,r=this.engineGeometry,s=r.attributes,n=r.boundingInfo,o=t.createBufferWriter(),u=o.layout,m=o.elementCount(s),a=u.createBuffer(m);o.write(null,null,s,null,a,0),this.renderGeometry=new i(t,a.buffer,m,n)}get material(){return this.engineGeometry.material}get numVertices(){return this.engineGeometry.indexCount}get numTriangles(){return this.numVertices/3}get boundingInfo(){return this.engineGeometry.boundingInfo}computeUsedMemory(){return Array.from(this.engineGeometry.attributes.values()).reduce((e,r)=>e+t(r.data,r.indices),0)}intersect(e,t,r,s,n,i,o,m){const a=this.engineGeometry;this.material.intersect(a,e.transform.transform,e,r,s,(r,s,a)=>u(r,s,a,e,t,i,o,n,m))}}function u(e,t,r,i,o,u,m,a,c){if(e<0)return;if(o&&!o(i.rayBegin,i.rayEnd,e))return;const l=new n(u.layerViewUid,u.graphicUid(a),r,m,c);if((null==i.results.min.distance||e<i.results.min.distance)&&i.results.min.set(6,l,e,t,i.transform.transform),(null==i.results.max.distance||e>i.results.max.distance)&&i.results.max.set(6,l,e,t,i.transform.transform),2===i.options.store){const r=new s(i.results.min.ray);r.set(6,l,e,t,i.transform.transform),i.results.all.push(r)}}class m{constructor(e,t=null){this.geometry=e,this.textures=t}get material(){return this.geometry.material}get numTriangles(){return this.geometry.numTriangles}}class a{constructor(t,r,s){this.components=t,this.minScreenSpaceRadius=r,this.pivotOffset=s;const n=e(this.components.map(e=>e.geometry));this.numVertices=n.reduce((e,t)=>e+t.numVertices,0)}}class c{constructor(e){this.levels=e,this.levels.sort((e,t)=>e.minScreenSpaceRadius===t.minScreenSpaceRadius?e.numVertices-t.numVertices:e.minScreenSpaceRadius-t.minScreenSpaceRadius)}get materialParameters(){return this.levels[0].components[0].geometry.material.parameters}getMaterials(){const t=[];return this.levels.forEach(e=>e.components.forEach(e=>t.push(e.geometry.material))),e(t)}getTextures(){const t=new Array;return this.levels.forEach(e=>e.components.forEach(e=>{null!=e.textures&&t.push(...e.textures)})),e(t)}getGeometries(){const t=new Array;return this.levels.forEach(e=>e.components.forEach(e=>{t.push(e.geometry)})),e(t)}getEngineGeometries(){return this.getGeometries().map(e=>e.engineGeometry).filter(e=>null!=e)}computeUsedMemory(){const e=this.getGeometries(),t=this.getTextures(),r=e.reduce((e,t)=>e+t.computeUsedMemory(),0);return t.reduce((e,t)=>e+t.usedMemory,0)+r}}export{o as LodComponentEngineGeometry,i as LodComponentRenderGeometry,m as LodComponentResources,a as LodLevelResources,c as LodResources};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{reallocShrinkThreshold as t,reallocGrowthFactor as i,reallocShrinkFactor as e}from"../../../../../core/arrayUtils.js";import{BufferViewVec3f as s,BufferViewMat3f as a,BufferViewVec4f as n,BufferViewVec4u8 as r}from"../../../../../geometry/support/buffer/BufferView.js";import{assert as h}from"../Util.js";import d from"./BackedBufferObject.js";class _{constructor(t){this.modelOriginHi=t.getField("instanceModelOriginHi",s),this.modelOriginLo=t.getField("instanceModelOriginLo",s),this.model=t.getField("instanceModel",a),this.modelNormal=t.getField("instanceModelNormal",a),this.featureAttribute=t.getField("instanceFeatureAttribute",n),this.color=t.getField("instanceColor",r),this.objectAndLayerIdColor=t.getField("instanceObjectAndLayerIdColor",r)}}class c{constructor(t,i){this._rctx=t,this._instanceBufferLayout=i,this._headIndex=0,this._tailIndex=0,this._firstIndex=null,this._captureFirstIndex=!0,this._updating=!1,this._prevHeadIndex=0,this._resized=!1,this._capacity=1}destroy(){this._buffer&&this._buffer.destroy()}get buffer(){return this._buffer.buffer}get view(){return this._view}get capacity(){return this._capacity}get size(){const t=this._headIndex,i=this._tailIndex;return t>=i?t-i:t+this._capacity-i}get isEmpty(){return this._headIndex===this._tailIndex}get isFull(){return this._tailIndex===(this._headIndex+1)%this._capacity}get headIndex(){return this._headIndex}get tailIndex(){return this._tailIndex}get firstIndex(){return this._firstIndex}get usedMemory(){return this._buffer?.usedMemory??0}reset(){this._headIndex=0,this._tailIndex=0,this._firstIndex=null}startUpdateCycle(){this._captureFirstIndex=!0}beginUpdate(){h(!this._updating,"already updating"),this._updating=!0,this._prevHeadIndex=this._headIndex}endUpdate(){h(this._updating,"not updating"),this.size<t*this.capacity&&this._shrink(),this._resized?(this._buffer.transferAll(),this._resized=!1):this._transferRange(this._prevHeadIndex,this._headIndex),this._updating=!1}allocateHead(){h(this._updating,"not updating"),this.isFull&&this._grow();const t=this.headIndex;return this._captureFirstIndex&&(this._firstIndex=t,this._captureFirstIndex=!1),this._incrementHead(),h(this._headIndex!==this._tailIndex,"invalid pointers"),t}freeTail(){h(this._updating,"not updating"),h(this.size>0,"invalid size");const t=this._tailIndex===this._firstIndex;this._incrementTail(),t&&(this._firstIndex=this._tailIndex)}_grow(){const t=Math.max(o,Math.floor(this._capacity*i));this._resize(t)}_shrink(){const t=Math.max(o,Math.floor(this._capacity*e));this._resize(t)}_resize(t){if(h(this._updating,"not updating"),t===this._capacity)return;const i=new d(this._rctx,this._instanceBufferLayout.stride,t);if(this._buffer){this._firstIndex&&(this._firstIndex=(this._firstIndex+this._capacity-this._tailIndex)%this._capacity);const t=this.size,e=this._compactInstances(i);h(e===t,"invalid compaction"),this._buffer.destroy(),this._tailIndex=0,this._headIndex=e,this._prevHeadIndex=0}this._resized=!0,this._capacity=t,this._buffer=i,this._view=new _(this._instanceBufferLayout.createView(this._buffer.array))}_compactInstances(t){const i=this._headIndex,e=this._tailIndex;return e<i?(this._buffer.copyRange(e,i,t),i-e):e>i?(this._buffer.copyRange(e,this._capacity,t),i>0&&this._buffer.copyRange(0,i,t,this._capacity-e),i+(this._capacity-e)):0}_incrementHead(t=1){this._headIndex=(this._headIndex+t)%this._capacity}_incrementTail(t=1){this._tailIndex=(this._tailIndex+t)%this._capacity}_transferRange(t,i){t<i?this._buffer.transferRange(t,i):t>i&&(i>0&&this._buffer.transferRange(0,i),this._buffer.transferRange(t,this._capacity))}}const o=64;export{c as RenderInstanceData,_ as RenderInstanceDataView,o as initialCapacity};
5
+ import{reallocShrinkThreshold as t,reallocGrowthFactor as i,reallocShrinkFactor as e}from"../../../../../core/arrayUtils.js";import{BufferViewVec4f as s,BufferViewVec4u8 as a}from"../../../../../geometry/support/buffer/BufferView.js";import{newLayout as n}from"../../../support/buffer/InterleavedLayout.js";import{assert as r}from"../Util.js";import h from"./BackedBufferObject.js";import{addOptionalLayoutFields as d,initialCapacity as _}from"./InstanceData.js";class c{constructor(t){this.model=t.instanceModel,this.modelNormal=t.instanceModelNormal,this.modelOriginHi=t.instanceModelOriginHi,this.modelOriginLo=t.instanceModelOriginLo,this.featureAttribute=t.getField("instanceFeatureAttribute",s),this.color=t.getField("instanceColor",a),this.olidColor=t.getField("instanceOlidColor",a)}}class o{constructor(t,i){this._rctx=t,this._layout=i,this._headIndex=0,this._tailIndex=0,this._firstIndex=null,this._captureFirstIndex=!0,this._updating=!1,this._prevHeadIndex=0,this._resized=!1,this._capacity=1}destroy(){this._buffer&&this._buffer.destroy()}get buffer(){return this._buffer.buffer}get view(){return this._view}get capacity(){return this._capacity}get size(){const t=this._headIndex,i=this._tailIndex;return t>=i?t-i:t+this._capacity-i}get isEmpty(){return this._headIndex===this._tailIndex}get isFull(){return this._tailIndex===(this._headIndex+1)%this._capacity}get headIndex(){return this._headIndex}get tailIndex(){return this._tailIndex}get firstIndex(){return this._firstIndex}get usedMemory(){return this._buffer?.usedMemory??0}reset(){this._headIndex=0,this._tailIndex=0,this._firstIndex=null}startUpdateCycle(){this._captureFirstIndex=!0}beginUpdate(){r(!this._updating,"already updating"),this._updating=!0,this._prevHeadIndex=this._headIndex}endUpdate(){r(this._updating,"not updating"),this.size<t*this.capacity&&this._shrink(),this._resized?(this._buffer.transferAll(),this._resized=!1):this._transferRange(this._prevHeadIndex,this._headIndex),this._updating=!1}allocateHead(){r(this._updating,"not updating"),this.isFull&&this._grow();const t=this.headIndex;return this._captureFirstIndex&&(this._firstIndex=t,this._captureFirstIndex=!1),this._incrementHead(),r(this._headIndex!==this._tailIndex,"invalid pointers"),t}freeTail(){r(this._updating,"not updating"),r(this.size>0,"invalid size");const t=this._tailIndex===this._firstIndex;this._incrementTail(),t&&(this._firstIndex=this._tailIndex)}_grow(){const t=Math.max(_,Math.floor(this._capacity*i));this._resize(t)}_shrink(){const t=Math.max(_,Math.floor(this._capacity*e));this._resize(t)}_resize(t){if(r(this._updating,"not updating"),t===this._capacity)return;const i=new h(this._rctx,this._layout.stride,t);if(this._buffer){this._firstIndex&&(this._firstIndex=(this._firstIndex+this._capacity-this._tailIndex)%this._capacity);const t=this.size,e=this._compactInstances(i);r(e===t,"invalid compaction"),this._buffer.destroy(),this._tailIndex=0,this._headIndex=e,this._prevHeadIndex=0}this._resized=!0,this._capacity=t,this._buffer=i,this._view=new c(this._layout.createView(this._buffer.array))}_compactInstances(t){const i=this._headIndex,e=this._tailIndex;return e<i?(this._buffer.copyRange(e,i,t),i-e):e>i?(this._buffer.copyRange(e,this._capacity,t),i>0&&this._buffer.copyRange(0,i,t,this._capacity-e),i+(this._capacity-e)):0}_incrementHead(t=1){this._headIndex=(this._headIndex+t)%this._capacity}_incrementTail(t=1){this._tailIndex=(this._tailIndex+t)%this._capacity}_transferRange(t,i){t<i?this._buffer.transferRange(t,i):t>i&&(i>0&&this._buffer.transferRange(0,i),this._buffer.transferRange(t,this._capacity))}}const f=n().vec3f("instanceModelOriginHi").vec3f("instanceModelOriginLo").mat3f("instanceModel").mat3f("instanceModelNormal");function u(t){return d(f.clone(),t)}export{o as RenderInstanceData,c as RenderInstanceDataView,u as getRenderInstanceDataLayout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{clone as e,create as n}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{a as t}from"../../../../chunks/sphere.js";import r from"./Octree.js";function s(e){const n={numNodes:0,numObjects:0,numTerminals:0,numResidents:0,numOutsiders:0,numInnerNodes:0,numTerminalNodes:0,maximumDepth:0,maxNumTerminals:0,maxNumResidents:0,maxNumObjects:0};return e.forEachNode((t,r,s)=>{null===t.residents?n.numInnerNodes++:n.numTerminalNodes++,n.numTerminals+=t.terminals.length,n.maxNumTerminals=Math.max(t.terminals.length,n.maxNumTerminals);let i=t.terminals.length;null!==t.residents&&(n.numResidents+=t.residents.length,n.maxNumResidents=Math.max(t.residents.length,n.maxNumResidents),i+=t.residents.length),n.maxNumObjects=Math.max(i,n.maxNumObjects);const m=Math.round(Math.log(2*e.halfSize/s)*Math.LOG2E);return n.maximumDepth=Math.max(n.maximumDepth,m),!0}),n.numObjects=n.numOutsiders+n.numTerminals+n.numResidents,n.numNodes=n.numInnerNodes+n.numTerminalNodes,n}function i(n,s=!1){const m=n instanceof r?n.root:n,a={};return n instanceof r&&s&&(a.center=e(t(n.bounds)),a.size=2*n.halfSize),m.terminals.length>0&&(a.terminals=m.terminals.map(e=>e.id)),null!==m.residents&&m.residents.length>0&&(a.residents=m.residents.map(e=>e.id)),null===m.residents&&m.children.forEach((e,n)=>{e&&(a["child"+n]=i(e))}),a}function m(e,r){return e.forEachNode((s,i,m)=>{const l=o(t(i),-m,n()),d=o(t(i),m,n());if(s.terminals.forAll(e=>a(r(e),l,d,!0)),null!==s.residents){if(s.residents.length>e.maximumObjectsPerNode)throw new Error("[Octree Validation] Number of objects "+s.residents.length+" exceeds maximum allowed ("+e.maximumObjectsPerNode+")");s.residents.forAll(e=>a(r(e),l,d,!1))}let u=!1;if(s.children.forEach(e=>{if(e&&(u=!0,null!==s.residents))throw new Error("[Octree Validation] Node has residents and children")}),!u&&(null===s.residents||0===s.residents.length)&&0===s.terminals.length)throw new Error("[Octree Validation] dangling empty node");return!0}),!0}function a(e,n,t,r){for(let i=0;i<3;i++)if(e[i]<n[i]||e[i]>t[i])throw new Error("[Octree Validation] Object is not within node bounds");const s=.25*(t[0]-n[0]);if(r&&e[3]<s)throw new Error("[Octree Validation] Object is too small to be a terminal");if(!r&&e[3]>s)throw new Error("[Octree Validation] Object is too large to be a resident")}function o(e,n,t){return t[0]=e[0]+n,t[1]=e[1]+n,t[2]=e[2]+n,t}export{m as assert,i as debugDump,s as stats};
5
+ import{clone as e,create as n}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{a as t}from"../../../../chunks/sphere.js";import{Octree as r}from"./Octree.js";function s(e){const n={numNodes:0,numObjects:0,numTerminals:0,numResidents:0,numOutsiders:0,numInnerNodes:0,numTerminalNodes:0,maximumDepth:0,maxNumTerminals:0,maxNumResidents:0,maxNumObjects:0};return e.forEachNode((t,r,s)=>{null===t.residents?n.numInnerNodes++:n.numTerminalNodes++,n.numTerminals+=t.terminals.length,n.maxNumTerminals=Math.max(t.terminals.length,n.maxNumTerminals);let i=t.terminals.length;null!==t.residents&&(n.numResidents+=t.residents.length,n.maxNumResidents=Math.max(t.residents.length,n.maxNumResidents),i+=t.residents.length),n.maxNumObjects=Math.max(i,n.maxNumObjects);const m=Math.round(Math.log(2*e.halfSize/s)*Math.LOG2E);return n.maximumDepth=Math.max(n.maximumDepth,m),!0}),n.numObjects=n.numOutsiders+n.numTerminals+n.numResidents,n.numNodes=n.numInnerNodes+n.numTerminalNodes,n}function i(n,s=!1){const m=n instanceof r?n.root:n,a={};return n instanceof r&&s&&(a.center=e(t(n.bounds)),a.size=2*n.halfSize),m.terminals.length>0&&(a.terminals=m.terminals.map(e=>e.id)),null!==m.residents&&m.residents.length>0&&(a.residents=m.residents.map(e=>e.id)),null===m.residents&&m.children.forEach((e,n)=>{e&&(a["child"+n]=i(e))}),a}function m(e,r){return e.forEachNode((s,i,m)=>{const l=o(t(i),-m,n()),d=o(t(i),m,n());if(s.terminals.forAll(e=>a(r(e),l,d,!0)),null!==s.residents){if(s.residents.length>e.maximumObjectsPerNode)throw new Error("[Octree Validation] Number of objects "+s.residents.length+" exceeds maximum allowed ("+e.maximumObjectsPerNode+")");s.residents.forAll(e=>a(r(e),l,d,!1))}let u=!1;if(s.children.forEach(e=>{if(e&&(u=!0,null!==s.residents))throw new Error("[Octree Validation] Node has residents and children")}),!u&&(null===s.residents||0===s.residents.length)&&0===s.terminals.length)throw new Error("[Octree Validation] dangling empty node");return!0}),!0}function a(e,n,t,r){for(let i=0;i<3;i++)if(e[i]<n[i]||e[i]>t[i])throw new Error("[Octree Validation] Object is not within node bounds");const s=.25*(t[0]-n[0]);if(r&&e[3]<s)throw new Error("[Octree Validation] Object is too small to be a terminal");if(!r&&e[3]>s)throw new Error("[Octree Validation] Object is too large to be a resident")}function o(e,n,t){return t[0]=e[0]+n,t[1]=e[1]+n,t[2]=e[2]+n,t}export{m as assert,i as debugDump,s as stats};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{ZEROS as t}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{newLayout as r}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmissionOrOID as e,isDepth as s,is2DGeometryOutput as i,isColorOrColorEmission as a}from"../core/shaderLibrary/ShaderOutput.js";import{olidEnabled as o}from"../effects/geometry/olidUtils.js";import n from"../lib/GLMaterial.js";import{OITPolygonOffsetLimit as h}from"../lib/OrderIndependentTransparency.js";import{DefaultBufferWriter as p}from"./DefaultBufferWriter.js";import{TriangleMaterial as u}from"./TriangleMaterial.js";import{VisualVariablePassParameters as c}from"./VisualVariablePassParameters.js";import{ColorMaterialTechnique as l}from"../shaders/ColorMaterialTechnique.js";import{ColorMaterialTechniqueConfiguration as f}from"../shaders/ColorMaterialTechniqueConfiguration.js";import{alphaCutoff as m}from"../../../../webscene/support/AlphaCutoff.js";class g extends u{constructor(t){super(t,d),this._configuration=new f,this.supportsEdges=!0,this.produces=new Map([[2,t=>this._isOpaqueMaterialPass(t)],[3,t=>this._isOpaqueNoSSAODepthPass(t)],[4,t=>e(t)&&this._transparent&&this.parameters.writeDepth],[5,t=>s(t)&&this._transparent&&this.parameters.writeDepth],[7,t=>e(t)&&this._transparent&&!this.parameters.writeDepth],[17,t=>i(t)]])}getConfiguration(t,r){return super.getConfiguration(t,r,this._configuration),this._configuration.cullFace=this.parameters.cullFace,this._configuration.hasVertexColors=this.parameters.hasVertexColors&&!this.parameters.vvColor,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.transparent=this._transparent,this._configuration.discardInvisibleFragments=this._transparent&&!this._isOpaquePass(t)&&this.parameters.discardInvisibleFragments,this._configuration.polygonOffset=this.parameters.polygonOffset,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.hasOccludees=r.hasOccludees,this._configuration.oitPass=r.oitPass,this._configuration.enableOffset=r.camera.relativeElevation<h,this._configuration.terrainDepthTest=r.terrainDepthTest&&a(t),this._configuration.cullAboveTerrain=r.cullAboveTerrain,this._configuration.vvColor=!!this.parameters.vvColor,this._configuration.draped=this.parameters.draped,this._configuration}get visible(){return this.parameters.color[3]>=m}get _transparent(){return this.parameters.color[3]<1||this.parameters.forceTransparentMode}_isOpaquePass(t){return this._isOpaqueMaterialPass(t)||this._isOpaqueNoSSAODepthPass(t)}_isOpaqueMaterialPass(t){return 8===t||e(t)&&!this._transparent}_isOpaqueNoSSAODepthPass(t){return s(t)&&this.parameters.writeDepth&&!this._transparent}createGLMaterial(t){return new _(t)}createBufferWriter(){const t=r().vec3f("position");return o()&&t.vec4u8("objectAndLayerIdColor"),this.parameters.vvColor?t.f32("colorFeatureAttribute"):t.vec4u8("color"),new p(t)}}class _ extends n{beginSlot(t){return this.getTechnique(l,t)}}class d extends c{constructor(){super(...arguments),this.color=t,this.forceTransparentMode=!1,this.writeDepth=!0,this.hasVertexColors=!1,this.polygonOffset=!1,this.hasSlicePlane=!1,this.cullFace=0,this.draped=!1,this.discardInvisibleFragments=!1}}export{g as ColorMaterial,d as Parameters};
5
+ import{ZEROS as t}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{isColorOrColorEmissionOrOID as r,isDepth as e,is2DGeometryOutput as s,isColorOrColorEmission as i}from"../core/shaderLibrary/ShaderOutput.js";import a from"../lib/GLMaterial.js";import{OITPolygonOffsetLimit as o}from"../lib/OrderIndependentTransparency.js";import{DefaultBufferWriter as n}from"./DefaultBufferWriter.js";import{TriangleMaterial as h}from"./TriangleMaterial.js";import{VisualVariablePassParameters as p}from"./VisualVariablePassParameters.js";import{getLayout as u,ColorMaterialTechnique as c}from"../shaders/ColorMaterialTechnique.js";import{ColorMaterialTechniqueConfiguration as l}from"../shaders/ColorMaterialTechniqueConfiguration.js";import{alphaCutoff as f}from"../../../../webscene/support/AlphaCutoff.js";class m extends h{constructor(t){super(t,_),this._configuration=new l,this.supportsEdges=!0,this.produces=new Map([[2,t=>this._isOpaqueMaterialPass(t)],[3,t=>this._isOpaqueNoSSAODepthPass(t)],[4,t=>r(t)&&this._transparent&&this.parameters.writeDepth],[5,t=>e(t)&&this._transparent&&this.parameters.writeDepth],[7,t=>r(t)&&this._transparent&&!this.parameters.writeDepth],[17,t=>s(t)]])}getConfiguration(t,r){return super.getConfiguration(t,r,this._configuration),this._configuration.cullFace=this.parameters.cullFace,this._configuration.hasVertexColors=this.parameters.hasVertexColors&&!this.parameters.vvColor,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.transparent=this._transparent,this._configuration.discardInvisibleFragments=this._transparent&&!this._isOpaquePass(t)&&this.parameters.discardInvisibleFragments,this._configuration.polygonOffset=this.parameters.polygonOffset,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.hasOccludees=r.hasOccludees,this._configuration.oitPass=r.oitPass,this._configuration.enableOffset=r.camera.relativeElevation<o,this._configuration.terrainDepthTest=r.terrainDepthTest&&i(t),this._configuration.cullAboveTerrain=r.cullAboveTerrain,this._configuration.hasVVColor=!!this.parameters.vvColor,this._configuration.draped=this.parameters.draped,this._configuration}get visible(){return this.parameters.color[3]>=f}get _transparent(){return this.parameters.color[3]<1||this.parameters.forceTransparentMode}_isOpaquePass(t){return this._isOpaqueMaterialPass(t)||this._isOpaqueNoSSAODepthPass(t)}_isOpaqueMaterialPass(t){return 8===t||r(t)&&!this._transparent}_isOpaqueNoSSAODepthPass(t){return e(t)&&this.parameters.writeDepth&&!this._transparent}createGLMaterial(t){return new g(t)}createBufferWriter(){return new n(u(this.parameters))}}class g extends a{beginSlot(t){return this.getTechnique(c,t)}}class _ extends p{constructor(){super(...arguments),this.color=t,this.forceTransparentMode=!1,this.writeDepth=!0,this.hasVertexColors=!1,this.polygonOffset=!1,this.hasSlicePlane=!1,this.cullFace=0,this.draped=!1,this.discardInvisibleFragments=!1}}export{m as ColorMaterial,_ as Parameters};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{a as e}from"../../../../chunks/vec32.js";import{create as t}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{BufferViewVec3f as r}from"../../../../geometry/support/buffer/BufferView.js";import{intersectRenderGeometryTriangles as o}from"../lib/RayIntersections.js";import{writeDefaultAttributes as i}from"./internal/bufferWriterUtils.js";class s{constructor(e){this.vertexBufferLayout=e}elementCount(e){return e.get("position").indices.length}write(e,t,r,o,s,f){return i(r,o,this.vertexBufferLayout,e,t,s,f)}intersect(t,i,s,n,u,c,m){const p=this.vertexBufferLayout.createView(t).getField("position",r);if(null==p)return;const a=e(f,c,u),l=0,y=p.count/3,d=n.options.normalRequired,B=(e,t,r)=>{m(e,r,t)};o(u,a,l,y,p.typedBuffer,p.typedBufferStride,d,B)}}const f=t();export{s as DefaultBufferWriter};
5
+ import{a as t}from"../../../../chunks/vec32.js";import{create as e}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{BufferViewVec3f as r}from"../../../../geometry/support/buffer/BufferView.js";import{intersectRenderGeometryTriangles as o}from"../lib/RayIntersections.js";import{writeAttributes as i}from"./internal/bufferWriterUtils.js";class s{constructor(t){this.layout=t}elementCount(t){return t.get("position").indices.length}write(t,e,r,o,s,n){return i(r,o,this.layout,t,e,s,n)}intersect(e,i,s,f,u,c,l){const m=this.layout.createView(e).getField("position",r);if(null==m)return;const p=t(n,c,u),a=0,y=m.count/3,d=f.options.normalRequired,g=(t,e,r)=>l(t,r,e);o(u,p,a,y,m.typedBuffer,m.typedBufferStride,d,g)}}const n=e();export{s as DefaultBufferWriter};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{newLayout as o}from"../../support/buffer/InterleavedLayout.js";const e=o().vec3f("position"),v=o().vec3f("position").vec2f16("uv0"),c=o().vec3f("position").vec4u8("color"),t=o().vec3f("position").vec2f16("uv0").vec4u8("objectAndLayerIdColor"),f=o().vec3f("position").vec2f("uv0"),i=o().vec3f("position").vec2f("uv0").vec4u8("objectAndLayerIdColor");export{c as PositionColorLayout,e as PositionLayout,v as PositionUvLayout,t as PositionUvOlidLayout,f as PositionUvf32Layout,i as PositionUvf32OlidLayout};
5
+ import{newLayout as e}from"../../support/buffer/InterleavedLayout.js";const o=e().vec3f("position").freeze(),f=e().vec3f("position").vec2f16("uv0").freeze(),v=e().vec3f("position").vec4u8("color").freeze(),c=e().vec3f("position").vec2f16("uv0").vec4u8("olidColor").freeze(),i=e().vec3f("position").vec2f("uv0").freeze(),r=e().vec3f("position").vec2f("uv0").vec4u8("olidColor").freeze();export{v as PositionColorLayout,o as PositionLayout,f as PositionUvLayout,c as PositionUvOlidLayout,i as PositionUvf32Layout,r as PositionUvf32OlidLayout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{q as e,i as r,c as t,n as s,d as a,l as i,g as o,e as n,o as l}from"../../../../chunks/vec32.js";import{ZEROS as c,create as u,fromValues as m}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{newLayout as h}from"../../support/buffer/InterleavedLayout.js";import{is3DGeometryOutputMRT as p,isShadowRelatedOutput as f,is3DGeometryOutput as d,isColorOrColorEmission as v,isColorEmission as T}from"../core/shaderLibrary/ShaderOutput.js";import{olidEnabled as x}from"../effects/geometry/olidUtils.js";import{GLTextureMaterial as g}from"../lib/GLTextureMaterial.js";import{Material as b}from"../lib/Material.js";import{OITPolygonOffsetLimit as S}from"../lib/OrderIndependentTransparency.js";import{intersectTriangleGeometry as M}from"../lib/RayIntersections.js";import{getVerticalOffsetObject3D as y}from"../lib/verticalOffsetUtils.js";import{DefaultBufferWriter as C}from"./DefaultBufferWriter.js";import{verticalOffsetAtDistance as w}from"./internal/MaterialUtil.js";import{DefaultMaterialPassParameters as I,DefaultMaterialTechnique as O}from"../shaders/DefaultMaterialTechnique.js";import{DefaultMaterialTechniqueConfiguration as P}from"../shaders/DefaultMaterialTechniqueConfiguration.js";import{RealisticTreeTechnique as j}from"../shaders/RealisticTreeTechnique.js";import{alphaCutoff as D}from"../../../../webscene/support/AlphaCutoff.js";class B extends b{constructor(e,r){super(e,A),this.materialType="default",this.supportsEdges=!0,this.intersectDraped=void 0,this.produces=new Map([[2,e=>(p(e)||f(e))&&!this.transparent],[4,e=>(p(e)||f(e))&&this.transparent&&this.parameters.writeDepth],[7,e=>(d(e)||f(e))&&this.transparent&&!this.parameters.writeDepth]]),this._vertexBufferLayout=_(this.parameters),this._configuration=new P(r.spherical)}isVisibleForOutput(e){return 4!==e&&6!==e&&5!==e||this.parameters.castShadows}get visible(){const{layerOpacity:e,colorMixMode:r,opacity:t,externalColor:s}=this.parameters;return e*("replace"===r?1:t)*("ignore"===r||isNaN(s[3])?1:s[3])>=D}get _hasEmissiveBase(){return!!this.parameters.emissiveTextureId||!e(this.parameters.emissiveBaseColor,c)}get hasEmissions(){return this.parameters.emissiveStrength>0&&(0===this.parameters.emissiveSource&&this._hasEmissiveBase||1===this.parameters.emissiveSource)}getConfiguration(e,r){const{parameters:t,_configuration:s}=this,{treeRendering:a,doubleSided:i,doubleSidedType:o}=t;return super.getConfiguration(e,r,this._configuration),s.hasNormalTexture=!a&&!!t.normalTextureId,s.hasColorTexture=!!t.textureId,s.hasVertexTangents=!a&&t.hasVertexTangents,s.instanced=t.isInstanced,s.instancedDoublePrecision=t.instancedDoublePrecision,s.vvSize=!!t.vvSize,s.hasVerticalOffset=null!=t.verticalOffset,s.hasScreenSizePerspective=null!=t.screenSizePerspective,s.hasSlicePlane=t.hasSlicePlane,s.alphaDiscardMode=t.textureAlphaMode,s.normalType=a?0:t.normalType,s.transparent=this.transparent,s.writeDepth=t.writeDepth,s.customDepthTest=t.customDepthTest??0,s.hasOccludees=r.hasOccludees,s.cullFace=t.hasSlicePlane?0:t.cullFace,s.cullAboveTerrain=r.cullAboveTerrain,s.hasModelTransformation=!a&&null!=t.modelTransformation,s.hasVertexColors=t.hasVertexColors,s.hasSymbolColors=t.hasSymbolColors,s.doubleSidedMode=a?2:i&&"normal"===o?1:i&&"winding-order"===o?2:0,s.instancedColor=t.hasInstancedColor,v(e)?(s.terrainDepthTest=r.terrainDepthTest,s.receiveShadows=t.receiveShadows,s.receiveAmbientOcclusion=t.receiveAmbientOcclusion&&null!=r.ssao):(s.terrainDepthTest=!1,s.receiveShadows=s.receiveAmbientOcclusion=!1),s.vvColor=!!t.vvColor,s.textureAlphaPremultiplied=!!t.textureAlphaPremultiplied,s.pbrMode=t.usePBR?t.isSchematic?2:1:0,s.hasMetallicRoughnessTexture=!a&&!!t.metallicRoughnessTextureId,s.emissionSource=a?0:null!=t.emissiveTextureId&&0===t.emissiveSource?3:t.usePBR?0===t.emissiveSource?2:1:0,s.hasOcclusionTexture=!a&&!!t.occlusionTextureId,s.offsetBackfaces=!(!this.transparent||!t.offsetTransparentBackfaces),s.oitPass=r.oitPass,s.enableOffset=r.camera.relativeElevation<S,s.snowCover=r.snowCover,s.hasBloom=T(e),s.hasColorTextureTransform=!!t.colorTextureTransformMatrix,s.hasNormalTextureTransform=!!t.normalTextureTransformMatrix,s.hasEmissionTextureTransform=!!t.emissiveTextureTransformMatrix,s.hasOcclusionTextureTransform=!!t.occlusionTextureTransformMatrix,s.hasMetallicRoughnessTextureTransform=!!t.metallicRoughnessTextureTransformMatrix,s}intersect(e,c,u,m,h,p){if(null!=this.parameters.verticalOffset){const e=u.camera;r(k,c[12],c[13],c[14]);let p=null;switch(u.viewingMode){case 1:p=s(q,k);break;case 2:p=t(q,E)}let f=0;const d=a(F,k,e.eye),v=i(d),T=o(d,d,1/v);let x=null;this.parameters.screenSizePerspective&&(x=n(p,T)),f+=w(e,v,this.parameters.verticalOffset,x??0,this.parameters.screenSizePerspective),o(p,p,f),l(N,p,u.transform.inverseRotation),m=a(z,m,N),h=a(L,h,N)}M(e,u,m,h,y(u.verticalOffset),p)}createGLMaterial(e){return new R(e)}createBufferWriter(){return new C(this._vertexBufferLayout)}get transparent(){return V(this.parameters)}}class R extends g{constructor(e){super({...e,...e.material.parameters})}beginSlot(e){this._material.setParameters({receiveShadows:e.shadowMap.enabled});const t=this._material.parameters;this.updateTexture(t.textureId);const s=e.camera.viewInverseTransposeMatrix;return r(t.origin,s[3],s[7],s[11]),this._material.setParameters(this.textureBindParameters),this.getTechnique(t.treeRendering?j:O,e)}}class A extends I{constructor(){super(...arguments),this.treeRendering=!1,this.hasVertexTangents=!1}}function _(e){const r=h().vec3f("position");1===e.normalType?r.vec2i16("normalCompressed",{glNormalized:!0}):r.vec3f("normal"),e.hasVertexTangents&&r.vec4f("tangent");return(e.textureId||e.normalTextureId||e.metallicRoughnessTextureId||e.emissiveTextureId||e.occlusionTextureId)&&r.vec2f16("uv0"),e.hasVertexColors&&r.vec4u8("color"),e.hasSymbolColors&&r.vec4u8("symbolColor"),x()&&r.vec4u8("objectAndLayerIdColor"),r}function V(e){const{drivenOpacity:r,opacity:t,externalColor:s,layerOpacity:a,texture:i,textureId:o,textureAlphaMode:n,colorMixMode:l}=e,c=s[3];return r||t<1&&"replace"!==l||c<1&&"ignore"!==l||a<1||(null!=i||null!=o)&&1!==n&&2!==n&&"replace"!==l}const z=u(),L=u(),E=m(0,0,1),q=u(),N=u(),k=u(),F=u();export{R as DefaultGLMaterial,B as DefaultMaterial,A as DefaultMaterialParameters,V as isTransparent};
5
+ import{q as e,i as r,c as t,n as s,d as a,l as i,g as o,e as n,o as l}from"../../../../chunks/vec32.js";import{ZEROS as u,create as c,fromValues as h}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{is3DGeometryOutputMRT as m,isShadowRelatedOutput as p,is3DGeometryOutput as d,isColorOrColorEmission as T,isColorEmission as f}from"../core/shaderLibrary/ShaderOutput.js";import{GLTextureMaterial as x}from"../lib/GLTextureMaterial.js";import{Material as g}from"../lib/Material.js";import{OITPolygonOffsetLimit as v}from"../lib/OrderIndependentTransparency.js";import{intersectTriangleGeometry as S}from"../lib/RayIntersections.js";import{getVerticalOffsetObject3D as M}from"../lib/verticalOffsetUtils.js";import{DefaultBufferWriter as b}from"./DefaultBufferWriter.js";import{verticalOffsetAtDistance as O}from"./internal/MaterialUtil.js";import{getLayout as C,DefaultMaterialPassParameters as w,DefaultMaterialTechnique as y}from"../shaders/DefaultMaterialTechnique.js";import{DefaultMaterialTechniqueConfiguration as R}from"../shaders/DefaultMaterialTechniqueConfiguration.js";import{RealisticTreeTechnique as P}from"../shaders/RealisticTreeTechnique.js";import{alphaCutoff as D}from"../../../../webscene/support/AlphaCutoff.js";class j extends g{constructor(e,r){super(e,B),this.materialType="default",this.supportsEdges=!0,this.intersectDraped=void 0,this.produces=new Map([[2,e=>(m(e)||p(e))&&!this.transparent],[4,e=>(m(e)||p(e))&&this.transparent&&this.parameters.writeDepth],[7,e=>(d(e)||p(e))&&this.transparent&&!this.parameters.writeDepth]]),this._layout=C(this.parameters),this._configuration=new R(r.spherical)}isVisibleForOutput(e){return 4!==e&&6!==e&&5!==e||this.parameters.castShadows}get visible(){const{layerOpacity:e,colorMixMode:r,opacity:t,externalColor:s}=this.parameters;return e*("replace"===r?1:t)*("ignore"===r||isNaN(s[3])?1:s[3])>=D}get _hasEmissiveBase(){return!!this.parameters.emissiveTextureId||!e(this.parameters.emissiveBaseColor,u)}get hasEmissions(){return this.parameters.emissiveStrength>0&&(0===this.parameters.emissiveSource&&this._hasEmissiveBase||1===this.parameters.emissiveSource)}getConfiguration(e,r){const{parameters:t,_configuration:s}=this,{treeRendering:a,doubleSided:i,doubleSidedType:o}=t;return super.getConfiguration(e,r,this._configuration),s.hasNormalTexture=t.hasNormalTexture,s.hasColorTexture=t.hasColorTexture,s.hasMetallicRoughnessTexture=t.hasMetallicRoughnessTexture,s.hasOcclusionTexture=t.hasOcclusionTexture,s.hasVertexTangents=!a&&t.hasVertexTangents,s.instanced=t.instanced,s.instancedDoublePrecision=t.instancedDoublePrecision,s.hasVVColor=!!t.vvColor,s.hasVVSize=!!t.vvSize,s.hasVerticalOffset=null!=t.verticalOffset,s.hasScreenSizePerspective=null!=t.screenSizePerspective,s.hasSlicePlane=t.hasSlicePlane,s.alphaDiscardMode=t.textureAlphaMode,s.normalType=a?0:t.normalType,s.transparent=this.transparent,s.writeDepth=t.writeDepth,s.customDepthTest=t.customDepthTest??0,s.hasOccludees=r.hasOccludees,s.cullFace=t.hasSlicePlane?0:t.cullFace,s.cullAboveTerrain=r.cullAboveTerrain,s.hasModelTransformation=!a&&null!=t.modelTransformation,s.hasVertexColors=t.hasVertexColors,s.hasSymbolColors=t.hasSymbolColors,s.doubleSidedMode=a?2:i&&"normal"===o?1:i&&"winding-order"===o?2:0,s.instancedFeatureAttribute=t.instancedFeatureAttribute,s.instancedColor=t.instancedColor,T(e)?(s.terrainDepthTest=r.terrainDepthTest,s.receiveShadows=t.receiveShadows,s.receiveAmbientOcclusion=t.receiveAmbientOcclusion&&null!=r.ssao):(s.terrainDepthTest=!1,s.receiveShadows=s.receiveAmbientOcclusion=!1),s.textureAlphaPremultiplied=!!t.textureAlphaPremultiplied,s.pbrMode=t.usePBR?t.isSchematic?2:1:0,s.emissionSource=t.emissionSource,s.offsetBackfaces=!(!this.transparent||!t.offsetTransparentBackfaces),s.oitPass=r.oitPass,s.enableOffset=r.camera.relativeElevation<v,s.snowCover=r.snowCover,s.hasBloom=f(e),s.hasColorTextureTransform=!!t.colorTextureTransformMatrix,s.hasNormalTextureTransform=!!t.normalTextureTransformMatrix,s.hasEmissionTextureTransform=!!t.emissiveTextureTransformMatrix,s.hasOcclusionTextureTransform=!!t.occlusionTextureTransformMatrix,s.hasMetallicRoughnessTextureTransform=!!t.metallicRoughnessTextureTransformMatrix,s}intersect(e,u,c,h,m,p){if(null!=this.parameters.verticalOffset){const e=c.camera;r(q,u[12],u[13],u[14]);let p=null;switch(c.viewingMode){case 1:p=s(z,q);break;case 2:p=t(z,N)}let d=0;const T=a(F,q,e.eye),f=i(T),x=o(T,T,1/f);let g=null;this.parameters.screenSizePerspective&&(g=n(p,x)),d+=O(e,f,this.parameters.verticalOffset,g??0,this.parameters.screenSizePerspective),o(p,p,d),l(E,p,c.transform.inverseRotation),h=a(V,h,E),m=a(_,m,E)}S(e,c,h,m,M(c.verticalOffset),p)}createGLMaterial(e){return new A(e)}createBufferWriter(){return new b(this._layout)}get transparent(){return I(this.parameters)}}class A extends x{constructor(e){super({...e,...e.material.parameters})}beginSlot(e){this._material.setParameters({receiveShadows:e.shadowMap.enabled});const t=this._material.parameters;this.updateTexture(t.textureId);const s=e.camera.viewInverseTransposeMatrix;return r(t.origin,s[3],s[7],s[11]),this._material.setParameters(this.textureBindParameters),this.getTechnique(t.treeRendering?P:y,e)}}class B extends w{constructor(){super(...arguments),this.treeRendering=!1,this.hasVertexTangents=!1}get hasNormalTexture(){return!this.treeRendering&&!!this.normalTextureId}get hasColorTexture(){return!!this.textureId}get hasMetallicRoughnessTexture(){return!this.treeRendering&&!!this.metallicRoughnessTextureId}get hasOcclusionTexture(){return!this.treeRendering&&!!this.occlusionTextureId}get emissionSource(){return this.treeRendering?0:null!=this.emissiveTextureId&&0===this.emissiveSource?3:this.usePBR?0===this.emissiveSource?2:1:0}get hasTextures(){return this.hasColorTexture||this.hasNormalTexture||this.hasMetallicRoughnessTexture||3===this.emissionSource||this.hasOcclusionTexture}}function I(e){const{drivenOpacity:r,opacity:t,externalColor:s,layerOpacity:a,texture:i,textureId:o,textureAlphaMode:n,colorMixMode:l}=e,u=s[3];return r||t<1&&"replace"!==l||u<1&&"ignore"!==l||a<1||(null!=i||null!=o)&&1!==n&&2!==n&&"replace"!==l}const V=c(),_=c(),N=h(0,0,1),z=c(),E=c(),q=c(),F=c();export{A as DefaultGLMaterial,j as DefaultMaterial,B as DefaultMaterialParameters,I as isTransparent};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as t}from"tslib";import{InstancedDoubleConfiguration as i}from"../core/shaderLibrary/attributes/InstancedDoubleConfiguration.js";import{parameter as o}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";class e extends i{constructor(){super(...arguments),this.output=0,this.oitPass=0,this.hasSlicePlane=!1,this.hasHighlightMixTexture=!1,this.bindType=1,this.writeDepth=!0}}t([o({count:10})],e.prototype,"output",void 0),t([o({count:3})],e.prototype,"oitPass",void 0),t([o()],e.prototype,"hasSlicePlane",void 0),t([o()],e.prototype,"hasHighlightMixTexture",void 0);export{e as DefaultTechniqueConfiguration};
5
+ import{__decorate as t}from"tslib";import{InstancedDoubleConfiguration as i}from"../core/shaderLibrary/attributes/InstancedDoubleConfiguration.js";import{parameter as o}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";class e extends i{constructor(){super(...arguments),this.output=0,this.oitPass=0,this.hasSlicePlane=!1,this.hasHighlightMixTexture=!1,this.bindType=1,this.instanced=!1,this.writeDepth=!0}}t([o({count:10})],e.prototype,"output",void 0),t([o({count:3})],e.prototype,"oitPass",void 0),t([o()],e.prototype,"hasSlicePlane",void 0),t([o()],e.prototype,"hasHighlightMixTexture",void 0);export{e as DefaultTechniqueConfiguration};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{clamp as e,deg2rad as t}from"../../../../core/mathUtils.js";import{fromMat4 as i}from"../../../../core/libs/gl-matrix-2/math/mat3.js";import{create as s}from"../../../../core/libs/gl-matrix-2/factories/mat3f64.js";import{invert as r}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as a}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{set as o,rotate as n}from"../../../../core/libs/gl-matrix-2/math/vec2.js";import{fromValues as l,create as c}from"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{i as f,t as u,n as p,d as h,g as m,c as d,l as g,j as b,f as v,a as x,o as S,e as O}from"../../../../chunks/vec32.js";import{create as y,fromValues as z}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromArray as A,create as _,freeze as j}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{isMat4 as P}from"../../../../core/libs/gl-matrix-2/types/mat4.js";import{create as F}from"../../../../geometry/support/aaBoundingRect.js";import{BufferViewVec4u8 as D,BufferViewVec3f as M,BufferViewFloat as C,BufferViewVec2f as R,BufferViewVec4f as w}from"../../../../geometry/support/buffer/BufferView.js";import{evaluateModelTransformScale as L}from"../../layers/support/FastSymbolUpdates.js";import{debugFlags as T}from"../../support/debugFlags.js";import{newLayout as V}from"../../support/buffer/InterleavedLayout.js";import{isColorEmissionHighlightOrOID as U,isColorOrColorEmission as E}from"../core/shaderLibrary/ShaderOutput.js";import{HUDVerticalPixelOffset as B}from"../core/shaderLibrary/hud/HUD.glsl.js";import{olidEnabled as I}from"../effects/geometry/olidUtils.js";import{GLTextureMaterialBindParameters as q,GLTextureMaterial as G}from"../lib/GLTextureMaterial.js";import{Material as W}from"../lib/Material.js";import{applyScaleFactor as H,applyPrecomputedScaleFactor as N,precomputeScaleFactor as X}from"../lib/screenSizePerspectiveUtils.js";import{assert as Y}from"../lib/Util.js";import{ScaleInfo as k}from"./ScaleInfo.js";import{writePosition as J,writeNormal as K,writeColor as Q,writeBufferFloat as Z,writeBufferVec4 as $,writeBufferVec4Zeros as ee,writeOlidColor as te}from"./internal/bufferWriterUtils.js";import{verticalOffsetAtDistance as ie}from"./internal/MaterialUtil.js";import{c as se,f as re}from"../../../../chunks/HUDMaterial.glsl.js";import{HUDMaterialTechnique as ae}from"../shaders/HUDMaterialTechnique.js";import{HUDMaterialTechniqueConfiguration as oe}from"../shaders/HUDMaterialTechniqueConfiguration.js";import{alphaCutoff as ne}from"../../../../webscene/support/AlphaCutoff.js";class le extends W{constructor(e,t){super(e,Te),this.produces=new Map([[12,e=>U(e)&&!this.parameters.drawAsLabel],[13,e=>U(e)&&this.parameters.drawAsLabel],[11,()=>this.parameters.occlusionTest],[17,e=>this.parameters.draped&&U(e)]]),this._visible=!0,this._configuration=new oe(t)}getConfiguration(e,t){const i=this.parameters.draped;return super.getConfiguration(e,t,this._configuration),this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.hasVerticalOffset=!!this.parameters.verticalOffset,this._configuration.hasScreenSizePerspective=!!this.parameters.screenSizePerspective,this._configuration.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits,this._configuration.hasPolygonOffset=this.parameters.polygonOffset,this._configuration.draped=i,this._configuration.occlusionTestEnabled=this.parameters.occlusionTest,this._configuration.pixelSnappingEnabled=this.parameters.pixelSnappingEnabled,this._configuration.signedDistanceFieldEnabled=this.parameters.textureIsSignedDistanceField,this._configuration.sampleSignedDistanceFieldTexelCenter=this.parameters.sampleSignedDistanceFieldTexelCenter,this._configuration.hasRotation=this.parameters.hasRotation,this._configuration.vvSize=!!this.parameters.vvSize,this._configuration.vvColor=!!this.parameters.vvColor,this._configuration.occlusionPass=11===t.slot,this._configuration.occludedFragmentFade=!i&&this.parameters.occludedFragmentFade,this._configuration.horizonCullingEnabled=this.parameters.horizonCullingEnabled,this._configuration.isFocused=this.parameters.isFocused,this._configuration.depthTestEnabled=this.parameters.depthEnabled||11===t.slot,E(e)&&(this._configuration.debugDrawLabelBorder=!!T.LABELS_SHOW_BORDER),this._configuration.oitPass=t.oitPass,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration}intersect(e,t,s,a,o,n){const{options:{selectionMode:l,hud:c,excludeLabels:v},point:x,camera:S}=s,{parameters:O}=this;if(!l||!c||v&&O.isLabel||!e.visible||!x||!S)return;const z=e.attributes.get("featureAttribute"),_=null==z?null:A(z.data,Fe),{scaleX:j,scaleY:P}=Be(_,O,S.pixelRatio);i(ye,t),e.attributes.has("featureAttribute")&&pe(ye);const F=e.attributes.get("position"),D=e.attributes.get("size"),M=e.attributes.get("normal"),C=e.attributes.get("rotation"),R=e.attributes.get("centerOffsetAndDistance");Y(F.size>=3);const w=se(O),L="screen"===this.parameters.centerOffsetUnits;for(let i=0;i<F.data.length/F.size;i++){const e=i*F.size;f(de,F.data[e],F.data[e+1],F.data[e+2]),u(de,de,t),u(de,de,S.viewMatrix);const a=i*R.size;if(f(je,R.data[a],R.data[a+1],R.data[a+2]),!L&&(de[0]+=je[0],de[1]+=je[1],0!==je[2])){const e=je[2];p(je,de),h(de,de,m(je,je,e))}const o=i*M.size;if(f(ge,M.data[o],M.data[o+1],M.data[o+2]),ue(ge,ye,S,De),Ie(this.parameters,de,De,S,me),S.applyProjection(de,be),be[0]>-1){L&&(je[0]||je[1])&&(be[0]+=je[0]*S.pixelRatio,0!==je[1]&&(be[1]+=H(je[1],me.factorAlignment)*S.pixelRatio),S.unapplyProjection(be,de)),be[0]+=this.parameters.screenOffset[0]*S.pixelRatio,be[1]+=this.parameters.screenOffset[1]*S.pixelRatio,be[0]=Math.floor(be[0]),be[1]=Math.floor(be[1]);const e=i*D.size;Re[0]=D.data[e],Re[1]=D.data[e+1],N(Re,me.factor,Re);const t=Me*S.pixelRatio;let a=0;if(O.textureIsSignedDistanceField){a=Math.min(O.outlineSize,.5*Re[0])*S.pixelRatio/2}Re[0]*=j,Re[1]*=P;const o=i*C.size,l=O.rotation+C.data[o];if(he(x,be[0],be[1],Re,t,a,l,O,w)){const e=s.ray;if(u(xe,de,r(Ae,S.viewMatrix)),be[0]=x[0],be[1]=x[1],S.unprojectFromRenderScreen(be,de)){const t=y();d(t,e.direction);const i=1/g(t);m(t,t,i);n(b(e.origin,de)*i,t,-1,xe)}}}}}intersectDraped(e,t,i,s,r){const a=e.attributes.get("position"),o=e.attributes.get("size"),n=e.attributes.get("rotation"),l=this.parameters,c=se(l),f=e.attributes.get("featureAttribute"),u=null==f?null:A(f.data,Fe),{scaleX:p,scaleY:h}=Be(u,l,e.screenToWorldRatio),m=Ce*e.screenToWorldRatio;for(let d=0;d<a.data.length/a.size;d++){const t=d*a.size,f=a.data[t],u=a.data[t+1],g=d*o.size;Re[0]=o.data[g],Re[1]=o.data[g+1];let b=0;if(l.textureIsSignedDistanceField){b=Math.min(l.outlineSize,.5*Re[0])*e.screenToWorldRatio/2}Re[0]*=p,Re[1]*=h;const v=d*n.size,x=l.rotation+n.data[v];he(i,f,u,Re,m,b,x,l,c)&&s(r.distance,r.normal,-1)}}createBufferWriter(){return new Ee}applyShaderOffsetsView(e,t,i,s,r,a,o){const n=ue(t,i,r,De);return this._applyVerticalGroundOffsetView(e,n,r,o),Ie(this.parameters,o,n,r,a),this._applyPolygonOffsetView(o,n,s[3],r,o),this._applyCenterOffsetView(o,s,o),o}applyShaderOffsetsNDC(e,t,i,s,r){return this._applyCenterOffsetNDC(e,t,i,s),null!=r&&d(r,s),this._applyPolygonOffsetNDC(s,t,i,s),s}_applyPolygonOffsetView(t,i,s,r,a){const o=r.aboveGround?1:-1;let n=Math.sign(s);0===n&&(n=o);const l=o*n;if(this.parameters.shaderPolygonOffset<=0)return d(a,t);const c=e(Math.abs(i.cosAngle),.01,1),f=1-Math.sqrt(1-c*c)/c/r.viewport[2];return m(a,t,l>0?f:1/f),a}_applyVerticalGroundOffsetView(e,t,i,s){const r=g(e),a=i.aboveGround?1:-1,o=i.computeRenderPixelSizeAtDist(r)*B,n=m(de,t.normal,a*o);return v(s,e,n),s}_applyCenterOffsetView(e,t,i){const s="screen"!==this.parameters.centerOffsetUnits;return i!==e&&d(i,e),s&&(i[0]+=t[0],i[1]+=t[1],t[2]&&(p(ge,i),x(i,i,m(ge,ge,t[2])))),i}_applyCenterOffsetNDC(e,t,i,s){const r="screen"!==this.parameters.centerOffsetUnits;return s!==e&&d(s,e),r||(s[0]+=t[0]/i.fullWidth*2,s[1]+=t[1]/i.fullHeight*2),s}_applyPolygonOffsetNDC(e,t,i,s){const r=this.parameters.shaderPolygonOffset;if(e!==s&&d(s,e),r){const e=i.aboveGround?1:-1,a=e*Math.sign(t[3]);s[2]-=(a||e)*r}return s}set visible(e){this._visible=e}get visible(){const{color:e,outlineSize:t,outlineColor:i}=this.parameters,s=e[3]>=ne||t>=ne&&i[3]>=ne;return this._visible&&s}createGLMaterial(e){return new ce(e)}calculateRelativeScreenBounds(e,t,i=F()){return fe(this.parameters,e,t,i),i[2]=i[0]+e[0],i[3]=i[1]+e[1],i}}class ce extends G{constructor(e){super({...e,...e.material.parameters})}beginSlot(e){return this.updateTexture(this._material.parameters.textureId),this._material.setParameters(this.textureBindParameters),this.getTechnique(ae,e)}}function fe(e,t,i,s){s[0]=e.anchorPosition[0]*-t[0]+e.screenOffset[0]*i,s[1]=e.anchorPosition[1]*-t[1]+e.screenOffset[1]*i}function ue(e,t,s,r){return P(t)&&(t=i(ze,t)),S(r.normal,e,t),u(r.normal,r.normal,s.viewInverseTransposeMatrix),r.cosAngle=O(ve,Le),r}function pe(e){const t=e[0],i=e[1],s=e[2],r=e[3],a=e[4],o=e[5],n=e[6],l=e[7],c=e[8],f=1/Math.sqrt(t*t+i*i+s*s),u=1/Math.sqrt(r*r+a*a+o*o),p=1/Math.sqrt(n*n+l*l+c*c);return e[0]=t*f,e[1]=i*f,e[2]=s*f,e[3]=r*u,e[4]=a*u,e[5]=o*u,e[6]=n*p,e[7]=l*p,e[8]=c*p,e}function he(e,i,s,r,a,l,c,f,u){let p=i-a-r[0]*u[0],h=p+r[0]+2*a,m=s-a-r[1]*u[1],d=m+r[1]+2*a;const g=f.distanceFieldBoundingBox;return f.textureIsSignedDistanceField&&null!=g&&(p+=r[0]*g[0],m+=r[1]*g[1],h-=r[0]*(1-g[2]),d-=r[1]*(1-g[3]),p-=l,h+=l,m-=l,d+=l),o(Oe,i,s),n(Se,e,Oe,t(c)),Se[0]>p&&Se[0]<h&&Se[1]>m&&Se[1]<d}const me=new k,de=y(),ge=y(),be=_(),ve=y(),xe=y(),Se=c(),Oe=c(),ye=s(),ze=s(),Ae=a(),_e=_(),je=y(),Pe=y(),Fe=_(),De={normal:ve,cosAngle:0},Me=1,Ce=2,Re=l(0,0),we=6,Le=z(0,0,1);class Te extends q{constructor(){super(...arguments),this.renderOccluded=1,this.isDecoration=!1,this.color=j(1,1,1,1),this.polygonOffset=!1,this.anchorPosition=l(.5,.5),this.screenOffset=[0,0],this.shaderPolygonOffset=1e-5,this.textureIsSignedDistanceField=!1,this.sampleSignedDistanceFieldTexelCenter=!1,this.outlineColor=j(1,1,1,1),this.outlineSize=0,this.distanceFieldBoundingBox=_(),this.rotation=0,this.hasRotation=!1,this.vvSizeEnabled=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.hasSlicePlane=!1,this.pixelSnappingEnabled=!0,this.occlusionTest=!0,this.occludedFragmentFade=!1,this.horizonCullingEnabled=!1,this.centerOffsetUnits="world",this.drawAsLabel=!1,this.depthEnabled=!0,this.isFocused=!0,this.focusStyle="bright",this.draped=!1,this.isLabel=!1}}const Ve=V().vec3f("position").vec3f("normal").vec2i16("uvi").vec4u8("color").vec2f("size").f32("rotation").vec4f("centerOffsetAndDistance").vec4f("featureAttribute"),Ue=Ve.clone().vec4u8("objectAndLayerIdColor");class Ee{constructor(){this.vertexBufferLayout=I()?Ue:Ve}elementCount(e){return e.get("position").indices.length*we}write(e,t,i,s,r,a){const{position:o,normal:n,uvi:l,color:c,size:f,rotation:u,centerOffsetAndDistance:p,featureAttribute:h}=r;J(i.get("position"),e,o,a,we),K(i.get("normal"),t,n,a,we);const m=i.get("uvi")?.data;let d=0,g=0,b=-1-re,v=-1-re;m&&m.length>=4&&(d=m[0],g=m[1],b=-1-m[2],v=-1-m[3]);let x=i.get("position").indices.length,S=a;for(let z=0;z<x;++z)l.set(S,0,d),l.set(S,1,g),S++,l.set(S,0,b),l.set(S,1,g),S++,l.set(S,0,b),l.set(S,1,v),S++,l.set(S,0,b),l.set(S,1,v),S++,l.set(S,0,d),l.set(S,1,v),S++,l.set(S,0,d),l.set(S,1,g),S++;Q(i.get("color"),4,c,a,we);const{data:O,indices:y}=i.get("size");x=y.length,S=a;for(let z=0;z<x;++z){const e=O[2*y[z]],t=O[2*y[z]+1];for(let i=0;i<we;++i)f.set(S,0,e),f.set(S,1,t),S++}if(Z(i.get("rotation"),u,a,we),i.get("centerOffsetAndDistance")?$(i.get("centerOffsetAndDistance"),p,a,we):ee(p,a,x*we),i.get("featureAttribute")?$(i.get("featureAttribute"),h,a,we):ee(h,a,x*we),null!=s){const e=i.get("position")?.indices;if(e){const t=e.length,i=r.getField("objectAndLayerIdColor",D);te(s,i,t,a,we)}}return{numVerticesPerItem:we,numItems:x}}intersect(e,t,i,s,a,o,n){const{options:{selectionMode:l,hud:c,excludeLabels:x},point:S,camera:O}=s;if(!l||!c||x&&t.isLabel||!S)return;const z=this.vertexBufferLayout.createView(e),A=z.getField("position",M),_=z.getField("normal",M),j=z.getField("rotation",C),P=z.getField("size",R),F=z.getField("featureAttribute",w),D=z.getField("centerOffsetAndDistance",w),L="screen"===t.centerOffsetUnits,T=se(t);if(null==A||null==_||null==j||null==P||null==D||null==O)return;const V=null==F?null:F.getVec(0,Fe),{scaleX:U,scaleY:E}=Be(V,t,O.pixelRatio),B=A.count/we;for(let M=0;M<B;M++){const e=M*we;if(A.getVec(e,de),null!=i&&v(de,de,i),u(de,de,O.viewMatrix),D.getVec(e,_e),f(je,_e[0],_e[1],_e[2]),!L&&(de[0]+=je[0],de[1]+=je[1],0!==je[2])){const e=je[2];p(je,de),h(de,de,m(je,je,e))}if(_.getVec(e,ge),ue(ge,ye,O,De),Ie(t,de,De,O,me),O.applyProjection(de,be),be[0]>-1){L&&(je[0]||je[1])&&(be[0]+=je[0]*O.pixelRatio,0!==je[1]&&(be[1]+=H(je[1],me.factorAlignment)*O.pixelRatio),O.unapplyProjection(be,de)),be[0]+=t.screenOffset[0]*O.pixelRatio,be[1]+=t.screenOffset[1]*O.pixelRatio,be[0]=Math.floor(be[0]),be[1]=Math.floor(be[1]),P.getVec(e,Re),N(Re,me.factor,Re);const i=Me*O.pixelRatio;let a=0;if(t.textureIsSignedDistanceField){a=Math.min(t.outlineSize,.5*Re[0])*O.pixelRatio/2}Re[0]*=U,Re[1]*=E;const o=j.get(e),l=t.rotation+o;if(he(S,be[0],be[1],Re,i,a,l,t,T)){const e=s.ray;if(u(xe,de,r(Ae,O.viewMatrix)),be[0]=S[0],be[1]=S[1],O.unprojectFromRenderScreen(be,de)){const t=y();d(t,e.direction);const i=1/g(t);m(t,t,i);n(b(e.origin,de)*i,t,M,xe)}}}}}}function Be(e,t,i){return null==e||null==t.vvSize?{scaleX:i,scaleY:i}:(L(Pe,t,e),{scaleX:Pe[0]*i,scaleY:Pe[1]*i})}function Ie(e,t,i,s,r){if(!e.verticalOffset?.screenLength){if(e.screenSizePerspective||e.screenSizePerspectiveAlignment){qe(e,r,g(t),i.cosAngle)}else r.factor.scale=1,r.factorAlignment.scale=1;return t}const a=g(t),o=e.screenSizePerspectiveAlignment??e.screenSizePerspective,n=ie(s,a,e.verticalOffset,i.cosAngle,o);return qe(e,r,a,i.cosAngle),m(i.normal,i.normal,n),v(t,t,i.normal)}function qe(e,t,i,s){null!=e.screenSizePerspective?X(s,i,e.screenSizePerspective,t.factor):(t.factor.scale=1,t.factor.factor=0,t.factor.minScaleFactor=0),null!=e.screenSizePerspectiveAlignment?X(s,i,e.screenSizePerspectiveAlignment,t.factorAlignment):(t.factorAlignment.factor=t.factor.factor,t.factorAlignment.scale=t.factor.scale,t.factorAlignment.minScaleFactor=t.factor.minScaleFactor)}export{le as HUDMaterial,Te as Parameters};
5
+ import{clamp as e,deg2rad as t}from"../../../../core/mathUtils.js";import{fromMat4 as i}from"../../../../core/libs/gl-matrix-2/math/mat3.js";import{create as s}from"../../../../core/libs/gl-matrix-2/factories/mat3f64.js";import{invert as r}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as a}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{set as n,rotate as o}from"../../../../core/libs/gl-matrix-2/math/vec2.js";import{fromValues as l,create as c}from"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{i as f,t as u,n as p,d as h,g as m,c as d,l as g,j as b,f as v,a as S,o as x,e as O}from"../../../../chunks/vec32.js";import{create as y,fromValues as z}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromArray as _,create as A,freeze as j}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{isMat4 as P}from"../../../../core/libs/gl-matrix-2/types/mat4.js";import{create as F}from"../../../../geometry/support/aaBoundingRect.js";import{BufferViewVec4u8 as D,BufferViewVec3f as M,BufferViewFloat as C,BufferViewVec2f as V,BufferViewVec4f as R}from"../../../../geometry/support/buffer/BufferView.js";import{evaluateModelTransformScale as w}from"../../layers/support/FastSymbolUpdates.js";import{debugFlags as T}from"../../support/debugFlags.js";import{isColorEmissionHighlightOrOID as U,isColorOrColorEmission as L}from"../core/shaderLibrary/ShaderOutput.js";import{HUDVerticalPixelOffset as E}from"../core/shaderLibrary/hud/HUD.glsl.js";import{olidEnabled as B}from"../effects/geometry/olidUtils.js";import{GLTextureMaterialBindParameters as I,GLTextureMaterial as q}from"../lib/GLTextureMaterial.js";import{Material as G}from"../lib/Material.js";import{applyScaleFactor as W,applyPrecomputedScaleFactor as H,precomputeScaleFactor as N}from"../lib/screenSizePerspectiveUtils.js";import{assert as X}from"../lib/Util.js";import{ScaleInfo as Y}from"./ScaleInfo.js";import{writePosition as k,writeNormal as J,writeColor as K,writeBufferFloat as Q,writeBufferVec4 as Z,writeBufferVec4Zeros as $,writeOlidColor as ee}from"./internal/bufferWriterUtils.js";import{verticalOffsetAtDistance as te}from"./internal/MaterialUtil.js";import{c as ie,f as se}from"../../../../chunks/HUDMaterial.glsl.js";import{olidLayout as re,layout as ae,HUDMaterialTechnique as ne}from"../shaders/HUDMaterialTechnique.js";import{HUDMaterialTechniqueConfiguration as oe}from"../shaders/HUDMaterialTechniqueConfiguration.js";import{alphaCutoff as le}from"../../../../webscene/support/AlphaCutoff.js";class ce extends G{constructor(e,t){super(e,Ue),this.produces=new Map([[12,e=>U(e)&&!this.parameters.drawAsLabel],[13,e=>U(e)&&this.parameters.drawAsLabel],[11,()=>this.parameters.occlusionTest],[17,e=>this.parameters.draped&&U(e)]]),this._visible=!0,this._configuration=new oe(t)}getConfiguration(e,t){const i=this.parameters.draped;return super.getConfiguration(e,t,this._configuration),this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.hasVerticalOffset=!!this.parameters.verticalOffset,this._configuration.hasScreenSizePerspective=!!this.parameters.screenSizePerspective,this._configuration.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits,this._configuration.hasPolygonOffset=this.parameters.polygonOffset,this._configuration.draped=i,this._configuration.occlusionTestEnabled=this.parameters.occlusionTest,this._configuration.pixelSnappingEnabled=this.parameters.pixelSnappingEnabled,this._configuration.signedDistanceFieldEnabled=this.parameters.textureIsSignedDistanceField,this._configuration.sampleSignedDistanceFieldTexelCenter=this.parameters.sampleSignedDistanceFieldTexelCenter,this._configuration.hasRotation=this.parameters.hasRotation,this._configuration.hasVVSize=!!this.parameters.vvSize,this._configuration.hasVVColor=!!this.parameters.vvColor,this._configuration.occlusionPass=11===t.slot,this._configuration.occludedFragmentFade=!i&&this.parameters.occludedFragmentFade,this._configuration.horizonCullingEnabled=this.parameters.horizonCullingEnabled,this._configuration.isFocused=this.parameters.isFocused,this._configuration.depthTestEnabled=this.parameters.depthEnabled||11===t.slot,L(e)&&(this._configuration.debugDrawLabelBorder=!!T.LABELS_SHOW_BORDER),this._configuration.oitPass=t.oitPass,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration}intersect(e,t,s,a,n,o){const{options:{selectionMode:l,hud:c,excludeLabels:v},point:S,camera:x}=s,{parameters:O}=this;if(!l||!c||v&&O.isLabel||!e.visible||!S||!x)return;const z=e.attributes.get("featureAttribute"),A=null==z?null:_(z.data,De),{scaleX:j,scaleY:P}=Ee(A,O,x.pixelRatio);i(ze,t),e.attributes.has("featureAttribute")&&he(ze);const F=e.attributes.get("position"),D=e.attributes.get("size"),M=e.attributes.get("normal"),C=e.attributes.get("rotation"),V=e.attributes.get("centerOffsetAndDistance");X(F.size>=3);const R=ie(O),w="screen"===this.parameters.centerOffsetUnits;for(let i=0;i<F.data.length/F.size;i++){const e=i*F.size;f(ge,F.data[e],F.data[e+1],F.data[e+2]),u(ge,ge,t),u(ge,ge,x.viewMatrix);const a=i*V.size;if(f(Pe,V.data[a],V.data[a+1],V.data[a+2]),!w&&(ge[0]+=Pe[0],ge[1]+=Pe[1],0!==Pe[2])){const e=Pe[2];p(Pe,ge),h(ge,ge,m(Pe,Pe,e))}const n=i*M.size;if(f(be,M.data[n],M.data[n+1],M.data[n+2]),pe(be,ze,x,Me),Be(this.parameters,ge,Me,x,de),x.applyProjection(ge,ve),ve[0]>-1){w&&(Pe[0]||Pe[1])&&(ve[0]+=Pe[0]*x.pixelRatio,0!==Pe[1]&&(ve[1]+=W(Pe[1],de.factorAlignment)*x.pixelRatio),x.unapplyProjection(ve,ge)),ve[0]+=this.parameters.screenOffset[0]*x.pixelRatio,ve[1]+=this.parameters.screenOffset[1]*x.pixelRatio,ve[0]=Math.floor(ve[0]),ve[1]=Math.floor(ve[1]);const e=i*D.size;Re[0]=D.data[e],Re[1]=D.data[e+1],H(Re,de.factor,Re);const t=Ce*x.pixelRatio;let a=0;if(O.textureIsSignedDistanceField){a=Math.min(O.outlineSize,.5*Re[0])*x.pixelRatio/2}Re[0]*=j,Re[1]*=P;const n=i*C.size,l=O.rotation+C.data[n];if(me(S,ve[0],ve[1],Re,t,a,l,O,R)){const e=s.ray;if(u(xe,ge,r(Ae,x.viewMatrix)),ve[0]=S[0],ve[1]=S[1],x.unprojectFromRenderScreen(ve,ge)){const t=y();d(t,e.direction);const i=1/g(t);m(t,t,i);o(b(e.origin,ge)*i,t,-1,xe)}}}}}intersectDraped(e,t,i,s,r){const a=e.attributes.get("position"),n=e.attributes.get("size"),o=e.attributes.get("rotation"),l=this.parameters,c=ie(l),f=e.attributes.get("featureAttribute"),u=null==f?null:_(f.data,De),{scaleX:p,scaleY:h}=Ee(u,l,e.screenToWorldRatio),m=Ve*e.screenToWorldRatio;for(let d=0;d<a.data.length/a.size;d++){const t=d*a.size,f=a.data[t],u=a.data[t+1],g=d*n.size;Re[0]=n.data[g],Re[1]=n.data[g+1];let b=0;if(l.textureIsSignedDistanceField){b=Math.min(l.outlineSize,.5*Re[0])*e.screenToWorldRatio/2}Re[0]*=p,Re[1]*=h;const v=d*o.size,S=l.rotation+o.data[v];me(i,f,u,Re,m,b,S,l,c)&&s(r.distance,r.normal,-1)}}createBufferWriter(){return new Le}applyShaderOffsetsView(e,t,i,s,r,a,n){const o=pe(t,i,r,Me);return this._applyVerticalGroundOffsetView(e,o,r,n),Be(this.parameters,n,o,r,a),this._applyPolygonOffsetView(n,o,s[3],r,n),this._applyCenterOffsetView(n,s,n),n}applyShaderOffsetsNDC(e,t,i,s,r){return this._applyCenterOffsetNDC(e,t,i,s),null!=r&&d(r,s),this._applyPolygonOffsetNDC(s,t,i,s),s}_applyPolygonOffsetView(t,i,s,r,a){const n=r.aboveGround?1:-1;let o=Math.sign(s);0===o&&(o=n);const l=n*o;if(this.parameters.shaderPolygonOffset<=0)return d(a,t);const c=e(Math.abs(i.cosAngle),.01,1),f=1-Math.sqrt(1-c*c)/c/r.viewport[2];return m(a,t,l>0?f:1/f),a}_applyVerticalGroundOffsetView(e,t,i,s){const r=g(e),a=i.aboveGround?1:-1,n=i.computeRenderPixelSizeAtDist(r)*E,o=m(ge,t.normal,a*n);return v(s,e,o),s}_applyCenterOffsetView(e,t,i){const s="screen"!==this.parameters.centerOffsetUnits;return i!==e&&d(i,e),s&&(i[0]+=t[0],i[1]+=t[1],t[2]&&(p(be,i),S(i,i,m(be,be,t[2])))),i}_applyCenterOffsetNDC(e,t,i,s){const r="screen"!==this.parameters.centerOffsetUnits;return s!==e&&d(s,e),r||(s[0]+=t[0]/i.fullWidth*2,s[1]+=t[1]/i.fullHeight*2),s}_applyPolygonOffsetNDC(e,t,i,s){const r=this.parameters.shaderPolygonOffset;if(e!==s&&d(s,e),r){const e=i.aboveGround?1:-1,a=e*Math.sign(t[3]);s[2]-=(a||e)*r}return s}set visible(e){this._visible=e}get visible(){const{color:e,outlineSize:t,outlineColor:i}=this.parameters,s=e[3]>=le||t>=le&&i[3]>=le;return this._visible&&s}createGLMaterial(e){return new fe(e)}calculateRelativeScreenBounds(e,t,i=F()){return ue(this.parameters,e,t,i),i[2]=i[0]+e[0],i[3]=i[1]+e[1],i}}class fe extends q{constructor(e){super({...e,...e.material.parameters})}beginSlot(e){return this.updateTexture(this._material.parameters.textureId),this._material.setParameters(this.textureBindParameters),this.getTechnique(ne,e)}}function ue(e,t,i,s){s[0]=e.anchorPosition[0]*-t[0]+e.screenOffset[0]*i,s[1]=e.anchorPosition[1]*-t[1]+e.screenOffset[1]*i}function pe(e,t,s,r){return P(t)&&(t=i(_e,t)),x(r.normal,e,t),u(r.normal,r.normal,s.viewInverseTransposeMatrix),r.cosAngle=O(Se,Te),r}function he(e){const t=e[0],i=e[1],s=e[2],r=e[3],a=e[4],n=e[5],o=e[6],l=e[7],c=e[8],f=1/Math.sqrt(t*t+i*i+s*s),u=1/Math.sqrt(r*r+a*a+n*n),p=1/Math.sqrt(o*o+l*l+c*c);return e[0]=t*f,e[1]=i*f,e[2]=s*f,e[3]=r*u,e[4]=a*u,e[5]=n*u,e[6]=o*p,e[7]=l*p,e[8]=c*p,e}function me(e,i,s,r,a,l,c,f,u){let p=i-a-r[0]*u[0],h=p+r[0]+2*a,m=s-a-r[1]*u[1],d=m+r[1]+2*a;const g=f.distanceFieldBoundingBox;return f.textureIsSignedDistanceField&&null!=g&&(p+=r[0]*g[0],m+=r[1]*g[1],h-=r[0]*(1-g[2]),d-=r[1]*(1-g[3]),p-=l,h+=l,m-=l,d+=l),n(ye,i,s),o(Oe,e,ye,t(c)),Oe[0]>p&&Oe[0]<h&&Oe[1]>m&&Oe[1]<d}const de=new Y,ge=y(),be=y(),ve=A(),Se=y(),xe=y(),Oe=c(),ye=c(),ze=s(),_e=s(),Ae=a(),je=A(),Pe=y(),Fe=y(),De=A(),Me={normal:Se,cosAngle:0},Ce=1,Ve=2,Re=l(0,0),we=6,Te=z(0,0,1);class Ue extends I{constructor(){super(...arguments),this.renderOccluded=1,this.isDecoration=!1,this.color=j(1,1,1,1),this.polygonOffset=!1,this.anchorPosition=l(.5,.5),this.screenOffset=[0,0],this.shaderPolygonOffset=1e-5,this.textureIsSignedDistanceField=!1,this.sampleSignedDistanceFieldTexelCenter=!1,this.outlineColor=j(1,1,1,1),this.outlineSize=0,this.distanceFieldBoundingBox=A(),this.rotation=0,this.hasRotation=!1,this.vvSizeEnabled=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.hasSlicePlane=!1,this.pixelSnappingEnabled=!0,this.occlusionTest=!0,this.occludedFragmentFade=!1,this.horizonCullingEnabled=!1,this.centerOffsetUnits="world",this.drawAsLabel=!1,this.depthEnabled=!0,this.isFocused=!0,this.focusStyle="bright",this.draped=!1,this.isLabel=!1}get hasVVSize(){return!!this.vvSize}get hasVVColor(){return!!this.vvColor}get hasVVOpacity(){return!!this.vvOpacity}}class Le{constructor(){this.layout=B()?re:ae}elementCount(e){return e.get("position").indices.length*we}write(e,t,i,s,r,a){const{position:n,normal:o,uvi:l,color:c,size:f,rotation:u,centerOffsetAndDistance:p,featureAttribute:h}=r;k(i.get("position"),e,n,a,we),J(i.get("normal"),t,o,a,we);const m=i.get("uvi")?.data;let d=0,g=0,b=-1-se,v=-1-se;m&&m.length>=4&&(d=m[0],g=m[1],b=-1-m[2],v=-1-m[3]);let S=i.get("position").indices.length,x=a;for(let z=0;z<S;++z)l.set(x,0,d),l.set(x,1,g),x++,l.set(x,0,b),l.set(x,1,g),x++,l.set(x,0,b),l.set(x,1,v),x++,l.set(x,0,b),l.set(x,1,v),x++,l.set(x,0,d),l.set(x,1,v),x++,l.set(x,0,d),l.set(x,1,g),x++;K(i.get("color"),4,c,a,we);const{data:O,indices:y}=i.get("size");S=y.length,x=a;for(let z=0;z<S;++z){const e=O[2*y[z]],t=O[2*y[z]+1];for(let i=0;i<we;++i)f.set(x,0,e),f.set(x,1,t),x++}if(Q(i.get("rotation"),u,a,we),i.get("centerOffsetAndDistance")?Z(i.get("centerOffsetAndDistance"),p,a,we):$(p,a,S*we),i.get("featureAttribute")?Z(i.get("featureAttribute"),h,a,we):$(h,a,S*we),null!=s){const e=i.get("position")?.indices;if(e){const t=e.length,i=r.getField("olidColor",D);ee(s,i,t,a,we)}}return{numVerticesPerItem:we,numItems:S}}intersect(e,t,i,s,a,n,o){const{options:{selectionMode:l,hud:c,excludeLabels:S},point:x,camera:O}=s;if(!l||!c||S&&t.isLabel||!x)return;const z=this.layout.createView(e),_=z.getField("position",M),A=z.getField("normal",M),j=z.getField("rotation",C),P=z.getField("size",V),F=z.getField("featureAttribute",R),D=z.getField("centerOffsetAndDistance",R),w="screen"===t.centerOffsetUnits,T=ie(t);if(null==_||null==A||null==j||null==P||null==D||null==O)return;const U=null==F?null:F.getVec(0,De),{scaleX:L,scaleY:E}=Ee(U,t,O.pixelRatio),B=_.count/we;for(let M=0;M<B;M++){const e=M*we;if(_.getVec(e,ge),null!=i&&v(ge,ge,i),u(ge,ge,O.viewMatrix),D.getVec(e,je),f(Pe,je[0],je[1],je[2]),!w&&(ge[0]+=Pe[0],ge[1]+=Pe[1],0!==Pe[2])){const e=Pe[2];p(Pe,ge),h(ge,ge,m(Pe,Pe,e))}if(A.getVec(e,be),pe(be,ze,O,Me),Be(t,ge,Me,O,de),O.applyProjection(ge,ve),ve[0]>-1){w&&(Pe[0]||Pe[1])&&(ve[0]+=Pe[0]*O.pixelRatio,0!==Pe[1]&&(ve[1]+=W(Pe[1],de.factorAlignment)*O.pixelRatio),O.unapplyProjection(ve,ge)),ve[0]+=t.screenOffset[0]*O.pixelRatio,ve[1]+=t.screenOffset[1]*O.pixelRatio,ve[0]=Math.floor(ve[0]),ve[1]=Math.floor(ve[1]),P.getVec(e,Re),H(Re,de.factor,Re);const i=Ce*O.pixelRatio;let a=0;if(t.textureIsSignedDistanceField){a=Math.min(t.outlineSize,.5*Re[0])*O.pixelRatio/2}Re[0]*=L,Re[1]*=E;const n=j.get(e),l=t.rotation+n;if(me(x,ve[0],ve[1],Re,i,a,l,t,T)){const e=s.ray;if(u(xe,ge,r(Ae,O.viewMatrix)),ve[0]=x[0],ve[1]=x[1],O.unprojectFromRenderScreen(ve,ge)){const t=y();d(t,e.direction);const i=1/g(t);m(t,t,i);o(b(e.origin,ge)*i,t,M,xe)}}}}}}function Ee(e,t,i){return null==e||null==t.vvSize?{scaleX:i,scaleY:i}:(w(Fe,t,e),{scaleX:Fe[0]*i,scaleY:Fe[1]*i})}function Be(e,t,i,s,r){if(!e.verticalOffset?.screenLength){if(e.screenSizePerspective||e.screenSizePerspectiveAlignment){Ie(e,r,g(t),i.cosAngle)}else r.factor.scale=1,r.factorAlignment.scale=1;return t}const a=g(t),n=e.screenSizePerspectiveAlignment??e.screenSizePerspective,o=te(s,a,e.verticalOffset,i.cosAngle,n);return Ie(e,r,a,i.cosAngle),m(i.normal,i.normal,o),v(t,t,i.normal)}function Ie(e,t,i,s){null!=e.screenSizePerspective?N(s,i,e.screenSizePerspective,t.factor):(t.factor.scale=1,t.factor.factor=0,t.factor.minScaleFactor=0),null!=e.screenSizePerspectiveAlignment?N(s,i,e.screenSizePerspectiveAlignment,t.factorAlignment):(t.factorAlignment.factor=t.factor.factor,t.factorAlignment.scale=t.factor.scale,t.factorAlignment.minScaleFactor=t.factor.minScaleFactor)}export{ce as HUDMaterial,Ue as Parameters};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{set as t,squaredDistance as e}from"../../../../core/libs/gl-matrix-2/math/vec2.js";import{create as r}from"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{newLayout as s}from"../../support/buffer/InterleavedLayout.js";import i from"../lib/GLMaterial.js";import{Material as o}from"../lib/Material.js";import{writePosition as n,writeBufferFloat as a}from"./internal/bufferWriterUtils.js";import{HeatmapDensityPassParameters as u,HeatmapDensityTechnique as l}from"../shaders/HeatmapDensityTechnique.js";import{HeatmapDensityTechniqueConfiguration as c}from"../shaders/HeatmapDensityTechniqueConfiguration.js";const f=2;class p extends u{constructor(){super(...arguments),this.isAttributeDriven=!1,this.usesHalfFloats=!1}}class m extends o{constructor(t){super(t,p),this.produces=new Map([[17,t=>0===t]]),this._configuration=new c}getConfiguration(t,e){return super.getConfiguration(t,e,this._configuration),this._configuration.isAttributeDriven=this.parameters.isAttributeDriven,this._configuration.usesHalfFloat=this.parameters.usesHalfFloats,this._configuration}get visible(){return!0}createGLMaterial(t){return new h(t)}intersect(){}intersectDraped(r,s,i,o,n){const a=r.attributes.get("position"),{parameters:u}=this,{searchRadius:l}=u,{screenToWorldRatio:c}=r,p=l*c+f*c,m=p*p,h=a.data.length/a.size;for(let f=0;f<h;f++){const r=f*a.size,s=t(j,a.data[r],a.data[r+1]);e(s,i)<m&&o(n.distance,n.normal,-1)}}createBufferWriter(){return new g(this.parameters.isAttributeDriven?d:b)}}class h extends i{beginSlot(t){return this.getTechnique(l,t)}}class g{constructor(t){this.vertexBufferLayout=t}elementCount(t){return t.get("position").indices.length*v}write(t,e,r,s,i,o){n(r.get("position"),t,i.position,o,v);const u=r.get("position").indices.length,l=i.uv0;let c=o;for(let n=0;n<u;++n)l.setValues(c++,-1,-1),l.setValues(c++,1,-1),l.setValues(c++,1,1),l.setValues(c++,1,1),l.setValues(c++,-1,1),l.setValues(c++,-1,-1);const f="featureAttribute"in i?i.featureAttribute:null;return f?(a(r.get("featureAttribute"),f,o,v),null):null}}const b=s().vec3f("position").vec2f16("uv0"),d=b.clone().f32("featureAttribute"),v=6,j=r();export{m as HeatmapDensityMaterial,p as Parameters};
5
+ import{set as t,squaredDistance as e}from"../../../../core/libs/gl-matrix-2/math/vec2.js";import{create as s}from"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import r from"../lib/GLMaterial.js";import{Material as i}from"../lib/Material.js";import{writePosition as n,writeBufferFloat as a}from"./internal/bufferWriterUtils.js";import{attributeDrivenLayout as o,layout as u,HeatmapDensityPassParameters as l,HeatmapDensityTechnique as c}from"../shaders/HeatmapDensityTechnique.js";import{HeatmapDensityTechniqueConfiguration as f}from"../shaders/HeatmapDensityTechniqueConfiguration.js";const m=2;class p extends l{constructor(){super(...arguments),this.isAttributeDriven=!1,this.usesHalfFloats=!1}}class h extends i{constructor(t){super(t,p),this.produces=new Map([[17,t=>0===t]]),this._configuration=new f}getConfiguration(t,e){return super.getConfiguration(t,e,this._configuration),this._configuration.isAttributeDriven=this.parameters.isAttributeDriven,this._configuration.usesHalfFloat=this.parameters.usesHalfFloats,this._configuration}get visible(){return!0}createGLMaterial(t){return new g(t)}intersect(){}intersectDraped(s,r,i,n,a){const o=s.attributes.get("position"),{parameters:u}=this,{searchRadius:l}=u,{screenToWorldRatio:c}=s,f=l*c+m*c,p=f*f,h=o.data.length/o.size;for(let m=0;m<h;m++){const s=m*o.size,r=t(v,o.data[s],o.data[s+1]);e(r,i)<p&&n(a.distance,a.normal,-1)}}createBufferWriter(){return new b(this.parameters.isAttributeDriven?o:u)}}class g extends r{beginSlot(t){return this.getTechnique(c,t)}}class b{constructor(t){this.layout=t}elementCount(t){return t.get("position").indices.length*d}write(t,e,s,r,i,o){n(s.get("position"),t,i.position,o,d);const u=s.get("position").indices.length,l=i.uv0;let c=o;for(let n=0;n<u;++n)l.setValues(c++,-1,-1),l.setValues(c++,1,-1),l.setValues(c++,1,1),l.setValues(c++,1,1),l.setValues(c++,-1,1),l.setValues(c++,-1,-1);const f="featureAttribute"in i?i.featureAttribute:null;return f&&a(s.get("featureAttribute"),f,o,d),null}}const d=6,v=s();export{h as HeatmapDensityMaterial,p as Parameters};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{BufferViewFloat as e}from"../../../../geometry/support/buffer/BufferView.js";import{isHighlightOrOID as t,isColor as r}from"../core/shaderLibrary/ShaderOutput.js";import i from"../lib/GLMaterial.js";import{isUpdatableTexture as s}from"../lib/ITexture.js";import{MaterialParameters as a}from"../lib/Material.js";import{OITPolygonOffsetLimit as o}from"../lib/OrderIndependentTransparency.js";import{assert as n}from"../lib/Util.js";import{DefaultBufferWriter as p}from"./DefaultBufferWriter.js";import{PositionUvLayout as u}from"./DefaultLayouts.js";import{TriangleMaterial as l}from"./TriangleMaterial.js";import{writeBufferFloat as c,writeDefaultAttribute as h}from"./internal/bufferWriterUtils.js";import{vertexAttributeLocations as f,ImageMaterialTechnique as m}from"../shaders/ImageMaterialTechnique.js";import{ImageMaterialTechniqueConfiguration as d}from"../shaders/ImageMaterialTechniqueConfiguration.js";class g extends l{constructor(e){super(e,b),this.vertexAttributeLocations=f,this.supportsEdges=!0,this.produces=new Map([[2,e=>t(e)],[4,e=>r(e)&&this.parameters.writeDepth],[7,e=>r(e)&&!this.parameters.writeDepth],[17,e=>r(e)||t(e)]]),this._configuration=new d(e.draped)}dispose(){this.setParameters({texture:void 0})}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.cullFace=this.parameters.cullFace,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.hasOccludees=t.hasOccludees,this._configuration.oitPass=t.oitPass,this._configuration.enableOffset=t.camera.relativeElevation<o,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration.perspectiveInterpolation=this.parameters.perspectiveInterpolation,this._configuration}get visible(){return!0}createGLMaterial(e){return new v(e)}createBufferWriter(){let e=u;return this.parameters.perspectiveInterpolation&&(e=e.clone().f32("perspectiveDivide")),new x(e)}}class v extends i{constructor(e){super({...e,...e.material.parameters}),this.parameters=e;const t=this._material.parameters.texture;s(t)&&e.textures.updater.add(t)}dispose(){this.parameters.textures.updater.remove(this._material.parameters.texture)}beginSlot(e){return this.getTechnique(m,e)}}class x extends p{write(t,r,i,s,a,o){for(const p of this.vertexBufferLayout.fields.keys()){const s=i.get(p);if(s)if("perspectiveDivide"===p){n(1===s.size);const t=a.getField(p,e);t&&c(s,t,o)}else h(p,s,t,r,a,o)}return null}}class b extends a{constructor(e,t){super(),this.texture=e,this.draped=t,this.writeDepth=!0,this.hasSlicePlane=!1,this.cullFace=0,this.opacity=1,this.perspectiveInterpolation=!1}get glTexture(){return this.texture.glTexture}}export{g as ImageMaterial,b as Parameters};
5
+ import{BufferViewFloat as e}from"../../../../geometry/support/buffer/BufferView.js";import{isHighlightOrOID as t,isColor as r}from"../core/shaderLibrary/ShaderOutput.js";import i from"../lib/GLMaterial.js";import{isUpdatableTexture as s}from"../lib/ITexture.js";import{MaterialParameters as a}from"../lib/Material.js";import{OITPolygonOffsetLimit as o}from"../lib/OrderIndependentTransparency.js";import{assert as n}from"../lib/Util.js";import{DefaultBufferWriter as u}from"./DefaultBufferWriter.js";import{TriangleMaterial as p}from"./TriangleMaterial.js";import{writeBufferFloat as l,writeAttribute as c}from"./internal/bufferWriterUtils.js";import{getLayout as h,ImageMaterialTechnique as f}from"../shaders/ImageMaterialTechnique.js";import{ImageMaterialTechniqueConfiguration as m}from"../shaders/ImageMaterialTechniqueConfiguration.js";class g extends p{constructor(e){super(e,_),this.supportsEdges=!0,this.produces=new Map([[2,e=>t(e)],[4,e=>r(e)&&this.parameters.writeDepth],[7,e=>r(e)&&!this.parameters.writeDepth],[17,e=>r(e)||t(e)]]),this._configuration=new m(e.draped)}dispose(){this.setParameters({texture:void 0})}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.cullFace=this.parameters.cullFace,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.hasOccludees=t.hasOccludees,this._configuration.oitPass=t.oitPass,this._configuration.enableOffset=t.camera.relativeElevation<o,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration.perspectiveInterpolation=this.parameters.perspectiveInterpolation,this._configuration}get visible(){return!0}createGLMaterial(e){return new d(e)}createBufferWriter(){return new x(h(this.parameters))}}class d extends i{constructor(e){super({...e,...e.material.parameters}),this.parameters=e;const t=this._material.parameters.texture;s(t)&&e.textures.updater.add(t)}dispose(){this.parameters.textures.updater.remove(this._material.parameters.texture)}beginSlot(e){return this.getTechnique(f,e)}}class x extends u{write(t,r,i,s,a,o){for(const u of this.layout.fields.keys()){const s=i.get(u);if(s)if("perspectiveDivide"===u){n(1===s.size);const t=a.getField(u,e);t&&l(s,t,o)}else c(u,s,t,r,a,o)}return null}}class _ extends a{constructor(e,t){super(),this.texture=e,this.draped=t,this.writeDepth=!0,this.hasSlicePlane=!1,this.cullFace=0,this.opacity=1,this.perspectiveInterpolation=!1}get glTexture(){return this.texture.glTexture}}export{g as ImageMaterial,_ as Parameters};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{safeToString as e}from"../../../../core/string.js";import{fromValues as t}from"../../../../core/libs/gl-matrix-2/factories/vec2f32.js";import{fromValues as r}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{newLayout as i}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as s}from"../core/shaderLibrary/ShaderOutput.js";import n from"../lib/GLMaterial.js";import{Material as o,MaterialParameters as a}from"../lib/Material.js";import{writePosition as c,writeNormal as l,writeBufferVec4 as f}from"./internal/bufferWriterUtils.js";import{LineCalloutTechnique as u}from"../shaders/LineCalloutTechnique.js";import{LineCalloutTechniqueConfiguration as h}from"../shaders/LineCalloutTechniqueConfiguration.js";import{alphaCutoff as p}from"../../../../webscene/support/AlphaCutoff.js";class m extends o{constructor(e,t){super(e,v),this.intersectDraped=void 0,this.produces=new Map([[14,e=>s(e)],[15,e=>s(e)]]),this._configuration=new h(t),this._uniqueMaterialIdentifier=g(this.parameters)}passParameters(){return this.parameters}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.occlusionTestEnabled=this.parameters.occlusionTest,this._configuration.hasVerticalOffset=null!=this.parameters.verticalOffset,this._configuration.hasScreenSizePerspective=null!=this.parameters.screenSizePerspective,this._configuration.hudDepth=15===t.slot,this._configuration.hudDepthAlignStart=!!this.parameters.hudDepthAlignStart,this._configuration.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration}get visible(){return this.parameters.color[3]>=p||(this.parameters.borderColor?.[3]??0)>=p}intersect(){}createGLMaterial(e){return new d(e)}createBufferWriter(){return new $}validateParameters(e){this._uniqueMaterialIdentifier=g(e)}get uniqueMaterialIdentifier(){return this._uniqueMaterialIdentifier}}function g({renderOccluded:t,isDecoration:r,horizontalScreenOffset:i,color:s,size:n,occlusionTest:o,shaderPolygonOffset:a,hudDepthAlignStart:c,centerOffsetUnits:l,hasSlicePlane:f,screenSizePerspective:u,verticalOffset:h,borderColor:p}){return e`${t}:${r}:${i}:[${s}]:${n}:${o}:${a}:${c}:${l}:${f}:${null!=u}:{${h?.screenLength}:${h?.minWorldLength}:${h?.maxWorldLength}}:[${p}]`}class d extends n{beginSlot(e){return this.getTechnique(u,e)}}class v extends a{constructor(){super(...arguments),this.horizontalScreenOffset=0,this.color=r(0,0,0,1),this.size=1,this.occlusionTest=!1,this.shaderPolygonOffset=1e-5,this.hudDepthAlignStart=!1,this.centerOffsetUnits="world",this.hasSlicePlane=!1}}const O=i().vec3f("position").vec3f("normal").vec2f16("uv0").vec4f("centerOffsetAndDistance"),S=[t(0,0),t(1,0),t(0,1),t(1,0),t(1,1),t(0,1)];class ${constructor(){this.vertexBufferLayout=O}elementCount(e){return 6*e.get("position").indices.length}write(e,t,r,i,s,n){c(r.get("position"),e,s.position,n,6),l(r.get("normal"),t,s.normal,n,6),f(r.get("centerOffsetAndDistance"),s.centerOffsetAndDistance,n,6);for(let o=0;o<S.length;++o)s.uv0.setVec(n+o,S[o]);return null}}export{m as LineCalloutMaterial,v as Parameters,g as uniqueMaterialIdentifier};
5
+ import{safeToString as e}from"../../../../core/string.js";import{fromValues as t}from"../../../../core/libs/gl-matrix-2/factories/vec2f32.js";import{fromValues as r}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{isColorOrColorEmission as i}from"../core/shaderLibrary/ShaderOutput.js";import s from"../lib/GLMaterial.js";import{Material as n,MaterialParameters as o}from"../lib/Material.js";import{writePosition as a,writeNormal as c,writeBufferVec4 as l}from"./internal/bufferWriterUtils.js";import{LineCalloutTechnique as h,layout as u}from"../shaders/LineCalloutTechnique.js";import{LineCalloutTechniqueConfiguration as f}from"../shaders/LineCalloutTechniqueConfiguration.js";import{alphaCutoff as p}from"../../../../webscene/support/AlphaCutoff.js";class m extends n{constructor(e,t){super(e,S),this.intersectDraped=void 0,this.produces=new Map([[14,e=>i(e)],[15,e=>i(e)]]),this._configuration=new f(t),this._uniqueMaterialIdentifier=g(this.parameters)}passParameters(){return this.parameters}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.occlusionTestEnabled=this.parameters.occlusionTest,this._configuration.hasVerticalOffset=null!=this.parameters.verticalOffset,this._configuration.hasScreenSizePerspective=null!=this.parameters.screenSizePerspective,this._configuration.hudDepth=15===t.slot,this._configuration.hudDepthAlignStart=!!this.parameters.hudDepthAlignStart,this._configuration.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration}get visible(){return this.parameters.color[3]>=p||(this.parameters.borderColor?.[3]??0)>=p}intersect(){}createGLMaterial(e){return new d(e)}createBufferWriter(){return new $}validateParameters(e){this._uniqueMaterialIdentifier=g(e)}get uniqueMaterialIdentifier(){return this._uniqueMaterialIdentifier}}function g({renderOccluded:t,isDecoration:r,horizontalScreenOffset:i,color:s,size:n,occlusionTest:o,shaderPolygonOffset:a,hudDepthAlignStart:c,centerOffsetUnits:l,hasSlicePlane:h,screenSizePerspective:u,verticalOffset:f,borderColor:p}){return e`${t}:${r}:${i}:[${s}]:${n}:${o}:${a}:${c}:${l}:${h}:${null!=u}:{${f?.screenLength}:${f?.minWorldLength}:${f?.maxWorldLength}}:[${p}]`}class d extends s{beginSlot(e){return this.getTechnique(h,e)}}class S extends o{constructor(){super(...arguments),this.horizontalScreenOffset=0,this.color=r(0,0,0,1),this.size=1,this.occlusionTest=!1,this.shaderPolygonOffset=1e-5,this.hudDepthAlignStart=!1,this.centerOffsetUnits="world",this.hasSlicePlane=!1}}const O=[t(0,0),t(1,0),t(0,1),t(1,0),t(1,1),t(0,1)];class ${constructor(){this.layout=u}elementCount(e){return 6*e.get("position").indices.length}write(e,t,r,i,s,n){a(r.get("position"),e,s.position,n,6),c(r.get("normal"),t,s.normal,n,6),l(r.get("centerOffsetAndDistance"),s.centerOffsetAndDistance,n,6);for(let o=0;o<O.length;++o)s.uv0.setVec(n+o,O[o]);return null}}export{m as LineCalloutMaterial,S as Parameters,g as uniqueMaterialIdentifier};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{i as e,G as t,t as r}from"../../../../chunks/vec32.js";import{create as i}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{makeFloat16Array as a}from"../../../../geometry/support/float16.js";import{newLayout as s}from"../../support/buffer/InterleavedLayout.js";import{isColor as o,isDepth as n,isColorHighlightOrDepth as h,isColorOrColorEmission as c}from"../core/shaderLibrary/ShaderOutput.js";import p from"../lib/GLMaterial.js";import{Material as u}from"../lib/Material.js";import{VisualVariablePassParameters as m}from"./VisualVariablePassParameters.js";import{writeDeltaF16Vector as l}from"./internal/bufferWriterUtils.js";import{vertexAttributeLocations as f,LineMarkerTechnique as v}from"../shaders/LineMarkerTechnique.js";import{LineMarkerTechniqueConfiguration as d}from"../shaders/LineMarkerTechniqueConfiguration.js";import{alphaCutoff as g}from"../../../../webscene/support/AlphaCutoff.js";class _ extends u{constructor(e){super(e,S),this._configuration=new d,this.vertexAttributeLocations=f,this.produces=new Map([[2,e=>8===e||o(e)&&8===this.parameters.renderOccluded],[3,e=>n(e)],[9,e=>h(e)&&8===this.parameters.renderOccluded],[10,e=>h(e)&&8===this.parameters.renderOccluded],[4,e=>o(e)&&this.parameters.writeDepth],[7,e=>o(e)&&!this.parameters.writeDepth],[17,e=>c(e)||8===e]]),this.intersectDraped=void 0,this._layout=this.createLayout()}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.space=17===t.slot?0:this.parameters.worldSpace?2:1,this._configuration.hideOnShortSegments=this.parameters.hideOnShortSegments,this._configuration.hasCap=0!==this.parameters.cap,this._configuration.anchor=this.parameters.anchor,this._configuration.hasTip=this.parameters.hasTip,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.hasOccludees=t.hasOccludees,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.vvSize=!!this.parameters.vvSize,this._configuration.vvColor=!!this.parameters.vvColor,this._configuration.vvOpacity=!!this.parameters.vvOpacity,this._configuration.occluder=8===this.parameters.renderOccluded,this._configuration.oitPass=t.oitPass,this._configuration.terrainDepthTest=t.terrainDepthTest&&c(e),this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration}get visible(){return this.parameters.color[3]>=g}intersect(){}createLayout(){const e=s().vec3f("position").vec4f16("previousDelta").vec2f16("uv0");return this.parameters.vvColor?e.f32("colorFeatureAttribute"):e.vec4u8("color",{glNormalized:!0}),this.parameters.vvOpacity&&e.f32("opacityFeatureAttribute"),this.parameters.vvSize?e.f32("sizeFeatureAttribute"):e.f16("size"),this.parameters.worldSpace&&e.vec3f16("normal"),e}createBufferWriter(){return new w(this._layout,this.parameters)}createGLMaterial(e){return new b(e)}}class b extends p{dispose(){super.dispose(),this._markerTextures?.release(this._markerPrimitive),this._markerPrimitive=null}beginSlot(e){const t=this._material.parameters.markerPrimitive;return t!==this._markerPrimitive&&(this._material.setParameters({markerTexture:this._markerTextures.swap(t,this._markerPrimitive)}),this._markerPrimitive=t),this.getTechnique(v,e)}}class S extends m{constructor(){super(...arguments),this.width=0,this.color=[1,1,1,1],this.markerPrimitive="arrow",this.placement="end",this.cap=0,this.anchor=0,this.hasTip=!1,this.worldSpace=!1,this.hideOnShortSegments=!1,this.writeDepth=!0,this.hasSlicePlane=!1,this.vvFastUpdate=!1,this.markerTexture=null}}class w{constructor(e,t){this.vertexBufferLayout=e,this._parameters=t}elementCount(){return"begin-end"===this._parameters.placement?12:6}write(i,s,o,n,h,c){const p=o.get("position").data,u=p.length/3;let m=[1,0,0];const f=o.get("normal");this._parameters.worldSpace&&null!=f&&(m=f.data);let v=1,d=0;this._parameters.vvSize?d=o.get("sizeFeatureAttribute").data[0]:o.has("size")&&(v=o.get("size").data[0]);let g=[1,1,1,1],_=0;this._parameters.vvColor?_=o.get("colorFeatureAttribute").data[0]:o.has("color")&&(g=o.get("color").data);let b=0;this._parameters.vvOpacity&&(b=o.get("opacityFeatureAttribute").data[0]);const S=new Float32Array(h.buffer),w=a(h.buffer),P=new Uint8Array(h.buffer);let O=c*(this.vertexBufferLayout.stride/4);const k=S.BYTES_PER_ELEMENT/w.BYTES_PER_ELEMENT,L=4/k,j=(e,t,r,i)=>{S[O++]=e[0],S[O++]=e[1],S[O++]=e[2],l(t,e,w,O*k),O+=L;let a=O*k;if(w[a++]=r[0],w[a++]=r[1],O=Math.ceil(a/k),this._parameters.vvColor)S[O++]=_;else{const e=Math.min(4*i,g.length-4),t=4*O++;P[t]=255*g[e],P[t+1]=255*g[e+1],P[t+2]=255*g[e+2],P[t+3]=255*g[e+3]}this._parameters.vvOpacity&&(S[O++]=b),a=O*k,this._parameters.vvSize?(S[O++]=d,a+=2):w[a++]=v,this._parameters.worldSpace&&(w[a++]=m[0],w[a++]=m[1],w[a++]=m[2]),O=Math.ceil(a/k)},x=(a,s)=>{const o=e(y,p[3*a],p[3*a+1],p[3*a+2]),n=T;let h=a+s;do{e(n,p[3*h],p[3*h+1],p[3*h+2]),h+=s}while(t(o,n)&&h>=0&&h<u);i&&(r(o,o,i),r(n,n,i)),j(o,n,[-1,-1],a),j(o,n,[1,-1],a),j(o,n,[1,1],a),j(o,n,[-1,-1],a),j(o,n,[1,1],a),j(o,n,[-1,1],a)},A=this._parameters.placement;return"begin"!==A&&"begin-end"!==A||x(0,1),"end"!==A&&"begin-end"!==A||x(u-1,-1),null}}const y=i(),T=i();export{_ as LineMarkerMaterial,S as Parameters};
5
+ import{i as e,G as t,t as r}from"../../../../chunks/vec32.js";import{create as i}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{makeFloat16Array as s}from"../../../../geometry/support/float16.js";import{isColor as a,isDepth as o,isColorHighlightOrDepth as n,isColorOrColorEmission as h}from"../core/shaderLibrary/ShaderOutput.js";import c from"../lib/GLMaterial.js";import{Material as p}from"../lib/Material.js";import{VisualVariablePassParameters as m}from"./VisualVariablePassParameters.js";import{writeDeltaF16Vector as l}from"./internal/bufferWriterUtils.js";import{getLayout as u,LineMarkerTechnique as d}from"../shaders/LineMarkerTechnique.js";import{LineMarkerTechniqueConfiguration as f}from"../shaders/LineMarkerTechniqueConfiguration.js";import{alphaCutoff as g}from"../../../../webscene/support/AlphaCutoff.js";class _ extends p{constructor(e){super(e,b),this._configuration=new f,this.produces=new Map([[2,e=>8===e||a(e)&&8===this.parameters.renderOccluded],[3,e=>o(e)],[9,e=>n(e)&&8===this.parameters.renderOccluded],[10,e=>n(e)&&8===this.parameters.renderOccluded],[4,e=>a(e)&&this.parameters.writeDepth],[7,e=>a(e)&&!this.parameters.writeDepth],[17,e=>h(e)||8===e]]),this.intersectDraped=void 0}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.space=17===t.slot?0:this.parameters.worldSpace?2:1,this._configuration.hideOnShortSegments=this.parameters.hideOnShortSegments,this._configuration.hasCap=0!==this.parameters.cap,this._configuration.anchor=this.parameters.anchor,this._configuration.hasTip=this.parameters.hasTip,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.hasOccludees=t.hasOccludees,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.hasVVSize=this.parameters.hasVVSize,this._configuration.hasVVColor=this.parameters.hasVVColor,this._configuration.hasVVOpacity=this.parameters.hasVVOpacity,this._configuration.occluder=8===this.parameters.renderOccluded,this._configuration.oitPass=t.oitPass,this._configuration.terrainDepthTest=t.terrainDepthTest&&h(e),this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration}get visible(){return this.parameters.color[3]>=g}intersect(){}createBufferWriter(){return new w(u(this.parameters),this.parameters)}createGLMaterial(e){return new v(e)}}class v extends c{dispose(){super.dispose(),this._markerTextures?.release(this._markerPrimitive),this._markerPrimitive=null}beginSlot(e){const t=this._material.parameters.markerPrimitive;return t!==this._markerPrimitive&&(this._material.setParameters({markerTexture:this._markerTextures.swap(t,this._markerPrimitive)}),this._markerPrimitive=t),this.getTechnique(d,e)}}class b extends m{constructor(){super(...arguments),this.width=0,this.color=[1,1,1,1],this.markerPrimitive="arrow",this.placement="end",this.cap=0,this.anchor=0,this.hasTip=!1,this.worldSpace=!1,this.hideOnShortSegments=!1,this.writeDepth=!0,this.hasSlicePlane=!1,this.vvFastUpdate=!1,this.markerTexture=null}}class w{constructor(e,t){this.layout=e,this._parameters=t}elementCount(){return"begin-end"===this._parameters.placement?12:6}write(i,a,o,n,h,c){const p=o.get("position").data,m=p.length/3;let u=[1,0,0];const d=o.get("normal");this._parameters.worldSpace&&null!=d&&(u=d.data);let f=1,g=0;this._parameters.vvSize?g=o.get("sizeFeatureAttribute").data[0]:o.has("size")&&(f=o.get("size").data[0]);let _=[1,1,1,1],v=0;this._parameters.vvColor?v=o.get("colorFeatureAttribute").data[0]:o.has("color")&&(_=o.get("color").data);let b=0;this._parameters.vvOpacity&&(b=o.get("opacityFeatureAttribute").data[0]);const w=new Float32Array(h.buffer),P=s(h.buffer),k=new Uint8Array(h.buffer);let O=c*(this.layout.stride/4);const V=w.BYTES_PER_ELEMENT/P.BYTES_PER_ELEMENT,j=4/V,y=(e,t,r,i)=>{w[O++]=e[0],w[O++]=e[1],w[O++]=e[2],l(t,e,P,O*V),O+=j;let s=O*V;if(P[s++]=r[0],P[s++]=r[1],O=Math.ceil(s/V),this._parameters.vvColor)w[O++]=v;else{const e=Math.min(4*i,_.length-4),t=4*O++;k[t]=255*_[e],k[t+1]=255*_[e+1],k[t+2]=255*_[e+2],k[t+3]=255*_[e+3]}this._parameters.vvOpacity&&(w[O++]=b),s=O*V,this._parameters.vvSize?(w[O++]=g,s+=2):P[s++]=f,this._parameters.worldSpace&&(P[s++]=u[0],P[s++]=u[1],P[s++]=u[2]),O=Math.ceil(s/V)},M=(s,a)=>{const o=e(S,p[3*s],p[3*s+1],p[3*s+2]),n=T;let h=s+a;do{e(n,p[3*h],p[3*h+1],p[3*h+2]),h+=a}while(t(o,n)&&h>=0&&h<m);i&&(r(o,o,i),r(n,n,i)),y(o,n,[-1,-1],s),y(o,n,[1,-1],s),y(o,n,[1,1],s),y(o,n,[-1,-1],s),y(o,n,[1,1],s),y(o,n,[-1,1],s)},C=this._parameters.placement;return"begin"!==C&&"begin-end"!==C||M(0,1),"end"!==C&&"begin-end"!==C||M(m-1,-1),null}}const S=i(),T=i();export{_ as LineMarkerMaterial,b as Parameters};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{i as t,n as e,d as r,h as s,j as o,t as i}from"../../../../chunks/vec32.js";import{create as n}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as a}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{newLayout as c}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as u}from"../core/shaderLibrary/ShaderOutput.js";import l from"../lib/GLMaterial.js";import{Material as p,MaterialParameters as f}from"../lib/Material.js";import{vertexAttributeLocations as h,MeasurementArrowTechnique as m}from"../shaders/MeasurementArrowTechnique.js";import{MeasurementArrowTechniqueConfiguration as g}from"../shaders/MeasurementArrowTechniqueConfiguration.js";import{alphaCutoff as d}from"../../../../webscene/support/AlphaCutoff.js";class v extends p{constructor(t){super(t,b),this._configuration=new g,this.vertexAttributeLocations=h,this.intersectDraped=void 0,this.produces=new Map([[2,t=>!this._transparent&&u(t)],[7,t=>this._transparent&&u(t)]])}getConfiguration(t,e){return super.getConfiguration(t,e,this._configuration),this._configuration.polygonOffsetEnabled=this.parameters.polygonOffset,this._configuration.transparent=this._transparent,this._configuration.oitPass=e.oitPass,this._configuration}get visible(){const{outlineColor:t,stripeEvenColor:e,stripeOddColor:r}=this.parameters;return t[3]>=d||e[3]>=d||r[3]>=d}intersect(){}createGLMaterial(t){return new C(t)}createBufferWriter(){return new O}get _transparent(){const{parameters:t}=this;return t.outlineColor[3]<1||t.stripeEvenColor[3]<1||t.stripeOddColor[3]<1}}class C extends l{beginSlot(t){return this.getTechnique(m,t)}}class b extends f{constructor(){super(...arguments),this.width=32,this.outlineSize=.2,this.outlineColor=a(1,.5,0,1),this.stripeEvenColor=a(1,1,1,1),this.stripeOddColor=a(1,.5,0,1),this.stripeLength=1,this.polygonOffset=!1}}const j=c().vec3f("position").vec3f("normal").vec2f("uv0").f32("length"),w=n(),_=n(),x=n(),M=n(),L=n();class O{constructor(){this.vertexBufferLayout=j}elementCount(t){return 2*(t.get("position").indices.length/2+1)}write(n,a,c,u,l,p){const{data:f,indices:h}=c.get("position"),m=c.get("normal").data,g=f.length/3;h&&h.length!==2*(g-1)&&console.warn("MeasurementArrowMaterial does not support indices");const d=w,v=_,C=x,b=M,j=L,O=l.position,y=l.normal,A=l.uv0;let E=0;for(let w=0;w<g;++w){const c=3*w;if(t(d,f[c],f[c+1],f[c+2]),w<g-1){const o=3*(w+1);t(v,f[o],f[o+1],f[o+2]),t(j,m[o],m[o+1],m[o+2]),e(j,j),r(C,v,d),e(C,C),s(b,j,C),e(b,b)}const u=o(d,v);n&&a&&(i(d,d,n),i(v,v,n),i(b,b,a));const l=p+2*w,h=l+1;O.setVec(l,d),O.setVec(h,d),y.setVec(l,b),y.setVec(h,b),A.set(l,0,E),A.set(l,1,-1),A.set(h,0,E),A.set(h,1,1),w<g-1&&(E+=u)}const V=l.length;for(let t=0;t<2*g;++t)V.set(p+t,E);return null}}export{v as MeasurementArrowMaterial,b as Parameters};
5
+ import{i as t,n as e,d as r,h as s,j as o,t as i}from"../../../../chunks/vec32.js";import{create as n}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as a}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{isColorOrColorEmission as c}from"../core/shaderLibrary/ShaderOutput.js";import l from"../lib/GLMaterial.js";import{Material as u,MaterialParameters as p}from"../lib/Material.js";import{MeasurementArrowTechnique as h,layout as f}from"../shaders/MeasurementArrowTechnique.js";import{MeasurementArrowTechniqueConfiguration as m}from"../shaders/MeasurementArrowTechniqueConfiguration.js";import{alphaCutoff as g}from"../../../../webscene/support/AlphaCutoff.js";class d extends u{constructor(t){super(t,w),this._configuration=new m,this.intersectDraped=void 0,this.produces=new Map([[2,t=>!this._transparent&&c(t)],[7,t=>this._transparent&&c(t)]])}getConfiguration(t,e){return super.getConfiguration(t,e,this._configuration),this._configuration.polygonOffsetEnabled=this.parameters.polygonOffset,this._configuration.transparent=this._transparent,this._configuration.oitPass=e.oitPass,this._configuration}get visible(){const{outlineColor:t,stripeEvenColor:e,stripeOddColor:r}=this.parameters;return t[3]>=g||e[3]>=g||r[3]>=g}intersect(){}createGLMaterial(t){return new C(t)}createBufferWriter(){return new O}get _transparent(){const{parameters:t}=this;return t.outlineColor[3]<1||t.stripeEvenColor[3]<1||t.stripeOddColor[3]<1}}class C extends l{beginSlot(t){return this.getTechnique(h,t)}}class w extends p{constructor(){super(...arguments),this.width=32,this.outlineSize=.2,this.outlineColor=a(1,.5,0,1),this.stripeEvenColor=a(1,1,1,1),this.stripeOddColor=a(1,.5,0,1),this.stripeLength=1,this.polygonOffset=!1}}const j=n(),_=n(),b=n(),v=n(),M=n();class O{constructor(){this.layout=f}elementCount(t){return 2*(t.get("position").indices.length/2+1)}write(n,a,c,l,u,p){const{data:h,indices:f}=c.get("position"),m=c.get("normal").data,g=h.length/3;f&&f.length!==2*(g-1)&&console.warn("MeasurementArrowMaterial does not support indices");const d=j,C=_,w=b,O=v,x=M,y=u.position,A=u.normal,E=u.uv0;let L=0;for(let j=0;j<g;++j){const c=3*j;if(t(d,h[c],h[c+1],h[c+2]),j<g-1){const o=3*(j+1);t(C,h[o],h[o+1],h[o+2]),t(x,m[o],m[o+1],m[o+2]),e(x,x),r(w,C,d),e(w,w),s(O,x,w),e(O,O)}const l=o(d,C);n&&a&&(i(d,d,n),i(C,C,n),i(O,O,a));const u=p+2*j,f=u+1;y.setVec(u,d),y.setVec(f,d),A.setVec(u,O),A.setVec(f,O),E.set(u,0,L),E.set(u,1,-1),E.set(f,0,L),E.set(f,1,1),j<g-1&&(L+=l)}const V=u.length;for(let t=0;t<2*g;++t)V.set(p+t,L);return null}}export{d as MeasurementArrowMaterial,w as Parameters};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{clamp as t}from"../../../../core/mathUtils.js";import{clone as e}from"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{fromValues as i}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as r}from"../../../../geometry/support/aaBoundingBox.js";import{newLayout as s}from"../../support/buffer/InterleavedLayout.js";import{isShadowRelatedOutput as a,is3DGeometryOutputMRT as o,isColorOrColorEmission as n,isColorEmission as c}from"../core/shaderLibrary/ShaderOutput.js";import{olidEnabled as p}from"../effects/geometry/olidUtils.js";import h from"../lib/GLMaterial.js";import{Material as u}from"../lib/Material.js";import{isPathGeometry as l}from"../lib/PathGeometry.js";import{MeshIntersectionOptions as m,intersectAabbInvDir as f}from"../lib/RayIntersections.js";import{DefaultBufferWriter as d}from"./DefaultBufferWriter.js";import{vertexAttributeLocations as b,PathPassParameters as v,PathTechnique as g}from"./PathTechnique.js";import{PathTechniqueConfiguration as _}from"./PathTechniqueConfiguration.js";import{alphaCutoff as S}from"../../../../webscene/support/AlphaCutoff.js";class y extends u{constructor(t,e){super(t,x),this.vertexAttributeLocations=b,this.supportsEdges=!0,this._pp0=i(0,0,1),this._pp1=i(0,0,0),this.produces=new Map([[2,t=>(this.parameters.castShadows&&a(t)||o(t))&&!this.transparent],[4,t=>(this.parameters.castShadows&&a(t)||o(t))&&this.transparent]]),this._configuration=new _(e.spherical)}get hasEmissions(){return this.parameters.emissiveStrength>0}getConfiguration(t,e){return super.getConfiguration(t,e,this._configuration),this._configuration.vvSize=!!this.parameters.vvSize,this._configuration.vvColor=!!this.parameters.vvColor,this._configuration.vvOpacity=!!this.parameters.vvOpacity,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.transparent=this.transparent,this._configuration.hasOccludees=e.hasOccludees,n(t)?(this._configuration.doubleSidedMode=this.parameters.doubleSided&&"normal"===this.parameters.doubleSidedType?1:this.parameters.doubleSided&&"winding-order"===this.parameters.doubleSidedType?2:0,this._configuration.receiveShadows=e.shadowMap.enabled,this._configuration.receiveAmbientOcclusion=null!=e.ssao):this._configuration.receiveShadows=this._configuration.receiveAmbientOcclusion=!1,this._configuration.pbrMode=this.parameters.usePBR?2:0,this._configuration.emissionSource=this.parameters.usePBR?1:0,this._configuration.hasBloom=c(t),this._configuration.oitPass=e.oitPass,this._configuration.terrainDepthTest=e.terrainDepthTest,this._configuration.cullAboveTerrain=e.cullAboveTerrain,this._configuration.snowCover=e.snowCover,this._configuration}isVisibleForOutput(t){return 4!==t&&6!==t&&5!==t||this.parameters.castShadows}get visible(){return this.parameters.opacity>=S}intersect(t,e,i,r,s,a){this._intersect(t,i,r,s,a)}intersectDraped(t,e,i,r){return this._pp0[0]=this._pp1[0]=i[0],this._pp0[1]=this._pp1[1]=i[1],this._intersect(t,e,this._pp0,this._pp1,r)}_intersect(i,s,a,o,n){const c=i;if(!l(c))return;const p=c.path,h=e(this.parameters.size);if(this.parameters.vvSize){const{offset:e,factor:i,minSize:r,maxSize:s,fallback:a}=this.parameters.vvSize,o=p.sizeAttributeValue;Number.isNaN(o)?(h[0]*=a[0],h[1]*=a[2]):(h[0]*=t(e[0]+o*i[0],r[0],s[0]),h[1]*=t(e[2]+o*i[2],r[2],s[2]))}const u=new m(!1,s.options.normalRequired),d=Math.max(h[0],h[1]),b=i.boundingInfo;if(null==b)return void w(p,h,a,o,u,n);const v=r(b.bbMin[0]-d,b.bbMin[1]-d,b.bbMin[2]-d,b.bbMax[0]+d,b.bbMax[1]+d,b.bbMax[2]+d),g=[o[0]-a[0],o[1]-a[1],o[2]-a[2]],_=Math.sqrt(g[0]*g[0]+g[1]*g[1]+g[2]*g[2]),S=[_/g[0],_/g[1],_/g[2]];f(v,a,S,s.tolerance)&&w(p,h,a,o,u,n)}createBufferWriter(){return new d(this._layout)}get _layout(){const t=s().vec3f("position").vec4f16("profileVertexAndNormal").vec2i16("profileRight",{glNormalized:!0}).vec2i16("profileUp",{glNormalized:!0});return this.parameters.vvSize&&t.f32("sizeFeatureAttribute"),this.parameters.vvColor&&t.f32("colorFeatureAttribute"),this.parameters.vvOpacity&&t.f32("opacityFeatureAttribute"),p()&&t.vec4u8("objectAndLayerIdColor"),t.vec3f16("profileAuxData"),t}createGLMaterial(t){return new j(t)}get transparent(){const{parameters:t}=this;return t.drivenOpacity||t.opacity<1}}class j extends h{beginSlot(t){return this.getTechnique(g,t)}}function w(t,e,i,r,s,a){t.baked.size&&t.baked.size[0]===e[0]&&t.baked.size[1]===e[1]||t.baked.bake(e),t.baked.intersect(i,r,s,a)}class x extends v{constructor(){super(...arguments),this.doubleSided=!1,this.doubleSidedType="normal",this.castShadows=!0,this.hasSlicePlane=!1,this.drivenOpacity=!1,this.usePBR=!1}}export{x as Parameters,y as PathMaterial};
5
+ import{clamp as t}from"../../../../core/mathUtils.js";import{clone as e}from"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{fromValues as i}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as s}from"../../../../geometry/support/aaBoundingBox.js";import{isShadowRelatedOutput as r,is3DGeometryOutputMRT as a,isColorOrColorEmission as o,isColorEmission as n}from"../core/shaderLibrary/ShaderOutput.js";import h from"../lib/GLMaterial.js";import{Material as c}from"../lib/Material.js";import{isPathGeometry as p}from"../lib/PathGeometry.js";import{MeshIntersectionOptions as u,intersectAabbInvDir as m}from"../lib/RayIntersections.js";import{DefaultBufferWriter as f}from"./DefaultBufferWriter.js";import{getLayout as l,PathPassParameters as d,PathTechnique as b}from"./PathTechnique.js";import{PathTechniqueConfiguration as g}from"./PathTechniqueConfiguration.js";import{alphaCutoff as _}from"../../../../webscene/support/AlphaCutoff.js";class S extends c{constructor(t,e){super(t,M),this.supportsEdges=!0,this._pp0=i(0,0,1),this._pp1=i(0,0,0),this.produces=new Map([[2,t=>(this.parameters.castShadows&&r(t)||a(t))&&!this.transparent],[4,t=>(this.parameters.castShadows&&r(t)||a(t))&&this.transparent]]),this._configuration=new g(e.spherical)}get hasEmissions(){return this.parameters.emissiveStrength>0}getConfiguration(t,e){return super.getConfiguration(t,e,this._configuration),this._configuration.hasVVSize=this.parameters.hasVVSize,this._configuration.hasVVColor=this.parameters.hasVVColor,this._configuration.hasVVOpacity=this.parameters.hasVVOpacity,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.transparent=this.transparent,this._configuration.hasOccludees=e.hasOccludees,o(t)?(this._configuration.doubleSidedMode=this.parameters.doubleSided&&"normal"===this.parameters.doubleSidedType?1:this.parameters.doubleSided&&"winding-order"===this.parameters.doubleSidedType?2:0,this._configuration.receiveShadows=e.shadowMap.enabled,this._configuration.receiveAmbientOcclusion=null!=e.ssao):this._configuration.receiveShadows=this._configuration.receiveAmbientOcclusion=!1,this._configuration.pbrMode=this.parameters.usePBR?2:0,this._configuration.emissionSource=this.parameters.usePBR?1:0,this._configuration.hasBloom=n(t),this._configuration.oitPass=e.oitPass,this._configuration.terrainDepthTest=e.terrainDepthTest,this._configuration.cullAboveTerrain=e.cullAboveTerrain,this._configuration.snowCover=e.snowCover,this._configuration}isVisibleForOutput(t){return 4!==t&&6!==t&&5!==t||this.parameters.castShadows}get visible(){return this.parameters.opacity>=_}intersect(t,e,i,s,r,a){this._intersect(t,i,s,r,a)}intersectDraped(t,e,i,s){return this._pp0[0]=this._pp1[0]=i[0],this._pp0[1]=this._pp1[1]=i[1],this._intersect(t,e,this._pp0,this._pp1,s)}_intersect(i,r,a,o,n){const h=i;if(!p(h))return;const c=h.path,f=e(this.parameters.size);if(this.parameters.vvSize){const{offset:e,factor:i,minSize:s,maxSize:r,fallback:a}=this.parameters.vvSize,o=c.sizeAttributeValue;Number.isNaN(o)?(f[0]*=a[0],f[1]*=a[2]):(f[0]*=t(e[0]+o*i[0],s[0],r[0]),f[1]*=t(e[2]+o*i[2],s[2],r[2]))}const l=new u(!1,r.options.normalRequired),d=Math.max(f[0],f[1]),b=i.boundingInfo;if(null==b)return void w(c,f,a,o,l,n);const g=s(b.bbMin[0]-d,b.bbMin[1]-d,b.bbMin[2]-d,b.bbMax[0]+d,b.bbMax[1]+d,b.bbMax[2]+d),_=[o[0]-a[0],o[1]-a[1],o[2]-a[2]],S=Math.sqrt(_[0]*_[0]+_[1]*_[1]+_[2]*_[2]),v=[S/_[0],S/_[1],S/_[2]];m(g,a,v,r.tolerance)&&w(c,f,a,o,l,n)}createBufferWriter(){return new f(l(this.parameters))}createGLMaterial(t){return new v(t)}get transparent(){const{parameters:t}=this;return t.drivenOpacity||t.opacity<1}}class v extends h{beginSlot(t){return this.getTechnique(b,t)}}function w(t,e,i,s,r,a){t.baked.size&&t.baked.size[0]===e[0]&&t.baked.size[1]===e[1]||t.baked.bake(e),t.baked.intersect(i,s,r,a)}class M extends d{constructor(){super(...arguments),this.doubleSided=!1,this.doubleSidedType="normal",this.castShadows=!0,this.hasSlicePlane=!1,this.drivenOpacity=!1,this.usePBR=!1}}export{M as Parameters,S as PathMaterial};