@arcgis/core 5.1.0-next.102 → 5.1.0-next.104

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 (681) hide show
  1. package/applications/Components/imageryUtils.d.ts +22 -1
  2. package/applications/Components/imageryUtils.js +1 -1
  3. package/arcade/Dictionary.js +1 -1
  4. package/arcade/Feature.js +1 -1
  5. package/arcade/Pixel.js +1 -1
  6. package/arcade/Voxel.js +1 -1
  7. package/arcade/arcade.js +1 -1
  8. package/arcade/arcadeAsyncRuntime.js +1 -1
  9. package/arcade/arcadeCompiler.js +1 -1
  10. package/arcade/arcadeRuntime.js +1 -1
  11. package/arcade/containerUtils.js +1 -1
  12. package/arcade/debug.js +1 -1
  13. package/arcade/deepClone.js +1 -1
  14. package/arcade/featureSetUtils.js +1 -1
  15. package/arcade/featureset/actions/GroupBy.js +1 -1
  16. package/arcade/featureset/actions/OrderBy.js +1 -1
  17. package/arcade/functions/convertdirection.js +1 -1
  18. package/arcade/functions/date.js +1 -1
  19. package/arcade/functions/feature.js +1 -1
  20. package/arcade/functions/featuresetbase.js +1 -1
  21. package/arcade/functions/featuresetgeom.js +1 -1
  22. package/arcade/functions/featuresetstats.js +1 -1
  23. package/arcade/functions/featuresetstring.js +1 -1
  24. package/arcade/functions/fieldStats.js +1 -1
  25. package/arcade/functions/geomasync.js +1 -1
  26. package/arcade/functions/geometry.js +1 -1
  27. package/arcade/functions/geomsync.js +1 -1
  28. package/arcade/functions/knowledgegraph.js +1 -1
  29. package/arcade/functions/maths.js +1 -1
  30. package/arcade/functions/stats.js +1 -1
  31. package/arcade/functions/string.js +1 -1
  32. package/arcade/functions/track.js +1 -1
  33. package/arcade/geometry/constructors.js +1 -1
  34. package/arcade/geometry/functions.js +1 -1
  35. package/arcade/geometry/operators.js +1 -1
  36. package/arcade/languageUtils.js +1 -1
  37. package/assets/esri/core/workers/RemoteClient.js +1 -1
  38. package/assets/esri/core/workers/chunks/{92e7067960549733f8e6.js → 037b36d415ae27e987f9.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{58579c53be1a44bd08d2.js → 054ae729e7cefa2c7778.js} +1 -1
  40. package/assets/esri/core/workers/chunks/069459519477bb3dc91b.js +1 -0
  41. package/assets/esri/core/workers/chunks/{4301cb9670fa7c907460.js → 0881929a4a457f94f317.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{abdf146b35e179b5b245.js → 0cb8bc6dbbbe3b212712.js} +1 -1
  43. package/assets/esri/core/workers/chunks/{b811d62284be95f4beb6.js → 0cc74bc3772be51cabc1.js} +1 -1
  44. package/assets/esri/core/workers/chunks/{0630ce1975c91ae362d9.js → 0e9804ece1fd2d59751b.js} +1 -1
  45. package/assets/esri/core/workers/chunks/{545c38789267e3487dbd.js → 10491b5b106bc5ad0b2b.js} +1 -1
  46. package/assets/esri/core/workers/chunks/12053c1213465d07d2f6.js +1 -0
  47. package/assets/esri/core/workers/chunks/{ca6c128940ddbebcaaab.js → 14b7b55c42af65ffa024.js} +1 -1
  48. package/assets/esri/core/workers/chunks/{702e8468836863abd81b.js → 15fa8b5b472131aaa68e.js} +1 -1
  49. package/assets/esri/core/workers/chunks/{852f4cd514008fee5a55.js → 176e676879666f784599.js} +1 -1
  50. package/assets/esri/core/workers/chunks/18201119828664373165.js +1 -0
  51. package/assets/esri/core/workers/chunks/1a3426276dc82a8a80f2.js +1 -0
  52. package/assets/esri/core/workers/chunks/{ce3e51c799a80648e46d.js → 1c0e8808d14d8e6dde2c.js} +1 -1
  53. package/assets/esri/core/workers/chunks/{e86c073f0b6d395c7a38.js → 1c83e61fd9a4f8fc8372.js} +1 -1
  54. package/assets/esri/core/workers/chunks/1cb0c4fc315bbc2bd00b.js +1 -0
  55. package/assets/esri/core/workers/chunks/{5afee66e182f79a0fc46.js → 1ff61d8a8ea060e78b83.js} +1 -1
  56. package/assets/esri/core/workers/chunks/{4faaf61d20e20fcf6c18.js → 23119a1b1310b7dab2aa.js} +1 -1
  57. package/assets/esri/core/workers/chunks/{031ea31bbdb7f1be791e.js → 276cb6a1cdd26d0e1444.js} +1 -1
  58. package/assets/esri/core/workers/chunks/{fdb7851e98e8d2ba48d3.js → 286bf3be9f524bde9529.js} +1 -1
  59. package/assets/esri/core/workers/chunks/{55ccb8ed7325efb62091.js → 29b00d07d3e1d095c590.js} +2 -2
  60. package/assets/esri/core/workers/chunks/{9d8e7839772029d83c93.js → 29bbc0d6d847b065d10e.js} +1 -1
  61. package/assets/esri/core/workers/chunks/{1ba37706e5d5eaabcb8e.js → 2a5f6a8d282f2c391591.js} +1 -1
  62. package/assets/esri/core/workers/chunks/{15a65aa6969c1b383ce2.js → 2f903bd3a2611e7f0946.js} +1 -1
  63. package/assets/esri/core/workers/chunks/{b803e7b0d489bb628d72.js → 2f925a424b60b4a5e8e5.js} +1 -1
  64. package/assets/esri/core/workers/chunks/30e191d36aa95823c018.js +1 -0
  65. package/assets/esri/core/workers/chunks/{4b19acf8bde5b2e80692.js → 313a89b334e3518d30a4.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{390717f079def83a0d9c.js → 31a8bc25aa1441c70caa.js} +1 -1
  67. package/assets/esri/core/workers/chunks/31c01885ee6d70a2bde2.js +1 -0
  68. package/assets/esri/core/workers/chunks/3292b3883f203637b5a7.js +1 -0
  69. package/assets/esri/core/workers/chunks/{9bb2251ba58932f85d13.js → 33329f5d88e60b4ec568.js} +1 -1
  70. package/assets/esri/core/workers/chunks/{8f9117d589de7caaa02d.js → 35bbd63319d8aa9f31cc.js} +1 -1
  71. package/assets/esri/core/workers/chunks/35fdd62277fd06468a29.js +2 -0
  72. package/assets/esri/core/workers/chunks/{3996149146dd1eca7cc5.js → 38d7430d2370b69334d7.js} +1 -1
  73. package/assets/esri/core/workers/chunks/3aebbed6d4fd1b993a35.js +1 -0
  74. package/assets/esri/core/workers/chunks/3f1d533efe4300d19e6a.js +1 -0
  75. package/assets/esri/core/workers/chunks/3fed503185ea1913fb84.js +1 -0
  76. package/assets/esri/core/workers/chunks/{7db09c5bf024242becfa.js → 40caf5e09e4382d81104.js} +5 -5
  77. package/assets/esri/core/workers/chunks/4213aa844900fcf95287.js +1 -0
  78. package/assets/esri/core/workers/chunks/{bc6a809a965355eb425f.js → 44636ef119c6a576470b.js} +1 -1
  79. package/assets/esri/core/workers/chunks/453c9e8d438d061e1736.js +1 -0
  80. package/assets/esri/core/workers/chunks/479e34b0abc10499bd3a.js +1 -0
  81. package/assets/esri/core/workers/chunks/{54dad475dc806a38c287.js → 48440a071a37590846ff.js} +1 -1
  82. package/assets/esri/core/workers/chunks/{fa9ab152ea785b5e97e0.js → 4a41f98210f1da3b5041.js} +1 -1
  83. package/assets/esri/core/workers/chunks/4a65bc9091d7ea7e80df.js +1 -0
  84. package/assets/esri/core/workers/chunks/4b130db9b7b4e2e32ea4.js +1 -0
  85. package/assets/esri/core/workers/chunks/4cdf80e2e60501dd4756.js +1 -0
  86. package/assets/esri/core/workers/chunks/51edfe21d4c6ee22c83d.js +1 -0
  87. package/assets/esri/core/workers/chunks/52219561c144e5cb4442.js +1 -0
  88. package/assets/esri/core/workers/chunks/{312036c89a6a09bb06c2.js → 5570d47533efab56c732.js} +1 -1
  89. package/assets/esri/core/workers/chunks/{5abe34bb0110694f7b42.js → 566c36032b456ec5b5d7.js} +1 -1
  90. package/assets/esri/core/workers/chunks/{34207774bc371e95ba3c.js → 56b6b68d9459b1edea43.js} +1 -1
  91. package/assets/esri/core/workers/chunks/593772bd8b19ac664b29.js +1 -0
  92. package/assets/esri/core/workers/chunks/{10ce083b38ccfa88f766.js → 594e1f633527749d92d7.js} +1 -1
  93. package/assets/esri/core/workers/chunks/{ad329226c8b579d0964c.js → 5a6523c903b11dea77d4.js} +1 -1
  94. package/assets/esri/core/workers/chunks/5c44638670e40e092ce3.js +1 -0
  95. package/assets/esri/core/workers/chunks/{af8bc56cf1404afc3028.js → 5d60253ea3d247cdb3d1.js} +1 -1
  96. package/assets/esri/core/workers/chunks/5dc86a3a40d16b576bb5.js +1 -0
  97. package/assets/esri/core/workers/chunks/601edefd8da4eb2eda28.js +1 -0
  98. package/assets/esri/core/workers/chunks/6182d39e2095d4460b88.js +1 -0
  99. package/assets/esri/core/workers/chunks/{c798a40418e7ff38042a.js → 63513e706fe55a1def15.js} +1 -1
  100. package/assets/esri/core/workers/chunks/{d8d338665fe00494c826.js → 660713adb5a845dfa2ef.js} +1 -1
  101. package/assets/esri/core/workers/chunks/694f9571e2723d3d4b02.js +1 -0
  102. package/assets/esri/core/workers/chunks/69ad5930ff6040c6c561.js +1 -0
  103. package/assets/esri/core/workers/chunks/{f563dd6cace047108b3c.js → 6b5d2df9123dfe7e00b3.js} +1 -1
  104. package/assets/esri/core/workers/chunks/{5217d676749bca59d90f.js → 6c79e8e840c1d027fbb2.js} +1 -1
  105. package/assets/esri/core/workers/chunks/{2ce845c990bb4d701362.js → 6ca81e34854ce7ec6f6e.js} +1 -1
  106. package/assets/esri/core/workers/chunks/{11a99ee68409a641810e.js → 6f02681bcaa9bef501fc.js} +1 -1
  107. package/assets/esri/core/workers/chunks/77ac243d4dcd901c2eec.js +1 -0
  108. package/assets/esri/core/workers/chunks/78af4b7a379c40f497a7.js +1 -0
  109. package/assets/esri/core/workers/chunks/{bf706a5d065a357de51b.js → 79b64a52ff57c40c7800.js} +1 -1
  110. package/assets/esri/core/workers/chunks/{475409026288f0981ce2.js → 7b3642195d6d3ea9b830.js} +1 -1
  111. package/assets/esri/core/workers/chunks/{82b2acc6f181927de89c.js → 7bc746ea17f4e336e0b0.js} +1 -1
  112. package/assets/esri/core/workers/chunks/{19fcc74d34cbbaa56a41.js → 7c86099ed17f420b0489.js} +1 -1
  113. package/assets/esri/core/workers/chunks/{6f96ce41c47cae82e687.js → 7d571845292b1b7769c2.js} +1 -1
  114. package/assets/esri/core/workers/chunks/7dafe608c224b9d48ffa.js +1 -0
  115. package/assets/esri/core/workers/chunks/7e203e947846d40f897e.js +1 -0
  116. package/assets/esri/core/workers/chunks/855bf811cd79b97c169a.js +1 -0
  117. package/assets/esri/core/workers/chunks/{7601278ebced0c0c31cf.js → 85bba0db8a7a5fc1be44.js} +1 -1
  118. package/assets/esri/core/workers/chunks/{a318cf6bb900e0ee268c.js → 881234f25c7814de8753.js} +1 -1
  119. package/assets/esri/core/workers/chunks/895114ccd2603830960f.js +1 -0
  120. package/assets/esri/core/workers/chunks/8a68884d40f6f6de1d12.js +1 -0
  121. package/assets/esri/core/workers/chunks/{0d81409721d29d8bc276.js → 8a7682071941c35f05c1.js} +1 -1
  122. package/assets/esri/core/workers/chunks/8aac1155b8ac071cd2ad.js +1 -0
  123. package/assets/esri/core/workers/chunks/{3e2953ea62817e75d840.js → 8cbaaea72f4ca2f023be.js} +1 -1
  124. package/assets/esri/core/workers/chunks/{1faa8a42d5a437fc40a3.js → 8e986167d4a393ee41ea.js} +1 -1
  125. package/assets/esri/core/workers/chunks/8fdd57e2a0af647f1e3e.js +1 -0
  126. package/assets/esri/core/workers/chunks/92db9a6d273ae2862883.js +1 -0
  127. package/assets/esri/core/workers/chunks/{9b23d999db902d25ba58.js → 9373daa677dc767d7cf0.js} +1 -1
  128. package/assets/esri/core/workers/chunks/{bb5512ecb5300d45d46b.js → 9542ef3f6c2bc7c14d85.js} +1 -1
  129. package/assets/esri/core/workers/chunks/{86bff154d46f8a562887.js → 95798e3de3419fdda6ac.js} +1 -1
  130. package/assets/esri/core/workers/chunks/{aad02c7417648d881129.js → 958617c3a9854ea04e06.js} +1 -1
  131. package/assets/esri/core/workers/chunks/{a28124bba6b43efd74cc.js → 95df6d2ebacc43ac5fa3.js} +1 -1
  132. package/assets/esri/core/workers/chunks/{f618ee43581e8de6ad0c.js → 970e91de5dfbbc247afb.js} +1 -1
  133. package/assets/esri/core/workers/chunks/978b7d10054e17161145.js +1 -0
  134. package/assets/esri/core/workers/chunks/{8a48a6760c33ed50b650.js → 98b4408e12684e37b395.js} +1 -1
  135. package/assets/esri/core/workers/chunks/9d70247d820085a2c190.js +1 -0
  136. package/assets/esri/core/workers/chunks/9da2f2b67837b491cfa3.js +1 -0
  137. package/assets/esri/core/workers/chunks/{edee616b6f1b5be8fd39.js → a0296e6d6c37b861c5fb.js} +1 -1
  138. package/assets/esri/core/workers/chunks/{c19e3f6027b6526de359.js → a02ebdcb802d128c8eee.js} +1 -1
  139. package/assets/esri/core/workers/chunks/a0aaf14c8f9a007d88ac.js +1 -0
  140. package/assets/esri/core/workers/chunks/{1523883460874c352e36.js → a29cd1f5c7bb4f6a5a4f.js} +1 -1
  141. package/assets/esri/core/workers/chunks/{cf826787ab8d4b27ad80.js → a53a3e5548fef65a2710.js} +1 -1
  142. package/assets/esri/core/workers/chunks/{91f9e0e3662d4bf9f163.js → a913a1c83a667ed0e711.js} +1 -1
  143. package/assets/esri/core/workers/chunks/{359465b9726edcc70c83.js → a9c9c00432ee41ec91ba.js} +1 -1
  144. package/assets/esri/core/workers/chunks/{a3a28c4887f802e8d96d.js → aa55923ca939a0d4606c.js} +1 -1
  145. package/assets/esri/core/workers/chunks/{d3b086eb9aa8c7d09048.js → aea8e0577fb48d5c9577.js} +1 -1
  146. package/assets/esri/core/workers/chunks/af45110f07e4b5162bae.js +1 -0
  147. package/assets/esri/core/workers/chunks/{76589434d573111a8fb4.js → b09ae8eb5e97fb27382f.js} +1 -1
  148. package/assets/esri/core/workers/chunks/b0c647af49c9d563b852.js +1 -0
  149. package/assets/esri/core/workers/chunks/{a320998f18922a35899f.js → b32a13972cb3de652339.js} +1 -1
  150. package/assets/esri/core/workers/chunks/b432a5a829e309837db6.js +1 -0
  151. package/assets/esri/core/workers/chunks/{9103eb0b9078019d3a26.js → b5d0898406c7d6e6a717.js} +1 -1
  152. package/assets/esri/core/workers/chunks/b640651c7d86cfe654bf.js +1 -0
  153. package/assets/esri/core/workers/chunks/{503439246250d9e1cbd5.js → b75e090a7e935ff870a3.js} +1 -1
  154. package/assets/esri/core/workers/chunks/{c321bcda8e8893577948.js → b8dda9e55caba0e2b4c2.js} +1 -1
  155. package/assets/esri/core/workers/chunks/{59a64d72eed8c40c63cf.js → bacf0c9d5d3e084dea61.js} +1 -1
  156. package/assets/esri/core/workers/chunks/{fa38dc5010f8630a80fe.js → bb04aff0b4947408592c.js} +1 -1
  157. package/assets/esri/core/workers/chunks/{5663df3cd1dfd4b43c73.js → bff0c4094c14cb97b18f.js} +1 -1
  158. package/assets/esri/core/workers/chunks/{47dd2bfecc5c4b5f10f0.js → c0d7e4afbad0b20e2502.js} +1 -1
  159. package/assets/esri/core/workers/chunks/c13c532fe38ddc5d7ca6.js +1 -0
  160. package/assets/esri/core/workers/chunks/{cc62e5095e328bed3e01.js → c1ffb879e0283fb2815f.js} +1 -1
  161. package/assets/esri/core/workers/chunks/{9e7c84a3a2abec4d49df.js → c476f4979048e558baa7.js} +89 -76
  162. package/assets/esri/core/workers/chunks/c8b96104641cb4afd4df.js +1 -0
  163. package/assets/esri/core/workers/chunks/{19a9a555365a8363d34b.js → c91d4f1b42cfe474df52.js} +1 -1
  164. package/assets/esri/core/workers/chunks/{6ae2408ac075b974e887.js → cb26966cc205bd338c76.js} +1 -1
  165. package/assets/esri/core/workers/chunks/{c452c74ba9de218c3e57.js → cb3004998eff7c60930e.js} +1 -1
  166. package/assets/esri/core/workers/chunks/cc48354c54358777e996.js +1 -0
  167. package/assets/esri/core/workers/chunks/{b1b8a7c00ec4d998ab84.js → cc8d55d1830d7542c3f5.js} +1 -1
  168. package/assets/esri/core/workers/chunks/ce0c7070eeb723a718e7.js +1 -0
  169. package/assets/esri/core/workers/chunks/ce3b5b83237cf37ff523.js +1 -0
  170. package/assets/esri/core/workers/chunks/cf3c0bee919bb509cd4f.js +1 -0
  171. package/assets/esri/core/workers/chunks/cf9b0ba30a75c030ca92.js +1 -0
  172. package/assets/esri/core/workers/chunks/d00b9c1fd0865bf8f317.js +1 -0
  173. package/assets/esri/core/workers/chunks/{9a29b7f9e6281ee40c37.js → d4749eb8a47869477037.js} +1 -1
  174. package/assets/esri/core/workers/chunks/d5423df247be82fa085a.js +1 -0
  175. package/assets/esri/core/workers/chunks/d610f517fb3c6cb24365.js +1 -0
  176. package/assets/esri/core/workers/chunks/{47656ec12401e53f4bd3.js → d9d716bfd0aab30b6caf.js} +1 -1
  177. package/assets/esri/core/workers/chunks/da4f7d7099ba88f31f45.js +1 -0
  178. package/assets/esri/core/workers/chunks/dbb1ac41fd5da4fd849b.js +1 -0
  179. package/assets/esri/core/workers/chunks/{176dd195f77b98cb0b0f.js → dd58bc675b85b4d90afa.js} +1 -1
  180. package/assets/esri/core/workers/chunks/e2bb95d601789bbda73b.js +1 -0
  181. package/assets/esri/core/workers/chunks/{f018ad451ee072253a1e.js → e4b2120d7ee1c998b1fc.js} +1 -1
  182. package/assets/esri/core/workers/chunks/e4c350dc65aae121171d.js +1 -0
  183. package/assets/esri/core/workers/chunks/e8518bd3596543b387f8.js +1 -0
  184. package/assets/esri/core/workers/chunks/{f948e4a80a7dbda70f2e.js → e973cab79ec2541cb81b.js} +1 -1
  185. package/assets/esri/core/workers/chunks/{7d6299ab7b0db23ab961.js → eb1d6614eeac6d26bb9c.js} +1 -1
  186. package/assets/esri/core/workers/chunks/f1bb426400dac02880f1.js +1 -0
  187. package/assets/esri/core/workers/chunks/{ffcd4fca7f67e1f943f1.js → f239a8ecad8b692d5eaa.js} +1 -1
  188. package/assets/esri/core/workers/chunks/{de11ebcea2b8f9dfe65d.js → f3161c47a572194f6017.js} +1 -1
  189. package/assets/esri/core/workers/chunks/{f66262f8582909157f01.js → f37be7e517f0892014e3.js} +1 -1
  190. package/assets/esri/core/workers/chunks/{119b84f5349f90d1dd28.js → f3a9100518b044e79501.js} +1 -1
  191. package/assets/esri/core/workers/chunks/f3f984c62311c20a9db8.js +1 -0
  192. package/assets/esri/core/workers/chunks/{85e65ced3312bf9cf162.js → f7e386ece75afb6e4be5.js} +1 -1
  193. package/assets/esri/core/workers/chunks/f8b884b529064df4a30a.js +1 -0
  194. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ar.json +1 -1
  195. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bg.json +1 -1
  196. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bs.json +1 -1
  197. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ca.json +1 -1
  198. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_cs.json +1 -1
  199. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_da.json +1 -1
  200. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_de.json +1 -1
  201. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_el.json +1 -1
  202. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_es.json +1 -1
  203. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_et.json +1 -1
  204. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fi.json +1 -1
  205. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fr.json +1 -1
  206. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_he.json +1 -1
  207. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hr.json +1 -1
  208. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hu.json +1 -1
  209. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_id.json +1 -1
  210. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_it.json +1 -1
  211. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ja.json +1 -1
  212. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ko.json +1 -1
  213. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lt.json +1 -1
  214. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lv.json +1 -1
  215. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_nl.json +1 -1
  216. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_no.json +1 -1
  217. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pl.json +1 -1
  218. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-BR.json +1 -1
  219. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-PT.json +1 -1
  220. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ro.json +1 -1
  221. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ru.json +1 -1
  222. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sk.json +1 -1
  223. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sl.json +1 -1
  224. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sr.json +1 -1
  225. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sv.json +1 -1
  226. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_th.json +1 -1
  227. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_tr.json +1 -1
  228. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_uk.json +1 -1
  229. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_vi.json +1 -1
  230. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-CN.json +1 -1
  231. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-HK.json +1 -1
  232. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-TW.json +1 -1
  233. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer.json +1 -1
  234. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_en.json +1 -1
  235. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ar.json +1 -1
  236. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_bg.json +1 -1
  237. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_bs.json +1 -1
  238. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ca.json +1 -1
  239. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_cs.json +1 -1
  240. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_da.json +1 -1
  241. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_de.json +1 -1
  242. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_el.json +1 -1
  243. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_es.json +1 -1
  244. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_et.json +1 -1
  245. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_fi.json +1 -1
  246. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_fr.json +1 -1
  247. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_he.json +1 -1
  248. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_hr.json +1 -1
  249. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_hu.json +1 -1
  250. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_id.json +1 -1
  251. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_it.json +1 -1
  252. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ja.json +1 -1
  253. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ko.json +1 -1
  254. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_lt.json +1 -1
  255. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_lv.json +1 -1
  256. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_nl.json +1 -1
  257. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_no.json +1 -1
  258. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_pl.json +1 -1
  259. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_pt-BR.json +1 -1
  260. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_pt-PT.json +1 -1
  261. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ro.json +1 -1
  262. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ru.json +1 -1
  263. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sk.json +1 -1
  264. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sl.json +1 -1
  265. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sr.json +1 -1
  266. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sv.json +1 -1
  267. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_th.json +1 -1
  268. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_tr.json +1 -1
  269. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_uk.json +1 -1
  270. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_vi.json +1 -1
  271. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_zh-CN.json +1 -1
  272. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_zh-HK.json +1 -1
  273. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_zh-TW.json +1 -1
  274. package/chunks/AtmosphereCompositing.glsl.js +1 -1
  275. package/chunks/Bufferer-Dw9Qi4T1.js +1 -1
  276. package/chunks/Centroid-DZi-eb9F.js +1 -1
  277. package/chunks/Clouds.glsl.js +1 -1
  278. package/chunks/Compositing.glsl.js +1 -1
  279. package/chunks/CutFillComposition.glsl.js +1 -1
  280. package/chunks/CutFillDepth.glsl.js +1 -1
  281. package/chunks/CutFillMask.glsl.js +1 -1
  282. package/chunks/CutFillReduction.glsl.js +1 -1
  283. package/chunks/CutFillTargetDepth.glsl.js +1 -1
  284. package/chunks/Distance2DCalculator-CXhBP-8I.js +1 -1
  285. package/chunks/Envelope.js +1 -1
  286. package/chunks/Envelope2D.js +1 -1
  287. package/chunks/FlatGeometry.js +1 -1
  288. package/chunks/FocusAreaColor.glsl.js +1 -1
  289. package/chunks/FocusAreaMask.glsl.js +1 -1
  290. package/chunks/Fog.glsl.js +1 -1
  291. package/chunks/GaussianSplat.glsl.js +1 -1
  292. package/chunks/GaussianSplatShadow.glsl.js +1 -1
  293. package/chunks/GeodeticDistanceCalculator-Ce-woMPw.js +1 -1
  294. package/chunks/GeodeticUtils.js +1 -1
  295. package/chunks/Geometry.js +1 -1
  296. package/chunks/GeometryCleaner-BEJM7I4l.js +1 -1
  297. package/chunks/GlobalIllumination.glsl.js +1 -1
  298. package/chunks/GlobalIlluminationBlur.glsl.js +1 -1
  299. package/chunks/GlobalIlluminationUpscale.glsl.js +80 -65
  300. package/chunks/GlowBlur.glsl.js +1 -1
  301. package/chunks/GlowComposition.glsl.js +1 -1
  302. package/chunks/HazeCompositing.glsl.js +1 -1
  303. package/chunks/HighlightBlur.glsl.js +1 -1
  304. package/chunks/HighlightDownsample.glsl.js +1 -1
  305. package/chunks/Magnifier.glsl.js +1 -1
  306. package/chunks/MultiPathImpl.js +1 -1
  307. package/chunks/NoiseTextureAtlas.glsl.js +1 -1
  308. package/chunks/OITBlend.glsl.js +2 -2
  309. package/chunks/OITBlendEmission.glsl.js +1 -1
  310. package/chunks/OITDimOpaque.glsl.js +1 -1
  311. package/chunks/OperatorClip.js +1 -1
  312. package/chunks/OperatorCrosses.js +1 -1
  313. package/chunks/OperatorCut.js +1 -1
  314. package/chunks/OperatorDensify.js +1 -1
  315. package/chunks/OperatorGeneralize.js +1 -1
  316. package/chunks/OperatorGeodesicBuffer.js +1 -1
  317. package/chunks/OperatorGeodeticArea.js +1 -1
  318. package/chunks/OperatorGeodeticDensifyByLength.js +1 -1
  319. package/chunks/OperatorGeodeticDistance.js +1 -1
  320. package/chunks/OperatorGeodeticLength.js +1 -1
  321. package/chunks/OperatorIntegrate.js +1 -1
  322. package/chunks/OperatorIntersects.js +1 -1
  323. package/chunks/OperatorMultiPartToSinglePart.js +1 -1
  324. package/chunks/OperatorOverlaps.js +1 -1
  325. package/chunks/OperatorProject.js +1 -1
  326. package/chunks/OperatorProximity.js +1 -1
  327. package/chunks/OperatorProximityGeodesic.js +1 -1
  328. package/chunks/OperatorShapePreservingDensify.js +1 -1
  329. package/chunks/OperatorShapePreservingLength.js +1 -1
  330. package/chunks/OperatorShapePreservingProject.js +1 -1
  331. package/chunks/OperatorSimplifyOGC.js +1 -1
  332. package/chunks/OperatorTouches.js +1 -1
  333. package/chunks/OperatorWithin.js +1 -1
  334. package/chunks/OverlayCompositing.glsl.js +1 -1
  335. package/chunks/Point2D.js +1 -1
  336. package/chunks/PointRenderer.glsl.js +1 -1
  337. package/chunks/ProjectionTransformation.js +1 -1
  338. package/chunks/RasterColorizer.glsl.js +1 -1
  339. package/chunks/ShadowCastAccumulate.glsl.js +1 -1
  340. package/chunks/ShadowCastVisualize.glsl.js +2 -2
  341. package/chunks/SideCalculator2D-BNwb5gvz.js +1 -1
  342. package/chunks/SimpleAtmosphere.glsl.js +1 -1
  343. package/chunks/SpatialReference.js +1 -1
  344. package/chunks/Terrain.glsl.js +1 -1
  345. package/chunks/Texture.glsl.js +1 -1
  346. package/chunks/Transformation2D.js +1 -1
  347. package/chunks/Viewshed.glsl.js +1 -1
  348. package/chunks/aiServices.js +1 -1
  349. package/chunks/arcade.js +1 -1
  350. package/chunks/array.js +1 -1
  351. package/chunks/boundedPlane.js +1 -1
  352. package/chunks/constants.js +1 -1
  353. package/chunks/containsOperator.js +1 -1
  354. package/chunks/disjointOperator.js +1 -1
  355. package/chunks/distanceOperator.js +1 -1
  356. package/chunks/equalsOperator.js +1 -1
  357. package/chunks/languageUtils.js +1 -1
  358. package/chunks/pe.js +1 -1
  359. package/chunks/persistableUrlUtils.js +1 -1
  360. package/chunks/relateOperator.js +1 -1
  361. package/chunks/symmetricDifferenceOperator.js +1 -1
  362. package/chunks/unionOperator.js +1 -1
  363. package/chunks/vec2.js +1 -1
  364. package/chunks/vec3.js +1 -1
  365. package/chunks/vec4.js +1 -1
  366. package/config.js +1 -1
  367. package/core/accessorSupport/decorators/persistable.js +1 -1
  368. package/effects/FocusArea.js +1 -1
  369. package/geometry/coordinateFormatter.js +1 -1
  370. package/geometry/operators/extendOperator.js +1 -1
  371. package/geometry/operators/gx/geodeticUtils.js +1 -1
  372. package/geometry/operators/gx/operatorAffineTransform.js +1 -1
  373. package/geometry/operators/gx/operatorAlphaShape.js +1 -1
  374. package/geometry/operators/gx/operatorAutoComplete.js +1 -1
  375. package/geometry/operators/gx/operatorBoundary.js +1 -1
  376. package/geometry/operators/gx/operatorBuffer.js +1 -1
  377. package/geometry/operators/gx/operatorConvexHull.js +1 -1
  378. package/geometry/operators/gx/operatorDifference.js +1 -1
  379. package/geometry/operators/gx/operatorGeodesicBuffer.js +1 -1
  380. package/geometry/operators/gx/operatorGeodeticArea.js +1 -1
  381. package/geometry/operators/gx/operatorGeodeticDensify.js +1 -1
  382. package/geometry/operators/gx/operatorGeodeticDistance.js +1 -1
  383. package/geometry/operators/gx/operatorGeodeticLength.js +1 -1
  384. package/geometry/operators/gx/operatorGraphicBuffer.js +1 -1
  385. package/geometry/operators/gx/operatorIntersection.js +1 -1
  386. package/geometry/operators/gx/operatorLabelPoint.js +1 -1
  387. package/geometry/operators/gx/operatorLinesToPolygons.js +1 -1
  388. package/geometry/operators/gx/operatorLocateBetween.js +1 -1
  389. package/geometry/operators/gx/operatorMinimumBoundingCircle.js +1 -1
  390. package/geometry/operators/gx/operatorOffset.js +1 -1
  391. package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
  392. package/geometry/operators/gx/operatorPolygonSlicer.js +1 -1
  393. package/geometry/operators/gx/operatorProject.js +1 -1
  394. package/geometry/operators/gx/operatorProximityGeodesic.js +1 -1
  395. package/geometry/operators/gx/operatorShapePreservingProject.js +1 -1
  396. package/geometry/operators/gx/operatorSimplify.js +1 -1
  397. package/geometry/operators/gx/operatorSinglePartToMultiPart.js +1 -1
  398. package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
  399. package/geometry/operators/gx/operatorUnion.js +1 -1
  400. package/geometry/operators/isNearOperator.js +1 -1
  401. package/geometry/operators/json/containsOperator.js +1 -1
  402. package/geometry/operators/json/disjointOperator.js +1 -1
  403. package/geometry/operators/locateBetweenOperator.js +1 -1
  404. package/geometry/operators/reshapeOperator.js +1 -1
  405. package/geometry/operators/support/apiConverter.js +1 -1
  406. package/geometry/operators/support/geographicTransformationUtils.js +1 -1
  407. package/geometry/operators/support/initNoPeFactory.js +1 -1
  408. package/geometry/operators/support/jsonConverter.js +1 -1
  409. package/geometry/operators/support/projectionTransformation.js +1 -1
  410. package/geometry/operators/symmetricDifferenceOperator.js +1 -1
  411. package/geometry/operators/unionOperator.js +1 -1
  412. package/geometry/pe.js +1 -1
  413. package/geometry/support/MeshTexture.js +1 -1
  414. package/geometry/support/boundedPlane.js +1 -1
  415. package/geometry/support/buffer/math/vec3.js +1 -1
  416. package/geometry/support/buffer/math/vec4.js +1 -1
  417. package/geometry/support/buffer/utils/vec2.js +1 -1
  418. package/geometry/support/coordinateSystem.js +1 -1
  419. package/geometry/support/meshUtils/extent.js +1 -1
  420. package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
  421. package/geometry/support/meshUtils/projection.js +1 -1
  422. package/geometry/support/meshUtils/vertexSpaceConversion.js +1 -1
  423. package/geometry/support/spatialReferenceUtils.js +1 -1
  424. package/geometry/support/vcsData.js +1 -1
  425. package/kernel.js +1 -1
  426. package/layers/ImageryTileLayer.js +1 -1
  427. package/layers/IntegratedMesh3DTilesLayer.js +1 -1
  428. package/layers/IntegratedMeshLayer.js +1 -1
  429. package/layers/KnowledgeGraphLayer.js +1 -1
  430. package/layers/knowledgeGraph/KnowledgeGraphLayerDataManager.js +1 -1
  431. package/layers/knowledgeGraph/cypherUtils.js +1 -1
  432. package/layers/mixins/ArcGISImageService.js +1 -1
  433. package/layers/mixins/FeatureLayerBase.d.ts +12 -0
  434. package/layers/mixins/FeatureLayerBase.js +1 -1
  435. package/layers/orientedImagery/transformations/utils.js +1 -1
  436. package/layers/raster/datasets/ImageAuxRaster.js +1 -1
  437. package/layers/raster/formats/RasterCodec.js +1 -1
  438. package/layers/raster/functions/rasterProjectionHelper.js +1 -1
  439. package/layers/support/ImageElement.js +1 -1
  440. package/layers/support/ParquetFilesData.js +1 -1
  441. package/layers/support/SceneFilter.js +1 -1
  442. package/layers/support/Sublayer.d.ts +25 -0
  443. package/layers/support/Sublayer.js +1 -1
  444. package/linkChart/LinkChartProperties.js +1 -1
  445. package/linkChart/utils.js +1 -1
  446. package/package.json +2 -2
  447. package/portal/PortalItem.js +1 -1
  448. package/renderers/UniqueValueRenderer.js +1 -1
  449. package/rest/knowledgeGraphService.js +1 -1
  450. package/support/arcadeUtils.js +1 -1
  451. package/support/persistableUrlUtils.js +1 -1
  452. package/support/revision.js +1 -1
  453. package/symbols/Symbol3D.js +1 -1
  454. package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
  455. package/symbols/cim/utils.js +1 -1
  456. package/symbols/support/IconSymbol3DLayerResource.js +1 -1
  457. package/symbols/support/cimSymbolUtils.js +1 -1
  458. package/symbols/support/urlUtils.js +1 -1
  459. package/symbols/support/utils.js +1 -1
  460. package/symbols/support/webStyleSymbolUtils.js +1 -1
  461. package/third-party-notices.txt +184 -0
  462. package/views/2d/ViewStateManager.js +1 -1
  463. package/views/2d/engine/webgl/AttributeStoreView.js +1 -1
  464. package/views/2d/engine/webgl/RenderingDevice.js +1 -1
  465. package/views/2d/engine/webgl/effects/HittestEffect.js +1 -1
  466. package/views/2d/engine/webgl/shaderGraph/techniques/featureTechniqueUtils.js +1 -1
  467. package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerShader.js +1 -1
  468. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/AFeatureShader.js +1 -1
  469. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/FillShader.js +1 -1
  470. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/LineShader.js +1 -1
  471. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/OutlineFillShader.js +1 -1
  472. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/constants.js +1 -1
  473. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/hittestUtils.js +1 -1
  474. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  475. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  476. package/views/2d/interactive/editingTools/TransformTool.js +1 -1
  477. package/views/2d/interactive/editingTools/manipulations/ScaleManipulation.js +1 -1
  478. package/views/2d/layers/FeatureLikeLayerView2D.js +1 -1
  479. package/views/2d/layers/features/FeatureContainer.js +1 -1
  480. package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
  481. package/views/3d/analysis/Slice/SliceController.js +1 -1
  482. package/views/3d/analysis/Slice/SliceTool.js +1 -1
  483. package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
  484. package/views/3d/analysis/Viewshed/ViewshedFieldOfViewManipulation.js +1 -1
  485. package/views/3d/analysis/Viewshed/ViewshedScaleOrientManipulation.js +1 -1
  486. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
  487. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
  488. package/views/3d/focusAreaUtils.js +1 -1
  489. package/views/3d/interactive/editingTools/transform/extentTransform/ExtentRotate.js +1 -1
  490. package/views/3d/interactive/editingTools/transform/extentTransform/ExtentScale.js +1 -1
  491. package/views/3d/interactive/editingTools/transform/extentTransform/extentUtils.js +1 -1
  492. package/views/3d/layers/SceneLayerWorker.js +1 -1
  493. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  494. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  495. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  496. package/views/3d/layers/graphics/GraphicsDeconflictor.js +1 -1
  497. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  498. package/views/3d/layers/i3s/PointCloudRenderer.js +1 -1
  499. package/views/3d/layers/i3s/meshUtils.js +1 -1
  500. package/views/3d/state/ScreenSizePerspective.js +1 -1
  501. package/views/3d/support/ViewSlice.js +1 -1
  502. package/views/3d/terrain/OverlayRenderer.js +1 -1
  503. package/views/3d/terrain/RasterColorizer.glsl.js +1 -1
  504. package/views/3d/terrain/RasterTile.js +1 -1
  505. package/views/3d/terrain/TerrainRenderer.js +1 -1
  506. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  507. package/views/3d/webgl-engine/core/shaderLibrary/shading/GlobalIlluminationWeights.glsl.js +3 -5
  508. package/views/3d/webgl-engine/effects/atmosphere/ChapmanAtmosphere.js +1 -1
  509. package/views/3d/webgl-engine/effects/atmosphere/LocalAtmosphere.js +1 -1
  510. package/views/3d/webgl-engine/effects/atmosphere/MarsAtmosphere.js +1 -1
  511. package/views/3d/webgl-engine/effects/atmosphere/SimpleAtmosphere.glsl.js +1 -1
  512. package/views/3d/webgl-engine/effects/blit/Blit.js +1 -1
  513. package/views/3d/webgl-engine/effects/clouds/Clouds.glsl.js +1 -1
  514. package/views/3d/webgl-engine/effects/clouds/CloudsRenderer.js +1 -1
  515. package/views/3d/webgl-engine/effects/clouds/CloudsTechnique.js +1 -1
  516. package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlas.glsl.js +1 -1
  517. package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlas.js +1 -1
  518. package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlasTechnique.js +1 -1
  519. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColor.glsl.js +1 -1
  520. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorNode.js +1 -1
  521. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorTechnique.js +1 -1
  522. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMask.glsl.js +1 -1
  523. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskNode.js +1 -1
  524. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskTechnique.js +1 -1
  525. package/views/3d/webgl-engine/effects/fog/Fog.glsl.js +1 -1
  526. package/views/3d/webgl-engine/effects/fog/Fog.js +1 -1
  527. package/views/3d/webgl-engine/effects/fog/FogTechnique.js +1 -1
  528. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
  529. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
  530. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationBlur.glsl.js +1 -1
  531. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationBlurTechnique.js +1 -1
  532. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationTechnique.js +1 -1
  533. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationTechniqueConfiguration.js +1 -1
  534. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationUpscale.glsl.js +1 -1
  535. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationUpscaleTechnique.js +1 -1
  536. package/views/3d/webgl-engine/effects/glow/Glow.js +1 -1
  537. package/views/3d/webgl-engine/effects/glow/GlowBlur.glsl.js +1 -1
  538. package/views/3d/webgl-engine/effects/glow/GlowBlurTechnique.js +1 -1
  539. package/views/3d/webgl-engine/effects/glow/GlowComposition.glsl.js +1 -1
  540. package/views/3d/webgl-engine/effects/glow/GlowCompositionTechnique.js +1 -1
  541. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  542. package/views/3d/webgl-engine/effects/haze/HazeCompositing.glsl.js +1 -1
  543. package/views/3d/webgl-engine/effects/haze/HazeCompositingTechnique.js +1 -1
  544. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  545. package/views/3d/webgl-engine/effects/highlight/HighlightBlur.glsl.js +1 -1
  546. package/views/3d/webgl-engine/effects/highlight/HighlightBlurTechnique.js +1 -1
  547. package/views/3d/webgl-engine/effects/highlight/HighlightDownsample.glsl.js +1 -1
  548. package/views/3d/webgl-engine/effects/highlight/HighlightDownsampleTechnique.js +1 -1
  549. package/views/3d/webgl-engine/effects/magnifier/Magnifier.glsl.js +1 -1
  550. package/views/3d/webgl-engine/effects/magnifier/Magnifier.js +1 -1
  551. package/views/3d/webgl-engine/effects/magnifier/MagnifierTechnique.js +1 -1
  552. package/views/3d/webgl-engine/effects/transparency/OITBlend.glsl.js +1 -1
  553. package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
  554. package/views/3d/webgl-engine/effects/transparency/OITBlendTechnique.js +1 -1
  555. package/views/3d/webgl-engine/effects/transparency/OITDimOpaque.glsl.js +1 -1
  556. package/views/3d/webgl-engine/effects/transparency/OITDimOpaqueTechnique.js +1 -1
  557. package/views/3d/webgl-engine/lib/Compositor.js +1 -1
  558. package/views/3d/webgl-engine/lib/CutFillComputationRenderNode.js +1 -1
  559. package/views/3d/webgl-engine/lib/CutFillVisualizationRenderNode.js +1 -1
  560. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  561. package/views/3d/webgl-engine/lib/GaussianSplatShadowRenderNode.js +1 -1
  562. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  563. package/views/3d/webgl-engine/lib/ShadowCastRenderer.js +1 -1
  564. package/views/3d/webgl-engine/lib/SliceHelper.js +1 -1
  565. package/views/3d/webgl-engine/lib/Texture.glsl.js +1 -1
  566. package/views/3d/webgl-engine/lib/TextureTechnique.js +1 -1
  567. package/views/3d/webgl-engine/lib/Viewshed.js +1 -1
  568. package/views/3d/webgl-engine/lib/intersectorUtils.js +1 -1
  569. package/views/3d/webgl-engine/shaders/AtmosphereCompositing.glsl.js +1 -1
  570. package/views/3d/webgl-engine/shaders/AtmosphereCompositingTechnique.js +1 -1
  571. package/views/3d/webgl-engine/shaders/Compositing.glsl.js +1 -1
  572. package/views/3d/webgl-engine/shaders/CompositingTechnique.js +1 -1
  573. package/views/3d/webgl-engine/shaders/CutFillComposition.glsl.js +1 -1
  574. package/views/3d/webgl-engine/shaders/CutFillCompositionTechnique.js +1 -1
  575. package/views/3d/webgl-engine/shaders/CutFillDepth.glsl.js +1 -1
  576. package/views/3d/webgl-engine/shaders/CutFillDepthTechnique.js +1 -1
  577. package/views/3d/webgl-engine/shaders/CutFillMask.glsl.js +1 -1
  578. package/views/3d/webgl-engine/shaders/CutFillMaskTechnique.js +1 -1
  579. package/views/3d/webgl-engine/shaders/CutFillReduction.glsl.js +1 -1
  580. package/views/3d/webgl-engine/shaders/CutFillReductionTechnique.js +1 -1
  581. package/views/3d/webgl-engine/shaders/CutFillTargetDepth.glsl.js +1 -1
  582. package/views/3d/webgl-engine/shaders/CutFillTargetDepthTechnique.js +1 -1
  583. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  584. package/views/3d/webgl-engine/shaders/GaussianSplatShadow.glsl.js +1 -1
  585. package/views/3d/webgl-engine/shaders/GaussianSplatShadowTechnique.js +1 -1
  586. package/views/3d/webgl-engine/shaders/GaussianSplatTechnique.js +1 -1
  587. package/views/3d/webgl-engine/shaders/OverlayCompositing.glsl.js +1 -1
  588. package/views/3d/webgl-engine/shaders/OverlayCompositingTechnique.js +1 -1
  589. package/views/3d/webgl-engine/shaders/PointRenderer.glsl.js +1 -1
  590. package/views/3d/webgl-engine/shaders/PointRendererTechnique.js +1 -1
  591. package/views/3d/webgl-engine/shaders/ShadowCastAccumulate.glsl.js +1 -1
  592. package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechnique.js +1 -1
  593. package/views/3d/webgl-engine/shaders/ShadowCastMaskTechnique.js +1 -1
  594. package/views/3d/webgl-engine/shaders/ShadowCastVisualize.glsl.js +1 -1
  595. package/views/3d/webgl-engine/shaders/ShadowCastVisualizeTechnique.js +1 -1
  596. package/views/3d/webgl-engine/shaders/Terrain.glsl.js +1 -1
  597. package/views/3d/webgl-engine/shaders/TerrainTechnique.js +1 -1
  598. package/views/3d/webgl-engine/shaders/Viewshed.glsl.js +1 -1
  599. package/views/3d/webgl-engine/shaders/ViewshedTechnique.js +1 -1
  600. package/views/interactive/editGeometry/support/editPlaneUtils.js +1 -1
  601. package/views/interactive/snapping/featureSources/featureServiceSource/tileUtils.js +1 -1
  602. package/webdoc/support/webdocSaveUtils.js +1 -1
  603. package/widgets/Attachments.d.ts +0 -1
  604. package/widgets/BuildingExplorer/BuildingLevelPicker/BuildingLevelPicker.js +1 -1
  605. package/widgets/BuildingExplorer/BuildingLevelPicker/constants.js +1 -1
  606. package/widgets/Features.d.ts +1 -1
  607. package/widgets/LayerList/LayerListItem.js +1 -1
  608. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  609. package/widgets/OrientedImageryViewer/services/SuperimposeService.js +1 -1
  610. package/widgets/OrientedImageryViewer/support/superimposeUtils.js +1 -1
  611. package/widgets/OrientedImageryViewer.js +1 -1
  612. package/widgets/Popup.d.ts +2 -24
  613. package/widgets/ShadowCast/ShadowCastViewModel.js +1 -1
  614. package/widgets/TableList/support/tableListUtils.js +1 -1
  615. package/widgets/TableList.js +1 -1
  616. package/widgets/support/ContingentValuesManager.js +1 -1
  617. package/assets/esri/core/workers/chunks/09630888267cde87654f.js +0 -1
  618. package/assets/esri/core/workers/chunks/0d9d33f29124d464a4cb.js +0 -1
  619. package/assets/esri/core/workers/chunks/0e333f1bce992508b68a.js +0 -1
  620. package/assets/esri/core/workers/chunks/0fa207c68dfd7ddee160.js +0 -1
  621. package/assets/esri/core/workers/chunks/13838b6c045425e73cf8.js +0 -1
  622. package/assets/esri/core/workers/chunks/15167eeb6d7dbe7e392d.js +0 -1
  623. package/assets/esri/core/workers/chunks/177472a6a9beb1590934.js +0 -1
  624. package/assets/esri/core/workers/chunks/1d0f9f147bfa00b38d48.js +0 -1
  625. package/assets/esri/core/workers/chunks/1d54b71c43d9d6a5f713.js +0 -1
  626. package/assets/esri/core/workers/chunks/1f6b7626f333809837ef.js +0 -1
  627. package/assets/esri/core/workers/chunks/24646a1176ce34039155.js +0 -1
  628. package/assets/esri/core/workers/chunks/268ed861c882740c805b.js +0 -1
  629. package/assets/esri/core/workers/chunks/2b52c1c01cf568ba01fb.js +0 -1
  630. package/assets/esri/core/workers/chunks/3116a1c2b67a296ba86e.js +0 -1
  631. package/assets/esri/core/workers/chunks/32c17c299c7622ae0d71.js +0 -1
  632. package/assets/esri/core/workers/chunks/34f79355145c8e4c59dd.js +0 -1
  633. package/assets/esri/core/workers/chunks/3be111488365768fd917.js +0 -1
  634. package/assets/esri/core/workers/chunks/3f0483cbcd893acf240c.js +0 -1
  635. package/assets/esri/core/workers/chunks/40d251b6b42a41d68bd2.js +0 -1
  636. package/assets/esri/core/workers/chunks/4a23b27bfbcfa08fd9a7.js +0 -1
  637. package/assets/esri/core/workers/chunks/4c54cb80c4dc9bbbd395.js +0 -1
  638. package/assets/esri/core/workers/chunks/598271956c46e21e5c09.js +0 -1
  639. package/assets/esri/core/workers/chunks/5b6f2bfdcdd207d8ae42.js +0 -1
  640. package/assets/esri/core/workers/chunks/5bc299f7f89a07a6e6a6.js +0 -1
  641. package/assets/esri/core/workers/chunks/5c7ba4b8a9ec2e2e02b5.js +0 -1
  642. package/assets/esri/core/workers/chunks/60915a3708a34da1977e.js +0 -1
  643. package/assets/esri/core/workers/chunks/61c523dd9d8027922465.js +0 -1
  644. package/assets/esri/core/workers/chunks/65520a443e3811255bea.js +0 -1
  645. package/assets/esri/core/workers/chunks/671826fe25105aedcce4.js +0 -1
  646. package/assets/esri/core/workers/chunks/6b79c254897ece95b7a3.js +0 -1
  647. package/assets/esri/core/workers/chunks/6c35583707f5c339ee99.js +0 -1
  648. package/assets/esri/core/workers/chunks/6cb467a9517f024be72f.js +0 -1
  649. package/assets/esri/core/workers/chunks/71119398ec91f1b209d7.js +0 -1
  650. package/assets/esri/core/workers/chunks/8ac8ef856ed9592c433b.js +0 -1
  651. package/assets/esri/core/workers/chunks/8fedb32055ac7f771419.js +0 -1
  652. package/assets/esri/core/workers/chunks/9482a6d7baa24bbf5693.js +0 -1
  653. package/assets/esri/core/workers/chunks/9c11e1fe785e1385fdb1.js +0 -1
  654. package/assets/esri/core/workers/chunks/a567d001fcfa1f1cdeea.js +0 -1
  655. package/assets/esri/core/workers/chunks/afdc6fc453157528cf9b.js +0 -1
  656. package/assets/esri/core/workers/chunks/b5ced451d331ca1ffb68.js +0 -1
  657. package/assets/esri/core/workers/chunks/b7f5d51ac26f37837b3b.js +0 -1
  658. package/assets/esri/core/workers/chunks/ba7fe21a78ea37a02b7c.js +0 -1
  659. package/assets/esri/core/workers/chunks/bb3ab2453ccde2f2611c.js +0 -1
  660. package/assets/esri/core/workers/chunks/bb81da98546c4d923e0d.js +0 -1
  661. package/assets/esri/core/workers/chunks/beba9f2213d8a850ddb6.js +0 -1
  662. package/assets/esri/core/workers/chunks/c1189316d24fb4cdb2a0.js +0 -1
  663. package/assets/esri/core/workers/chunks/d30790c69724258dab2b.js +0 -1
  664. package/assets/esri/core/workers/chunks/d35c475f004367e333eb.js +0 -1
  665. package/assets/esri/core/workers/chunks/d95ffd990b3a7df69e1e.js +0 -1
  666. package/assets/esri/core/workers/chunks/dd6efa0afe879bd11a2e.js +0 -1
  667. package/assets/esri/core/workers/chunks/de25311b6d13bf1c6089.js +0 -2
  668. package/assets/esri/core/workers/chunks/dec51409372764e7093d.js +0 -1
  669. package/assets/esri/core/workers/chunks/e133840540abf20262a4.js +0 -1
  670. package/assets/esri/core/workers/chunks/e63e24101e7e92c62d98.js +0 -1
  671. package/assets/esri/core/workers/chunks/e785f76c1a75cb1d1e1f.js +0 -1
  672. package/assets/esri/core/workers/chunks/f196ad0c7dbcbf632776.js +0 -1
  673. package/assets/esri/core/workers/chunks/f27397379c6c88bc6ef4.js +0 -1
  674. package/assets/esri/core/workers/chunks/f53805c7a84203305b2c.js +0 -1
  675. package/assets/esri/core/workers/chunks/f60292d97bcdbf19165b.js +0 -1
  676. package/assets/esri/core/workers/chunks/f6ebec8d2248c719b89f.js +0 -1
  677. package/assets/esri/core/workers/chunks/fae79769df54eb4c4154.js +0 -1
  678. package/assets/esri/core/workers/chunks/fd2afff07aaac8203c18.js +0 -1
  679. package/assets/esri/core/workers/chunks/ff7708aaa2de720e3a47.js +0 -1
  680. /package/assets/esri/core/workers/chunks/{55ccb8ed7325efb62091.js.LICENSE.txt → 29b00d07d3e1d095c590.js.LICENSE.txt} +0 -0
  681. /package/assets/esri/core/workers/chunks/{de25311b6d13bf1c6089.js.LICENSE.txt → 35fdd62277fd06468a29.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{P as e,A as t,a as r,b as n}from"./Envelope.js";import{P as s,a as o,M as a}from"./MultiPathImpl.js";function i({type:s,vertexCount:o,vertexXY:i,vertexZ:f,vertexM:u,partCount:p,partOffsets:l,partFlags:c,segmentFlags:y,segmentIndices:A,segmentParams:g,segmentCountArc:w,segmentCountBezier:C}){const v=new m[s];if(v instanceof e)return v.setXYCoords(i[0],i[1]),f&&v.setZ(f[0]),u&&v.setM(u[0]),v;const z=new t({fromArray:i});if(v.setAttributeStreamRef(0,z),f){const e=new t({fromArray:f});v.setAttributeStreamRef(1,e)}if(u){const e=new t({fromArray:u});v.setAttributeStreamRef(2,e)}if(v instanceof a)return v.resizeNoInit(o),v;{const e=p+1,t=new r({fromArray:l,size:e}),s=new n({fromArray:c,size:e});v.setPathStreamRef(t),v.setPathFlagsStreamRef(s)}if(null==y)return v.resizeImpl(o),v;const P=new n({fromArray:y}),S=new r({fromArray:A}),x=new t({fromArray:g});return v.setSegmentData(S,x,P,g.length),v.incCurveType(4,w),v.incCurveType(2,C),v.modifyCurveCounter(w+C),v.resizeImpl(o),v}const m={point:e,multipoint:a,polyline:o,polygon:s};export{i as constructFromFlatGeometry};
2
+ import{P as e,A as t,a as r,b as n}from"./Envelope.js";import{P as s,e as o,d as a}from"./MultiPathImpl.js";function i({type:s,vertexCount:o,vertexXY:i,vertexZ:f,vertexM:u,partCount:p,partOffsets:l,partFlags:c,segmentFlags:y,segmentIndices:A,segmentParams:g,segmentCountArc:w,segmentCountBezier:C}){const v=new m[s];if(v instanceof e)return v.setXYCoords(i[0],i[1]),f&&v.setZ(f[0]),u&&v.setM(u[0]),v;const z=new t({fromArray:i});if(v.setAttributeStreamRef(0,z),f){const e=new t({fromArray:f});v.setAttributeStreamRef(1,e)}if(u){const e=new t({fromArray:u});v.setAttributeStreamRef(2,e)}if(v instanceof a)return v.resizeNoInit(o),v;{const e=p+1,t=new r({fromArray:l,size:e}),s=new n({fromArray:c,size:e});v.setPathStreamRef(t),v.setPathFlagsStreamRef(s)}if(null==y)return v.resizeImpl(o),v;const P=new n({fromArray:y}),S=new r({fromArray:A}),x=new t({fromArray:g});return v.setSegmentData(S,x,P,g.length),v.incCurveType(4,w),v.incCurveType(2,C),v.modifyCurveCounter(w+C),v.resizeImpl(o),v}const m={point:e,multipoint:a,polyline:o,polygon:s};export{i as constructFromFlatGeometry};
@@ -8,4 +8,4 @@ import{signal as e}from"../core/signal.js";import{ScreenSpacePass as o}from"../v
8
8
  } else {
9
9
  fragColor = mask > 0.0 ? color : mix(color, 0.33 * color, fadeFactor);
10
10
  }
11
- `),e}const n=Object.freeze(Object.defineProperty({__proto__:null,FocusAreaColorPassParameters:f,build:i},Symbol.toStringTag,{value:"Module"}));export{f as F,n as a,i as b};
11
+ `),e}const n=Object.freeze(Object.defineProperty({__proto__:null,FocusAreaColorPassParameters:f,build:i},Symbol.toStringTag,{value:"Module"}));export{n as F,f as a,i as b};
@@ -1,3 +1,3 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
2
  import{translate as r}from"../core/libs/gl-matrix-2/math/mat4.js";import{create as e}from"../core/libs/gl-matrix-2/factories/mat4f64.js";import{ZEROS as o}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{glsl as i}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{Matrix4DrawUniform as s}from"../views/3d/webgl-engine/core/shaderModules/Matrix4DrawUniform.js";import{NoParameters as a}from"../views/webgl/NoParameters.js";import{ShaderBuilder as n}from"../views/webgl/ShaderBuilder.js";class m extends a{constructor(){super(...arguments),this.origin=o}}function l(){const e=new n;return e.attributes.add("position","vec3"),e.outputs.add("fragColor","vec4",0),e.vertex.uniforms.add(new t("proj",r=>r.camera.projectionMatrix),new s("view",(e,o)=>r(d,o.camera.viewMatrix,e.origin))).main.add(i`gl_Position = proj * view * vec4(position, 1.0);
3
- gl_Position.z = min(gl_Position.z, gl_Position.w);`),e.fragment.main.add(i`fragColor = vec4(1., 0., 0., 0.);`),e}const d=e(),c=Object.freeze(Object.defineProperty({__proto__:null,FocusAreaMaskDrawParameters:m,build:l},Symbol.toStringTag,{value:"Module"}));export{m as F,c as a,l as b};
3
+ gl_Position.z = min(gl_Position.z, gl_Position.w);`),e.fragment.main.add(i`fragColor = vec4(1., 0., 0., 0.);`),e}const d=e(),c=Object.freeze(Object.defineProperty({__proto__:null,FocusAreaMaskDrawParameters:m,build:l},Symbol.toStringTag,{value:"Module"}));export{c as F,m as a,l as b};
@@ -18,4 +18,4 @@ import{create as e}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{Re
18
18
  vec3 finalFogColor = fogColor * fogAmount + emissionDistanceCorrected;
19
19
  vec4 fog = vec4(finalFogColor, fogAmount);`,a`vec4 fog = vec4(fogColor, 1.0) * fogAmount;`)}
20
20
  fragColor = delinearizeGamma(vec4(tonemapACES(fog.rgb), fog.a));
21
- `),m}const w=Object.freeze(Object.defineProperty({__proto__:null,FogPassParameters:u,build:h},Symbol.toStringTag,{value:"Module"}));export{u as F,w as a,h as b};
21
+ `),m}const w=Object.freeze(Object.defineProperty({__proto__:null,FogPassParameters:u,build:h},Symbol.toStringTag,{value:"Module"}));export{w as F,u as a,h as b};
@@ -11,4 +11,4 @@ vec3 additionalLight = mainLightIntensity * additionalAmbientScale * ambientBoos
11
11
  ${T}
12
12
  float shadow = readShadow(additionalAmbientScale, fragmentPositionCameraRelative);
13
13
  shadedColor = evaluateSceneLighting(groundNormal, vColor.rgb, shadow, 0.0, additionalLight);
14
- `;return D.vertex.main.add(`\n uint gaussianIndex = fetchOrderedGaussianIndex(uint(gl_InstanceID));\n uvec4 packedGaussian = fetchPackedGaussian(gaussianIndex);\n uint pageNum = fetchGaussianPageIndex(gaussianIndex);\n\n // Unpack color first so very transparent splats can discard before fetching the page header.\n vColor = unpackColor(packedGaussian);\n\n // Apply per-page fading before the early alpha rejection.\n ${C(a.fadingEnabled,"\n uint fadingTextureWidth = uint(textureSize(splatFadingTexture, 0).x);\n uint fadeX = pageNum % fadingTextureWidth;\n uint fadeY = pageNum / fadingTextureWidth;\n uint opacityModifierByte = texelFetch(splatFadingTexture, ivec2(fadeX , fadeY), 0).r;\n float opacityModifier = float(opacityModifierByte) / 255.0;\n vColor.a *= opacityModifier;\n ")}\n\n // Set default position outside clip space for early returns.\n gl_Position = ${l};\n\n if (vColor.a < ${A}) {\n return;\n }\n\n // Delay the page header fetch until the splat survives the opacity reject.\n vec3 cameraRelativePosition = fetchGaussianCameraRelativePosition(gaussianIndex, packedGaussian);\n\n ${C(i,"\n if (cameraRelativePosition.x < clipMin.x || cameraRelativePosition.y < clipMin.y || cameraRelativePosition.z < clipMin.z ||\n cameraRelativePosition.x > clipMax.x || cameraRelativePosition.y > clipMax.y || cameraRelativePosition.z > clipMax.z) {\n return;\n }\n ")}\n\n ${C(m,"if (rejectBySlice(cameraRelativePosition)) {\n return;\n }")}\n\n vec4 viewPos = vec4(mat3(view) * cameraRelativePosition, 1);\n\n if (viewPos.z > -nearFar.x || viewPos.z < -nearFar.y) {\n return;\n }\n\n vec3 covarianceA;\n vec3 covarianceB;\n computePackedGaussianCovariance3D(packedGaussian, covarianceA, covarianceB);\n\n float covariance3D[6] = float[6](covarianceA.x, covarianceA.y, covarianceA.z, covarianceB.x, covarianceB.y, covarianceB.z);\n\n vec3 covariance2D = computeGaussianCovariance2D(viewPos.xyz, focalLength, tanFov, covariance3D, view);\n\n // Reject degenerate covariances before inverting them into conic coefficients.\n float determinant = computeGaussianCovarianceDeterminant(covariance2D);\n if (determinant <= 0.) {\n return;\n }\n\n vec2 eigenvalues = computeGaussianCovarianceEigenvalues(covariance2D);\n\n // Fold the per-splat opacity into the log cutoff so the vertex-side ellipse\n // bound matches the fragment alpha discard after fading.\n gaussianLogAlphaCutoff = ${B} - log(vColor.a);\n float gaussianEllipseThreshold = computeGaussianEllipseThreshold(gaussianLogAlphaCutoff);\n vec2 axisLengths = computeGaussianAxisLengths(eigenvalues, gaussianEllipseThreshold);\n float maxRadius = max(axisLengths.x, axisLengths.y);\n\n // Ignore Gaussians with very small contribution, with tolerance based on the quality profile.\n if (rejectGaussianByMinimumRadius(maxRadius, vColor.a, minSplatRadius)) {\n return;\n }\n\n vec4 projPos = proj * viewPos;\n float invW = 1. / (projPos.w + 1e-7);\n vec3 ndcPos = projPos.xyz * invW;\n vec2 clipSpacePixelScale = 2.0 * inverseScreenSize;\n\n // Cull splats whose screen-space ellipse cannot touch the viewport.\n if (rejectGaussianByScreenBounds(ndcPos.xy, maxRadius, clipSpacePixelScale)) {\n return;\n }\n\n offsetFromCenter = computeGaussianQuadOffset(covariance2D, eigenvalues, axisLengths, gl_VertexID);\n\n ${C(G(a),"float viewSpacePixelScale = -viewPos.z / focalLength;\n vec3 fragmentViewOffset = vec3(offsetFromCenter * viewSpacePixelScale, 0.0);\n fragmentPositionCameraRelative = cameraRelativePosition + transpose(mat3(view)) * fragmentViewOffset;")}\n\n // Store conic coefficients with opacity for fragment-side falloff.\n vec3 conic = computeGaussianConic(covariance2D, determinant);\n conicOpacity = vec4(conic, vColor.a);\n\n // Handle environment lighting per vertex when no shadow map is active.\n // When shadows are received, defer lighting to the fragment shader for crisp shadow borders.\n ${C(L,"forwardLinearDepth(-viewPos.z);",$)}\n\n // Place this quad corner in clip space around the projected splat center.\n vec2 quadClipPosition = ndcPos.xy + offsetFromCenter * clipSpacePixelScale - inverseScreenSize;\n\n gl_Position = vec4(quadClipPosition, ndcPos.z, 1.0);\n\n `),D.fragment.include(v),D.fragment.include(g),D.fragment.include(n,a),D.fragment.main.add(`\n ${C(i,"if (fragmentPositionCameraRelative.x < clipMin.x || fragmentPositionCameraRelative.y < clipMin.y || fragmentPositionCameraRelative.z < clipMin.z ||\n fragmentPositionCameraRelative.x > clipMax.x || fragmentPositionCameraRelative.y > clipMax.y || fragmentPositionCameraRelative.z > clipMax.z) {\n discard;\n }")}\n ${C(m,"if (rejectBySlice(fragmentPositionCameraRelative)) { discard; }")}\n\n float gaussianExponent = evaluateGaussianExponent(conicOpacity.xyz, offsetFromCenter);\n\n // A positive exponent indicates alpha > 1, which should not happen.\n // We also early check the opacity-aware alpha cutoff to avoid unnecessary exp().\n if (gaussianExponent > 0.0 || gaussianExponent < gaussianLogAlphaCutoff) {\n discard;\n }\n\n float gaussianFalloff = exp(gaussianExponent);\n\n // Cap at 0.99 to avoid blending issues, such as seams between overlapping Gaussians.\n float alpha = min(.99f, conicOpacity.w * gaussianFalloff);\n\n vec3 shadedColor = vColor.rgb;\n ${C(L,E)}\n fragColor = vec4(shadedColor * alpha, alpha);\n\n // We simulate first hit based depth using 0.25 as the opacity threshold.\n // This works because we render in front-to-back order,\n // i.e. the first hit that counts completely saturates the alpha channel\n // and further splats do not contribute.\n float depthHit = step(0.25, alpha);\n float normalizedDepth = gl_FragCoord.z;\n fragDepthColor = vec4(encodeNormalizedDepthToRGB(normalizedDepth) * depthHit, depthHit);\n `),D}function G(e){const{clippingEnabled:a,hasSlicePlane:i,receiveShadows:n}=e;return n||i||a}const z=a(),D=Object.freeze(Object.defineProperty({__proto__:null,GaussianSplatPassParameters:L,build:F},Symbol.toStringTag,{value:"Module"}));export{L as G,D as a,F as b};
14
+ `;return D.vertex.main.add(`\n uint gaussianIndex = fetchOrderedGaussianIndex(uint(gl_InstanceID));\n uvec4 packedGaussian = fetchPackedGaussian(gaussianIndex);\n uint pageNum = fetchGaussianPageIndex(gaussianIndex);\n\n // Unpack color first so very transparent splats can discard before fetching the page header.\n vColor = unpackColor(packedGaussian);\n\n // Apply per-page fading before the early alpha rejection.\n ${C(a.fadingEnabled,"\n uint fadingTextureWidth = uint(textureSize(splatFadingTexture, 0).x);\n uint fadeX = pageNum % fadingTextureWidth;\n uint fadeY = pageNum / fadingTextureWidth;\n uint opacityModifierByte = texelFetch(splatFadingTexture, ivec2(fadeX , fadeY), 0).r;\n float opacityModifier = float(opacityModifierByte) / 255.0;\n vColor.a *= opacityModifier;\n ")}\n\n // Set default position outside clip space for early returns.\n gl_Position = ${l};\n\n if (vColor.a < ${A}) {\n return;\n }\n\n // Delay the page header fetch until the splat survives the opacity reject.\n vec3 cameraRelativePosition = fetchGaussianCameraRelativePosition(gaussianIndex, packedGaussian);\n\n ${C(i,"\n if (cameraRelativePosition.x < clipMin.x || cameraRelativePosition.y < clipMin.y || cameraRelativePosition.z < clipMin.z ||\n cameraRelativePosition.x > clipMax.x || cameraRelativePosition.y > clipMax.y || cameraRelativePosition.z > clipMax.z) {\n return;\n }\n ")}\n\n ${C(m,"if (rejectBySlice(cameraRelativePosition)) {\n return;\n }")}\n\n vec4 viewPos = vec4(mat3(view) * cameraRelativePosition, 1);\n\n if (viewPos.z > -nearFar.x || viewPos.z < -nearFar.y) {\n return;\n }\n\n vec3 covarianceA;\n vec3 covarianceB;\n computePackedGaussianCovariance3D(packedGaussian, covarianceA, covarianceB);\n\n float covariance3D[6] = float[6](covarianceA.x, covarianceA.y, covarianceA.z, covarianceB.x, covarianceB.y, covarianceB.z);\n\n vec3 covariance2D = computeGaussianCovariance2D(viewPos.xyz, focalLength, tanFov, covariance3D, view);\n\n // Reject degenerate covariances before inverting them into conic coefficients.\n float determinant = computeGaussianCovarianceDeterminant(covariance2D);\n if (determinant <= 0.) {\n return;\n }\n\n vec2 eigenvalues = computeGaussianCovarianceEigenvalues(covariance2D);\n\n // Fold the per-splat opacity into the log cutoff so the vertex-side ellipse\n // bound matches the fragment alpha discard after fading.\n gaussianLogAlphaCutoff = ${B} - log(vColor.a);\n float gaussianEllipseThreshold = computeGaussianEllipseThreshold(gaussianLogAlphaCutoff);\n vec2 axisLengths = computeGaussianAxisLengths(eigenvalues, gaussianEllipseThreshold);\n float maxRadius = max(axisLengths.x, axisLengths.y);\n\n // Ignore Gaussians with very small contribution, with tolerance based on the quality profile.\n if (rejectGaussianByMinimumRadius(maxRadius, vColor.a, minSplatRadius)) {\n return;\n }\n\n vec4 projPos = proj * viewPos;\n float invW = 1. / (projPos.w + 1e-7);\n vec3 ndcPos = projPos.xyz * invW;\n vec2 clipSpacePixelScale = 2.0 * inverseScreenSize;\n\n // Cull splats whose screen-space ellipse cannot touch the viewport.\n if (rejectGaussianByScreenBounds(ndcPos.xy, maxRadius, clipSpacePixelScale)) {\n return;\n }\n\n offsetFromCenter = computeGaussianQuadOffset(covariance2D, eigenvalues, axisLengths, gl_VertexID);\n\n ${C(G(a),"float viewSpacePixelScale = -viewPos.z / focalLength;\n vec3 fragmentViewOffset = vec3(offsetFromCenter * viewSpacePixelScale, 0.0);\n fragmentPositionCameraRelative = cameraRelativePosition + transpose(mat3(view)) * fragmentViewOffset;")}\n\n // Store conic coefficients with opacity for fragment-side falloff.\n vec3 conic = computeGaussianConic(covariance2D, determinant);\n conicOpacity = vec4(conic, vColor.a);\n\n // Handle environment lighting per vertex when no shadow map is active.\n // When shadows are received, defer lighting to the fragment shader for crisp shadow borders.\n ${C(L,"forwardLinearDepth(-viewPos.z);",$)}\n\n // Place this quad corner in clip space around the projected splat center.\n vec2 quadClipPosition = ndcPos.xy + offsetFromCenter * clipSpacePixelScale - inverseScreenSize;\n\n gl_Position = vec4(quadClipPosition, ndcPos.z, 1.0);\n\n `),D.fragment.include(v),D.fragment.include(g),D.fragment.include(n,a),D.fragment.main.add(`\n ${C(i,"if (fragmentPositionCameraRelative.x < clipMin.x || fragmentPositionCameraRelative.y < clipMin.y || fragmentPositionCameraRelative.z < clipMin.z ||\n fragmentPositionCameraRelative.x > clipMax.x || fragmentPositionCameraRelative.y > clipMax.y || fragmentPositionCameraRelative.z > clipMax.z) {\n discard;\n }")}\n ${C(m,"if (rejectBySlice(fragmentPositionCameraRelative)) { discard; }")}\n\n float gaussianExponent = evaluateGaussianExponent(conicOpacity.xyz, offsetFromCenter);\n\n // A positive exponent indicates alpha > 1, which should not happen.\n // We also early check the opacity-aware alpha cutoff to avoid unnecessary exp().\n if (gaussianExponent > 0.0 || gaussianExponent < gaussianLogAlphaCutoff) {\n discard;\n }\n\n float gaussianFalloff = exp(gaussianExponent);\n\n // Cap at 0.99 to avoid blending issues, such as seams between overlapping Gaussians.\n float alpha = min(.99f, conicOpacity.w * gaussianFalloff);\n\n vec3 shadedColor = vColor.rgb;\n ${C(L,E)}\n fragColor = vec4(shadedColor * alpha, alpha);\n\n // We simulate first hit based depth using 0.25 as the opacity threshold.\n // This works because we render in front-to-back order,\n // i.e. the first hit that counts completely saturates the alpha channel\n // and further splats do not contribute.\n float depthHit = step(0.25, alpha);\n float normalizedDepth = gl_FragCoord.z;\n fragDepthColor = vec4(encodeNormalizedDepthToRGB(normalizedDepth) * depthHit, depthHit);\n `),D}function G(e){const{clippingEnabled:a,hasSlicePlane:i,receiveShadows:n}=e;return n||i||a}const z=a(),D=Object.freeze(Object.defineProperty({__proto__:null,GaussianSplatPassParameters:L,build:F},Symbol.toStringTag,{value:"Module"}));export{D as G,L as a,F as b};
@@ -36,4 +36,4 @@ return;
36
36
  if (gaussianExponent > 0.0 || gaussianExponent < gaussianLogAlphaCutoff) {
37
37
  discard;
38
38
  }
39
- outputDepth(depth);`),P}const j=a(),G=Object.freeze(Object.defineProperty({__proto__:null,GaussianSplatShadowPassParameters:P,build:S},Symbol.toStringTag,{value:"Module"}));export{P as G,G as a,S as b};
39
+ outputDepth(depth);`),P}const j=a(),G=Object.freeze(Object.defineProperty({__proto__:null,GaussianSplatShadowPassParameters:P,build:S},Symbol.toStringTag,{value:"Module"}));export{G,P as a,S as b};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__addDisposableResource as t,__disposeResources as e}from"tslib";import{a as i,G as s,g as n,d as o,v as m,h as a}from"./Geometry.js";import{S as r,P as u}from"./MultiPathImpl.js";import{O as h,a as c,M as l,N as _,Q as p,R as d,S as g,U as x,V as y,W as P,X as S,Y as f,Z as D,_ as G,$ as v}from"./SpatialReference.js";import{f as T,d as b}from"./Envelope.js";import{Envelope2D as w}from"./Envelope2D.js";import{P as M,c as E,k as R,E as I,l as C}from"./Point2D.js";import{T as B}from"./Transformation2D.js";import{s as A,w as q,m as N}from"./Distance2DCalculator-CXhBP-8I.js";import{O as F}from"./OperatorShapePreservingDensify.js";import{O as X}from"./OperatorClip.js";function Y(){return new w}class k{[Symbol.dispose](){this.m_peR1.destroy(),this.m_peR2.destroy(),this.m_peR3.destroy(),this.m_peR1=null,this.m_peR2=null,this.m_peR3=null}constructor(t,e,i){this.m_peR1=new l,this.m_peR2=new l,this.m_peR3=new l,void 0!==t?this.reset(t,e,i):this.reset(1,0,1)}reset(t,e,i){this.m_a=t,this.m_e2=e,this.m_b=this.m_a*Math.sqrt(1-this.m_e2),this.m_unitToDegree=i,this.m_unitToRad=.017453292519943295*i,this.m_u180=180/this.m_unitToDegree,this.m_u360=360/this.m_unitToDegree}calculateBbox(t,e,i,s){const n=this.m_peR1,o=this.m_peR2,m=this.m_peR3;_.geodeticDistance(this.m_a,this.m_e2,t*this.m_unitToRad,e*this.m_unitToRad,i*this.m_unitToRad,s*this.m_unitToRad,m,n,o,0);const a=Math.cos(n.val),r=Math.cos(o.val+3.141592653589793),u=e*this.m_unitToRad,h=v.phiToEta(this.m_e2,u),c=Math.sin(n.val)*Math.cos(h);let l=e;if(a*r<0){const t=a<0?-1:1,e=Math.acos(Math.abs(c))*t;l=v.etaToPhi(this.m_e2,e)/this.m_unitToRad}let p=C((i-t)*this.m_unitToRad,2*Math.PI);Math.abs(p)>Math.PI&&(p=p>0?p-2*Math.PI:p+2*Math.PI),p/=this.m_unitToRad,i=t+p;const d=Y();return d.xmin=Math.min(t,i),d.xmax=Math.max(t,i),d.ymin=Math.min(e,s),d.ymin=Math.min(d.ymin,l),d.ymax=Math.max(e,s),d.ymax=Math.max(d.ymax,l),d}minDistanceGeodesic(t,e){const i=O(t),s=O(e);if(i&&s)return this.lowerDistanceGeodetic_(t.xmin,t.ymin,e.xmin,e.ymin);const n=this.normalizeGeodesic_(e,t);return U(t,n)?t.ymin>=n.ymax?this.minDistanceGeodesicUpDown_(t,n):n.ymin>=t.ymax?this.minDistanceGeodesicUpDown_(n,t):t.xmin>n.xmax?this.minDistanceGeodesicLeftRight_(n,t):this.minDistanceGeodesicLeftRight_(t,n):0}normalizeGeodesic_(t,e){const i=t.clone(),s=t.clone();let n=V(i,e);if(0===n)return i;for(;s.xmax>e.xmin;){s.xmin-=this.m_u360,s.xmax-=this.m_u360;const t=V(s,e);if(t<n&&(i.assign(s),n=t,0===n))return i}for(s.assign(t);s.xmin<e.xmax;){s.xmin+=this.m_u360,s.xmax+=this.m_u360;const t=V(s,e);if(t<n&&(i.assign(s),n=t,0===n))return i}return i}lowerDistanceGeodetic_(t,e,i,s){const n=this.m_peR1;{const o=this.m_b*this.m_b/this.m_a,m=v.phiToPhig(this.m_e2,this.m_unitToRad*e),a=v.phiToPhig(this.m_e2,this.m_unitToRad*s);_.geodeticDistance(o,0,this.m_unitToRad*t,m,this.m_unitToRad*i,a,n,null,null,0)}return n.val}minDistanceGeodesicUpDown_(t,e){if(e.xmin<=t.xmin?e.xmax>=t.xmin:t.xmax>=e.xmin)return this.lowerDistanceGeodetic_(0,t.ymin,0,e.ymax);if(e.xmin>t.xmax){const i=this.lowerDistanceGeodeticSegMeridional_(t.xmax,t.ymin,t.ymax,e.xmin,e.ymin,e.ymax);if(e.xmax-t.xmin<this.m_u180)return i;const s=this.lowerDistanceGeodeticSegMeridional_(t.xmin,t.ymin,t.ymax,e.xmax,e.ymin,e.ymax);return Math.min(i,s)}{const i=this.lowerDistanceGeodeticSegMeridional_(t.xmin,t.ymin,t.ymax,e.xmax,e.ymin,e.ymax);if(t.xmax-e.xmin<this.m_u180)return i;const s=this.lowerDistanceGeodeticSegMeridional_(t.xmax,t.ymin,t.ymax,e.xmin,e.ymin,e.ymax);return Math.min(i,s)}}minDistanceGeodesicLeftRight_(t,e){let i=Math.abs(t.xmax-e.xmin);for(;i>this.m_u180;)i-=this.m_u360;let s=Math.abs(t.xmin-e.xmax);for(;s>this.m_u180;)s-=this.m_u360;return Math.abs(i)<=Math.abs(s)?this.minDistanceGeodesicLeftRightNormalized_(t,e):this.minDistanceGeodesicLeftRightNormalized_(e,t)}minDistanceGeodesicLeftRightNormalized_(t,e){let i,s;return i=this.lowerDistanceGeodetic_(t.xmax,t.ymin,e.xmin,e.ymin),t.ymin>=e.ymin&&t.ymin<=e.ymax&&(s=this.lowerDistanceGeodeticPtMeridional_(t.xmax,t.ymin,e.xmin,e.ymin,e.ymax),i=Math.min(i,s)),e.ymin>=t.ymin&&e.ymin<=t.ymax&&(s=this.lowerDistanceGeodeticPtMeridional_(e.xmin,e.ymin,t.xmax,t.ymin,t.ymax),i=Math.min(i,s)),s=this.lowerDistanceGeodetic_(t.xmax,t.ymax,e.xmin,e.ymax),i=Math.min(i,s),t.ymax>=e.ymin&&t.ymax<=e.ymax&&(s=this.lowerDistanceGeodeticPtMeridional_(t.xmax,t.ymax,e.xmin,e.ymin,e.ymax),i=Math.min(i,s)),e.ymax>=t.ymin&&e.ymax<=t.ymax&&(s=this.lowerDistanceGeodeticPtMeridional_(e.xmin,e.ymax,t.xmax,t.ymin,t.ymax),i=Math.min(i,s)),i}lowerDistanceGeodeticSegMeridional_(t,e,i,s,n,o){let m=this.lowerDistanceGeodeticPtMeridional_(t,e,s,n,o);const a=this.lowerDistanceGeodeticPtMeridional_(t,i,s,n,o);let r=this.lowerDistanceGeodeticPtMeridional_(s,n,t,e,i);const u=this.lowerDistanceGeodeticPtMeridional_(s,o,t,e,i);return m=Math.min(m,a),r=Math.min(r,u),Math.min(m,r)}lowerDistanceGeodeticPtMeridional_(t,e,i,s,n){const o=this.m_b*this.m_b/this.m_a,m=v.phiToPhig(this.m_e2,this.m_unitToRad*e),a=v.phiToPhig(this.m_e2,this.m_unitToRad*s),r=v.phiToPhig(this.m_e2,this.m_unitToRad*n),u=this.m_peR1,h=this.m_peR2;_.geodeticDistance(o,0,this.m_unitToRad*i,a,this.m_unitToRad*t,m,u,null,null,0),_.geodeticDistance(o,0,this.m_unitToRad*i,r,this.m_unitToRad*t,m,h,null,null,0);const c=p(1,0,new M(this.m_unitToRad*t,m)),l=p(1,0,new M(this.m_unitToRad*i,a)),d=p(1,0,new M(this.m_unitToRad*i,r));let g=new T;g.setCrossProductVector(l,d);const x=l.dotProduct(d);if(g.length()<1.568e-10)return x>=0?Math.min(u.val,h.val):0;g=g.getUnitVector();let y=new T;if(y.setCrossProductVector(g,c),y.length()<1.568e-10){return Math.min(u.val,h.val)-1e-5*o}y=y.getUnitVector();let P=c.sub(g.mul(c.dotProduct(g)));{const e=new T;e.setCrossProductVector(l,P);const i=new T;i.setCrossProductVector(P,d);let s=g.dotProduct(e)>0&&g.dotProduct(i)>0;if(s||(P.negateThis(),e.setCrossProductVector(l,P),i.setCrossProductVector(P,d),s=g.dotProduct(e)>0&&g.dotProduct(i)>0),s){P=P.getUnitVector();const e=D(1,0,P),i=this.m_peR3;_.geodeticDistance(o,0,this.m_unitToRad*t,m,e.x,e.y,i,null,null,0);const s=Math.min(u.val,h.val);return Math.min(s,i.val)}}return Math.min(u.val,h.val)}}function O(t){return t.xmin===t.xmax&&t.ymin===t.ymax}function U(t,e){return e.xmax<t.xmin||e.xmin>t.xmax||e.ymax<t.ymin||e.ymin>t.ymax}function V(t,e){let i,s=0;return i=t.xmin-e.xmax,i>s&&(s=i),i=e.xmin-t.xmax,i>s&&(s=i),s}class L{}function j(t){return{outPoint:void 0===t?new M:t.clone()}}function z(t,e){t.outPoint.assign(e.outPoint)}function H(){return new w}class Q{constructor(t,e,i,s,n=0,o=4){this.m_ptDistFrom=new M,this.m_segStartPt=new M,this.m_segEndPt=new M,this.m_geodeticLength=new l,this.m_az12=new l,this.m_minGeodeticDist=new l,this.m_segStartPt3d=new T,this.m_segEndPt3d=new T,this.m_sr=s,this.m_distCurveType=n,this.m_segCurveType=o,this.m_inputGCS=this.m_sr.getGCS(),this.m_rpu=this.m_inputGCS.getUnit().getUnitToBaseFactor(),this.m_bIsPannablePcs=2===this.m_sr.getCoordinateSystemType()&&this.m_sr.isPannable();const m=G();this.m_inputGCS.querySpheroidData(m),this.m_a=m.majorSemiAxis,this.m_eSquared=m.e2,this.setPointDistFrom(t),this.setSegmentEndPoints(e,i)}setSegmentEndPoints(t,e){this.m_segStartPt.assign(t),this.m_segEndPt.assign(e),this.m_bIsPannablePcs||(this.m_segStartPt.mulThis(this.m_rpu),this.m_segEndPt.mulThis(this.m_rpu)),2===this.m_segCurveType&&(this.m_segStartPt3d.assign(p(this.m_a,this.m_eSquared,this.m_segStartPt)),this.m_segEndPt3d.assign(p(this.m_a,this.m_eSquared,this.m_segEndPt))),this.calculateAndUpdateSegmentLength()}setPointDistFrom(t){this.m_ptDistFrom.assign(t),this.m_ptDistFrom.scale(this.m_rpu)}setSegmentCurveType(t){this.m_segCurveType=t}setDistanceCurveType(t){this.m_distCurveType=t}makeFunctor(){return i=>{let s;switch(this.m_segCurveType){case 0:case 1:case 3:{const o={stack:[],error:void 0,hasError:!1};try{const e=t(o,new l,!1),n=t(o,new l,!1);_.geodeticCoordinate(this.m_a,this.m_eSquared,this.m_segStartPt.x,this.m_segStartPt.y,this.m_geodeticLength.val*i,this.m_az12.val,e,n,this.m_segCurveType),s=new M(e.val,n.val);break}catch(n){o.error=n,o.hasError=!0}finally{e(o)}}case 2:{const t=T.lerp(this.m_segStartPt3d,this.m_segEndPt3d,i);s=D(this.m_a,this.m_eSquared,t);break}case 4:s=M.lerp(this.m_segStartPt,this.m_segEndPt,i),this.m_bIsPannablePcs&&(g(this.m_sr,0,[s],1),s.mulThis(this.m_rpu));break;default:o("Invalid curve type")}return _.geodeticDistance(this.m_a,this.m_eSquared,this.m_ptDistFrom.x,this.m_ptDistFrom.y,s.x,s.y,this.m_minGeodeticDist,null,null,this.m_distCurveType),this.m_minGeodeticDist.val}}calculateAndUpdateSegmentLength(){switch(this.m_segCurveType){case 0:case 2:case 1:case 3:_.geodeticDistance(this.m_a,this.m_eSquared,this.m_segStartPt.x,this.m_segStartPt.y,this.m_segEndPt.x,this.m_segEndPt.y,this.m_geodeticLength,this.m_az12,null,this.m_segCurveType);break;case 4:this.m_geodeticLength.val=M.distance(this.m_segStartPt,this.m_segEndPt);break;default:o("Invalid curve type")}}[Symbol.dispose](){this.m_geodeticLength[Symbol.dispose](),this.m_az12[Symbol.dispose](),this.m_minGeodeticDist[Symbol.dispose]()}}function W(){return new L}class Z{[Symbol.dispose](){this.m_envHelper[Symbol.dispose]()}constructor(t,e,i,s,n){this.m_boxGeomA=H(),this.m_boxGeomB=H(),this.m_envGeomA=new w,this.m_envGeomB=new w,this.m_progressCounter=0,this.m_transformPCS2GCS=null,this.m_segmentBoxesA=new Map,this.m_segmentBoxesB=new Map,this.m_boundaryPtsA=[],this.m_boundaryPtsB=[],this.m_scaleToRadians=new B,this.m_scaleToDegrees=new B,this.m_inputSR=t,this.m_distCurveType=e,this.m_progressTracker=i,this.m_maxDistance=s,this.m_maxDeviation=n,this.m_inputGCS=t.getGCS(),this.m_peGeogcs=this.m_inputGCS.getPECoordSys(),this.m_tolerance=0;const o=G();this.m_inputGCS.querySpheroidData(o),this.m_a=o.majorSemiAxis,this.m_eSquared=o.e2,this.m_rpu=this.m_inputGCS.getUnit().getUnitToBaseFactor(),this.m_envHelper=new k(this.m_a,this.m_eSquared,1),4===this.m_distCurveType&&(this.m_distCurveType=0),this.m_boxGeomA.setEmpty(),this.m_boxGeomB.setEmpty(),this.m_envGeomA.setEmpty(),this.m_envGeomB.setEmpty(),this.m_bIsPannablePcs=2===this.m_inputSR.getCoordinateSystemType()&&this.m_inputSR.isPannable()}progress(t=!1){}calculate(t,e,i,s){const n=j(),o=j();if(t.queryEnvelope(this.m_envGeomA),e.queryEnvelope(this.m_envGeomB),this.checkGeometriesIntersect(t,e,n,o))return i&&z(i,n),s&&z(s,o),0;const m=this.prepareGeometry(t);if(m.isEmpty())return Number.NaN;const a=this.prepareGeometry(e);if(a.isEmpty())return Number.NaN;this.m_tolerance=this.computeTolerance(m,a);const r=this._ExecuteBruteForce(m,a,n,o);return r>=this.m_maxDistance?Number.NaN:(i&&(this.prepareOutput(n),z(i,n)),s&&(this.prepareOutput(o),z(s,o)),r)}createDistanceFunctor(t,e,i){const s=new Q(t,e,i,this.m_inputSR,this.m_distCurveType);return this.m_bIsPannablePcs||1===this.m_inputSR.getCoordinateSystemType()||s.setSegmentCurveType(2),s}_NormalizeAndProject(t){if(this.m_inputSR.isPannable()&&(t=(new h).foldInto360Range(t,this.m_inputSR)),2===this.m_inputSR.getCoordinateSystemType()){const e=c(this.m_inputSR,this.m_inputGCS,null);t=(new h).execute(t,e,this.m_progressTracker)}return t}_ExecuteBruteForce(t,e,n,o){switch(t.getGeometryType()){case s.enumPoint:return this.calculateDistanceGeodeticPointGeometry(t,e,n,o);case s.enumMultiPoint:return this.calculateDistanceGeodeticMultipointGeometry(t,e,n,o);case s.enumPolyline:case s.enumPolygon:case s.enumEnvelope:return this.calculateDistanceGeodeticMultipathGeometry(t,e,n,o);default:i("")}}calculateDistanceGeodeticPointGeometry(t,e,n,o){switch(e.getGeometryType()){case s.enumPoint:return this.calculateDistanceGeodeticPointPoint(t,e,n,o);case s.enumMultiPoint:return this.calculateDistanceGeodeticPointMultipoint(t,e,n,o);case s.enumPolyline:case s.enumPolygon:return this.calculateDistanceGeodeticPointMultipath(t,e,n,o);default:i("")}}calculateDistanceGeodeticPointPoint(i,s,n,o){const m={stack:[],error:void 0,hasError:!1};try{const e=i.getXY();e.scale(this.m_rpu);const a=s.getXY();a.scale(this.m_rpu),n.outPoint.assign(e),o.outPoint.assign(a);const r=t(m,new l,!1);return _.geodeticDistance(this.m_a,this.m_eSquared,e.x,e.y,a.x,a.y,r,null,null,this.m_distCurveType),r.val}catch(a){m.error=a,m.hasError=!0}finally{e(m)}}calculateDistanceGeodeticPointMultipoint(i,s,n,o){const m={stack:[],error:void 0,hasError:!1};try{this.computeEnvelopesAndBoxes(i,s);const e=this.estimateMinimumDistance(n,o);let a=e<this.m_maxDistance?e:this.m_maxDistance;const r=i.getXY();r.scale(this.m_rpu),n.outPoint.assign(r);const u=p(this.m_a,this.m_eSquared,r),h=new M,c=s.getImpl(),d=t(m,new l,!1),g=c.getPointCount();for(let t=0;t<g;++t){c.queryXY(t,h),h.scale(this.m_rpu);const e=p(this.m_a,this.m_eSquared,h);if(!(T.distance(u,e)>a)&&(!(this.m_envHelper.minDistanceGeodesic(this.m_boxGeomA,this.m_boxGeomB)>a)&&(_.geodeticDistance(this.m_a,this.m_eSquared,r.x,r.y,h.x,h.y,d,null,null,this.m_distCurveType),d.val<a&&(a=d.val,o.outPoint=h,0===a))))return a}return a===this.m_maxDistance?Number.POSITIVE_INFINITY:a}catch(a){m.error=a,m.hasError=!0}finally{e(m)}}calculateDistanceGeodeticPointMultipath(i,s,o,m){const a={stack:[],error:void 0,hasError:!1};try{const e=new M,r=new M;e.assign(i.getXY()),r.assign(i.getXY()),o.outPoint.assign(r.mul(this.m_rpu)),this.m_bIsPannablePcs&&d(this.m_inputSR,[e],1,!1),this.computeEnvelopesAndBoxes(i,s);const u=this.estimateMinimumDistance(o,m);let h=u<this.m_maxDistance?u:this.m_maxDistance;const c=s.getImpl(),l=new M(0,0),_=new M(0,0),p=[1],g=this.canUseSpatialTree(i,s),x=W();g&&this.buildSpatialTree(x,s);const y=H();y.setCoords({xmin:r.x,ymin:r.y,xmax:r.x,ymax:r.y});const P=t(a,this.createDistanceFunctor(r,l,_),!1),S=c.querySegmentIterator();if(S.stripAttributes(),g)n(0);else for(;S.nextPath();)for(;S.hasNextSegment();){const t=S.nextSegment(),i=this.findOrComputeBoxSegment(S.getStartPointIndex(),t,this.m_segmentBoxesB);if(this.m_envHelper.minDistanceGeodesic(y,i)>h)continue;const s=this.calculateDistanceGeodeticPointSegment(e,r,t,p,P);if(s.second<h&&(this.updateOutputSegment(m,t,s.first),h=s.second,0===h))return 0}return h===this.m_maxDistance?Number.POSITIVE_INFINITY:h}catch(r){a.error=r,a.hasError=!0}finally{e(a)}}calculateDistanceGeodeticMultipointGeometry(t,e,n,o){switch(e.getGeometryType()){case s.enumPoint:return this.calculateDistanceGeodeticPointMultipoint(e,t,o,n);case s.enumMultiPoint:return this.calculateDistanceGeodeticMultipointMultipoint(t,e,n,o);case s.enumPolyline:case s.enumPolygon:case s.enumEnvelope:return this.calculateDistanceGeodeticMultipointMultipath(t,e,n,o);default:i("")}}calculateDistanceGeodeticMultipointMultipoint(i,s,n,o){const m={stack:[],error:void 0,hasError:!1};try{const e=t(m,new l,!1);this.computeEnvelopesAndBoxes(i,s);const a=this.estimateMinimumDistance(n,o);let r=a<this.m_maxDistance?a:this.m_maxDistance;const u=new M,h=new M,c=i.getImpl(),d=s.getImpl(),g=H(),x=c.getPointCount(),y=d.getPointCount();for(let t=0;t<x;++t){if(u.assign(c.getXY(t)),g.setCoords({xmin:u.x,ymin:u.y,xmax:u.x,ymax:u.y}),this.m_envHelper.minDistanceGeodesic(g,this.m_boxGeomB)>r)continue;u.scale(this.m_rpu);const i=p(this.m_a,this.m_eSquared,u);for(let t=0;t<y;++t){h.assign(d.getXY(t)),h.scale(this.m_rpu);const s=p(this.m_a,this.m_eSquared,h);if(!(T.distance(i,s)>=r)&&(_.geodeticDistance(this.m_a,this.m_eSquared,u.x,u.y,h.x,h.y,e,null,null,this.m_distCurveType),e.val<r&&(n.outPoint.assign(u),o.outPoint.assign(h),r=e.val,0===r)))return r}}return r===this.m_maxDistance?Number.POSITIVE_INFINITY:r}catch(a){m.error=a,m.hasError=!0}finally{e(m)}}calculateDistanceGeodeticMultipointMultipath(i,s,o,m){const a={stack:[],error:void 0,hasError:!1};try{const e=s.getImpl().querySegmentIterator();e.stripAttributes(),this.computeEnvelopesAndBoxes(i,s);const r=this.estimateMinimumDistance(o,m);let u=r<this.m_maxDistance?r:this.m_maxDistance;const h=new M,c=new M(0,0),l=new M(0,0),_=new M(0,0),p=[0],g=H(),x=t(a,this.createDistanceFunctor(c,l,_),!1),y=W(),P=this.canUseSpatialTree(i,s);P&&this.buildSpatialTree(y,s);const S=i.getPointCount();for(let t=0;t<S;++t)if(h.assign(i.getXY(t)),c.assign(i.getXY(t)),this.m_bIsPannablePcs&&d(this.m_inputSR,[h],1,!1),g.setCoords({xmin:c.x,ymin:c.y,xmax:c.x,ymax:c.y}),!(this.m_envHelper.minDistanceGeodesic(g,this.m_boxGeomB)>u))if(x.setPointDistFrom(c),P)n(0);else{for(;e.nextPath();)for(;e.hasNextSegment();){const t=e.nextSegment();if(this.m_envHelper.minDistanceGeodesic(g,this.findOrComputeBoxSegment(e.getStartPointIndex(),t,this.m_segmentBoxesB))>u)continue;const i=this.calculateDistanceGeodeticPointSegment(h,c,t,p,x);if(i.second<u&&(o.outPoint.assign(c.mul(this.m_rpu)),this.updateOutputSegment(m,t,i.first),u=i.second,0===u))return 0}e.resetToFirstPath()}return u===this.m_maxDistance?Number.POSITIVE_INFINITY:u}catch(r){a.error=r,a.hasError=!0}finally{e(a)}}calculateDistanceGeodeticMultipathGeometry(t,e,n,o){switch(e.getGeometryType()){case s.enumPoint:return this.calculateDistanceGeodeticPointMultipath(e,t,o,n);case s.enumMultiPoint:return this.calculateDistanceGeodeticMultipointMultipath(e,t,o,n);case s.enumPolyline:case s.enumPolygon:case s.enumEnvelope:return this.calculateDistanceGeodeticMultipathMultipath(t,e,n,o);default:i("")}}calculateDistanceGeodeticMultipathMultipath(t,e,i,s){const n=[t],o=[e],m=this.swapGeometries(n,o),a=n[0],r=o[0];this.computeEnvelopesAndBoxes(n[0],o[0]);const u=this.estimateMinimumDistance(i,s),h=this.calculateDistanceGeodeticMultipathMultipath_(a,r,i,s,u);return m&&(s.outPoint=E(i.outPoint,i.outPoint=s.outPoint)),h}calculateDistanceGeodeticMultipathMultipath_(i,s,o,m,a=Number.MAX_VALUE){const u={stack:[],error:void 0,hasError:!1};try{let e=a;const h=new M(0,0),c=new M,l=new M(0,0),_=new M,p=new M(0,0),d=new M,y=new M,P=new M,S=[new M],f=[0],D=[0],G=H(),v=H(),T=t(u,this.createDistanceFunctor(p,h,l),!1),b=W(),w=this.canUseSpatialTree(i,s);w&&this.buildSpatialTree(b,s);const E=s.querySegmentIterator();E.stripAttributes();const R=new r,I=A(i);for(let t=0;t<I.length;++t){const s=I[t];i.getSegmentBuffer(s,R,!0);const a=R.get();if(G.assign(this.findOrComputeBoxSegment(s,a,this.m_segmentBoxesA)),w)n(0);else{if(p.assign(a.getStartXY()),d.assign(a.getStartXY()),y.assign(a.getEndXY()),P.assign(a.getEndXY()),this.m_bIsPannablePcs&&(g(this.m_inputSR,0,[d],1),g(this.m_inputSR,0,[P],1)),this.m_envHelper.minDistanceGeodesic(G,this.m_boxGeomB)>e)continue;for(;E.nextPath();){for(;E.hasNextSegment();){const t=E.nextSegment();if(h.assign(t.getStartXY()),c.assign(t.getStartXY()),l.assign(t.getEndXY()),_.assign(t.getEndXY()),a.intersect(t,S,f,D,this.m_tolerance))return this.updateOutputSegment(o,a,f[0]),this.updateOutputSegment(m,t,D[0]),0;if(this.m_bIsPannablePcs&&(g(this.m_inputSR,0,[c],1),g(this.m_inputSR,0,[_],1)),v.assign(this.findOrComputeBoxPoint(E.getStartPointIndex(),c,_,this.m_segmentBoxesB)),this.m_envHelper.minDistanceGeodesic(G,v)>e)continue;T.setSegmentEndPoints(h,l),T.setPointDistFrom(d);let i=x(T.makeFunctor(),0,1,1e-10);if(i.second<e&&(o.outPoint.assign(d.mul(this.m_rpu)),this.updateOutputSegment(m,t,i.first),e=i.second,0===e))break;if(T.setPointDistFrom(P),i=x(T.makeFunctor(),0,1,1e-10),i.second<e&&(o.outPoint.assign(P.mul(this.m_rpu)),this.updateOutputSegment(m,t,i.first),e=i.second,0===e))break;if(T.setSegmentEndPoints(p,y),T.setPointDistFrom(c),i=x(T.makeFunctor(),0,1,1e-10),i.second<e&&(this.updateOutputSegment(o,a,i.first),m.outPoint.assign(c.mul(this.m_rpu)),e=i.second,0===e))break;if(T.setPointDistFrom(_),i=x(T.makeFunctor(),0,1,1e-10),i.second<e&&(this.updateOutputSegment(o,a,i.first),m.outPoint.assign(_.mul(this.m_rpu)),e=i.second,0===e))break}if(0===e)return 0}E.resetToFirstPath()}}return e===this.m_maxDistance?Number.POSITIVE_INFINITY:e}catch(h){u.error=h,u.hasError=!0}finally{e(u)}}calculateDistanceGeodeticPointSegment(t,e,i,s,n){const o=i.getStartXY(),m=i.getEndXY();return i.intersectPoint(t,s,this.m_tolerance)?R(s[0],0):(n.setPointDistFrom(e),n.setSegmentEndPoints(o,m),x(n.makeFunctor(),0,1,1e-10))}prepareGeometry(t){let e=t.clone();const i=t.getGeometryType();if(i===s.enumPoint||i===s.enumMultiPoint)return this._NormalizeAndProject(e);if(i===s.enumEnvelope&&(e=this.envelopeToPolygon(e)),this.m_inputSR.isPannable())return this.prepareGeometryPannable(e,4);if(2===this.m_inputSR.getCoordinateSystemType()){if(e=y(e,this.m_inputSR,0,null),e.isEmpty())return e;e=(new F).execute(e,this.m_inputSR,5e4,this.m_maxDeviation/2,0,null);const t=this.m_inputSR.getSRToGCSTransform();return(new h).execute(e,t,this.m_progressTracker)}const n=new w;e.queryLooseEnvelope(n);const o=this.m_inputSR.getPannableExtent();if(n.ymin<o.ymin||n.ymax>o.ymax){const t=new w(n.xmin-1,o.ymin,n.xmax+1,o.ymax);if(e=(new X).execute(e,t,this.m_inputSR,this.m_progressTracker),e.isEmpty())return e}return n.width()>2*o.width()?(e=P(e,-2*o.width(),2*o.width(),this.m_inputSR,!0,0,!0,this.m_progressTracker),e):e}prepareGeometryPannable(t,e){const i=new w;t.queryEnvelope(i);const s=this.m_inputSR.getPannableExtent();if(s.containsEnvelope(i))return t;const n=new I;s.queryIntervalX(n);const o=new I;return i.queryIntervalX(o),t=n.contains(o)?S(t,this.m_inputSR):(new h).foldInto360RangeGeodetic(t,this.m_inputSR,e)}prepareOutput(t){t.outPoint.scale(1/this.m_rpu),2===this.m_inputSR.getCoordinateSystemType()&&d(this.m_inputSR,[t.outPoint],1,!1)}updateOutputSegment(t,e,i){e.queryCoord2D(i,t.outPoint),this.m_bIsPannablePcs&&g(this.m_inputSR,0,[t.outPoint],1),t.outPoint.mulThis(this.m_rpu)}computeTolerance(t,e){t.queryEnvelope(this.m_envGeomA),e.queryEnvelope(this.m_envGeomB);const i=new w(this.m_envGeomA);return i.mergeEnvelope2D(this.m_envGeomB),b(null,i)}envelopeToPolygon(t){const e=new u;return e.addEnvelope(t,!1),e}computeEnvelopesAndBoxes(t,e){t.queryEnvelope(this.m_envGeomA),e.queryEnvelope(this.m_envGeomB),this.m_boxGeomA=this.computeBoxGeometry(t,this.m_boundaryPtsA,this.m_segmentBoxesA),this.m_boxGeomB=this.computeBoxGeometry(e,this.m_boundaryPtsB,this.m_segmentBoxesB)}computeBoxGeometry(t,e,i){switch(t.getGeometryType()){case s.enumPoint:return this.computeBoxPoint(t,e);case s.enumMultiPoint:return this.computeBoxMultiPoint(t,e);case s.enumPolyline:case s.enumPolygon:return this.computeBoxMultiPath(t,e,i);default:o("Invalid geometry type")}}computeBoxPoint(t,e){const i=t.getXY();e.length=0,e.push(i.mul(this.m_rpu));const s=H();return s.setCoords({xmin:i.x,ymin:i.y,xmax:i.x,ymax:i.y}),s}computeBoxMultiPoint(t,e){let i=!0;for(let n=0;n<t.getPointCount();++n){const s=t.getXY(n);if(i){e.length=0;for(let t=0;t<4;++t)e.push(s.clone());i=!1}s.x<e[0].x&&e[0].assign(s),s.y>e[1].y&&e[1].assign(s),s.x>e[2].x&&e[2].assign(s),s.y<e[3].y&&e[3].assign(s)}for(let n=0;n<e.length;++n)e[n].mulThis(this.m_rpu);const s=H();return t.queryEnvelope(s),s}computeBoxMultiPath(t,e,i){let s=!0;const n=H();n.setEmpty();const o=t.querySegmentIterator();for(o.stripAttributes();o.nextPath();)for(;o.hasNextSegment();){const t=o.nextSegment(),m=t.getStartXY(),a=t.getEndXY();if(this.m_bIsPannablePcs&&(g(this.m_inputSR,0,[m],1),g(this.m_inputSR,0,[a],1)),s){for(let t=0;t<4;++t)e.push(m.clone());s=!1}m.x<e[0].x&&e[0].assign(m),m.y>e[1].y&&e[1].assign(m),m.x>e[2].x&&e[2].assign(m),m.y<e[3].y&&e[3].assign(m),a.x<e[0].x&&e[0].assign(a),a.y>e[1].y&&e[1].assign(a),a.x>e[2].x&&e[2].assign(a),a.y<e[3].y&&e[3].assign(a);const r=this.findOrComputeBoxPoint(o.getStartPointIndex(),m,a,i);n.mergeEnvelope2D(r)}for(let m=0;m<e.length;++m)e[m].mulThis(this.m_rpu);return n}findOrComputeBoxSegment(t,e,i){if(!i.has(t)){let s=H();if(e.queryEnvelope(s),this.m_bIsPannablePcs){const t=M.construct(s.xmin,s.ymin),e=M.construct(s.xmax,s.ymax);g(this.m_inputSR,0,[t],1),g(this.m_inputSR,0,[e],1),s=this.m_envHelper.calculateBbox(t.x,t.y,e.x,e.y)}return i.set(t,s),s}return i.get(t)}findOrComputeBoxPoint(t,e,i,s){if(!s.has(t)){let n=H();return n.setCoords({xmin:e.x,ymin:e.y,xmax:i.x,ymax:i.y}),this.m_bIsPannablePcs&&(n=this.m_envHelper.calculateBbox(n.xmin,n.ymin,n.xmax,n.ymax)),s.set(t,n),n}return s.get(t)}estimateMinimumDistance(i,s){const n={stack:[],error:void 0,hasError:!1};try{const e=t=>p(this.m_a,this.m_eSquared,t),o=this.m_boundaryPtsA.map(e),m=this.m_boundaryPtsB.map(e);let a=Number.MAX_VALUE,r=0,u=0;for(let t=0;t<o.length;++t)for(let e=0;e<m.length;++e){const i=T.distance(o[t],m[e]);i<a&&(a=i,r=t,u=e)}i.outPoint.assign(this.m_boundaryPtsA[r]),s.outPoint.assign(this.m_boundaryPtsB[u]);const h=t(n,new l,!1);return _.geodeticDistance(this.m_a,this.m_eSquared,this.m_boundaryPtsA[r].x,this.m_boundaryPtsA[r].y,this.m_boundaryPtsB[u].x,this.m_boundaryPtsB[u].y,h,null,null,this.m_distCurveType),h.val}catch(o){n.error=o,n.hasError=!0}finally{e(n)}}swapGeometries(t,e){return m(t[0])>m(e[0])&&(e[0]=E(t[0],t[0]=e[0]),this.m_envGeomB=E(this.m_envGeomA,this.m_envGeomA=this.m_envGeomB),!0)}canUseSpatialTree(t,e){return!1}checkGeometriesIntersect(t,e,i,n){let o=t.getGeometryType(),m=e.getGeometryType();if(this.m_envGeomA.isIntersecting(this.m_envGeomB)){if(o===s.enumPoint&&2===e.getDimension()){const s=[0],o=[t.getXY()];if(f(e,o,1,this.m_tolerance,s),0!==s[0])return i.outPoint.assign(o[0]),n.outPoint.assign(o[0]),!0}else if(m===s.enumPoint&&2===t.getDimension()){const s=[2],o=[e.getXY()];if(f(t,o,1,this.m_tolerance,s),0!==s[0])return i.outPoint.assign(o[0]),n.outPoint.assign(o[0]),!0}if(o===s.enumMultiPoint&&2===e.getDimension())return this.multipointIntersectsArea(t,e,i,n);if(m===s.enumMultiPoint&&2===t.getDimension())return this.multipointIntersectsArea(e,t,n,i);let r,u,h=t,c=e;if(o===s.enumEnvelope&&(r=this.envelopeToPolygon(t),h=r,o=s.enumPolygon),m===s.enumEnvelope&&(u=this.envelopeToPolygon(e),c=u,m=s.enumPolygon),a(o)&&a(m)){const t=h.querySegmentIterator(),e=c.querySegmentIterator(),s=N(),o=N();if(q(h,c,t,e,s,o))return i.outPoint.assign(s.outPoint),n.outPoint.assign(s.outPoint),!0}}return!1}multipointIntersectsArea(t,e,i,s){const n=t.getPointCount();for(let o=0;o<n;++o){const n=[2],m=t.getXY(o);if(f(e,[m],1,this.m_tolerance,n),0!==n[0])return i.outPoint.assign(m),s.outPoint.assign(m),!0}return!1}getNearestNeighbourVisitor(t,e,i,s,o,m,a){return n(0),{}}buildSpatialTree(t,e){n(0)}}export{Z as G,Q as a,j as m};
2
+ import{__addDisposableResource as t,__disposeResources as e}from"tslib";import{r as i,G as s,g as n,q as o,D as a,e as m}from"./Geometry.js";import{f as r,P as u}from"./MultiPathImpl.js";import{e as h,W as c,m as l,av as _,a1 as p,i as d,k as g,u as x,az as y,a8 as P,H as S,aN as f,B as D,ao as G,aw as v}from"./SpatialReference.js";import{h as T,r as b}from"./Envelope.js";import{Envelope2D as w}from"./Envelope2D.js";import{P as M,aG as E,ab as R,a as I,t as C}from"./Point2D.js";import{T as B}from"./Transformation2D.js";import{s as A,w as q,m as N}from"./Distance2DCalculator-CXhBP-8I.js";import{O as F}from"./OperatorShapePreservingDensify.js";import{O as X}from"./OperatorClip.js";function Y(){return new w}class k{[Symbol.dispose](){this.m_peR1.destroy(),this.m_peR2.destroy(),this.m_peR3.destroy(),this.m_peR1=null,this.m_peR2=null,this.m_peR3=null}constructor(t,e,i){this.m_peR1=new l,this.m_peR2=new l,this.m_peR3=new l,void 0!==t?this.reset(t,e,i):this.reset(1,0,1)}reset(t,e,i){this.m_a=t,this.m_e2=e,this.m_b=this.m_a*Math.sqrt(1-this.m_e2),this.m_unitToDegree=i,this.m_unitToRad=.017453292519943295*i,this.m_u180=180/this.m_unitToDegree,this.m_u360=360/this.m_unitToDegree}calculateBbox(t,e,i,s){const n=this.m_peR1,o=this.m_peR2,a=this.m_peR3;_.geodeticDistance(this.m_a,this.m_e2,t*this.m_unitToRad,e*this.m_unitToRad,i*this.m_unitToRad,s*this.m_unitToRad,a,n,o,0);const m=Math.cos(n.val),r=Math.cos(o.val+3.141592653589793),u=e*this.m_unitToRad,h=v.phiToEta(this.m_e2,u),c=Math.sin(n.val)*Math.cos(h);let l=e;if(m*r<0){const t=m<0?-1:1,e=Math.acos(Math.abs(c))*t;l=v.etaToPhi(this.m_e2,e)/this.m_unitToRad}let p=C((i-t)*this.m_unitToRad,2*Math.PI);Math.abs(p)>Math.PI&&(p=p>0?p-2*Math.PI:p+2*Math.PI),p/=this.m_unitToRad,i=t+p;const d=Y();return d.xmin=Math.min(t,i),d.xmax=Math.max(t,i),d.ymin=Math.min(e,s),d.ymin=Math.min(d.ymin,l),d.ymax=Math.max(e,s),d.ymax=Math.max(d.ymax,l),d}minDistanceGeodesic(t,e){const i=O(t),s=O(e);if(i&&s)return this.lowerDistanceGeodetic_(t.xmin,t.ymin,e.xmin,e.ymin);const n=this.normalizeGeodesic_(e,t);return U(t,n)?t.ymin>=n.ymax?this.minDistanceGeodesicUpDown_(t,n):n.ymin>=t.ymax?this.minDistanceGeodesicUpDown_(n,t):t.xmin>n.xmax?this.minDistanceGeodesicLeftRight_(n,t):this.minDistanceGeodesicLeftRight_(t,n):0}normalizeGeodesic_(t,e){const i=t.clone(),s=t.clone();let n=V(i,e);if(0===n)return i;for(;s.xmax>e.xmin;){s.xmin-=this.m_u360,s.xmax-=this.m_u360;const t=V(s,e);if(t<n&&(i.assign(s),n=t,0===n))return i}for(s.assign(t);s.xmin<e.xmax;){s.xmin+=this.m_u360,s.xmax+=this.m_u360;const t=V(s,e);if(t<n&&(i.assign(s),n=t,0===n))return i}return i}lowerDistanceGeodetic_(t,e,i,s){const n=this.m_peR1;{const o=this.m_b*this.m_b/this.m_a,a=v.phiToPhig(this.m_e2,this.m_unitToRad*e),m=v.phiToPhig(this.m_e2,this.m_unitToRad*s);_.geodeticDistance(o,0,this.m_unitToRad*t,a,this.m_unitToRad*i,m,n,null,null,0)}return n.val}minDistanceGeodesicUpDown_(t,e){if(e.xmin<=t.xmin?e.xmax>=t.xmin:t.xmax>=e.xmin)return this.lowerDistanceGeodetic_(0,t.ymin,0,e.ymax);if(e.xmin>t.xmax){const i=this.lowerDistanceGeodeticSegMeridional_(t.xmax,t.ymin,t.ymax,e.xmin,e.ymin,e.ymax);if(e.xmax-t.xmin<this.m_u180)return i;const s=this.lowerDistanceGeodeticSegMeridional_(t.xmin,t.ymin,t.ymax,e.xmax,e.ymin,e.ymax);return Math.min(i,s)}{const i=this.lowerDistanceGeodeticSegMeridional_(t.xmin,t.ymin,t.ymax,e.xmax,e.ymin,e.ymax);if(t.xmax-e.xmin<this.m_u180)return i;const s=this.lowerDistanceGeodeticSegMeridional_(t.xmax,t.ymin,t.ymax,e.xmin,e.ymin,e.ymax);return Math.min(i,s)}}minDistanceGeodesicLeftRight_(t,e){let i=Math.abs(t.xmax-e.xmin);for(;i>this.m_u180;)i-=this.m_u360;let s=Math.abs(t.xmin-e.xmax);for(;s>this.m_u180;)s-=this.m_u360;return Math.abs(i)<=Math.abs(s)?this.minDistanceGeodesicLeftRightNormalized_(t,e):this.minDistanceGeodesicLeftRightNormalized_(e,t)}minDistanceGeodesicLeftRightNormalized_(t,e){let i,s;return i=this.lowerDistanceGeodetic_(t.xmax,t.ymin,e.xmin,e.ymin),t.ymin>=e.ymin&&t.ymin<=e.ymax&&(s=this.lowerDistanceGeodeticPtMeridional_(t.xmax,t.ymin,e.xmin,e.ymin,e.ymax),i=Math.min(i,s)),e.ymin>=t.ymin&&e.ymin<=t.ymax&&(s=this.lowerDistanceGeodeticPtMeridional_(e.xmin,e.ymin,t.xmax,t.ymin,t.ymax),i=Math.min(i,s)),s=this.lowerDistanceGeodetic_(t.xmax,t.ymax,e.xmin,e.ymax),i=Math.min(i,s),t.ymax>=e.ymin&&t.ymax<=e.ymax&&(s=this.lowerDistanceGeodeticPtMeridional_(t.xmax,t.ymax,e.xmin,e.ymin,e.ymax),i=Math.min(i,s)),e.ymax>=t.ymin&&e.ymax<=t.ymax&&(s=this.lowerDistanceGeodeticPtMeridional_(e.xmin,e.ymax,t.xmax,t.ymin,t.ymax),i=Math.min(i,s)),i}lowerDistanceGeodeticSegMeridional_(t,e,i,s,n,o){let a=this.lowerDistanceGeodeticPtMeridional_(t,e,s,n,o);const m=this.lowerDistanceGeodeticPtMeridional_(t,i,s,n,o);let r=this.lowerDistanceGeodeticPtMeridional_(s,n,t,e,i);const u=this.lowerDistanceGeodeticPtMeridional_(s,o,t,e,i);return a=Math.min(a,m),r=Math.min(r,u),Math.min(a,r)}lowerDistanceGeodeticPtMeridional_(t,e,i,s,n){const o=this.m_b*this.m_b/this.m_a,a=v.phiToPhig(this.m_e2,this.m_unitToRad*e),m=v.phiToPhig(this.m_e2,this.m_unitToRad*s),r=v.phiToPhig(this.m_e2,this.m_unitToRad*n),u=this.m_peR1,h=this.m_peR2;_.geodeticDistance(o,0,this.m_unitToRad*i,m,this.m_unitToRad*t,a,u,null,null,0),_.geodeticDistance(o,0,this.m_unitToRad*i,r,this.m_unitToRad*t,a,h,null,null,0);const c=p(1,0,new M(this.m_unitToRad*t,a)),l=p(1,0,new M(this.m_unitToRad*i,m)),d=p(1,0,new M(this.m_unitToRad*i,r));let g=new T;g.setCrossProductVector(l,d);const x=l.dotProduct(d);if(g.length()<1.568e-10)return x>=0?Math.min(u.val,h.val):0;g=g.getUnitVector();let y=new T;if(y.setCrossProductVector(g,c),y.length()<1.568e-10){return Math.min(u.val,h.val)-1e-5*o}y=y.getUnitVector();let P=c.sub(g.mul(c.dotProduct(g)));{const e=new T;e.setCrossProductVector(l,P);const i=new T;i.setCrossProductVector(P,d);let s=g.dotProduct(e)>0&&g.dotProduct(i)>0;if(s||(P.negateThis(),e.setCrossProductVector(l,P),i.setCrossProductVector(P,d),s=g.dotProduct(e)>0&&g.dotProduct(i)>0),s){P=P.getUnitVector();const e=D(1,0,P),i=this.m_peR3;_.geodeticDistance(o,0,this.m_unitToRad*t,a,e.x,e.y,i,null,null,0);const s=Math.min(u.val,h.val);return Math.min(s,i.val)}}return Math.min(u.val,h.val)}}function O(t){return t.xmin===t.xmax&&t.ymin===t.ymax}function U(t,e){return e.xmax<t.xmin||e.xmin>t.xmax||e.ymax<t.ymin||e.ymin>t.ymax}function V(t,e){let i,s=0;return i=t.xmin-e.xmax,i>s&&(s=i),i=e.xmin-t.xmax,i>s&&(s=i),s}class L{}function j(t){return{outPoint:void 0===t?new M:t.clone()}}function z(t,e){t.outPoint.assign(e.outPoint)}function H(){return new w}class W{constructor(t,e,i,s,n=0,o=4){this.m_ptDistFrom=new M,this.m_segStartPt=new M,this.m_segEndPt=new M,this.m_geodeticLength=new l,this.m_az12=new l,this.m_minGeodeticDist=new l,this.m_segStartPt3d=new T,this.m_segEndPt3d=new T,this.m_sr=s,this.m_distCurveType=n,this.m_segCurveType=o,this.m_inputGCS=this.m_sr.getGCS(),this.m_rpu=this.m_inputGCS.getUnit().getUnitToBaseFactor(),this.m_bIsPannablePcs=2===this.m_sr.getCoordinateSystemType()&&this.m_sr.isPannable();const a=G();this.m_inputGCS.querySpheroidData(a),this.m_a=a.majorSemiAxis,this.m_eSquared=a.e2,this.setPointDistFrom(t),this.setSegmentEndPoints(e,i)}setSegmentEndPoints(t,e){this.m_segStartPt.assign(t),this.m_segEndPt.assign(e),this.m_bIsPannablePcs||(this.m_segStartPt.mulThis(this.m_rpu),this.m_segEndPt.mulThis(this.m_rpu)),2===this.m_segCurveType&&(this.m_segStartPt3d.assign(p(this.m_a,this.m_eSquared,this.m_segStartPt)),this.m_segEndPt3d.assign(p(this.m_a,this.m_eSquared,this.m_segEndPt))),this.calculateAndUpdateSegmentLength()}setPointDistFrom(t){this.m_ptDistFrom.assign(t),this.m_ptDistFrom.scale(this.m_rpu)}setSegmentCurveType(t){this.m_segCurveType=t}setDistanceCurveType(t){this.m_distCurveType=t}makeFunctor(){return i=>{let s;switch(this.m_segCurveType){case 0:case 1:case 3:{const o={stack:[],error:void 0,hasError:!1};try{const e=t(o,new l,!1),n=t(o,new l,!1);_.geodeticCoordinate(this.m_a,this.m_eSquared,this.m_segStartPt.x,this.m_segStartPt.y,this.m_geodeticLength.val*i,this.m_az12.val,e,n,this.m_segCurveType),s=new M(e.val,n.val);break}catch(n){o.error=n,o.hasError=!0}finally{e(o)}}case 2:{const t=T.lerp(this.m_segStartPt3d,this.m_segEndPt3d,i);s=D(this.m_a,this.m_eSquared,t);break}case 4:s=M.lerp(this.m_segStartPt,this.m_segEndPt,i),this.m_bIsPannablePcs&&(g(this.m_sr,0,[s],1),s.mulThis(this.m_rpu));break;default:o("Invalid curve type")}return _.geodeticDistance(this.m_a,this.m_eSquared,this.m_ptDistFrom.x,this.m_ptDistFrom.y,s.x,s.y,this.m_minGeodeticDist,null,null,this.m_distCurveType),this.m_minGeodeticDist.val}}calculateAndUpdateSegmentLength(){switch(this.m_segCurveType){case 0:case 2:case 1:case 3:_.geodeticDistance(this.m_a,this.m_eSquared,this.m_segStartPt.x,this.m_segStartPt.y,this.m_segEndPt.x,this.m_segEndPt.y,this.m_geodeticLength,this.m_az12,null,this.m_segCurveType);break;case 4:this.m_geodeticLength.val=M.distance(this.m_segStartPt,this.m_segEndPt);break;default:o("Invalid curve type")}}[Symbol.dispose](){this.m_geodeticLength[Symbol.dispose](),this.m_az12[Symbol.dispose](),this.m_minGeodeticDist[Symbol.dispose]()}}function J(){return new L}class K{[Symbol.dispose](){this.m_envHelper[Symbol.dispose]()}constructor(t,e,i,s,n){this.m_boxGeomA=H(),this.m_boxGeomB=H(),this.m_envGeomA=new w,this.m_envGeomB=new w,this.m_progressCounter=0,this.m_transformPCS2GCS=null,this.m_segmentBoxesA=new Map,this.m_segmentBoxesB=new Map,this.m_boundaryPtsA=[],this.m_boundaryPtsB=[],this.m_scaleToRadians=new B,this.m_scaleToDegrees=new B,this.m_inputSR=t,this.m_distCurveType=e,this.m_progressTracker=i,this.m_maxDistance=s,this.m_maxDeviation=n,this.m_inputGCS=t.getGCS(),this.m_peGeogcs=this.m_inputGCS.getPECoordSys(),this.m_tolerance=0;const o=G();this.m_inputGCS.querySpheroidData(o),this.m_a=o.majorSemiAxis,this.m_eSquared=o.e2,this.m_rpu=this.m_inputGCS.getUnit().getUnitToBaseFactor(),this.m_envHelper=new k(this.m_a,this.m_eSquared,1),4===this.m_distCurveType&&(this.m_distCurveType=0),this.m_boxGeomA.setEmpty(),this.m_boxGeomB.setEmpty(),this.m_envGeomA.setEmpty(),this.m_envGeomB.setEmpty(),this.m_bIsPannablePcs=2===this.m_inputSR.getCoordinateSystemType()&&this.m_inputSR.isPannable()}progress(t=!1){}calculate(t,e,i,s){const n=j(),o=j();if(t.queryEnvelope(this.m_envGeomA),e.queryEnvelope(this.m_envGeomB),this.checkGeometriesIntersect(t,e,n,o))return i&&z(i,n),s&&z(s,o),0;const a=this.prepareGeometry(t);if(a.isEmpty())return Number.NaN;const m=this.prepareGeometry(e);if(m.isEmpty())return Number.NaN;this.m_tolerance=this.computeTolerance(a,m);const r=this._ExecuteBruteForce(a,m,n,o);return r>=this.m_maxDistance?Number.NaN:(i&&(this.prepareOutput(n),z(i,n)),s&&(this.prepareOutput(o),z(s,o)),r)}createDistanceFunctor(t,e,i){const s=new W(t,e,i,this.m_inputSR,this.m_distCurveType);return this.m_bIsPannablePcs||1===this.m_inputSR.getCoordinateSystemType()||s.setSegmentCurveType(2),s}_NormalizeAndProject(t){if(this.m_inputSR.isPannable()&&(t=(new h).foldInto360Range(t,this.m_inputSR)),2===this.m_inputSR.getCoordinateSystemType()){const e=c(this.m_inputSR,this.m_inputGCS,null);t=(new h).execute(t,e,this.m_progressTracker)}return t}_ExecuteBruteForce(t,e,n,o){switch(t.getGeometryType()){case s.enumPoint:return this.calculateDistanceGeodeticPointGeometry(t,e,n,o);case s.enumMultiPoint:return this.calculateDistanceGeodeticMultipointGeometry(t,e,n,o);case s.enumPolyline:case s.enumPolygon:case s.enumEnvelope:return this.calculateDistanceGeodeticMultipathGeometry(t,e,n,o);default:i("")}}calculateDistanceGeodeticPointGeometry(t,e,n,o){switch(e.getGeometryType()){case s.enumPoint:return this.calculateDistanceGeodeticPointPoint(t,e,n,o);case s.enumMultiPoint:return this.calculateDistanceGeodeticPointMultipoint(t,e,n,o);case s.enumPolyline:case s.enumPolygon:return this.calculateDistanceGeodeticPointMultipath(t,e,n,o);default:i("")}}calculateDistanceGeodeticPointPoint(i,s,n,o){const a={stack:[],error:void 0,hasError:!1};try{const e=i.getXY();e.scale(this.m_rpu);const m=s.getXY();m.scale(this.m_rpu),n.outPoint.assign(e),o.outPoint.assign(m);const r=t(a,new l,!1);return _.geodeticDistance(this.m_a,this.m_eSquared,e.x,e.y,m.x,m.y,r,null,null,this.m_distCurveType),r.val}catch(m){a.error=m,a.hasError=!0}finally{e(a)}}calculateDistanceGeodeticPointMultipoint(i,s,n,o){const a={stack:[],error:void 0,hasError:!1};try{this.computeEnvelopesAndBoxes(i,s);const e=this.estimateMinimumDistance(n,o);let m=e<this.m_maxDistance?e:this.m_maxDistance;const r=i.getXY();r.scale(this.m_rpu),n.outPoint.assign(r);const u=p(this.m_a,this.m_eSquared,r),h=new M,c=s.getImpl(),d=t(a,new l,!1),g=c.getPointCount();for(let t=0;t<g;++t){c.queryXY(t,h),h.scale(this.m_rpu);const e=p(this.m_a,this.m_eSquared,h);if(!(T.distance(u,e)>m)&&(!(this.m_envHelper.minDistanceGeodesic(this.m_boxGeomA,this.m_boxGeomB)>m)&&(_.geodeticDistance(this.m_a,this.m_eSquared,r.x,r.y,h.x,h.y,d,null,null,this.m_distCurveType),d.val<m&&(m=d.val,o.outPoint=h,0===m))))return m}return m===this.m_maxDistance?Number.POSITIVE_INFINITY:m}catch(m){a.error=m,a.hasError=!0}finally{e(a)}}calculateDistanceGeodeticPointMultipath(i,s,o,a){const m={stack:[],error:void 0,hasError:!1};try{const e=new M,r=new M;e.assign(i.getXY()),r.assign(i.getXY()),o.outPoint.assign(r.mul(this.m_rpu)),this.m_bIsPannablePcs&&d(this.m_inputSR,[e],1,!1),this.computeEnvelopesAndBoxes(i,s);const u=this.estimateMinimumDistance(o,a);let h=u<this.m_maxDistance?u:this.m_maxDistance;const c=s.getImpl(),l=new M(0,0),_=new M(0,0),p=[1],g=this.canUseSpatialTree(i,s),x=J();g&&this.buildSpatialTree(x,s);const y=H();y.setCoords({xmin:r.x,ymin:r.y,xmax:r.x,ymax:r.y});const P=t(m,this.createDistanceFunctor(r,l,_),!1),S=c.querySegmentIterator();if(S.stripAttributes(),g)n(0);else for(;S.nextPath();)for(;S.hasNextSegment();){const t=S.nextSegment(),i=this.findOrComputeBoxSegment(S.getStartPointIndex(),t,this.m_segmentBoxesB);if(this.m_envHelper.minDistanceGeodesic(y,i)>h)continue;const s=this.calculateDistanceGeodeticPointSegment(e,r,t,p,P);if(s.second<h&&(this.updateOutputSegment(a,t,s.first),h=s.second,0===h))return 0}return h===this.m_maxDistance?Number.POSITIVE_INFINITY:h}catch(r){m.error=r,m.hasError=!0}finally{e(m)}}calculateDistanceGeodeticMultipointGeometry(t,e,n,o){switch(e.getGeometryType()){case s.enumPoint:return this.calculateDistanceGeodeticPointMultipoint(e,t,o,n);case s.enumMultiPoint:return this.calculateDistanceGeodeticMultipointMultipoint(t,e,n,o);case s.enumPolyline:case s.enumPolygon:case s.enumEnvelope:return this.calculateDistanceGeodeticMultipointMultipath(t,e,n,o);default:i("")}}calculateDistanceGeodeticMultipointMultipoint(i,s,n,o){const a={stack:[],error:void 0,hasError:!1};try{const e=t(a,new l,!1);this.computeEnvelopesAndBoxes(i,s);const m=this.estimateMinimumDistance(n,o);let r=m<this.m_maxDistance?m:this.m_maxDistance;const u=new M,h=new M,c=i.getImpl(),d=s.getImpl(),g=H(),x=c.getPointCount(),y=d.getPointCount();for(let t=0;t<x;++t){if(u.assign(c.getXY(t)),g.setCoords({xmin:u.x,ymin:u.y,xmax:u.x,ymax:u.y}),this.m_envHelper.minDistanceGeodesic(g,this.m_boxGeomB)>r)continue;u.scale(this.m_rpu);const i=p(this.m_a,this.m_eSquared,u);for(let t=0;t<y;++t){h.assign(d.getXY(t)),h.scale(this.m_rpu);const s=p(this.m_a,this.m_eSquared,h);if(!(T.distance(i,s)>=r)&&(_.geodeticDistance(this.m_a,this.m_eSquared,u.x,u.y,h.x,h.y,e,null,null,this.m_distCurveType),e.val<r&&(n.outPoint.assign(u),o.outPoint.assign(h),r=e.val,0===r)))return r}}return r===this.m_maxDistance?Number.POSITIVE_INFINITY:r}catch(m){a.error=m,a.hasError=!0}finally{e(a)}}calculateDistanceGeodeticMultipointMultipath(i,s,o,a){const m={stack:[],error:void 0,hasError:!1};try{const e=s.getImpl().querySegmentIterator();e.stripAttributes(),this.computeEnvelopesAndBoxes(i,s);const r=this.estimateMinimumDistance(o,a);let u=r<this.m_maxDistance?r:this.m_maxDistance;const h=new M,c=new M(0,0),l=new M(0,0),_=new M(0,0),p=[0],g=H(),x=t(m,this.createDistanceFunctor(c,l,_),!1),y=J(),P=this.canUseSpatialTree(i,s);P&&this.buildSpatialTree(y,s);const S=i.getPointCount();for(let t=0;t<S;++t)if(h.assign(i.getXY(t)),c.assign(i.getXY(t)),this.m_bIsPannablePcs&&d(this.m_inputSR,[h],1,!1),g.setCoords({xmin:c.x,ymin:c.y,xmax:c.x,ymax:c.y}),!(this.m_envHelper.minDistanceGeodesic(g,this.m_boxGeomB)>u))if(x.setPointDistFrom(c),P)n(0);else{for(;e.nextPath();)for(;e.hasNextSegment();){const t=e.nextSegment();if(this.m_envHelper.minDistanceGeodesic(g,this.findOrComputeBoxSegment(e.getStartPointIndex(),t,this.m_segmentBoxesB))>u)continue;const i=this.calculateDistanceGeodeticPointSegment(h,c,t,p,x);if(i.second<u&&(o.outPoint.assign(c.mul(this.m_rpu)),this.updateOutputSegment(a,t,i.first),u=i.second,0===u))return 0}e.resetToFirstPath()}return u===this.m_maxDistance?Number.POSITIVE_INFINITY:u}catch(r){m.error=r,m.hasError=!0}finally{e(m)}}calculateDistanceGeodeticMultipathGeometry(t,e,n,o){switch(e.getGeometryType()){case s.enumPoint:return this.calculateDistanceGeodeticPointMultipath(e,t,o,n);case s.enumMultiPoint:return this.calculateDistanceGeodeticMultipointMultipath(e,t,o,n);case s.enumPolyline:case s.enumPolygon:case s.enumEnvelope:return this.calculateDistanceGeodeticMultipathMultipath(t,e,n,o);default:i("")}}calculateDistanceGeodeticMultipathMultipath(t,e,i,s){const n=[t],o=[e],a=this.swapGeometries(n,o),m=n[0],r=o[0];this.computeEnvelopesAndBoxes(n[0],o[0]);const u=this.estimateMinimumDistance(i,s),h=this.calculateDistanceGeodeticMultipathMultipath_(m,r,i,s,u);return a&&(s.outPoint=E(i.outPoint,i.outPoint=s.outPoint)),h}calculateDistanceGeodeticMultipathMultipath_(i,s,o,a,m=Number.MAX_VALUE){const u={stack:[],error:void 0,hasError:!1};try{let e=m;const h=new M(0,0),c=new M,l=new M(0,0),_=new M,p=new M(0,0),d=new M,y=new M,P=new M,S=[new M],f=[0],D=[0],G=H(),v=H(),T=t(u,this.createDistanceFunctor(p,h,l),!1),b=J(),w=this.canUseSpatialTree(i,s);w&&this.buildSpatialTree(b,s);const E=s.querySegmentIterator();E.stripAttributes();const R=new r,I=A(i);for(let t=0;t<I.length;++t){const s=I[t];i.getSegmentBuffer(s,R,!0);const m=R.get();if(G.assign(this.findOrComputeBoxSegment(s,m,this.m_segmentBoxesA)),w)n(0);else{if(p.assign(m.getStartXY()),d.assign(m.getStartXY()),y.assign(m.getEndXY()),P.assign(m.getEndXY()),this.m_bIsPannablePcs&&(g(this.m_inputSR,0,[d],1),g(this.m_inputSR,0,[P],1)),this.m_envHelper.minDistanceGeodesic(G,this.m_boxGeomB)>e)continue;for(;E.nextPath();){for(;E.hasNextSegment();){const t=E.nextSegment();if(h.assign(t.getStartXY()),c.assign(t.getStartXY()),l.assign(t.getEndXY()),_.assign(t.getEndXY()),m.intersect(t,S,f,D,this.m_tolerance))return this.updateOutputSegment(o,m,f[0]),this.updateOutputSegment(a,t,D[0]),0;if(this.m_bIsPannablePcs&&(g(this.m_inputSR,0,[c],1),g(this.m_inputSR,0,[_],1)),v.assign(this.findOrComputeBoxPoint(E.getStartPointIndex(),c,_,this.m_segmentBoxesB)),this.m_envHelper.minDistanceGeodesic(G,v)>e)continue;T.setSegmentEndPoints(h,l),T.setPointDistFrom(d);let i=x(T.makeFunctor(),0,1,1e-10);if(i.second<e&&(o.outPoint.assign(d.mul(this.m_rpu)),this.updateOutputSegment(a,t,i.first),e=i.second,0===e))break;if(T.setPointDistFrom(P),i=x(T.makeFunctor(),0,1,1e-10),i.second<e&&(o.outPoint.assign(P.mul(this.m_rpu)),this.updateOutputSegment(a,t,i.first),e=i.second,0===e))break;if(T.setSegmentEndPoints(p,y),T.setPointDistFrom(c),i=x(T.makeFunctor(),0,1,1e-10),i.second<e&&(this.updateOutputSegment(o,m,i.first),a.outPoint.assign(c.mul(this.m_rpu)),e=i.second,0===e))break;if(T.setPointDistFrom(_),i=x(T.makeFunctor(),0,1,1e-10),i.second<e&&(this.updateOutputSegment(o,m,i.first),a.outPoint.assign(_.mul(this.m_rpu)),e=i.second,0===e))break}if(0===e)return 0}E.resetToFirstPath()}}return e===this.m_maxDistance?Number.POSITIVE_INFINITY:e}catch(h){u.error=h,u.hasError=!0}finally{e(u)}}calculateDistanceGeodeticPointSegment(t,e,i,s,n){const o=i.getStartXY(),a=i.getEndXY();return i.intersectPoint(t,s,this.m_tolerance)?R(s[0],0):(n.setPointDistFrom(e),n.setSegmentEndPoints(o,a),x(n.makeFunctor(),0,1,1e-10))}prepareGeometry(t){let e=t.clone();const i=t.getGeometryType();if(i===s.enumPoint||i===s.enumMultiPoint)return this._NormalizeAndProject(e);if(i===s.enumEnvelope&&(e=this.envelopeToPolygon(e)),this.m_inputSR.isPannable())return this.prepareGeometryPannable(e,4);if(2===this.m_inputSR.getCoordinateSystemType()){if(e=y(e,this.m_inputSR,0,null),e.isEmpty())return e;e=(new F).execute(e,this.m_inputSR,5e4,this.m_maxDeviation/2,0,null);const t=this.m_inputSR.getSRToGCSTransform();return(new h).execute(e,t,this.m_progressTracker)}const n=new w;e.queryLooseEnvelope(n);const o=this.m_inputSR.getPannableExtent();if(n.ymin<o.ymin||n.ymax>o.ymax){const t=new w(n.xmin-1,o.ymin,n.xmax+1,o.ymax);if(e=(new X).execute(e,t,this.m_inputSR,this.m_progressTracker),e.isEmpty())return e}return n.width()>2*o.width()?(e=P(e,-2*o.width(),2*o.width(),this.m_inputSR,!0,0,!0,this.m_progressTracker),e):e}prepareGeometryPannable(t,e){const i=new w;t.queryEnvelope(i);const s=this.m_inputSR.getPannableExtent();if(s.containsEnvelope(i))return t;const n=new I;s.queryIntervalX(n);const o=new I;return i.queryIntervalX(o),t=n.contains(o)?S(t,this.m_inputSR):(new h).foldInto360RangeGeodetic(t,this.m_inputSR,e)}prepareOutput(t){t.outPoint.scale(1/this.m_rpu),2===this.m_inputSR.getCoordinateSystemType()&&d(this.m_inputSR,[t.outPoint],1,!1)}updateOutputSegment(t,e,i){e.queryCoord2D(i,t.outPoint),this.m_bIsPannablePcs&&g(this.m_inputSR,0,[t.outPoint],1),t.outPoint.mulThis(this.m_rpu)}computeTolerance(t,e){t.queryEnvelope(this.m_envGeomA),e.queryEnvelope(this.m_envGeomB);const i=new w(this.m_envGeomA);return i.mergeEnvelope2D(this.m_envGeomB),b(null,i)}envelopeToPolygon(t){const e=new u;return e.addEnvelope(t,!1),e}computeEnvelopesAndBoxes(t,e){t.queryEnvelope(this.m_envGeomA),e.queryEnvelope(this.m_envGeomB),this.m_boxGeomA=this.computeBoxGeometry(t,this.m_boundaryPtsA,this.m_segmentBoxesA),this.m_boxGeomB=this.computeBoxGeometry(e,this.m_boundaryPtsB,this.m_segmentBoxesB)}computeBoxGeometry(t,e,i){switch(t.getGeometryType()){case s.enumPoint:return this.computeBoxPoint(t,e);case s.enumMultiPoint:return this.computeBoxMultiPoint(t,e);case s.enumPolyline:case s.enumPolygon:return this.computeBoxMultiPath(t,e,i);default:o("Invalid geometry type")}}computeBoxPoint(t,e){const i=t.getXY();e.length=0,e.push(i.mul(this.m_rpu));const s=H();return s.setCoords({xmin:i.x,ymin:i.y,xmax:i.x,ymax:i.y}),s}computeBoxMultiPoint(t,e){let i=!0;for(let n=0;n<t.getPointCount();++n){const s=t.getXY(n);if(i){e.length=0;for(let t=0;t<4;++t)e.push(s.clone());i=!1}s.x<e[0].x&&e[0].assign(s),s.y>e[1].y&&e[1].assign(s),s.x>e[2].x&&e[2].assign(s),s.y<e[3].y&&e[3].assign(s)}for(let n=0;n<e.length;++n)e[n].mulThis(this.m_rpu);const s=H();return t.queryEnvelope(s),s}computeBoxMultiPath(t,e,i){let s=!0;const n=H();n.setEmpty();const o=t.querySegmentIterator();for(o.stripAttributes();o.nextPath();)for(;o.hasNextSegment();){const t=o.nextSegment(),a=t.getStartXY(),m=t.getEndXY();if(this.m_bIsPannablePcs&&(g(this.m_inputSR,0,[a],1),g(this.m_inputSR,0,[m],1)),s){for(let t=0;t<4;++t)e.push(a.clone());s=!1}a.x<e[0].x&&e[0].assign(a),a.y>e[1].y&&e[1].assign(a),a.x>e[2].x&&e[2].assign(a),a.y<e[3].y&&e[3].assign(a),m.x<e[0].x&&e[0].assign(m),m.y>e[1].y&&e[1].assign(m),m.x>e[2].x&&e[2].assign(m),m.y<e[3].y&&e[3].assign(m);const r=this.findOrComputeBoxPoint(o.getStartPointIndex(),a,m,i);n.mergeEnvelope2D(r)}for(let a=0;a<e.length;++a)e[a].mulThis(this.m_rpu);return n}findOrComputeBoxSegment(t,e,i){if(!i.has(t)){let s=H();if(e.queryEnvelope(s),this.m_bIsPannablePcs){const t=M.construct(s.xmin,s.ymin),e=M.construct(s.xmax,s.ymax);g(this.m_inputSR,0,[t],1),g(this.m_inputSR,0,[e],1),s=this.m_envHelper.calculateBbox(t.x,t.y,e.x,e.y)}return i.set(t,s),s}return i.get(t)}findOrComputeBoxPoint(t,e,i,s){if(!s.has(t)){let n=H();return n.setCoords({xmin:e.x,ymin:e.y,xmax:i.x,ymax:i.y}),this.m_bIsPannablePcs&&(n=this.m_envHelper.calculateBbox(n.xmin,n.ymin,n.xmax,n.ymax)),s.set(t,n),n}return s.get(t)}estimateMinimumDistance(i,s){const n={stack:[],error:void 0,hasError:!1};try{const e=t=>p(this.m_a,this.m_eSquared,t),o=this.m_boundaryPtsA.map(e),a=this.m_boundaryPtsB.map(e);let m=Number.MAX_VALUE,r=0,u=0;for(let t=0;t<o.length;++t)for(let e=0;e<a.length;++e){const i=T.distance(o[t],a[e]);i<m&&(m=i,r=t,u=e)}i.outPoint.assign(this.m_boundaryPtsA[r]),s.outPoint.assign(this.m_boundaryPtsB[u]);const h=t(n,new l,!1);return _.geodeticDistance(this.m_a,this.m_eSquared,this.m_boundaryPtsA[r].x,this.m_boundaryPtsA[r].y,this.m_boundaryPtsB[u].x,this.m_boundaryPtsB[u].y,h,null,null,this.m_distCurveType),h.val}catch(o){n.error=o,n.hasError=!0}finally{e(n)}}swapGeometries(t,e){return a(t[0])>a(e[0])&&(e[0]=E(t[0],t[0]=e[0]),this.m_envGeomB=E(this.m_envGeomA,this.m_envGeomA=this.m_envGeomB),!0)}canUseSpatialTree(t,e){return!1}checkGeometriesIntersect(t,e,i,n){let o=t.getGeometryType(),a=e.getGeometryType();if(this.m_envGeomA.isIntersecting(this.m_envGeomB)){if(o===s.enumPoint&&2===e.getDimension()){const s=[0],o=[t.getXY()];if(f(e,o,1,this.m_tolerance,s),0!==s[0])return i.outPoint.assign(o[0]),n.outPoint.assign(o[0]),!0}else if(a===s.enumPoint&&2===t.getDimension()){const s=[2],o=[e.getXY()];if(f(t,o,1,this.m_tolerance,s),0!==s[0])return i.outPoint.assign(o[0]),n.outPoint.assign(o[0]),!0}if(o===s.enumMultiPoint&&2===e.getDimension())return this.multipointIntersectsArea(t,e,i,n);if(a===s.enumMultiPoint&&2===t.getDimension())return this.multipointIntersectsArea(e,t,n,i);let r,u,h=t,c=e;if(o===s.enumEnvelope&&(r=this.envelopeToPolygon(t),h=r,o=s.enumPolygon),a===s.enumEnvelope&&(u=this.envelopeToPolygon(e),c=u,a=s.enumPolygon),m(o)&&m(a)){const t=h.querySegmentIterator(),e=c.querySegmentIterator(),s=N(),o=N();if(q(h,c,t,e,s,o))return i.outPoint.assign(s.outPoint),n.outPoint.assign(s.outPoint),!0}}return!1}multipointIntersectsArea(t,e,i,s){const n=t.getPointCount();for(let o=0;o<n;++o){const n=[2],a=t.getXY(o);if(f(e,[a],1,this.m_tolerance,n),0!==n[0])return i.outPoint.assign(a),s.outPoint.assign(a),!0}return!1}getNearestNeighbourVisitor(t,e,i,s,o,a,m){return n(0),{}}buildSpatialTree(t,e){n(0)}}export{K as G,W as a,j as m};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__addDisposableResource as r,__disposeResources as e}from"tslib";import{t}from"./Geometry.js";import{m as s,P as a}from"./Point2D.js";import"./MultiPathImpl.js";import{ap as o,_ as n,M as i,O as l,N as c,ak as m}from"./SpatialReference.js";import"./Envelope.js";function f(m,f,g,u,p,N){const S={stack:[],error:void 0,hasError:!1};try{4===u&&t("");const e=m,h=o(e),y=n();h.querySpheroidData(y);const v=y.e2,T=y.majorSemiAxis,d=h.getUnit().getUnitToBaseFactor(),j=r(S,new i,!1),x=r(S,new i,!1),w=r(S,new i,!1);if(f.isNAN()||g.isNAN())return Number.NaN;const A=s(a,2);A[0].assign(f),A[1].assign(g);const C=s(a,2),E=e.getGCS()!==e?e.getSRToGCSTransform():null;if(E){if(2!==(new l).transform(E,A,2,C))return Number.NaN}else C[0].assign(A[0]),C[1].assign(A[1]);return C[0].scale(d),C[1].scale(d),c.geodeticDistance(T,v,C[0].x,C[0].y,C[1].x,C[1].y,j,x,w,u),p[0]=x.val,N[0]=w.val,j.val}catch(h){S.error=h,S.hasError=!0}finally{e(S)}}function g(l,f,g,u,p,N){const S={stack:[],error:void 0,hasError:!1};try{4===N&&t("");const e=l,h=o(e),y=n();h.querySpheroidData(y);const v=y.e2,T=y.majorSemiAxis,d=h.getUnit().getUnitToBaseFactor(),j=r(S,new i,!1),x=r(S,new i,!1),w=e.getSRToGCSTransform(),A=e.getGCSToSRTransform(),C=s(a,100),E=s(a,100);let G=0;for(let r=0,t=0;r<g;){let e=g-r;e>C.length&&(e=C.length);for(let t=0;t<e;t++)C[t].assign(f[r+t]);if(m(w,C,e,E,null)>0){for(let r=0;r<e;r++){const e=E[r].clone();e.isNAN()?C[r].assign(e):(e.scale(d),c.geodeticCoordinate(T,v,e.x,e.y,u,p,j,x,N),e.x=j.val,e.y=x.val,e.scale(1/d),C[r].assign(e))}G+=m(A,C,e,E,null)}for(let r=0;r<e;r++)f[t+r].assign(E[r]);r+=e,t+=e}return G}catch(h){S.error=h,S.hasError=!0}finally{e(S)}}export{f as calculateDistanceAndAzimuth,g as movePointsByDistance};
2
+ import{__addDisposableResource as r,__disposeResources as e}from"tslib";import{A as a}from"./Geometry.js";import{aa as s,P as t}from"./Point2D.js";import"./MultiPathImpl.js";import{ab as o,ao as n,m as i,e as l,av as c,aO as m}from"./SpatialReference.js";import"./Envelope.js";function f(m,f,g,u,p,N){const S={stack:[],error:void 0,hasError:!1};try{4===u&&a("");const e=m,h=o(e),y=n();h.querySpheroidData(y);const v=y.e2,T=y.majorSemiAxis,d=h.getUnit().getUnitToBaseFactor(),j=r(S,new i,!1),x=r(S,new i,!1),w=r(S,new i,!1);if(f.isNAN()||g.isNAN())return Number.NaN;const A=s(t,2);A[0].assign(f),A[1].assign(g);const C=s(t,2),E=e.getGCS()!==e?e.getSRToGCSTransform():null;if(E){if(2!==(new l).transform(E,A,2,C))return Number.NaN}else C[0].assign(A[0]),C[1].assign(A[1]);return C[0].scale(d),C[1].scale(d),c.geodeticDistance(T,v,C[0].x,C[0].y,C[1].x,C[1].y,j,x,w,u),p[0]=x.val,N[0]=w.val,j.val}catch(h){S.error=h,S.hasError=!0}finally{e(S)}}function g(l,f,g,u,p,N){const S={stack:[],error:void 0,hasError:!1};try{4===N&&a("");const e=l,h=o(e),y=n();h.querySpheroidData(y);const v=y.e2,T=y.majorSemiAxis,d=h.getUnit().getUnitToBaseFactor(),j=r(S,new i,!1),x=r(S,new i,!1),w=e.getSRToGCSTransform(),A=e.getGCSToSRTransform(),C=s(t,100),E=s(t,100);let G=0;for(let r=0,a=0;r<g;){let e=g-r;e>C.length&&(e=C.length);for(let a=0;a<e;a++)C[a].assign(f[r+a]);if(m(w,C,e,E,null)>0){for(let r=0;r<e;r++){const e=E[r].clone();e.isNAN()?C[r].assign(e):(e.scale(d),c.geodeticCoordinate(T,v,e.x,e.y,u,p,j,x,N),e.x=j.val,e.y=x.val,e.scale(1/d),C[r].assign(e))}G+=m(A,C,e,E,null)}for(let r=0;r<e;r++)f[a+r].assign(E[r]);r+=e,a+=e}return G}catch(h){S.error=h,S.hasError=!0}finally{e(S)}}export{f as calculateDistanceAndAzimuth,g as movePointsByDistance};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- function e(e){switch(e){case 1:return"Unknown error";case 2:return"Corrupted geometry";case 3:return"Empty geometry";case 4:return"Math singularity";case 5:return"Buffer is too small";case 6:return"Invalid shape type";case 7:return"Projection out of supported range";case 8:return"Non simple geometry";case 9:return"Cannot calculate geodesic";case 10:return"Notation conversion";case 11:return"Missing grid file";case 12:return"Invalid call";case 13:return"Internal error";case 14:return"Not implemented";case 15:return"IO error";case 16:return"Invalid 3D";case 17:return"An ambiguous geography edge with antipodal points";case 18:return"Geocentric coordinates require ellipsoidal height";case 19:return"Geography cannot be projected into a gnomonic plane or a result of an operation cannot fit into a gnomonic plane";case 20:return"Geometry is too large to be exported in to a given format";case 22:return"Operation is canceled by the user";case 21:return"The operation, such as projection or geodetic computation, cannot be performed without pe-wasm loaded";default:return"unknown error"}}function n(e,n){try{if(!e)throw new Error(n)}catch(t){throw t}}class t extends Error{constructor(e,n){super(n),this.m_AdditionalMessage=n,this.m_ErrorType=e,this.name="GeometryError"}what(){return e(this.m_ErrorType)}additionalMessage(){return this.m_AdditionalMessage?this.m_AdditionalMessage:""}code(){return this.m_ErrorType}}class r extends t{constructor(e){super(2,e),this.name="CorruptedGeometryError"}}class o extends t{constructor(e){super(3,e),this.name="EmptyGeometryError"}}class i extends t{constructor(e){super(4,e),this.name="MathSingularityError"}}class u extends t{constructor(e){super(21,e),this.name="ProjectionEngineNotLoadedError"}}class s extends t{constructor(e){super(8,e),this.name="NonSimpleGeometryError"}}var a;!function(e){e[e.enumUnknown=0]="enumUnknown",e[e.enumPoint=513]="enumPoint",e[e.enumLine=5122]="enumLine",e[e.enumBezier=5123]="enumBezier",e[e.enumEllipticArc=5124]="enumEllipticArc",e[e.enumEnvelope=3077]="enumEnvelope",e[e.enumMultiPoint=8710]="enumMultiPoint",e[e.enumPolyline=25607]="enumPolyline",e[e.enumPolygon=27656]="enumPolygon",e[e.enumMultipatch=40969]="enumMultipatch",e[e.enumGeometryCollection=3594]="enumGeometryCollection",e[e.enumRationalBezier2=5134]="enumRationalBezier2",e[e.enumBezier2=5135]="enumBezier2",e[e.enumRationalBezier23d=5392]="enumRationalBezier23d",e[e.enumGreatArc3d=5393]="enumGreatArc3d"}(a||(a={}));const c=[0,0,1,1,1,2,0,1,2,3,-1,-1,-1,-1,1,1];function m(e){return c[15&e]}function l(e){return!!(512&e)}function p(e){return!!(1024&e)}function d(e){return!!(2048&e)}function f(e){return!!(4096&e)}function y(e){return!!(8192&e)}function h(e){return!!(16384&e)}function g(e){return!!(32768&e)}function w(e){const n=e.getGeometryType();return y(n)?e.getPointCount():e.isEmpty()?0:n===a.enumEnvelope?4:n===a.enumPoint?1:f(n)?2:void b("missing type")}function E(e){const n=e.getGeometryType();if(h(n))return e.hasNonLinearSegments();if(n===a.enumGeometryCollection){const n=e;for(let e=0,t=n.getGeometryCount();e<t;e++)if(E(n.getGeometry(e)))return!0;return!1}return!!f(n)&&n!==a.enumLine}function G(e){throw new u(e)}function v(e){throw new r(e)}function P(e){throw new Error(e)}function M(e){throw new i(e)}function B(){P("Geometry type is not supported for 3D operations.")}function C(e){throw new t(12,e)}function x(e){throw new o(e)}function z(e){throw new t(14,e)}function A(e){throw new Error(e)}function b(e){throw new t(13,e)}function T(e){throw new Error(e)}function k(e){throw new s(e)}function _(){z("Operation does not support curves.")}function N(e){e&&E(e)&&_()}function j(e){e&&g(e.getGeometryType())&&z("Unsupported geometry type.")}function I(e){e===a.enumGeometryCollection&&P("Geometry_collection instances are not supported in this operation")}function L(e){I(e.getGeometryType())}function R(e){P(`bad wkid: ${e}`)}function U(e){let n="bad wkt: ";n+=e,n+="...",P(n)}function D(e,n){e||P(n)}export{B as A,I as B,U as C,R as D,a as G,P as a,M as b,j as c,b as d,l as e,f,n as g,h,y as i,g as j,d as k,p as l,E as m,G as n,v as o,N as p,C as q,A as r,T as s,z as t,x as u,w as v,k as w,D as x,L as y,m as z};
2
+ function e(e){switch(e){case 1:return"Unknown error";case 2:return"Corrupted geometry";case 3:return"Empty geometry";case 4:return"Math singularity";case 5:return"Buffer is too small";case 6:return"Invalid shape type";case 7:return"Projection out of supported range";case 8:return"Non simple geometry";case 9:return"Cannot calculate geodesic";case 10:return"Notation conversion";case 11:return"Missing grid file";case 12:return"Invalid call";case 13:return"Internal error";case 14:return"Not implemented";case 15:return"IO error";case 16:return"Invalid 3D";case 17:return"An ambiguous geography edge with antipodal points";case 18:return"Geocentric coordinates require ellipsoidal height";case 19:return"Geography cannot be projected into a gnomonic plane or a result of an operation cannot fit into a gnomonic plane";case 20:return"Geometry is too large to be exported in to a given format";case 22:return"Operation is canceled by the user";case 21:return"The operation, such as projection or geodetic computation, cannot be performed without pe-wasm loaded";default:return"unknown error"}}function n(e,n){try{if(!e)throw new Error(n)}catch(t){throw t}}class t extends Error{constructor(e,n){super(n),this.m_AdditionalMessage=n,this.m_ErrorType=e,this.name="GeometryError"}what(){return e(this.m_ErrorType)}additionalMessage(){return this.m_AdditionalMessage?this.m_AdditionalMessage:""}code(){return this.m_ErrorType}}class r extends t{constructor(e){super(2,e),this.name="CorruptedGeometryError"}}class o extends t{constructor(e){super(3,e),this.name="EmptyGeometryError"}}class i extends t{constructor(e){super(4,e),this.name="MathSingularityError"}}class u extends t{constructor(e){super(21,e),this.name="ProjectionEngineNotLoadedError"}}class s extends t{constructor(e){super(8,e),this.name="NonSimpleGeometryError"}}var a;!function(e){e[e.enumUnknown=0]="enumUnknown",e[e.enumPoint=513]="enumPoint",e[e.enumLine=5122]="enumLine",e[e.enumBezier=5123]="enumBezier",e[e.enumEllipticArc=5124]="enumEllipticArc",e[e.enumEnvelope=3077]="enumEnvelope",e[e.enumMultiPoint=8710]="enumMultiPoint",e[e.enumPolyline=25607]="enumPolyline",e[e.enumPolygon=27656]="enumPolygon",e[e.enumMultipatch=40969]="enumMultipatch",e[e.enumGeometryCollection=3594]="enumGeometryCollection",e[e.enumRationalBezier2=5134]="enumRationalBezier2",e[e.enumBezier2=5135]="enumBezier2",e[e.enumRationalBezier23d=5392]="enumRationalBezier23d",e[e.enumGreatArc3d=5393]="enumGreatArc3d"}(a||(a={}));const c=[0,0,1,1,1,2,0,1,2,3,-1,-1,-1,-1,1,1];function m(e){return c[15&e]}function l(e){return!!(512&e)}function p(e){return!!(1024&e)}function d(e){return!!(2048&e)}function f(e){return!!(4096&e)}function y(e){return!!(8192&e)}function h(e){return!!(16384&e)}function g(e){return!!(32768&e)}function w(e){const n=e.getGeometryType();return y(n)?e.getPointCount():e.isEmpty()?0:n===a.enumEnvelope?4:n===a.enumPoint?1:f(n)?2:void b("missing type")}function E(e){const n=e.getGeometryType();if(h(n))return e.hasNonLinearSegments();if(n===a.enumGeometryCollection){const n=e;for(let e=0,t=n.getGeometryCount();e<t;e++)if(E(n.getGeometry(e)))return!0;return!1}return!!f(n)&&n!==a.enumLine}function G(e){throw new u(e)}function v(e){throw new r(e)}function P(e){throw new Error(e)}function M(e){throw new i(e)}function B(){P("Geometry type is not supported for 3D operations.")}function C(e){throw new t(12,e)}function x(e){throw new o(e)}function z(e){throw new t(14,e)}function A(e){throw new Error(e)}function b(e){throw new t(13,e)}function T(e){throw new Error(e)}function k(e){throw new s(e)}function _(){z("Operation does not support curves.")}function N(e){e&&E(e)&&_()}function j(e){e&&g(e.getGeometryType())&&z("Unsupported geometry type.")}function I(e){e===a.enumGeometryCollection&&P("Geometry_collection instances are not supported in this operation")}function L(e){I(e.getGeometryType())}function R(e){P(`bad wkid: ${e}`)}function U(e){let n="bad wkt: ";n+=e,n+="...",P(n)}function D(e,n){e||P(n)}export{z as A,A as B,G as C,w as D,a as G,m as a,p as b,D as c,g as d,h as e,y as f,n as g,E as h,d as i,l as j,f as k,x as l,N as m,L as n,I as o,j as p,b as q,P as r,C as s,v as t,B as u,R as v,U as w,T as x,M as y,k as z};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{G as t,h as e,t as n}from"./Geometry.js";function i(i,a){const f=i.getGeometryType();return f===t.enumPoint?r(i):e(f)?u(i):f===t.enumMultiPoint?o(i):f===t.enumEnvelope?i:f===t.enumMultipatch?(n("not implemented for multipatch"),i):i}function r(t){return t}function u(e){if(a(e))return e;const n=e.createInstance();for(let i=0,r=e.getPathCount();i<r;i++){const r=e.getPathSize(i);if(0!==r){if(1===r){if(0===e.getSegmentCountPath(i))continue;if(e.getSegmentType(e.getPathStart(i))===t.enumLine)continue;if(!e.isClosedPath(i))continue}n.addPath(e,i,!0)}}return n}function o(t){return t}function a(e){for(let n=0,i=e.getPathCount();n<i;n++){const i=e.getPathSize(n);if(0===i)return!1;if(1===i){if(0===e.getSegmentCountPath(n))return!1;if(e.getSegmentType(e.getPathStart(n))===t.enumLine)return!1;if(!e.isClosedPath(n))return!1}}return!0}export{i as c};
2
+ import{G as t,e,A as n}from"./Geometry.js";function i(i,a){const f=i.getGeometryType();return f===t.enumPoint?r(i):e(f)?u(i):f===t.enumMultiPoint?o(i):f===t.enumEnvelope?i:f===t.enumMultipatch?(n("not implemented for multipatch"),i):i}function r(t){return t}function u(e){if(a(e))return e;const n=e.createInstance();for(let i=0,r=e.getPathCount();i<r;i++){const r=e.getPathSize(i);if(0!==r){if(1===r){if(0===e.getSegmentCountPath(i))continue;if(e.getSegmentType(e.getPathStart(i))===t.enumLine)continue;if(!e.isClosedPath(i))continue}n.addPath(e,i,!0)}}return n}function o(t){return t}function a(e){for(let n=0,i=e.getPathCount();n<i;n++){const i=e.getPathSize(n);if(0===i)return!1;if(1===i){if(0===e.getSegmentCountPath(n))return!1;if(e.getSegmentType(e.getPathStart(n))===t.enumLine)return!1;if(!e.isClosedPath(n))return!1}}return!0}export{i as c};
@@ -232,4 +232,4 @@ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/Scr
232
232
  fragGlobalIllumination.a = mix(lastFrameGlobalIllumination.a + accumulationDither, fragGlobalIllumination.a, occlusionBlendWeight);
233
233
 
234
234
  fragWeight = occlusionBlendWeight;
235
- `),$}const H=Object.freeze(Object.defineProperty({__proto__:null,GlobalIlluminationPassParameters:k,build:N,defaultRayMarchMaxReach:L,defaultRayMarchMaxReachEmissionWeight:U,defaultRayMarchMaxSteps:V,defaultRayMarchMinReach:E,defaultRayMarchMinReachEmissionWeight:O,defaultRayMarchWorldReach:$},Symbol.toStringTag,{value:"Module"}));export{k as G,H as a,V as b,N as c,L as d,U as e,E as f,O as g,$ as h};
235
+ `),$}const H=Object.freeze(Object.defineProperty({__proto__:null,GlobalIlluminationPassParameters:k,build:N,defaultRayMarchMaxReach:L,defaultRayMarchMaxReachEmissionWeight:U,defaultRayMarchMaxSteps:V,defaultRayMarchMinReach:E,defaultRayMarchMinReachEmissionWeight:O,defaultRayMarchWorldReach:$},Symbol.toStringTag,{value:"Module"}));export{H as G,k as a,N as b,U as c,L as d,V as e,E as f,O as g,$ as h};
@@ -85,4 +85,4 @@ import{create as e}from"../core/libs/gl-matrix-2/factories/vec2f64.js";import{Sc
85
85
  vec3 blurredEmission = (emissionSum / emissionWeightSum).rgb;
86
86
  float occlusion = shouldReuseCenterOcclusion ? centerGlobalIllumination.a : occlusionSum / occlusionWeightSum;
87
87
  fragColor = vec4(blurredEmission, occlusion);
88
- `),e}const g=Object.freeze(Object.defineProperty({__proto__:null,GlobalIlluminationBlurDrawParameters:f,build:d},Symbol.toStringTag,{value:"Module"}));export{f as G,g as a,d as b};
88
+ `),e}const g=Object.freeze(Object.defineProperty({__proto__:null,GlobalIlluminationBlurDrawParameters:f,build:d},Symbol.toStringTag,{value:"Module"}));export{g as G,f as a,d as b};
@@ -1,66 +1,81 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.glsl.js";import{ReadDepth as t}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js";import{GlobalIlluminationWeights as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/GlobalIlluminationWeights.glsl.js";import{CameraSpace as r}from"../views/3d/webgl-engine/core/shaderLibrary/util/CameraSpace.glsl.js";import{FloatPassUniform as a}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as i}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Texture2DDrawUniform as o}from"../views/3d/webgl-engine/core/shaderModules/Texture2DDrawUniform.js";import{Texture2DPassUniform as n}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{NoParameters as h}from"../views/webgl/NoParameters.js";import{ShaderBuilder as u}from"../views/webgl/ShaderBuilder.js";const s=5e4;class m extends h{}function c(){const h=new u,m=h.fragment;return h.include(e),h.include(r),h.include(l),m.include(t),m.uniforms.add(new n("depthMap",e=>e.depthTexture),new n("normalMap",e=>e.normalTexture),new o("tex",e=>e.colorTexture),new o("globalIlluminationWeightTexture",e=>e.weightTexture),new a("scaleGlobalIllumination",e=>e.scaleGlobalIllumination),new a("projScale",(e,t)=>{const l=t.camera.distance;return l>s?Math.max(0,e.projScale-(l-s)):e.projScale})),m.code.add(i`float computeDepthWeight(float sampleDepth, float centerDepth, float depthSharpness) {
3
- float depthDelta = abs(sampleDepth - centerDepth);
4
- return exp(-0.08 - depthDelta * depthDelta * depthSharpness);
5
- }
6
- vec3 normalFromTexture(sampler2D normalTexture, vec2 uv) {
7
- ivec2 normalTextureSize = textureSize(normalTexture, 0);
8
- ivec2 normalTexel = clamp(ivec2(uv * vec2(normalTextureSize)), ivec2(0), normalTextureSize - ivec2(1));
9
- return texelFetch(normalTexture, normalTexel, 0).xyz;
10
- }
11
- void sampleJointBilateralUpscale(vec2 sampleUv, out vec4 upscaledColor, out float upscaledWeight) {
12
- float centerDepth = linearDepthFromTexture(depthMap, sampleUv);
13
- vec3 centerNormal = normalFromTexture(normalMap, sampleUv);
14
- float depthSharpness = globalIlluminationDepthSharpness(projScale, centerDepth, centerNormal);
15
- vec2 lowResTextureSize = vec2(textureSize(tex, 0));
16
- vec2 texelPosition = sampleUv * lowResTextureSize - 0.5;
17
- vec2 texelBase = floor(texelPosition);
18
- vec2 bilinearWeightsFraction = fract(texelPosition);
19
- vec2 uv00 = (texelBase + vec2(0.5, 0.5)) / lowResTextureSize;
20
- vec2 uv10 = (texelBase + vec2(1.5, 0.5)) / lowResTextureSize;
21
- vec2 uv01 = (texelBase + vec2(0.5, 1.5)) / lowResTextureSize;
22
- vec2 uv11 = (texelBase + vec2(1.5, 1.5)) / lowResTextureSize;
23
- vec4 color00 = texture(tex, uv00);
24
- vec4 color10 = texture(tex, uv10);
25
- vec4 color01 = texture(tex, uv01);
26
- vec4 color11 = texture(tex, uv11);
27
- float weight00 = texture(globalIlluminationWeightTexture, uv00).r;
28
- float weight10 = texture(globalIlluminationWeightTexture, uv10).r;
29
- float weight01 = texture(globalIlluminationWeightTexture, uv01).r;
30
- float weight11 = texture(globalIlluminationWeightTexture, uv11).r;
31
- float depth00 = linearDepthFromTexture(depthMap, uv00);
32
- float depth10 = linearDepthFromTexture(depthMap, uv10);
33
- float depth01 = linearDepthFromTexture(depthMap, uv01);
34
- float depth11 = linearDepthFromTexture(depthMap, uv11);
35
- vec3 normal00 = normalFromTexture(normalMap, uv00);
36
- vec3 normal10 = normalFromTexture(normalMap, uv10);
37
- vec3 normal01 = normalFromTexture(normalMap, uv01);
38
- vec3 normal11 = normalFromTexture(normalMap, uv11);
39
- float bilinearWeight00 = (1.0 - bilinearWeightsFraction.x) * (1.0 - bilinearWeightsFraction.y);
40
- float bilinearWeight10 = bilinearWeightsFraction.x * (1.0 - bilinearWeightsFraction.y);
41
- float bilinearWeight01 = (1.0 - bilinearWeightsFraction.x) * bilinearWeightsFraction.y;
42
- float bilinearWeight11 = bilinearWeightsFraction.x * bilinearWeightsFraction.y;
43
- float jointBilateralWeight00 = bilinearWeight00 * computeDepthWeight(depth00, centerDepth, depthSharpness) * globalIlluminationNormalSimilarityWeight(normal00, centerNormal);
44
- float jointBilateralWeight10 = bilinearWeight10 * computeDepthWeight(depth10, centerDepth, depthSharpness) * globalIlluminationNormalSimilarityWeight(normal10, centerNormal);
45
- float jointBilateralWeight01 = bilinearWeight01 * computeDepthWeight(depth01, centerDepth, depthSharpness) * globalIlluminationNormalSimilarityWeight(normal01, centerNormal);
46
- float jointBilateralWeight11 = bilinearWeight11 * computeDepthWeight(depth11, centerDepth, depthSharpness) * globalIlluminationNormalSimilarityWeight(normal11, centerNormal);
47
- float jointBilateralWeightSum = jointBilateralWeight00 + jointBilateralWeight10 + jointBilateralWeight01 + jointBilateralWeight11;
48
- if (jointBilateralWeightSum < 0.0001) {
49
- vec2 nearestUv = (floor(texelPosition + 0.5) + vec2(0.5)) / lowResTextureSize;
50
- upscaledColor = texture(tex, nearestUv);
51
- upscaledWeight = texture(globalIlluminationWeightTexture, nearestUv).r;
52
- return;
53
- }
54
- upscaledColor = (
55
- color00 * jointBilateralWeight00 +
56
- color10 * jointBilateralWeight10 +
57
- color01 * jointBilateralWeight01 +
58
- color11 * jointBilateralWeight11
59
- ) / jointBilateralWeightSum;
60
- upscaledWeight = (
61
- weight00 * jointBilateralWeight00 +
62
- weight10 * jointBilateralWeight10 +
63
- weight01 * jointBilateralWeight01 +
64
- weight11 * jointBilateralWeight11
65
- ) / jointBilateralWeightSum;
66
- }`),h.outputs.add("fragColor","vec4",0),h.outputs.add("fragWeight","float",1),m.main.add(i`sampleJointBilateralUpscale(uv, fragColor, fragWeight);`),h}const p=Object.freeze(Object.defineProperty({__proto__:null,GlobalIlluminationUpscaleDrawParameters:m,build:c},Symbol.toStringTag,{value:"Module"}));export{m as G,p as a,c as b};
2
+ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.glsl.js";import{ReadDepth as t}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js";import{GlobalIlluminationWeights as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/GlobalIlluminationWeights.glsl.js";import{CameraSpace as r}from"../views/3d/webgl-engine/core/shaderLibrary/util/CameraSpace.glsl.js";import{FloatPassUniform as a}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as i}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Texture2DDrawUniform as o}from"../views/3d/webgl-engine/core/shaderModules/Texture2DDrawUniform.js";import{Texture2DPassUniform as n}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{NoParameters as h}from"../views/webgl/NoParameters.js";import{ShaderBuilder as u}from"../views/webgl/ShaderBuilder.js";const s=5e4,m=100;class c extends h{}function p(){const h=new u,c=h.fragment;return h.include(e),h.include(r),h.include(l),c.include(t),c.uniforms.add(new n("depthMap",e=>e.depthTexture),new n("normalMap",e=>e.normalTexture),new o("tex",e=>e.colorTexture),new o("globalIlluminationWeightTexture",e=>e.weightTexture),new a("projScale",(e,t)=>{const l=t.camera.distance;return l>s?Math.max(0,e.projScale-(l-s)):e.projScale})),c.code.add(i`
3
+ float computeDepthWeight(float sampleDepth, float centerDepth, float depthSharpness) {
4
+ float depthDelta = abs(sampleDepth - centerDepth);
5
+ return exp(-0.08 - depthDelta * depthDelta * depthSharpness);
6
+ }
7
+
8
+ vec3 normalFromTexture(sampler2D normalTexture, vec2 uv) {
9
+ ivec2 normalTextureSize = textureSize(normalTexture, 0);
10
+ ivec2 normalTexel = clamp(ivec2(uv * vec2(normalTextureSize)), ivec2(0), normalTextureSize - ivec2(1));
11
+ return texelFetch(normalTexture, normalTexel, 0).xyz;
12
+ }
13
+
14
+ void sampleJointBilateralUpscale(vec2 sampleUv, out vec4 upscaledColor, out float upscaledWeight) {
15
+ float centerDepth = linearDepthFromTexture(depthMap, sampleUv);
16
+ vec3 centerNormal = normalFromTexture(normalMap, sampleUv);
17
+ float depthSharpness = ${i.float(m)} * globalIlluminationDepthSharpness(projScale, centerDepth, centerNormal);
18
+
19
+ vec2 lowResTextureSize = vec2(textureSize(tex, 0));
20
+ vec2 texelPosition = sampleUv * lowResTextureSize - 0.5;
21
+ vec2 texelBase = floor(texelPosition);
22
+ vec2 bilinearWeightsFraction = fract(texelPosition);
23
+
24
+ vec2 uv00 = (texelBase + vec2(0.5, 0.5)) / lowResTextureSize;
25
+ vec2 uv10 = (texelBase + vec2(1.5, 0.5)) / lowResTextureSize;
26
+ vec2 uv01 = (texelBase + vec2(0.5, 1.5)) / lowResTextureSize;
27
+ vec2 uv11 = (texelBase + vec2(1.5, 1.5)) / lowResTextureSize;
28
+
29
+ vec4 color00 = texture(tex, uv00);
30
+ vec4 color10 = texture(tex, uv10);
31
+ vec4 color01 = texture(tex, uv01);
32
+ vec4 color11 = texture(tex, uv11);
33
+ float weight00 = texture(globalIlluminationWeightTexture, uv00).r;
34
+ float weight10 = texture(globalIlluminationWeightTexture, uv10).r;
35
+ float weight01 = texture(globalIlluminationWeightTexture, uv01).r;
36
+ float weight11 = texture(globalIlluminationWeightTexture, uv11).r;
37
+
38
+ float depth00 = linearDepthFromTexture(depthMap, uv00);
39
+ float depth10 = linearDepthFromTexture(depthMap, uv10);
40
+ float depth01 = linearDepthFromTexture(depthMap, uv01);
41
+ float depth11 = linearDepthFromTexture(depthMap, uv11);
42
+
43
+ vec3 normal00 = normalFromTexture(normalMap, uv00);
44
+ vec3 normal10 = normalFromTexture(normalMap, uv10);
45
+ vec3 normal01 = normalFromTexture(normalMap, uv01);
46
+ vec3 normal11 = normalFromTexture(normalMap, uv11);
47
+
48
+ float bilinearWeight00 = (1.0 - bilinearWeightsFraction.x) * (1.0 - bilinearWeightsFraction.y);
49
+ float bilinearWeight10 = bilinearWeightsFraction.x * (1.0 - bilinearWeightsFraction.y);
50
+ float bilinearWeight01 = (1.0 - bilinearWeightsFraction.x) * bilinearWeightsFraction.y;
51
+ float bilinearWeight11 = bilinearWeightsFraction.x * bilinearWeightsFraction.y;
52
+
53
+ float jointBilateralWeight00 = bilinearWeight00 * computeDepthWeight(depth00, centerDepth, depthSharpness) * globalIlluminationNormalSimilarityWeight(normal00, centerNormal);
54
+ float jointBilateralWeight10 = bilinearWeight10 * computeDepthWeight(depth10, centerDepth, depthSharpness) * globalIlluminationNormalSimilarityWeight(normal10, centerNormal);
55
+ float jointBilateralWeight01 = bilinearWeight01 * computeDepthWeight(depth01, centerDepth, depthSharpness) * globalIlluminationNormalSimilarityWeight(normal01, centerNormal);
56
+ float jointBilateralWeight11 = bilinearWeight11 * computeDepthWeight(depth11, centerDepth, depthSharpness) * globalIlluminationNormalSimilarityWeight(normal11, centerNormal);
57
+ float jointBilateralWeightSum = jointBilateralWeight00 + jointBilateralWeight10 + jointBilateralWeight01 + jointBilateralWeight11;
58
+
59
+ if (jointBilateralWeightSum < 0.0001) {
60
+ // Fall back to the nearest low-resolution texel when all bilateral weights collapse.
61
+ vec2 nearestUv = (floor(texelPosition + 0.5) + vec2(0.5)) / lowResTextureSize;
62
+ upscaledColor = texture(tex, nearestUv);
63
+ upscaledWeight = texture(globalIlluminationWeightTexture, nearestUv).r;
64
+ return;
65
+ }
66
+
67
+ upscaledColor = (
68
+ color00 * jointBilateralWeight00 +
69
+ color10 * jointBilateralWeight10 +
70
+ color01 * jointBilateralWeight01 +
71
+ color11 * jointBilateralWeight11
72
+ ) / jointBilateralWeightSum;
73
+
74
+ upscaledWeight = (
75
+ weight00 * jointBilateralWeight00 +
76
+ weight10 * jointBilateralWeight10 +
77
+ weight01 * jointBilateralWeight01 +
78
+ weight11 * jointBilateralWeight11
79
+ ) / jointBilateralWeightSum;
80
+ }
81
+ `),h.outputs.add("fragColor","vec4",0),h.outputs.add("fragWeight","float",1),c.main.add(i`sampleJointBilateralUpscale(uv, fragColor, fragWeight);`),h}const g=Object.freeze(Object.defineProperty({__proto__:null,GlobalIlluminationUpscaleDrawParameters:c,build:p},Symbol.toStringTag,{value:"Module"}));export{g as G,c as a,p as b};
@@ -21,4 +21,4 @@ import{normalize as e}from"../core/arrayUtils.js";import{gauss as r}from"../core
21
21
  }
22
22
  return res;
23
23
  }
24
- `).main.add(n`fragColor = vec4(blurUniformSamples(), 0.0);`),d}const m=Object.freeze(Object.defineProperty({__proto__:null,GlowBlurPassParameters:d,build:f},Symbol.toStringTag,{value:"Module"}));export{d as G,m as a,f as b};
24
+ `).main.add(n`fragColor = vec4(blurUniformSamples(), 0.0);`),d}const m=Object.freeze(Object.defineProperty({__proto__:null,GlowBlurPassParameters:d,build:f},Symbol.toStringTag,{value:"Module"}));export{m as G,d as a,f as b};
@@ -54,4 +54,4 @@ import{normalize as e}from"../core/arrayUtils.js";import{ReadDepth as o}from"../
54
54
 
55
55
  ${l(v,"emission = tonemapKhronosNeutral(emission, 1.0);")}
56
56
  fragColor = delinearizeGamma(vec4(color.rgb + emission, color.w));
57
- `),m)}class v{constructor(o,r){this.preset=o,e(o,r)}}function b(e,o,r=1){return[e[0]*(1-r)+o[0]*r,e[1]*(1-r)+o[1]*r,e[2]*(1-r)+o[2]*r,e[3]*(1-r)+o[3]*r,e[4]*(1-r)+o[4]*r,e[5]*(1-r)+o[5]*r]}const D=Object.freeze(Object.defineProperty({__proto__:null,GlowCompositionPassParameters:x,GlowLodFactors:v,build:h,mixPreset:b},Symbol.toStringTag,{value:"Module"}));export{v as G,x as a,D as b,h as c,b as m};
57
+ `),m)}class v{constructor(o,r){this.preset=o,e(o,r)}}function b(e,o,r=1){return[e[0]*(1-r)+o[0]*r,e[1]*(1-r)+o[1]*r,e[2]*(1-r)+o[2]*r,e[3]*(1-r)+o[3]*r,e[4]*(1-r)+o[4]*r,e[5]*(1-r)+o[5]*r]}const D=Object.freeze(Object.defineProperty({__proto__:null,GlowCompositionPassParameters:x,GlowLodFactors:v,build:h,mixPreset:b},Symbol.toStringTag,{value:"Module"}));export{D as G,x as a,v as b,h as c,b as m};
@@ -4,4 +4,4 @@ if (depthSample == 1.0 ) {
4
4
  fragColor = vec4(0);
5
5
  return;
6
6
  }
7
- fragColor = texture(colorTexture, uv);`),s}const l=Object.freeze(Object.defineProperty({__proto__:null,HazeCompositingPassParameters:i,build:n},Symbol.toStringTag,{value:"Module"}));export{i as H,l as a,n as b};
7
+ fragColor = texture(colorTexture, uv);`),s}const l=Object.freeze(Object.defineProperty({__proto__:null,HazeCompositingPassParameters:i,build:n},Symbol.toStringTag,{value:"Module"}));export{l as H,i as a,n as b};
@@ -10,4 +10,4 @@ sum += texture(blurInput, sUV - blurSize * 1.407333).rg * 0.304005;
10
10
  sum += texture(blurInput, sUV + blurSize * 3.294215).rg * 0.093913;
11
11
  sum += texture(blurInput, sUV - blurSize * 3.294215).rg * 0.093913;
12
12
  fragHighlight = sum;
13
- }`),e}const g=Object.freeze(Object.defineProperty({__proto__:null,HighlightBlurDrawParameters:o,build:n},Symbol.toStringTag,{value:"Module"}));export{o as H,g as a,n as b};
13
+ }`),e}const g=Object.freeze(Object.defineProperty({__proto__:null,HighlightBlurDrawParameters:o,build:n},Symbol.toStringTag,{value:"Module"}));export{g as H,o as a,n as b};
@@ -25,4 +25,4 @@ outputValue |= texels[i];
25
25
  }
26
26
  }
27
27
  }
28
- fragGrid = outputValue;`),l}const u=32,n=9,s=.4,a=Object.freeze(Object.defineProperty({__proto__:null,HighlightDownsampleDrawParameters:o,blurSize:s,build:c,gridCellPixelSize:u,outlineSize:n},Symbol.toStringTag,{value:"Module"}));export{o as H,a,s as b,c,u as g,n as o};
28
+ fragGrid = outputValue;`),l}const u=32,n=9,s=.4,a=Object.freeze(Object.defineProperty({__proto__:null,HighlightDownsampleDrawParameters:o,blurSize:s,build:c,gridCellPixelSize:u,outlineSize:n},Symbol.toStringTag,{value:"Module"}));export{a as H,o as a,s as b,c,u as g,n as o};
@@ -12,4 +12,4 @@ return r * vec2(cos(theta), sin(theta)) * 0.5 + 0.5;
12
12
  }`),e.fragment.main.add(s`float mask = maskEnabled ? texture(textureMask, vUV).a : 1.0;
13
13
  vec4 inputColor = texture(textureInput, barrel(vUV)) * mask;
14
14
  vec4 overlayColor = overlayEnabled ? texture(textureOverlay, vUV) : vec4(0);
15
- fragColor = overlayColor + (1.0 - overlayColor.a) * inputColor;`),e}function v(r,a){const t=a.camera.pixelRatio,n=r.magnifier.offset.x*t,i=r.magnifier.offset.y*t;e(r.magnifier.position,c);const s=a.camera.screenToRender(c,g),l=Math.ceil(t*r.magnifier.size),{fullWidth:m,fullHeight:u}=a.camera;return o(p,(s[0]+n)/m*2-1,(s[1]-i)/u*2-1,l/m*2,l/u*2)}const c=r(),g=a(),p=t(),b=Object.freeze(Object.defineProperty({__proto__:null,MagnifierPassParameters:d,build:f},Symbol.toStringTag,{value:"Module"}));export{d as M,b as a,f as b};
15
+ fragColor = overlayColor + (1.0 - overlayColor.a) * inputColor;`),e}function v(r,a){const t=a.camera.pixelRatio,n=r.magnifier.offset.x*t,i=r.magnifier.offset.y*t;e(r.magnifier.position,c);const s=a.camera.screenToRender(c,g),l=Math.ceil(t*r.magnifier.size),{fullWidth:m,fullHeight:u}=a.camera;return o(p,(s[0]+n)/m*2-1,(s[1]-i)/u*2-1,l/m*2,l/u*2)}const c=r(),g=a(),p=t(),b=Object.freeze(Object.defineProperty({__proto__:null,MagnifierPassParameters:d,build:f},Symbol.toStringTag,{value:"Module"}));export{b as M,d as a,f as b};