@arcgis/core 4.25.0-next.20221018 → 4.25.0-next.20221021

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 (1368) hide show
  1. package/Basemap.d.ts +1 -1
  2. package/Camera.d.ts +1 -1
  3. package/Color.d.ts +1 -1
  4. package/Graphic.d.ts +1 -1
  5. package/Ground.d.ts +1 -1
  6. package/Map.d.ts +1 -1
  7. package/PopupTemplate.d.ts +1 -1
  8. package/README.md +158 -158
  9. package/TimeExtent.d.ts +1 -1
  10. package/TimeInterval.d.ts +1 -1
  11. package/Viewpoint.d.ts +1 -1
  12. package/WebMap.d.ts +1 -1
  13. package/WebMap.js +1 -1
  14. package/WebScene.d.ts +1 -1
  15. package/analysis/AreaMeasurementAnalysis.d.ts +1 -1
  16. package/analysis/DimensionAnalysis.d.ts +1 -1
  17. package/analysis/DimensionSimpleStyle.d.ts +1 -1
  18. package/analysis/DirectLineMeasurementAnalysis.d.ts +1 -1
  19. package/analysis/LengthDimension.d.ts +1 -1
  20. package/analysis/LineOfSightAnalysis.d.ts +1 -1
  21. package/analysis/LineOfSightAnalysisObserver.d.ts +1 -1
  22. package/analysis/LineOfSightAnalysisTarget.d.ts +1 -1
  23. package/analysis/SliceAnalysis.d.ts +1 -1
  24. package/analysis/SlicePlane.d.ts +1 -1
  25. package/applications/SceneViewer/colorUtils.d.ts +1 -1
  26. package/applications/SceneViewer/sceneViewerUtils.d.ts +1 -1
  27. package/arcade.d.ts +1 -1
  28. package/assets/esri/core/libs/libtess/libtess.wasm +0 -0
  29. package/assets/esri/core/workers/RemoteClient.js +1 -1
  30. package/assets/esri/core/workers/chunks/{fc521bcd4fce711edb7e.js → 038dc3f9ef06ef3c960c.js} +1 -1
  31. package/assets/esri/core/workers/chunks/073fdfd01d940c7b1da1.js +1 -0
  32. package/assets/esri/core/workers/chunks/0b0f3e93f658a012d5f0.js +1 -0
  33. package/assets/esri/core/workers/chunks/{5e3686b68e1b5dfa0169.js → 110587dd66c52d0284a9.js} +4 -4
  34. package/assets/esri/core/workers/chunks/{7b7b6f0b1a6215ee7a60.js → 12efe67be9414262591f.js} +1 -1
  35. package/assets/esri/core/workers/chunks/{9383dab07abf7e29139e.js → 16a6b4d8c4928c97ef56.js} +1 -1
  36. package/assets/esri/core/workers/chunks/{cd11fcc3d9678ab4e115.js → 19c208150b7f9cf0b6ea.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{6f19761acd9ab875a600.js → 2b0952bd7dbeb1a79fbc.js} +1 -1
  38. package/assets/esri/core/workers/chunks/{7fab18074b130b71a648.js → 2c4938512dd726a177dd.js} +1 -1
  39. package/assets/esri/core/workers/chunks/2d8201f0f33ba66bb96b.js +1 -0
  40. package/assets/esri/core/workers/chunks/2ebba71cbbfa62ddf46a.js +1 -0
  41. package/assets/esri/core/workers/chunks/{de6a1d1cfdc147455d57.js → 2f22105099a3ece58d1d.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{8ee3da8677255b8c8709.js → 31de71018575457155e5.js} +1 -1
  43. package/assets/esri/core/workers/chunks/{64a0f93c6a0fd4e14601.js → 3376fbcbd92261d45169.js} +1 -1
  44. package/assets/esri/core/workers/chunks/4450f17444947fe2f27f.js +1 -0
  45. package/assets/esri/core/workers/chunks/5de864843c0d3f4d291d.js +1 -0
  46. package/assets/esri/core/workers/chunks/6dfb2ddfd72009564a34.js +1 -0
  47. package/assets/esri/core/workers/chunks/{d18b191e158c1aff853c.js → 71bc42d18a9e5c356c2a.js} +1 -1
  48. package/assets/esri/core/workers/chunks/{179b9a7aa796dac3eb83.js → 7ba0cfe4d1c214f44fc7.js} +1 -1
  49. package/assets/esri/core/workers/chunks/81139c01e8016cbbe324.js +1 -0
  50. package/assets/esri/core/workers/chunks/883cfe319b15ebabf71e.js +1 -0
  51. package/assets/esri/core/workers/chunks/{c2a6ac7046134f725cf3.js → 8ba83fee56dd4f306d87.js} +1 -1
  52. package/assets/esri/core/workers/chunks/925f53f4ef097c5ce204.js +1 -0
  53. package/assets/esri/core/workers/chunks/{eff5593e534d2a617ca7.js → 942da417257f8fd8e4cf.js} +1 -1
  54. package/assets/esri/core/workers/chunks/97450791de57796f842c.js +1 -0
  55. package/assets/esri/core/workers/chunks/{c9c0dd4d9aaa9b794bd5.js → 9d1faf9358df056be8e7.js} +1 -1
  56. package/assets/esri/core/workers/chunks/9d410721f42259efe666.js +1 -0
  57. package/assets/esri/core/workers/chunks/{b98074a98ebc11ed1e09.js → aa3909ffe65b42c61b52.js} +1 -1
  58. package/assets/esri/core/workers/chunks/af3f30f968363bb3930c.js +1 -0
  59. package/assets/esri/core/workers/chunks/{93e7d34f52bfafa015e1.js → b58badb11e610024ce4c.js} +1 -1
  60. package/assets/esri/core/workers/chunks/b5e6a868256c5aae6d5e.js +1 -0
  61. package/assets/esri/core/workers/chunks/{2307eea4f3b9c0c987f1.js → b9e93d9ea80361716f1d.js} +1 -1
  62. package/assets/esri/core/workers/chunks/{1f31a507c989b2976660.js → c26a24c89ddf5bdad343.js} +1 -1
  63. package/assets/esri/core/workers/chunks/{a9b77bea0b8d7a2e5f65.js → c8c0f091aab41e4effa5.js} +1 -1
  64. package/assets/esri/core/workers/chunks/d573ec98401fbae26383.js +1 -0
  65. package/assets/esri/core/workers/chunks/{4641e10e0e8e9d257521.js → f436c86f86236ea7ea04.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{b88c012fa0b0e229a5e3.js → f5b4a8b2bad9b0899954.js} +1 -1
  67. package/assets/esri/core/workers/chunks/{3bcf3bed475f7c49eb7e.js → f787036fa1ed4f53bb00.js} +1 -1
  68. package/assets/esri/core/workers/chunks/{ceb38e7e1aa08e1b141f.js → fa3117bb2e11daac000e.js} +1 -1
  69. package/assets/esri/core/workers/chunks/{77425f33515eb7f0551a.js → fb340c93c114ef090941.js} +1 -1
  70. package/assets/esri/css/main.scss +1 -1
  71. package/assets/esri/css/view.scss +1 -1
  72. package/assets/esri/images/support/loading-throb.gif +0 -0
  73. package/assets/esri/themes/base/_Overlay.scss +14 -14
  74. package/assets/esri/themes/base/_OverlayItem.scss +52 -52
  75. package/assets/esri/themes/base/_Ui.scss +149 -149
  76. package/assets/esri/themes/base/_View.scss +194 -194
  77. package/assets/esri/themes/base/_animation.scss +128 -128
  78. package/assets/esri/themes/base/_color.scss +57 -57
  79. package/assets/esri/themes/base/_colorVariables.scss +1 -1
  80. package/assets/esri/themes/base/_core.scss +172 -172
  81. package/assets/esri/themes/base/_functions.scss +23 -23
  82. package/assets/esri/themes/base/_layout.scss +11 -11
  83. package/assets/esri/themes/base/_mixins.scss +665 -665
  84. package/assets/esri/themes/base/_sizes.scss +130 -130
  85. package/assets/esri/themes/base/_type.scss +27 -27
  86. package/assets/esri/themes/base/colors/css/scss/brand_colors.scss +0 -0
  87. package/assets/esri/themes/base/colors/css/scss/calcite_core_colors.scss +0 -0
  88. package/assets/esri/themes/base/colors/css/scss/calcite_core_colors_dark.scss +0 -0
  89. package/assets/esri/themes/base/colors/css/scss/calcite_gray_colors.scss +0 -0
  90. package/assets/esri/themes/base/colors/css/scss/calcite_gray_colors_dark.scss +0 -0
  91. package/assets/esri/themes/base/colors/css/scss/calcite_highlight_colors.scss +0 -0
  92. package/assets/esri/themes/base/colors/css/scss/calcite_highlight_colors_dark.scss +0 -0
  93. package/assets/esri/themes/base/colors/css/scss/calcite_vibrant_colors.scss +0 -0
  94. package/assets/esri/themes/base/colors/css/scss/calcite_vibrant_colors_dark.scss +0 -0
  95. package/assets/esri/themes/base/colors/css/scss/complete.scss +0 -0
  96. package/assets/esri/themes/base/colors/patterns_json/scss/brand_colors.scss +0 -0
  97. package/assets/esri/themes/base/colors/patterns_json/scss/calcite_core_colors.scss +0 -0
  98. package/assets/esri/themes/base/colors/patterns_json/scss/calcite_core_colors_dark.scss +0 -0
  99. package/assets/esri/themes/base/colors/patterns_json/scss/calcite_gray_colors.scss +0 -0
  100. package/assets/esri/themes/base/colors/patterns_json/scss/calcite_gray_colors_dark.scss +0 -0
  101. package/assets/esri/themes/base/colors/patterns_json/scss/calcite_highlight_colors.scss +0 -0
  102. package/assets/esri/themes/base/colors/patterns_json/scss/calcite_highlight_colors_dark.scss +0 -0
  103. package/assets/esri/themes/base/colors/patterns_json/scss/calcite_vibrant_colors.scss +0 -0
  104. package/assets/esri/themes/base/colors/patterns_json/scss/calcite_vibrant_colors_dark.scss +0 -0
  105. package/assets/esri/themes/base/colors/patterns_json/scss/complete.scss +0 -0
  106. package/assets/esri/themes/base/fonts/fonts/014f2daa-c310-4a36-b9fd-79a8e0c48d44-ext.woff2 +0 -0
  107. package/assets/esri/themes/base/fonts/fonts/014f2daa-c310-4a36-b9fd-79a8e0c48d44-greek.woff2 +0 -0
  108. package/assets/esri/themes/base/fonts/fonts/014f2daa-c310-4a36-b9fd-79a8e0c48d44.woff2 +0 -0
  109. package/assets/esri/themes/base/fonts/fonts/0763eab1-d6ed-4c73-afb0-895f930df099.woff +0 -0
  110. package/assets/esri/themes/base/fonts/fonts/121524c1-8d82-4155-bfb3-fd2f15f09e93.woff +0 -0
  111. package/assets/esri/themes/base/fonts/fonts/12b00842-ec20-4c7f-aa72-802fb00f6cc4-ext.woff +0 -0
  112. package/assets/esri/themes/base/fonts/fonts/12b00842-ec20-4c7f-aa72-802fb00f6cc4-greek.woff +0 -0
  113. package/assets/esri/themes/base/fonts/fonts/12b00842-ec20-4c7f-aa72-802fb00f6cc4.woff +0 -0
  114. package/assets/esri/themes/base/fonts/fonts/13faf0ae-dcab-4d1c-9c08-f9ca339b6023-greek.woff +0 -0
  115. package/assets/esri/themes/base/fonts/fonts/13faf0ae-dcab-4d1c-9c08-f9ca339b6023.woff +0 -0
  116. package/assets/esri/themes/base/fonts/fonts/15e2e15a-2f36-4a01-b529-677d575bf76d.woff2 +0 -0
  117. package/assets/esri/themes/base/fonts/fonts/174d458a-81e0-4174-9473-35e3bf0a613c.woff2 +0 -0
  118. package/assets/esri/themes/base/fonts/fonts/18629a56-2ec3-4470-a65f-f82d7ec4d41b.woff2 +0 -0
  119. package/assets/esri/themes/base/fonts/fonts/1b3078ef-2971-4c95-b6ca-13ab528758cb.woff +0 -0
  120. package/assets/esri/themes/base/fonts/fonts/1fed34fa-250a-4d32-9f1d-42f978a2e0b2.woff2 +0 -0
  121. package/assets/esri/themes/base/fonts/fonts/2200dfff-da50-40b0-bc12-5e4b872a1998.woff2 +0 -0
  122. package/assets/esri/themes/base/fonts/fonts/281f890c-8412-4ee3-84ed-8b5d062d2ab8.woff2 +0 -0
  123. package/assets/esri/themes/base/fonts/fonts/2a1ae9a5-b6b5-405c-b660-bbdf1b356952.woff2 +0 -0
  124. package/assets/esri/themes/base/fonts/fonts/31da4b04-f98a-4b5f-b545-a31d26da99e5.woff2 +0 -0
  125. package/assets/esri/themes/base/fonts/fonts/31e0c094-e345-4a54-a797-d5f1a5885572.woff +0 -0
  126. package/assets/esri/themes/base/fonts/fonts/32a2c5cf-6736-44a6-a276-49ba7e030944.woff2 +0 -0
  127. package/assets/esri/themes/base/fonts/fonts/341bcc5e-7ac0-44ff-819d-5887892eab1b.woff +0 -0
  128. package/assets/esri/themes/base/fonts/fonts/390cea11-2b11-47ac-b3e8-43ded6ae89ee.woff +0 -0
  129. package/assets/esri/themes/base/fonts/fonts/394a711e-3459-44f3-85c7-e99c01e4b55c.woff +0 -0
  130. package/assets/esri/themes/base/fonts/fonts/3ae1e25e-3aa6-4061-a016-a079159f9d65.woff2 +0 -0
  131. package/assets/esri/themes/base/fonts/fonts/3d5260a1-e4cd-4567-80ed-69d23c40355f-ext.woff +0 -0
  132. package/assets/esri/themes/base/fonts/fonts/3d5260a1-e4cd-4567-80ed-69d23c40355f-greek.woff +0 -0
  133. package/assets/esri/themes/base/fonts/fonts/3d5260a1-e4cd-4567-80ed-69d23c40355f.woff +0 -0
  134. package/assets/esri/themes/base/fonts/fonts/40d36b4a-60c6-460a-bf43-4c948c23563e.woff2 +0 -0
  135. package/assets/esri/themes/base/fonts/fonts/41331c3c-3759-4462-8695-33c9a21b6a5b.woff2 +0 -0
  136. package/assets/esri/themes/base/fonts/fonts/439a2ded-d7a4-42d4-8660-ef8765fa7486.woff +0 -0
  137. package/assets/esri/themes/base/fonts/fonts/45b78f45-e639-4836-8612-e0892e120f14.woff +0 -0
  138. package/assets/esri/themes/base/fonts/fonts/46947883-147e-48dd-97c2-5a8ca675b998.woff2 +0 -0
  139. package/assets/esri/themes/base/fonts/fonts/4ab86b35-c0c2-42b5-98ad-4b6eba66b197.woff +0 -0
  140. package/assets/esri/themes/base/fonts/fonts/4d1d0d0d-9ea6-4117-901f-8b32ca1ab936.woff +0 -0
  141. package/assets/esri/themes/base/fonts/fonts/4daa2125-53c6-4da8-9614-8a1049eaccc2.woff2 +0 -0
  142. package/assets/esri/themes/base/fonts/fonts/4e4befe6-3f94-41d8-886c-1a6831818c6a.woff2 +0 -0
  143. package/assets/esri/themes/base/fonts/fonts/5729f02e-f6b0-4f35-8ee5-c2cffa65fa76.woff +0 -0
  144. package/assets/esri/themes/base/fonts/fonts/57a79aa3-9b06-4ba7-a9a4-2b766d826ecf.woff +0 -0
  145. package/assets/esri/themes/base/fonts/fonts/61f13f40-3829-413c-b6f5-b11abb272edc.woff +0 -0
  146. package/assets/esri/themes/base/fonts/fonts/6ea5fa46-5311-450b-8744-288a30c55348.woff2 +0 -0
  147. package/assets/esri/themes/base/fonts/fonts/75e2f3b1-1402-4916-8392-4db9ababea7b.woff2 +0 -0
  148. package/assets/esri/themes/base/fonts/fonts/77156710-6a58-4606-b189-b4185e75967b-ext.woff2 +0 -0
  149. package/assets/esri/themes/base/fonts/fonts/77156710-6a58-4606-b189-b4185e75967b-greek.woff2 +0 -0
  150. package/assets/esri/themes/base/fonts/fonts/77156710-6a58-4606-b189-b4185e75967b.woff2 +0 -0
  151. package/assets/esri/themes/base/fonts/fonts/77caabd3-1877-4634-85c8-8e398a093b99-ext.woff2 +0 -0
  152. package/assets/esri/themes/base/fonts/fonts/77caabd3-1877-4634-85c8-8e398a093b99-greek.woff2 +0 -0
  153. package/assets/esri/themes/base/fonts/fonts/77caabd3-1877-4634-85c8-8e398a093b99.woff2 +0 -0
  154. package/assets/esri/themes/base/fonts/fonts/7db1f672-3a8f-4d19-9c49-7f61aed450b5.woff2 +0 -0
  155. package/assets/esri/themes/base/fonts/fonts/89370128-6a74-471d-ba04-fa0b59bc8ed3.woff +0 -0
  156. package/assets/esri/themes/base/fonts/fonts/8a65abc7-6463-4895-b3e6-5e203b80b7e2.woff2 +0 -0
  157. package/assets/esri/themes/base/fonts/fonts/8b01637a-f445-4f10-92ea-b84a355f7690.woff +0 -0
  158. package/assets/esri/themes/base/fonts/fonts/94aa531e-7746-4df0-bb6e-349891f2eda5.woff2 +0 -0
  159. package/assets/esri/themes/base/fonts/fonts/97694c53-4e94-4f9e-969b-a148adfcdcfd.woff2 +0 -0
  160. package/assets/esri/themes/base/fonts/fonts/97b330aa-d7fa-4f85-830f-b11a5041b157.woff +0 -0
  161. package/assets/esri/themes/base/fonts/fonts/9851da0a-2481-4687-bbeb-ed4ab170dc38-ext.woff2 +0 -0
  162. package/assets/esri/themes/base/fonts/fonts/9851da0a-2481-4687-bbeb-ed4ab170dc38.woff2 +0 -0
  163. package/assets/esri/themes/base/fonts/fonts/9c1ab088-0cb0-402f-9cea-170f0fea14a8.woff2 +0 -0
  164. package/assets/esri/themes/base/fonts/fonts/a1049d00-54ad-4589-95b8-d353f7ab52f0-greek.woff2 +0 -0
  165. package/assets/esri/themes/base/fonts/fonts/a1049d00-54ad-4589-95b8-d353f7ab52f0.woff2 +0 -0
  166. package/assets/esri/themes/base/fonts/fonts/a8aeea1b-1a9d-45b7-8ad9-7c71824599e2.woff +0 -0
  167. package/assets/esri/themes/base/fonts/fonts/a9eaf4d3-6427-42df-9306-3ea1270f7b1a.woff2 +0 -0
  168. package/assets/esri/themes/base/fonts/fonts/ae454969-59fb-4d42-aecb-dea30459bc7e.woff +0 -0
  169. package/assets/esri/themes/base/fonts/fonts/b0b84e4d-2164-45c7-a674-1662f19f3ba6-basic.woff2 +0 -0
  170. package/assets/esri/themes/base/fonts/fonts/b0b84e4d-2164-45c7-a674-1662f19f3ba6-ext.woff2 +0 -0
  171. package/assets/esri/themes/base/fonts/fonts/b0b84e4d-2164-45c7-a674-1662f19f3ba6.woff2 +0 -0
  172. package/assets/esri/themes/base/fonts/fonts/b17468ea-cf53-4635-984b-4d930a68ed4d.woff2 +0 -0
  173. package/assets/esri/themes/base/fonts/fonts/bb93c563-55f6-494f-8e1e-448538d95df1.woff +0 -0
  174. package/assets/esri/themes/base/fonts/fonts/c1905e2e-a1cb-49de-9bb0-ce3c5ffc85ae.woff2 +0 -0
  175. package/assets/esri/themes/base/fonts/fonts/c4cc9032-7eee-4a6e-ae8b-f384b1349bcf.woff2 +0 -0
  176. package/assets/esri/themes/base/fonts/fonts/c744f2a2-d6a9-4c18-b0ec-f17376acde3e.woff +0 -0
  177. package/assets/esri/themes/base/fonts/fonts/cebce072-9561-4c6d-8c89-f0cefec63289-ext.woff +0 -0
  178. package/assets/esri/themes/base/fonts/fonts/cebce072-9561-4c6d-8c89-f0cefec63289.woff +0 -0
  179. package/assets/esri/themes/base/fonts/fonts/d4ffabb3-dd7c-472a-bdfb-6700383c6354-ext.woff +0 -0
  180. package/assets/esri/themes/base/fonts/fonts/d4ffabb3-dd7c-472a-bdfb-6700383c6354-greek.woff +0 -0
  181. package/assets/esri/themes/base/fonts/fonts/d4ffabb3-dd7c-472a-bdfb-6700383c6354.woff +0 -0
  182. package/assets/esri/themes/base/fonts/fonts/d824d78b-aab0-44e3-8c56-6c3dcf551952.woff2 +0 -0
  183. package/assets/esri/themes/base/fonts/fonts/d98fb015-7ef6-404f-a58a-5c9242d79770.woff +0 -0
  184. package/assets/esri/themes/base/fonts/fonts/d9e4040d-32ff-4a1c-ac04-927a781da1f5.woff +0 -0
  185. package/assets/esri/themes/base/fonts/fonts/dc10b3bd-5076-4df5-a5f5-e5961f4a6938.woff +0 -0
  186. package/assets/esri/themes/base/fonts/fonts/dd7b7d4e-21ab-4ac0-b26a-d032c992f3c5.woff2 +0 -0
  187. package/assets/esri/themes/base/fonts/fonts/e388ac99-8c6a-4451-8690-1d15b4d45adb-ext.woff +0 -0
  188. package/assets/esri/themes/base/fonts/fonts/e388ac99-8c6a-4451-8690-1d15b4d45adb-greek.woff +0 -0
  189. package/assets/esri/themes/base/fonts/fonts/e388ac99-8c6a-4451-8690-1d15b4d45adb.woff +0 -0
  190. package/assets/esri/themes/base/fonts/fonts/e57662ff-b1ef-4122-88c1-61bbdabeb365.woff +0 -0
  191. package/assets/esri/themes/base/fonts/fonts/e78b17bb-11fb-4860-8d66-4ee0d0c1e117-ext.woff2 +0 -0
  192. package/assets/esri/themes/base/fonts/fonts/e78b17bb-11fb-4860-8d66-4ee0d0c1e117-greek.woff2 +0 -0
  193. package/assets/esri/themes/base/fonts/fonts/e78b17bb-11fb-4860-8d66-4ee0d0c1e117.woff2 +0 -0
  194. package/assets/esri/themes/base/fonts/fonts/e91d1bbf-3fea-45e2-b003-a22b12ce6e5f-basic.woff +0 -0
  195. package/assets/esri/themes/base/fonts/fonts/e91d1bbf-3fea-45e2-b003-a22b12ce6e5f-ext.woff +0 -0
  196. package/assets/esri/themes/base/fonts/fonts/e91d1bbf-3fea-45e2-b003-a22b12ce6e5f.woff +0 -0
  197. package/assets/esri/themes/base/fonts/fonts/f1799750-0952-403f-8108-b2402eed0f62.woff +0 -0
  198. package/assets/esri/themes/base/fonts/fonts/f4a085c3-1c64-4fc0-a598-26f3e658c2b0.woff +0 -0
  199. package/assets/esri/themes/base/fonts/fonts/fa71df11-7b19-4baf-8ff7-3537dea718f0.woff +0 -0
  200. package/assets/esri/themes/base/icons/style.css +0 -0
  201. package/assets/esri/themes/base/icons/style.scss +0 -0
  202. package/assets/esri/themes/base/icons/variables.scss +0 -0
  203. package/assets/esri/themes/base/images/files/archive-32.svg +0 -0
  204. package/assets/esri/themes/base/images/files/cad-32.svg +0 -0
  205. package/assets/esri/themes/base/images/files/code-32.svg +0 -0
  206. package/assets/esri/themes/base/images/files/csv-32.svg +0 -0
  207. package/assets/esri/themes/base/images/files/excel-32.svg +0 -0
  208. package/assets/esri/themes/base/images/files/generic-32.svg +0 -0
  209. package/assets/esri/themes/base/images/files/gpx-32.svg +0 -0
  210. package/assets/esri/themes/base/images/files/image-32.svg +0 -0
  211. package/assets/esri/themes/base/images/files/pdf-32.svg +0 -0
  212. package/assets/esri/themes/base/images/files/report-32.svg +0 -0
  213. package/assets/esri/themes/base/images/files/sound-32.svg +0 -0
  214. package/assets/esri/themes/base/images/files/text-32.svg +0 -0
  215. package/assets/esri/themes/base/images/files/video-32.svg +0 -0
  216. package/assets/esri/themes/base/images/files/word-32.svg +0 -0
  217. package/assets/esri/themes/base/images/files/zip-32.svg +0 -0
  218. package/assets/esri/themes/base/images/loading-throb.gif +0 -0
  219. package/assets/esri/themes/base/widgets/_AreaMeasurement2D.scss +14 -14
  220. package/assets/esri/themes/base/widgets/_AreaMeasurement3D.scss +14 -14
  221. package/assets/esri/themes/base/widgets/_Attachments.scss +286 -286
  222. package/assets/esri/themes/base/widgets/_Attribution.scss +57 -57
  223. package/assets/esri/themes/base/widgets/_BasemapGallery.scss +173 -173
  224. package/assets/esri/themes/base/widgets/_BasemapLayerList.scss +490 -490
  225. package/assets/esri/themes/base/widgets/_BasemapToggle.scss +123 -123
  226. package/assets/esri/themes/base/widgets/_BinaryColorSizeSlider.scss +7 -7
  227. package/assets/esri/themes/base/widgets/_Bookmarks.scss +349 -349
  228. package/assets/esri/themes/base/widgets/_BuildingDisciplinesTree.scss +151 -151
  229. package/assets/esri/themes/base/widgets/_BuildingExplorer.scss +51 -51
  230. package/assets/esri/themes/base/widgets/_BuildingLevelPicker.scss +253 -253
  231. package/assets/esri/themes/base/widgets/_BuildingPhasePicker.scss +92 -92
  232. package/assets/esri/themes/base/widgets/_ButtonMenu.scss +129 -129
  233. package/assets/esri/themes/base/widgets/_ClassedColorSlider.scss +7 -7
  234. package/assets/esri/themes/base/widgets/_ClassedSizeSlider.scss +7 -7
  235. package/assets/esri/themes/base/widgets/_ColorPicker.scss +70 -70
  236. package/assets/esri/themes/base/widgets/_ColorSizeSlider.scss +7 -7
  237. package/assets/esri/themes/base/widgets/_ColorSlider.scss +7 -7
  238. package/assets/esri/themes/base/widgets/_Compass.scss +16 -16
  239. package/assets/esri/themes/base/widgets/_CoordinateConversion.scss +236 -238
  240. package/assets/esri/themes/base/widgets/_DatePicker.scss +169 -169
  241. package/assets/esri/themes/base/widgets/_Daylight.scss +270 -270
  242. package/assets/esri/themes/base/widgets/_DirectLineMeasurement3D.scss +7 -7
  243. package/assets/esri/themes/base/widgets/_Directions.scss +471 -471
  244. package/assets/esri/themes/base/widgets/_DistanceMeasurement2D.scss +7 -7
  245. package/assets/esri/themes/base/widgets/_Editor.scss +260 -255
  246. package/assets/esri/themes/base/widgets/_ElevationProfile.scss +439 -439
  247. package/assets/esri/themes/base/widgets/_Expand.scss +264 -264
  248. package/assets/esri/themes/base/widgets/_Feature.scss +93 -92
  249. package/assets/esri/themes/base/widgets/_FeatureContent.scss +97 -97
  250. package/assets/esri/themes/base/widgets/_FeatureForm.scss +236 -216
  251. package/assets/esri/themes/base/widgets/_FeatureMedia.scss +86 -86
  252. package/assets/esri/themes/base/widgets/_FeatureTable.scss +247 -247
  253. package/assets/esri/themes/base/widgets/_FeatureTemplates.scss +44 -44
  254. package/assets/esri/themes/base/widgets/_FloorFilter.scss +480 -480
  255. package/assets/esri/themes/base/widgets/_Grid.scss +71 -71
  256. package/assets/esri/themes/base/widgets/_HeatmapSlider.scss +7 -7
  257. package/assets/esri/themes/base/widgets/_Histogram.scss +56 -56
  258. package/assets/esri/themes/base/widgets/_HistogramRangeSlider.scss +105 -105
  259. package/assets/esri/themes/base/widgets/_IdentityForm.scss +22 -22
  260. package/assets/esri/themes/base/widgets/_IdentityModal.scss +105 -105
  261. package/assets/esri/themes/base/widgets/_ItemList.scss +143 -143
  262. package/assets/esri/themes/base/widgets/_LayerList.scss +413 -413
  263. package/assets/esri/themes/base/widgets/_Legend.scss +551 -551
  264. package/assets/esri/themes/base/widgets/_LineOfSight.scss +41 -41
  265. package/assets/esri/themes/base/widgets/_Measurement.scss +6 -6
  266. package/assets/esri/themes/base/widgets/_NavigationToggle.scss +99 -99
  267. package/assets/esri/themes/base/widgets/_OpacitySlider.scss +7 -7
  268. package/assets/esri/themes/base/widgets/_Popup.scss +748 -745
  269. package/assets/esri/themes/base/widgets/_Print.scss +269 -269
  270. package/assets/esri/themes/base/widgets/_SaveLayer.scss +40 -40
  271. package/assets/esri/themes/base/widgets/_ScaleBar.scss +160 -160
  272. package/assets/esri/themes/base/widgets/_ScaleRangeSlider.scss +211 -211
  273. package/assets/esri/themes/base/widgets/_Search.scss +193 -193
  274. package/assets/esri/themes/base/widgets/_SearchResultRenderer.scss +34 -34
  275. package/assets/esri/themes/base/widgets/_SelectionToolbar.scss +18 -18
  276. package/assets/esri/themes/base/widgets/_ShadowCast.scss +202 -202
  277. package/assets/esri/themes/base/widgets/_SizeSlider.scss +7 -7
  278. package/assets/esri/themes/base/widgets/_Sketch.scss +151 -151
  279. package/assets/esri/themes/base/widgets/_Slice.scss +80 -80
  280. package/assets/esri/themes/base/widgets/_Slider.scss +367 -367
  281. package/assets/esri/themes/base/widgets/_SnappingControls.scss +143 -143
  282. package/assets/esri/themes/base/widgets/_Spinner.scss +76 -76
  283. package/assets/esri/themes/base/widgets/_Swipe.scss +105 -105
  284. package/assets/esri/themes/base/widgets/_TableList.scss +299 -299
  285. package/assets/esri/themes/base/widgets/_TimePicker.scss +15 -15
  286. package/assets/esri/themes/base/widgets/_TimeSlider.scss +404 -404
  287. package/assets/esri/themes/base/widgets/_Tooltip.scss +61 -61
  288. package/assets/esri/themes/base/widgets/_UtilityNetworkTrace.scss +47 -47
  289. package/assets/esri/themes/base/widgets/_Weather.scss +59 -59
  290. package/assets/esri/themes/base/widgets/_Widget.scss +688 -688
  291. package/assets/esri/themes/base/widgets/_Zoom.scss +45 -45
  292. package/assets/esri/themes/dark/main.css +1 -1
  293. package/assets/esri/themes/dark/main.scss +34 -34
  294. package/assets/esri/themes/light/main.css +1 -1
  295. package/assets/esri/themes/light/main.scss +9 -9
  296. package/assets/esri/themes/light/view.css +1 -1
  297. package/assets/esri/themes/light/view.scss +9 -9
  298. package/assets/esri/views/3d/analysis/Slice/images/heading-rotate.svg +4 -4
  299. package/assets/esri/views/3d/analysis/Slice/images/tilt-rotate.svg +80 -80
  300. package/assets/esri/views/3d/webgl-engine/lib/intersectorUtils.svg +117 -117
  301. package/assets/esri/views/magnifier/mask.ts.svg +5 -5
  302. package/assets/esri/views/magnifier/overlay.ts.svg +36 -36
  303. package/chunks/Laserlines.glsl.js +5 -5
  304. package/chunks/LineMarker.glsl.js +32 -38
  305. package/chunks/Precipitation.glsl.js +1 -1
  306. package/chunks/RibbonLine.glsl.js +53 -53
  307. package/chunks/ShadowHighlight.glsl.js +1 -1
  308. package/chunks/boundedPlane.js +1 -1
  309. package/chunks/cameraUtilsPlanar.js +1 -1
  310. package/chunks/cameraUtilsSpherical.js +1 -1
  311. package/chunks/mat3.js +1 -1
  312. package/chunks/quat.js +1 -1
  313. package/chunks/quat2.js +1 -1
  314. package/chunks/quatf64.js +1 -1
  315. package/chunks/sphere.js +1 -1
  316. package/chunks/vec3.js +1 -1
  317. package/chunks/vec3f32.js +1 -1
  318. package/chunks/vec4f64.js +1 -1
  319. package/config.d.ts +1 -1
  320. package/copyright.txt +1278 -1278
  321. package/core/Accessor.d.ts +1 -1
  322. package/core/Accessor.js +1 -1
  323. package/core/Collection.d.ts +1 -1
  324. package/core/Error.d.ts +1 -1
  325. package/core/Evented.d.ts +1 -1
  326. package/core/HandleOwner.d.ts +1 -1
  327. package/core/Handles.d.ts +1 -1
  328. package/core/Identifiable.d.ts +1 -1
  329. package/core/JSONSupport.d.ts +1 -1
  330. package/core/Loadable.d.ts +1 -1
  331. package/core/Promise.d.ts +1 -1
  332. package/core/VectorStack.js +1 -1
  333. package/core/accessorSupport/decorators.d.ts +1 -1
  334. package/core/lang.d.ts +1 -1
  335. package/core/libs/gl-matrix-2/factories/quatf64.js +1 -1
  336. package/core/libs/gl-matrix-2/factories/vec3f32.js +1 -1
  337. package/core/libs/gl-matrix-2/factories/vec4f64.js +1 -1
  338. package/core/libs/gl-matrix-2/math/mat3.js +1 -1
  339. package/core/libs/gl-matrix-2/math/quat.js +1 -1
  340. package/core/libs/gl-matrix-2/math/vec3.js +1 -1
  341. package/core/perspectiveUtils.js +1 -1
  342. package/core/promiseUtils.d.ts +1 -1
  343. package/core/quantity.d.ts +1 -1
  344. package/core/reactiveUtils.d.ts +1 -1
  345. package/core/scheduling.d.ts +1 -1
  346. package/core/sql/WhereClause.d.ts +1 -1
  347. package/core/sql.d.ts +1 -1
  348. package/core/units.d.ts +1 -1
  349. package/core/urlUtils.d.ts +1 -1
  350. package/core/watchUtils.d.ts +1 -1
  351. package/core/workers/Connection.d.ts +1 -1
  352. package/core/workers.d.ts +1 -1
  353. package/form/ExpressionInfo.d.ts +1 -1
  354. package/form/FormTemplate.d.ts +1 -1
  355. package/form/elements/Element.d.ts +1 -1
  356. package/form/elements/FieldElement.d.ts +1 -1
  357. package/form/elements/GroupElement.d.ts +1 -1
  358. package/form/elements/inputs/BarcodeScannerInput.d.ts +1 -1
  359. package/form/elements/inputs/ComboBoxInput.d.ts +1 -1
  360. package/form/elements/inputs/DateTimePickerInput.d.ts +1 -1
  361. package/form/elements/inputs/RadioButtonsInput.d.ts +1 -1
  362. package/form/elements/inputs/SwitchInput.d.ts +1 -1
  363. package/form/elements/inputs/TextAreaInput.d.ts +1 -1
  364. package/form/elements/inputs/TextBoxInput.d.ts +1 -1
  365. package/form/elements/inputs/TextInput.d.ts +1 -1
  366. package/form/elements/support/inputs.d.ts +1 -1
  367. package/form/support/elements.d.ts +1 -1
  368. package/geohash/GeohashTree.js +1 -1
  369. package/geometry/Circle.d.ts +1 -1
  370. package/geometry/Extent.d.ts +1 -1
  371. package/geometry/Geometry.d.ts +1 -1
  372. package/geometry/HeightModelInfo.d.ts +1 -1
  373. package/geometry/Mesh.d.ts +1 -1
  374. package/geometry/Multipoint.d.ts +1 -1
  375. package/geometry/Point.d.ts +1 -1
  376. package/geometry/Polygon.d.ts +1 -1
  377. package/geometry/Polyline.d.ts +1 -1
  378. package/geometry/SpatialReference.d.ts +1 -1
  379. package/geometry/coordinateFormatter.d.ts +1 -1
  380. package/geometry/geometryEngine.d.ts +1 -1
  381. package/geometry/geometryEngineAsync.d.ts +1 -1
  382. package/geometry/projection.d.ts +1 -1
  383. package/geometry/support/GeographicTransformation.d.ts +1 -1
  384. package/geometry/support/GeographicTransformationStep.d.ts +1 -1
  385. package/geometry/support/MeshComponent.d.ts +1 -1
  386. package/geometry/support/MeshMaterial.d.ts +1 -1
  387. package/geometry/support/MeshMaterialMetallicRoughness.d.ts +1 -1
  388. package/geometry/support/MeshTexture.d.ts +1 -1
  389. package/geometry/support/MeshTransform.js +1 -1
  390. package/geometry/support/axisAngle.js +1 -1
  391. package/geometry/support/axisAngleDegrees.js +1 -1
  392. package/geometry/support/geodesicUtils.d.ts +1 -1
  393. package/geometry/support/jsonUtils.d.ts +1 -1
  394. package/geometry/support/lineSegment.js +1 -1
  395. package/geometry/support/meshUtils/exporters/gltf/gltf.js +1 -1
  396. package/geometry/support/meshUtils/exporters/gltf/node.js +1 -1
  397. package/geometry/support/meshUtils/georeference.js +1 -1
  398. package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
  399. package/geometry/support/meshUtils/projection.js +1 -1
  400. package/geometry/support/meshUtils/rotate.js +1 -1
  401. package/geometry/support/meshUtils.d.ts +1 -1
  402. package/geometry/support/normalizeUtils.d.ts +1 -1
  403. package/geometry/support/plane.js +1 -1
  404. package/geometry/support/webMercatorUtils.d.ts +1 -1
  405. package/geometry.d.ts +1 -1
  406. package/identity/Credential.d.ts +1 -1
  407. package/identity/IdentityManager.d.ts +1 -1
  408. package/identity/OAuthInfo.d.ts +1 -1
  409. package/identity/ServerInfo.d.ts +1 -1
  410. package/interfaces.d.ts +768 -706
  411. package/intl.d.ts +1 -1
  412. package/kernel.d.ts +1 -1
  413. package/layers/BaseDynamicLayer.d.ts +1 -1
  414. package/layers/BaseElevationLayer.d.ts +1 -1
  415. package/layers/BaseTileLayer.d.ts +1 -1
  416. package/layers/BingMapsLayer.d.ts +1 -1
  417. package/layers/BuildingSceneLayer.d.ts +1 -1
  418. package/layers/CSVLayer.d.ts +1 -1
  419. package/layers/DimensionLayer.d.ts +1 -1
  420. package/layers/ElevationLayer.d.ts +1 -1
  421. package/layers/FeatureLayer.d.ts +1 -1
  422. package/layers/GeoJSONLayer.d.ts +1 -1
  423. package/layers/GeoRSSLayer.d.ts +1 -1
  424. package/layers/GraphicsLayer.d.ts +1 -1
  425. package/layers/GroupLayer.d.ts +1 -1
  426. package/layers/ImageryLayer.d.ts +1 -1
  427. package/layers/ImageryTileLayer.d.ts +1 -1
  428. package/layers/IntegratedMeshLayer.d.ts +1 -1
  429. package/layers/KMLLayer.d.ts +1 -1
  430. package/layers/Layer.d.ts +1 -1
  431. package/layers/LineOfSightLayer.d.ts +1 -1
  432. package/layers/MapImageLayer.d.ts +1 -1
  433. package/layers/MapNotesLayer.d.ts +1 -1
  434. package/layers/MapNotesLayer.js +1 -1
  435. package/layers/MediaLayer.d.ts +1 -1
  436. package/layers/OGCFeatureLayer.d.ts +1 -1
  437. package/layers/OpenStreetMapLayer.d.ts +1 -1
  438. package/layers/PointCloudLayer.d.ts +1 -1
  439. package/layers/RouteLayer.d.ts +1 -1
  440. package/layers/SceneLayer.d.ts +1 -1
  441. package/layers/StreamLayer.d.ts +1 -1
  442. package/layers/SubtypeGroupLayer.d.ts +1 -1
  443. package/layers/TileLayer.d.ts +1 -1
  444. package/layers/UnknownLayer.d.ts +1 -1
  445. package/layers/UnsupportedLayer.d.ts +1 -1
  446. package/layers/VectorTileLayer.d.ts +1 -1
  447. package/layers/VoxelLayer.d.ts +1 -1
  448. package/layers/WCSLayer.d.ts +1 -1
  449. package/layers/WFSLayer.d.ts +1 -1
  450. package/layers/WMSLayer.d.ts +1 -1
  451. package/layers/WMTSLayer.d.ts +1 -1
  452. package/layers/WebTileLayer.d.ts +1 -1
  453. package/layers/buildingSublayers/BuildingComponentSublayer.d.ts +1 -1
  454. package/layers/buildingSublayers/BuildingGroupSublayer.d.ts +1 -1
  455. package/layers/buildingSublayers/BuildingSublayer.d.ts +1 -1
  456. package/layers/graphics/data/SnappingCandidate.js +1 -1
  457. package/layers/mixins/APIKeyMixin.d.ts +1 -1
  458. package/layers/mixins/ArcGISCachedService.d.ts +1 -1
  459. package/layers/mixins/ArcGISImageService.d.ts +1 -1
  460. package/layers/mixins/ArcGISImageService.js +1 -1
  461. package/layers/mixins/ArcGISMapService.d.ts +1 -1
  462. package/layers/mixins/BlendLayer.d.ts +1 -1
  463. package/layers/mixins/CustomParametersMixin.d.ts +1 -1
  464. package/layers/mixins/FeatureEffectLayer.d.ts +1 -1
  465. package/layers/mixins/FeatureLayerBase.d.ts +4 -0
  466. package/layers/mixins/FeatureReductionLayer.d.ts +1 -1
  467. package/layers/mixins/ImageryTileMixin.d.ts +1 -1
  468. package/layers/mixins/ImageryTileMixin.js +1 -1
  469. package/layers/mixins/OrderedLayer.d.ts +1 -1
  470. package/layers/mixins/PortalLayer.d.ts +1 -1
  471. package/layers/mixins/PublishableLayer.d.ts +1 -1
  472. package/layers/mixins/RefreshableLayer.d.ts +1 -1
  473. package/layers/mixins/ScaleRangeLayer.d.ts +1 -1
  474. package/layers/mixins/SceneService.d.ts +1 -1
  475. package/layers/mixins/SublayersOwner.d.ts +1 -1
  476. package/layers/mixins/TemporalLayer.d.ts +1 -1
  477. package/layers/ogc/wfsUtils.d.ts +1 -1
  478. package/layers/pointCloudFilters/PointCloudFilter.d.ts +1 -1
  479. package/layers/pointCloudFilters/PointCloudReturnFilter.d.ts +1 -1
  480. package/layers/pointCloudFilters/PointCloudValueFilter.d.ts +1 -1
  481. package/layers/support/AggregateField.d.ts +1 -1
  482. package/layers/support/BuildingFilter.d.ts +1 -1
  483. package/layers/support/BuildingSummaryStatistics.d.ts +1 -1
  484. package/layers/support/CodedValueDomain.d.ts +1 -1
  485. package/layers/support/ControlPointsGeoreference.d.ts +1 -1
  486. package/layers/support/CornersGeoreference.d.ts +1 -1
  487. package/layers/support/DimensionalDefinition.d.ts +1 -1
  488. package/layers/support/Domain.d.ts +1 -1
  489. package/layers/support/ElevationSampler.d.ts +1 -1
  490. package/layers/support/ExpressionInfo.d.ts +1 -1
  491. package/layers/support/ExtentAndRotationGeoreference.d.ts +1 -1
  492. package/layers/support/FacilityLayerInfo.d.ts +1 -1
  493. package/layers/support/FeatureEffect.d.ts +1 -1
  494. package/layers/support/FeatureFilter.d.ts +1 -1
  495. package/layers/support/FeatureReductionBinning.d.ts +1 -1
  496. package/layers/support/FeatureReductionCluster.d.ts +1 -1
  497. package/layers/support/FeatureReductionSelection.d.ts +1 -1
  498. package/layers/support/FeatureTemplate.d.ts +1 -1
  499. package/layers/support/FeatureType.d.ts +1 -1
  500. package/layers/support/Field.d.ts +1 -1
  501. package/layers/support/FieldsIndex.d.ts +1 -1
  502. package/layers/support/GeometryFieldsInfo.d.ts +1 -1
  503. package/layers/support/ImageElement.d.ts +1 -1
  504. package/layers/support/ImageParameters.d.ts +1 -1
  505. package/layers/support/InheritedDomain.d.ts +1 -1
  506. package/layers/support/KMLSublayer.d.ts +1 -1
  507. package/layers/support/LOD.d.ts +1 -1
  508. package/layers/support/LabelClass.d.ts +1 -1
  509. package/layers/support/LayerFloorInfo.d.ts +1 -1
  510. package/layers/support/LevelLayerInfo.d.ts +1 -1
  511. package/layers/support/LocalMediaElementSource.d.ts +1 -1
  512. package/layers/support/MapImage.d.ts +1 -1
  513. package/layers/support/MediaElementBase.d.ts +1 -1
  514. package/layers/support/MosaicRule.d.ts +1 -1
  515. package/layers/support/MultidimensionalSubset.d.ts +4 -0
  516. package/layers/support/MultidimensionalSubset.js +1 -1
  517. package/layers/support/PixelBlock.d.ts +1 -1
  518. package/layers/support/PublishingInfo.d.ts +1 -1
  519. package/layers/support/RangeDomain.d.ts +1 -1
  520. package/layers/support/RasterFunction.d.ts +1 -1
  521. package/layers/support/RasterInfo.d.ts +1 -1
  522. package/layers/support/Relationship.d.ts +1 -1
  523. package/layers/support/RouteStopSymbols.d.ts +1 -1
  524. package/layers/support/RouteSymbols.d.ts +1 -1
  525. package/layers/support/SceneFilter.d.ts +1 -1
  526. package/layers/support/SceneModification.d.ts +1 -1
  527. package/layers/support/SceneModifications.d.ts +1 -1
  528. package/layers/support/SiteLayerInfo.d.ts +1 -1
  529. package/layers/support/StreamConnection.d.ts +1 -1
  530. package/layers/support/Sublayer.d.ts +1 -1
  531. package/layers/support/SubtypeSublayer.d.ts +1 -1
  532. package/layers/support/TileInfo.d.ts +1 -1
  533. package/layers/support/TileMatrixSet.d.ts +1 -1
  534. package/layers/support/TimeInfo.d.ts +1 -1
  535. package/layers/support/TimeReference.d.ts +1 -1
  536. package/layers/support/VideoElement.d.ts +1 -1
  537. package/layers/support/VoxelVariable.d.ts +1 -1
  538. package/layers/support/VoxelVolumeStyle.d.ts +1 -1
  539. package/layers/support/WMSSublayer.d.ts +1 -1
  540. package/layers/support/WMTSStyle.d.ts +1 -1
  541. package/layers/support/WMTSSublayer.d.ts +1 -1
  542. package/layers/support/arcadeUtils.d.ts +1 -1
  543. package/layers/support/fieldUtils.d.ts +1 -1
  544. package/layers/support/rasterDatasets/BaseRaster.js +1 -1
  545. package/layers/support/rasterDatasets/ImageServerRaster.js +1 -1
  546. package/layers/support/rasterFunctions/vectorFieldUtils.js +1 -1
  547. package/layers/support/wmtsUtils.js +1 -1
  548. package/layers/voxel/VoxelDynamicSection.d.ts +1 -1
  549. package/layers/voxel/VoxelSlice.d.ts +1 -1
  550. package/layers/voxel/VoxelTransferFunctionStyle.d.ts +1 -1
  551. package/layers/voxel/VoxelVariable.d.ts +1 -1
  552. package/layers/voxel/VoxelVariableStyle.d.ts +1 -1
  553. package/layers/voxel/VoxelVolume.d.ts +1 -1
  554. package/layers/voxel/VoxelVolume.js +1 -1
  555. package/layers/voxel/VoxelVolumeStyle.d.ts +1 -1
  556. package/layers/voxel/voxelPlaneUtils.js +1 -1
  557. package/networks/Network.d.ts +1 -1
  558. package/networks/Network.js +1 -1
  559. package/networks/UtilityNetwork.d.ts +1 -1
  560. package/networks/support/NamedTraceConfiguration.d.ts +1 -1
  561. package/networks/support/NetworkSystemLayers.d.ts +1 -1
  562. package/networks/support/Terminal.d.ts +1 -1
  563. package/networks/support/TerminalConfiguration.d.ts +1 -1
  564. package/networks/support/TraceConfiguration.d.ts +1 -1
  565. package/networks/support/UNTraceConfiguration.d.ts +1 -1
  566. package/networks/support/utils.js +1 -1
  567. package/package.json +1 -1
  568. package/pointCloudRenderers.d.ts +1 -1
  569. package/popup/ElementExpressionInfo.d.ts +1 -1
  570. package/popup/ExpressionInfo.d.ts +1 -1
  571. package/popup/FieldInfo.d.ts +1 -1
  572. package/popup/LayerOptions.d.ts +1 -1
  573. package/popup/RelatedRecordsInfo.d.ts +1 -1
  574. package/popup/content/AttachmentsContent.d.ts +1 -1
  575. package/popup/content/BarChartMediaInfo.d.ts +1 -1
  576. package/popup/content/ColumnChartMediaInfo.d.ts +1 -1
  577. package/popup/content/Content.d.ts +1 -1
  578. package/popup/content/CustomContent.d.ts +1 -1
  579. package/popup/content/ExpressionContent.d.ts +1 -1
  580. package/popup/content/FieldsContent.d.ts +1 -1
  581. package/popup/content/ImageMediaInfo.d.ts +1 -1
  582. package/popup/content/LineChartMediaInfo.d.ts +1 -1
  583. package/popup/content/MediaContent.d.ts +1 -1
  584. package/popup/content/PieChartMediaInfo.d.ts +1 -1
  585. package/popup/content/RelationshipContent.d.ts +1 -1
  586. package/popup/content/TextContent.d.ts +1 -1
  587. package/popup/content/mixins/ChartMediaInfo.d.ts +1 -1
  588. package/popup/content/mixins/MediaInfo.d.ts +1 -1
  589. package/popup/content/support/ChartMediaInfoValue.d.ts +1 -1
  590. package/popup/content/support/ChartMediaInfoValueSeries.d.ts +1 -1
  591. package/popup/content/support/ImageMediaInfoValue.d.ts +1 -1
  592. package/popup/content.d.ts +1 -1
  593. package/popup/support/FieldInfoFormat.d.ts +1 -1
  594. package/popup/support/RelatedRecordsInfoFieldOrder.d.ts +1 -1
  595. package/portal/Portal.d.ts +1 -1
  596. package/portal/PortalFolder.d.ts +1 -1
  597. package/portal/PortalGroup.d.ts +1 -1
  598. package/portal/PortalItem.d.ts +1 -1
  599. package/portal/PortalItemResource.d.ts +1 -1
  600. package/portal/PortalQueryParams.d.ts +1 -1
  601. package/portal/PortalQueryResult.d.ts +1 -1
  602. package/portal/PortalRating.d.ts +1 -1
  603. package/portal/PortalUser.d.ts +1 -1
  604. package/portal/schemas/definitions.js +1 -1
  605. package/rasterRenderers.d.ts +1 -1
  606. package/renderers/ClassBreaksRenderer.d.ts +1 -1
  607. package/renderers/DictionaryRenderer.d.ts +1 -1
  608. package/renderers/DotDensityRenderer.d.ts +1 -1
  609. package/renderers/FlowRenderer.d.ts +1 -1
  610. package/renderers/HeatmapRenderer.d.ts +1 -1
  611. package/renderers/PieChartRenderer.d.ts +1 -1
  612. package/renderers/PointCloudClassBreaksRenderer.d.ts +1 -1
  613. package/renderers/PointCloudRGBRenderer.d.ts +1 -1
  614. package/renderers/PointCloudRenderer.d.ts +1 -1
  615. package/renderers/PointCloudStretchRenderer.d.ts +1 -1
  616. package/renderers/PointCloudUniqueValueRenderer.d.ts +1 -1
  617. package/renderers/RasterColormapRenderer.d.ts +1 -1
  618. package/renderers/RasterShadedReliefRenderer.d.ts +1 -1
  619. package/renderers/RasterStretchRenderer.d.ts +1 -1
  620. package/renderers/Renderer.d.ts +1 -1
  621. package/renderers/SimpleRenderer.d.ts +1 -1
  622. package/renderers/UniqueValueRenderer.d.ts +1 -1
  623. package/renderers/UniqueValueRenderer.js +1 -1
  624. package/renderers/VectorFieldRenderer.d.ts +1 -1
  625. package/renderers/mixins/VisualVariablesMixin.d.ts +1 -1
  626. package/renderers/support/AttributeColorInfo.d.ts +1 -1
  627. package/renderers/support/AuthoringInfo.d.ts +1 -1
  628. package/renderers/support/AuthoringInfoVisualVariable.d.ts +1 -1
  629. package/renderers/support/ClassBreakInfo.d.ts +1 -1
  630. package/renderers/support/ColormapInfo.d.ts +1 -1
  631. package/renderers/support/HeatmapColorStop.d.ts +1 -1
  632. package/renderers/support/UniqueValue.d.ts +1 -1
  633. package/renderers/support/UniqueValueClass.d.ts +1 -1
  634. package/renderers/support/UniqueValueClass.js +1 -1
  635. package/renderers/support/UniqueValueGroup.d.ts +1 -1
  636. package/renderers/support/UniqueValueInfo.d.ts +1 -1
  637. package/renderers/support/jsonUtils.d.ts +1 -1
  638. package/renderers/visualVariables/ColorVariable.d.ts +1 -1
  639. package/renderers/visualVariables/OpacityVariable.d.ts +1 -1
  640. package/renderers/visualVariables/RotationVariable.d.ts +1 -1
  641. package/renderers/visualVariables/SizeVariable.d.ts +1 -1
  642. package/renderers/visualVariables/VisualVariable.d.ts +1 -1
  643. package/renderers/visualVariables/support/ColorSizeStop.d.ts +1 -1
  644. package/renderers/visualVariables/support/ColorStop.d.ts +1 -1
  645. package/renderers/visualVariables/support/OpacityStop.d.ts +1 -1
  646. package/renderers/visualVariables/support/SizeStop.d.ts +1 -1
  647. package/renderers.d.ts +1 -1
  648. package/request.d.ts +1 -1
  649. package/rest/closestFacility.d.ts +1 -1
  650. package/rest/find.d.ts +1 -1
  651. package/rest/geometryService.d.ts +1 -1
  652. package/rest/geoprocessor/GPOptions.d.ts +1 -1
  653. package/rest/geoprocessor.d.ts +1 -1
  654. package/rest/identify.d.ts +1 -1
  655. package/rest/imageService.d.ts +1 -1
  656. package/rest/knowledgeGraph/DataModel.d.ts +1 -1
  657. package/rest/knowledgeGraph/Entity.d.ts +1 -1
  658. package/rest/knowledgeGraph/EntityType.d.ts +1 -1
  659. package/rest/knowledgeGraph/FieldIndex.d.ts +1 -1
  660. package/rest/knowledgeGraph/GraphApplyEdits.d.ts +1 -1
  661. package/rest/knowledgeGraph/GraphApplyEditsResult.d.ts +1 -1
  662. package/rest/knowledgeGraph/GraphNamedObject.d.ts +1 -1
  663. package/rest/knowledgeGraph/GraphObject.d.ts +1 -1
  664. package/rest/knowledgeGraph/GraphObjectType.d.ts +1 -1
  665. package/rest/knowledgeGraph/GraphProperty.d.ts +1 -1
  666. package/rest/knowledgeGraph/GraphQuery.d.ts +1 -1
  667. package/rest/knowledgeGraph/GraphQueryResult.d.ts +1 -1
  668. package/rest/knowledgeGraph/GraphQueryStreaming.d.ts +1 -1
  669. package/rest/knowledgeGraph/GraphQueryStreamingResult.d.ts +1 -1
  670. package/rest/knowledgeGraph/GraphSearch.d.ts +1 -1
  671. package/rest/knowledgeGraph/GraphSearchStreaming.d.ts +1 -1
  672. package/rest/knowledgeGraph/InputQuantizationParameters.d.ts +1 -1
  673. package/rest/knowledgeGraph/KnowledgeGraph.d.ts +1 -1
  674. package/rest/knowledgeGraph/OutputQuantizationParameters.d.ts +1 -1
  675. package/rest/knowledgeGraph/Path.d.ts +1 -1
  676. package/rest/knowledgeGraph/Relationship.d.ts +1 -1
  677. package/rest/knowledgeGraph/RelationshipType.d.ts +1 -1
  678. package/rest/knowledgeGraphService.d.ts +1 -1
  679. package/rest/locator.d.ts +1 -1
  680. package/rest/networkService.d.ts +1 -1
  681. package/rest/networks/support/AggregatedGeometry.d.ts +1 -1
  682. package/rest/networks/support/Association.d.ts +1 -1
  683. package/rest/networks/support/AssociationGeometriesResult.d.ts +1 -1
  684. package/rest/networks/support/FunctionResult.d.ts +1 -1
  685. package/rest/networks/support/NetworkElement.d.ts +1 -1
  686. package/rest/networks/support/SynthesizeAssociationGeometriesParameters.d.ts +1 -1
  687. package/rest/networks/support/TraceLocation.d.ts +1 -1
  688. package/rest/networks/support/TraceParameters.d.ts +1 -1
  689. package/rest/networks/support/TraceResult.d.ts +1 -1
  690. package/rest/networks/synthesizeAssociationGeometries.d.ts +1 -1
  691. package/rest/networks/trace.d.ts +1 -1
  692. package/rest/print.d.ts +1 -1
  693. package/rest/print.js +1 -1
  694. package/rest/query/support/AttachmentInfo.d.ts +1 -1
  695. package/rest/query.d.ts +1 -1
  696. package/rest/route.d.ts +1 -1
  697. package/rest/serviceArea.d.ts +1 -1
  698. package/rest/support/AddressCandidate.d.ts +1 -1
  699. package/rest/support/AlgorithmicColorRamp.d.ts +1 -1
  700. package/rest/support/AreasAndLengthsParameters.d.ts +1 -1
  701. package/rest/support/AttachmentQuery.d.ts +1 -1
  702. package/rest/support/BufferParameters.d.ts +1 -1
  703. package/rest/support/ClosestFacilityParameters.d.ts +1 -1
  704. package/rest/support/ClosestFacilitySolveResult.d.ts +1 -1
  705. package/rest/support/ColorRamp.d.ts +1 -1
  706. package/rest/support/DataFile.d.ts +1 -1
  707. package/rest/support/DataLayer.d.ts +1 -1
  708. package/rest/support/DensifyParameters.d.ts +1 -1
  709. package/rest/support/DirectionLine.d.ts +1 -1
  710. package/rest/support/DirectionLine.js +1 -1
  711. package/rest/support/DirectionPoint.d.ts +1 -1
  712. package/rest/support/DirectionPoint.js +1 -1
  713. package/rest/support/DirectionsEvent.d.ts +1 -1
  714. package/rest/support/DirectionsFeature.d.ts +1 -1
  715. package/rest/support/DirectionsFeatureSet.d.ts +1 -1
  716. package/rest/support/DistanceParameters.d.ts +1 -1
  717. package/rest/support/FeatureSet.d.ts +1 -1
  718. package/rest/support/FindParameters.d.ts +1 -1
  719. package/rest/support/FindResult.d.ts +1 -1
  720. package/rest/support/GPMessage.d.ts +1 -1
  721. package/rest/support/GeneralizeParameters.d.ts +1 -1
  722. package/rest/support/IdentifyParameters.d.ts +1 -1
  723. package/rest/support/IdentifyResult.d.ts +1 -1
  724. package/rest/support/ImageAngleParameters.d.ts +1 -1
  725. package/rest/support/ImageAngleResult.d.ts +1 -1
  726. package/rest/support/ImageHistogramParameters.d.ts +1 -1
  727. package/rest/support/ImageIdentifyParameters.d.ts +1 -1
  728. package/rest/support/ImageIdentifyResult.d.ts +1 -1
  729. package/rest/support/ImageParameters.d.ts +1 -1
  730. package/rest/support/ImagePixelLocationParameters.d.ts +1 -1
  731. package/rest/support/ImagePixelLocationResult.d.ts +1 -1
  732. package/rest/support/ImageSample.d.ts +1 -1
  733. package/rest/support/ImageSampleParameters.d.ts +1 -1
  734. package/rest/support/ImageSampleResult.d.ts +1 -1
  735. package/rest/support/JobInfo.d.ts +1 -1
  736. package/rest/support/LegendLayer.d.ts +1 -1
  737. package/rest/support/LengthsParameters.d.ts +1 -1
  738. package/rest/support/LinearUnit.d.ts +1 -1
  739. package/rest/support/MultipartColorRamp.d.ts +1 -1
  740. package/rest/support/NAMessage.d.ts +1 -1
  741. package/rest/support/NetworkFeatureSet.d.ts +1 -1
  742. package/rest/support/NetworkUrl.d.ts +1 -1
  743. package/rest/support/OffsetParameters.d.ts +1 -1
  744. package/rest/support/ParameterValue.d.ts +1 -1
  745. package/rest/support/PointBarrier.d.ts +1 -1
  746. package/rest/support/PointBarrier.js +1 -1
  747. package/rest/support/PolygonBarrier.d.ts +1 -1
  748. package/rest/support/PolygonBarrier.js +1 -1
  749. package/rest/support/PolylineBarrier.d.ts +1 -1
  750. package/rest/support/PolylineBarrier.js +1 -1
  751. package/rest/support/PrintParameters.d.ts +1 -1
  752. package/rest/support/PrintTemplate.d.ts +1 -1
  753. package/rest/support/ProjectParameters.d.ts +1 -1
  754. package/rest/support/Query.d.ts +1 -1
  755. package/rest/support/RasterData.d.ts +1 -1
  756. package/rest/support/RelationParameters.d.ts +1 -1
  757. package/rest/support/RelationshipQuery.d.ts +1 -1
  758. package/rest/support/RouteInfo.d.ts +1 -1
  759. package/rest/support/RouteInfo.js +1 -1
  760. package/rest/support/RouteParameters.d.ts +1 -1
  761. package/rest/support/RouteResult.d.ts +1 -1
  762. package/rest/support/RouteSolveResult.d.ts +1 -1
  763. package/rest/support/ServiceAreaParameters.d.ts +1 -1
  764. package/rest/support/ServiceAreaSolveResult.d.ts +1 -1
  765. package/rest/support/StatisticDefinition.d.ts +1 -1
  766. package/rest/support/Stop.d.ts +1 -1
  767. package/rest/support/Stop.js +1 -1
  768. package/rest/support/TopFeaturesQuery.d.ts +1 -1
  769. package/rest/support/TopFilter.d.ts +1 -1
  770. package/rest/support/TravelMode.d.ts +1 -1
  771. package/rest/support/TrimExtendParameters.d.ts +1 -1
  772. package/rest/symbolService.d.ts +1 -1
  773. package/smartMapping/heuristics/outline.js +1 -1
  774. package/smartMapping/heuristics/scaleRange.d.ts +1 -1
  775. package/smartMapping/heuristics/scaleRange.js +1 -1
  776. package/smartMapping/heuristics/sizeRange.d.ts +1 -1
  777. package/smartMapping/heuristics/sizeRange.js +1 -1
  778. package/smartMapping/labels/clusters.d.ts +1 -1
  779. package/smartMapping/popup/clusters.d.ts +1 -1
  780. package/smartMapping/popup/templates.d.ts +1 -1
  781. package/smartMapping/raster/renderers/classBreaks.d.ts +1 -1
  782. package/smartMapping/raster/renderers/colormap.d.ts +1 -1
  783. package/smartMapping/raster/renderers/flow.d.ts +1 -1
  784. package/smartMapping/raster/renderers/rgb.d.ts +1 -1
  785. package/smartMapping/raster/renderers/shadedRelief.d.ts +1 -1
  786. package/smartMapping/raster/renderers/stretch.d.ts +1 -1
  787. package/smartMapping/raster/renderers/uniqueValue.d.ts +1 -1
  788. package/smartMapping/raster/renderers/vectorField.d.ts +1 -1
  789. package/smartMapping/raster/support/utils.d.ts +1 -1
  790. package/smartMapping/renderers/color.d.ts +1 -1
  791. package/smartMapping/renderers/color.js +1 -1
  792. package/smartMapping/renderers/dotDensity.d.ts +1 -1
  793. package/smartMapping/renderers/dotDensity.js +1 -1
  794. package/smartMapping/renderers/heatmap.d.ts +1 -1
  795. package/smartMapping/renderers/location.d.ts +1 -1
  796. package/smartMapping/renderers/location.js +1 -1
  797. package/smartMapping/renderers/opacity.d.ts +1 -1
  798. package/smartMapping/renderers/opacity.js +1 -1
  799. package/smartMapping/renderers/pieChart.d.ts +1 -1
  800. package/smartMapping/renderers/pieChart.js +1 -1
  801. package/smartMapping/renderers/predominance.d.ts +1 -1
  802. package/smartMapping/renderers/predominance.js +1 -1
  803. package/smartMapping/renderers/relationship.d.ts +1 -1
  804. package/smartMapping/renderers/relationship.js +1 -1
  805. package/smartMapping/renderers/size.d.ts +1 -1
  806. package/smartMapping/renderers/size.js +1 -1
  807. package/smartMapping/renderers/support/utils.js +1 -1
  808. package/smartMapping/renderers/type.d.ts +1 -1
  809. package/smartMapping/renderers/type.js +1 -1
  810. package/smartMapping/renderers/univariateColorSize.d.ts +1 -1
  811. package/smartMapping/renderers/univariateColorSize.js +1 -1
  812. package/smartMapping/statistics/classBreaks.d.ts +1 -1
  813. package/smartMapping/statistics/classBreaks.js +1 -1
  814. package/smartMapping/statistics/heatmapStatistics.d.ts +1 -1
  815. package/smartMapping/statistics/histogram.d.ts +1 -1
  816. package/smartMapping/statistics/histogram.js +1 -1
  817. package/smartMapping/statistics/predominantCategories.d.ts +1 -1
  818. package/smartMapping/statistics/predominantCategories.js +1 -1
  819. package/smartMapping/statistics/summaryStatistics.d.ts +1 -1
  820. package/smartMapping/statistics/summaryStatistics.js +1 -1
  821. package/smartMapping/statistics/summaryStatisticsForAge.d.ts +1 -1
  822. package/smartMapping/statistics/summaryStatisticsForAttributes.js +1 -1
  823. package/smartMapping/statistics/support/ageUtils.d.ts +1 -1
  824. package/smartMapping/statistics/support/predominanceUtils.d.ts +1 -1
  825. package/smartMapping/statistics/uniqueValues.d.ts +1 -1
  826. package/smartMapping/statistics/uniqueValues.js +1 -1
  827. package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
  828. package/smartMapping/support/adapters/FeatureLayerBinningAdapter.js +5 -0
  829. package/smartMapping/support/adapters/SceneLayerAdapter.js +1 -1
  830. package/smartMapping/support/adapters/support/layerUtils.js +1 -1
  831. package/smartMapping/support/adapters/support/utils.js +1 -1
  832. package/smartMapping/support/binningUtils.js +1 -1
  833. package/smartMapping/symbology/color.d.ts +1 -1
  834. package/smartMapping/symbology/dotDensity.d.ts +1 -1
  835. package/smartMapping/symbology/flow.d.ts +1 -1
  836. package/smartMapping/symbology/heatmap.d.ts +1 -1
  837. package/smartMapping/symbology/location.d.ts +1 -1
  838. package/smartMapping/symbology/pieChart.d.ts +1 -1
  839. package/smartMapping/symbology/predominance.d.ts +1 -1
  840. package/smartMapping/symbology/relationship.d.ts +1 -1
  841. package/smartMapping/symbology/size.d.ts +1 -1
  842. package/smartMapping/symbology/support/colorRamps.d.ts +1 -1
  843. package/smartMapping/symbology/type.d.ts +1 -1
  844. package/support/LayersMixin.d.ts +1 -1
  845. package/support/MapFloorInfo.d.ts +1 -1
  846. package/support/TablesMixin.d.ts +1 -1
  847. package/support/actions/ActionBase.d.ts +1 -1
  848. package/support/actions/ActionButton.d.ts +1 -1
  849. package/support/actions/ActionToggle.d.ts +1 -1
  850. package/support/popupUtils.d.ts +1 -1
  851. package/support/revision.js +1 -1
  852. package/support/timeUtils.d.ts +1 -1
  853. package/symbols/CIMSymbol.d.ts +1 -1
  854. package/symbols/ExtrudeSymbol3DLayer.d.ts +1 -1
  855. package/symbols/FillSymbol.d.ts +1 -1
  856. package/symbols/FillSymbol3DLayer.d.ts +1 -1
  857. package/symbols/Font.d.ts +1 -1
  858. package/symbols/IconSymbol3DLayer.d.ts +1 -1
  859. package/symbols/LabelSymbol3D.d.ts +1 -1
  860. package/symbols/LineStyleMarker3D.d.ts +1 -1
  861. package/symbols/LineSymbol.d.ts +1 -1
  862. package/symbols/LineSymbol3D.d.ts +1 -1
  863. package/symbols/LineSymbol3DLayer.d.ts +1 -1
  864. package/symbols/LineSymbolMarker.d.ts +1 -1
  865. package/symbols/MarkerSymbol.d.ts +1 -1
  866. package/symbols/MeshSymbol3D.d.ts +1 -1
  867. package/symbols/ObjectSymbol3DLayer.d.ts +1 -1
  868. package/symbols/PathSymbol3DLayer.d.ts +1 -1
  869. package/symbols/PictureFillSymbol.d.ts +1 -1
  870. package/symbols/PictureMarkerSymbol.d.ts +1 -1
  871. package/symbols/PointSymbol3D.d.ts +1 -1
  872. package/symbols/PolygonSymbol3D.d.ts +1 -1
  873. package/symbols/SimpleFillSymbol.d.ts +1 -1
  874. package/symbols/SimpleLineSymbol.d.ts +1 -1
  875. package/symbols/SimpleMarkerSymbol.d.ts +1 -1
  876. package/symbols/Symbol.d.ts +1 -1
  877. package/symbols/Symbol3D.d.ts +1 -1
  878. package/symbols/Symbol3DLayer.d.ts +1 -1
  879. package/symbols/TextSymbol.d.ts +1 -1
  880. package/symbols/TextSymbol3DLayer.d.ts +1 -1
  881. package/symbols/WaterSymbol3DLayer.d.ts +1 -1
  882. package/symbols/WebStyleSymbol.d.ts +1 -1
  883. package/symbols/callouts/Callout3D.d.ts +1 -1
  884. package/symbols/callouts/LineCallout3D.d.ts +1 -1
  885. package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
  886. package/symbols/edges/Edges3D.d.ts +1 -1
  887. package/symbols/edges/SketchEdges3D.d.ts +1 -1
  888. package/symbols/edges/SolidEdges3D.d.ts +1 -1
  889. package/symbols/patterns/LineStylePattern3D.d.ts +1 -1
  890. package/symbols/patterns/StylePattern3D.d.ts +1 -1
  891. package/symbols/support/StyleOrigin.d.ts +1 -1
  892. package/symbols/support/Symbol3DVerticalOffset.d.ts +1 -1
  893. package/symbols/support/cimSymbolUtils.d.ts +1 -1
  894. package/symbols/support/jsonUtils.d.ts +1 -1
  895. package/symbols/support/previewCIMSymbol.js +1 -1
  896. package/symbols/support/previewSymbol2D.js +1 -1
  897. package/symbols/support/symbolUtils.d.ts +1 -1
  898. package/symbols/support/symbolUtils.js +1 -1
  899. package/symbols.d.ts +1 -1
  900. package/views/2d/LabelManager.js +1 -1
  901. package/views/2d/ViewState.d.ts +1 -1
  902. package/views/2d/ViewState.js +1 -1
  903. package/views/2d/engine/flow/FlowDisplayObject.js +1 -1
  904. package/views/2d/engine/imagery/RasterVFTile.js +1 -1
  905. package/views/2d/engine/vectorTiles/TileHandler.js +1 -1
  906. package/views/2d/engine/vectorTiles/VectorTile.js +1 -1
  907. package/views/2d/engine/webgl/AttributeStoreView.js +1 -1
  908. package/views/2d/engine/webgl/OverlayContainer.js +1 -1
  909. package/views/2d/engine/webgl/Painter.js +1 -1
  910. package/views/2d/engine/webgl/TextureUploadManager.js +1 -1
  911. package/views/2d/engine/webgl/TiledDisplayObject.js +1 -1
  912. package/views/2d/engine/webgl/WGLTile.js +1 -1
  913. package/views/2d/engine/webgl/WorldExtentClipRenderer.js +1 -1
  914. package/views/2d/engine/webgl/collisions/CollisionEngine.js +1 -1
  915. package/views/2d/layers/BaseLayerView2D.d.ts +1 -1
  916. package/views/2d/layers/BaseLayerViewGL2D.d.ts +1 -1
  917. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  918. package/views/2d/layers/features/controllers/FeatureController2D.js +1 -1
  919. package/views/2d/layers/graphics/GraphicBoundsRenderer.js +1 -1
  920. package/views/2d/layers/support/DebugOverlay.js +1 -1
  921. package/views/2d/layers/support/FeatureLayerProxy.js +1 -1
  922. package/views/3d/analysis/AreaMeasurement/support/MeasurementData.js +1 -1
  923. package/views/3d/analysis/AreaMeasurementAnalysisView3D.d.ts +1 -1
  924. package/views/3d/analysis/Dimension/DimensionTool.js +1 -1
  925. package/views/3d/analysis/Dimension/DimensionVisualization.js +1 -1
  926. package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
  927. package/views/3d/analysis/Dimension/lengthDimensionConstraintUtils.js +1 -1
  928. package/views/3d/analysis/Dimension/lengthDimensionManipulatorUtils.js +1 -1
  929. package/views/3d/analysis/Dimension/lengthDimensionUtils.js +1 -1
  930. package/views/3d/analysis/Dimension/settings.js +1 -1
  931. package/views/3d/analysis/DirectLineMeasurementAnalysisView3D.d.ts +1 -1
  932. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  933. package/views/3d/analysis/LineOfSightAnalysisResult.d.ts +1 -1
  934. package/views/3d/analysis/LineOfSightAnalysisView3D.d.ts +1 -1
  935. package/views/3d/analysis/Slice/SliceTool.js +1 -1
  936. package/views/3d/analysis/Slice/SliceVisualization.js +1 -1
  937. package/views/3d/analysis/Slice/sliceToolConfig.js +1 -1
  938. package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
  939. package/views/3d/analysis/SliceAnalysisView3D.d.ts +1 -1
  940. package/views/3d/camera/constraintUtils/distance.js +1 -1
  941. package/views/3d/camera/constraintUtils/tilt.js +1 -1
  942. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  943. package/views/3d/environment/CloudsCompositionParameters.js +1 -1
  944. package/views/3d/environment/CloudyWeather.d.ts +1 -1
  945. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  946. package/views/3d/environment/FoggyWeather.d.ts +1 -1
  947. package/views/3d/environment/RainyWeather.d.ts +1 -1
  948. package/views/3d/environment/SceneViewEnvironmentManager.js +1 -1
  949. package/views/3d/environment/SimpleAtmosphere.js +1 -1
  950. package/views/3d/environment/SnowyWeather.d.ts +1 -1
  951. package/views/3d/environment/SunLighting.d.ts +1 -1
  952. package/views/3d/environment/SunnyWeather.d.ts +1 -1
  953. package/views/3d/environment/VirtualLighting.d.ts +1 -1
  954. package/views/3d/externalRenderers.d.ts +1 -1
  955. package/views/3d/glTF/internal/Resource.js +1 -1
  956. package/views/3d/interactive/Manipulator3D.js +1 -1
  957. package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
  958. package/views/3d/interactive/editingTools/reshapeGraphic/ReshapeOperation.js +1 -1
  959. package/views/3d/interactive/editingTools/reshapeGraphic/edgeOffsetUtils.js +1 -1
  960. package/views/3d/interactive/editingTools/settings.js +1 -1
  961. package/views/3d/interactive/editingTools/transformGraphic/ExtentTransformTool.js +1 -1
  962. package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
  963. package/views/3d/interactive/manipulatorUtils.js +1 -1
  964. package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
  965. package/views/3d/interactive/visualElements/LineVisualElement.js +1 -1
  966. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  967. package/views/3d/layers/I3SMeshView3D.js +1 -1
  968. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  969. package/views/3d/layers/PointCloudWorker.js +1 -1
  970. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  971. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  972. package/views/3d/layers/graphics/Graphics3DLodInstanceGraphicLayer.js +1 -1
  973. package/views/3d/layers/graphics/Graphics3DObject3DGraphicLayer.js +1 -1
  974. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  975. package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
  976. package/views/3d/layers/graphics/elevationAlignPointsInFeatures.js +1 -1
  977. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  978. package/views/3d/layers/i3s/I3SElevationProvider.js +1 -1
  979. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  980. package/views/3d/layers/i3s/I3SMeshViewFilter.js +1 -1
  981. package/views/3d/layers/i3s/I3SUtil.js +1 -1
  982. package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
  983. package/views/3d/layers/i3s/PointRenderer.js +1 -1
  984. package/views/3d/layers/support/FeatureTileVisibility3D.js +1 -1
  985. package/views/3d/layers/support/I3STreeDebugger.js +1 -1
  986. package/views/3d/layers/support/edgeUtils.js +1 -1
  987. package/views/3d/layers/support/uvUtils.js +1 -1
  988. package/views/3d/state/Frustum.js +1 -1
  989. package/views/3d/state/ViewStateManager.js +1 -1
  990. package/views/3d/state/controllers/GamepadKeyboardController.js +1 -1
  991. package/views/3d/state/controllers/RotateController.js +1 -1
  992. package/views/3d/state/controllers/global/PinchAndPanController.js +1 -1
  993. package/views/3d/state/controllers/local/PinchAndPanController.js +1 -1
  994. package/views/3d/state/controllers/local/ZoomController.js +1 -1
  995. package/views/3d/state/controllers/momentum/ZoomPlanarMomentumController.js +1 -1
  996. package/views/3d/state/utils/navigationUtils.js +1 -1
  997. package/views/3d/support/FrustumExtentIntersection.js +1 -1
  998. package/views/3d/support/LayerPerformanceInfo.d.ts +1 -1
  999. package/views/3d/support/SceneViewPerformanceInfo.d.ts +1 -1
  1000. package/views/3d/support/orientedBoundingBox.js +1 -1
  1001. package/views/3d/support/pointsOfInterest/CameraOnSurface.js +1 -1
  1002. package/views/3d/support/pointsOfInterest/CenterOnSurface.js +1 -1
  1003. package/views/3d/support/pointsOfInterest/PointsOfInterest.js +1 -1
  1004. package/views/3d/support/sunUtils.js +1 -1
  1005. package/views/3d/terrain/PatchRenderData.js +1 -1
  1006. package/views/3d/terrain/TerrainSurface.js +1 -1
  1007. package/views/3d/terrain/Tile.js +1 -1
  1008. package/views/3d/terrain/TileRenderer.js +1 -1
  1009. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  1010. package/views/3d/webgl-engine/collections/Component/DepthRange.js +1 -1
  1011. package/views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js +1 -1
  1012. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +2 -2
  1013. package/views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js +1 -1
  1014. package/views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js +22 -0
  1015. package/views/3d/webgl-engine/core/util/TwoVectorPosition.js +1 -1
  1016. package/views/3d/webgl-engine/lib/Camera.js +1 -1
  1017. package/views/3d/webgl-engine/lib/GeometryRecord.js +1 -1
  1018. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  1019. package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
  1020. package/views/3d/webgl-engine/lib/Intersector.js +1 -1
  1021. package/views/3d/webgl-engine/lib/Object3D.js +1 -1
  1022. package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
  1023. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  1024. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  1025. package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
  1026. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  1027. package/views/3d/webgl-engine/lib/edgeRendering/edgePreprocessing.js +1 -1
  1028. package/views/3d/webgl-engine/lib/lodRendering/InstanceOctree.js +1 -1
  1029. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  1030. package/views/3d/webgl-engine/lib/pathGeometryUtils.js +1 -1
  1031. package/views/3d/webgl-engine/lib/verticalOffsetUtils.js +1 -1
  1032. package/views/3d/webgl-engine/lighting/SphericalHarmonics.js +1 -1
  1033. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  1034. package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
  1035. package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
  1036. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  1037. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  1038. package/views/3d/webgl-engine/parts/Model.js +1 -1
  1039. package/views/3d/webgl-engine/shaders/LineMarker.glsl.js +1 -1
  1040. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  1041. package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
  1042. package/views/BasemapView.d.ts +1 -1
  1043. package/views/BreakpointsOwner.d.ts +1 -1
  1044. package/views/DOMContainer.d.ts +1 -1
  1045. package/views/GroundView.d.ts +1 -1
  1046. package/views/Magnifier.d.ts +1 -1
  1047. package/views/MapView.d.ts +1 -1
  1048. package/views/MapView.js +1 -1
  1049. package/views/SceneView.d.ts +1 -1
  1050. package/views/ToolViewManager.js +1 -1
  1051. package/views/View.d.ts +1 -1
  1052. package/views/ViewAnimation.d.ts +1 -1
  1053. package/views/analysis/DimensionAnalysisView.d.ts +1 -1
  1054. package/views/analysis/LengthDimensionResult.d.ts +1 -1
  1055. package/views/draw/Draw.d.ts +1 -1
  1056. package/views/draw/Draw.js +1 -1
  1057. package/views/draw/DrawAction.d.ts +1 -1
  1058. package/views/draw/DrawGraphicTool.js +1 -1
  1059. package/views/draw/DrawOperation.js +1 -1
  1060. package/views/draw/MultipointDrawAction.d.ts +1 -1
  1061. package/views/draw/MultipointDrawAction.js +1 -1
  1062. package/views/draw/PointDrawAction.d.ts +1 -1
  1063. package/views/draw/PolygonDrawAction.d.ts +1 -1
  1064. package/views/draw/PolylineDrawAction.d.ts +1 -1
  1065. package/views/draw/SegmentDrawAction.d.ts +1 -1
  1066. package/views/draw/drawSurfaces.js +1 -1
  1067. package/views/draw/support/surfaceCoordinateSystems.js +1 -1
  1068. package/views/input/Input.d.ts +1 -1
  1069. package/views/input/gamepad/GamepadInputDevice.d.ts +1 -1
  1070. package/views/input/gamepad/GamepadSettings.d.ts +1 -1
  1071. package/views/interactive/coordinateHelper.js +1 -1
  1072. package/views/interactive/dragEventPipeline.js +1 -1
  1073. package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
  1074. package/views/interactive/editGeometry/support/editPlaneUtils.js +1 -1
  1075. package/views/interactive/sketch/SketchLabelOptions.d.ts +1 -1
  1076. package/views/interactive/sketch/SketchTooltipOptions.d.ts +1 -1
  1077. package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
  1078. package/views/interactive/snapping/FeatureSnappingLayerSource.d.ts +1 -1
  1079. package/views/interactive/snapping/RightAngleSnapper.js +1 -1
  1080. package/views/interactive/snapping/SnappingConstraint.js +1 -1
  1081. package/views/interactive/snapping/SnappingDragPipelineStep.js +1 -1
  1082. package/views/interactive/snapping/SnappingOperation.js +1 -1
  1083. package/views/interactive/snapping/SnappingOptions.d.ts +1 -1
  1084. package/views/interactive/snapping/candidates/DrapedEdgeSnappingCandidate.js +5 -0
  1085. package/views/interactive/snapping/featureSources/FeatureCollectionSnappingSource.js +1 -1
  1086. package/views/interactive/snapping/featureSources/FeatureServiceSnappingSource.js +1 -1
  1087. package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
  1088. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorkerHandle.js +1 -1
  1089. package/views/interactive/snapping/featureSources/queryEngineUtils.js +1 -1
  1090. package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorker.js +1 -1
  1091. package/views/interactive/snapping/featureSources/snappingCandidateElevationAlignment.js +1 -1
  1092. package/views/interactive/snapping/featureSources/snappingCandidateElevationFilter.js +1 -1
  1093. package/views/interactive/snapping/snappingUtils.js +1 -1
  1094. package/views/interactive/tooltip/DrawTooltipInfos.js +1 -1
  1095. package/views/interactive/tooltip/content/TooltipContentDrawPolygon.js +1 -1
  1096. package/views/interactive/tooltip/content/TooltipContentDrawPolyline.js +1 -1
  1097. package/views/layers/BuildingComponentSublayerView.d.ts +1 -1
  1098. package/views/layers/BuildingSceneLayerView.d.ts +1 -1
  1099. package/views/layers/CSVLayerView.d.ts +1 -1
  1100. package/views/layers/DimensionLayerView.d.ts +1 -1
  1101. package/views/layers/FeatureLayerView.d.ts +1 -1
  1102. package/views/layers/GeoJSONLayerView.d.ts +1 -1
  1103. package/views/layers/GeoRSSLayerView.d.ts +1 -1
  1104. package/views/layers/GraphicsLayerView.d.ts +1 -1
  1105. package/views/layers/ImageryLayerView.d.ts +1 -1
  1106. package/views/layers/KMLLayerView.d.ts +1 -1
  1107. package/views/layers/LayerView.d.ts +1 -1
  1108. package/views/layers/OGCFeatureLayerView.d.ts +1 -1
  1109. package/views/layers/PointCloudLayerView.d.ts +1 -1
  1110. package/views/layers/SceneLayerView.d.ts +1 -1
  1111. package/views/layers/StreamLayerView.d.ts +1 -1
  1112. package/views/layers/WFSLayerView.d.ts +1 -1
  1113. package/views/navigation/Navigation.d.ts +1 -1
  1114. package/views/navigation/PanSphericalMomentumEstimator.js +1 -1
  1115. package/views/navigation/gamepad/GamepadSettings.d.ts +1 -1
  1116. package/views/support/Scheduler.js +1 -1
  1117. package/views/support/colorUtils.d.ts +1 -1
  1118. package/views/support/euclideanAreaMeasurementUtils.js +1 -1
  1119. package/views/support/geometry3dUtils.js +1 -1
  1120. package/views/ui/DefaultUI.d.ts +1 -1
  1121. package/views/ui/UI.d.ts +1 -1
  1122. package/webdoc/GeotriggersInfo.d.ts +1 -1
  1123. package/webdoc/applicationProperties/Search.d.ts +1 -1
  1124. package/webdoc/applicationProperties/SearchLayer.d.ts +1 -1
  1125. package/webdoc/applicationProperties/SearchLayerField.d.ts +1 -1
  1126. package/webdoc/applicationProperties/SearchTable.d.ts +1 -1
  1127. package/webdoc/applicationProperties/SearchTableField.d.ts +1 -1
  1128. package/webdoc/applicationProperties/Viewing.d.ts +1 -1
  1129. package/webdoc/geotriggersInfo/DeviceLocationFeed.d.ts +1 -1
  1130. package/webdoc/geotriggersInfo/ExpressionInfo.d.ts +1 -1
  1131. package/webdoc/geotriggersInfo/FeatureFenceParameters.d.ts +1 -1
  1132. package/webdoc/geotriggersInfo/FeatureFilter.d.ts +1 -1
  1133. package/webdoc/geotriggersInfo/FeatureLayerSource.d.ts +1 -1
  1134. package/webdoc/geotriggersInfo/FenceGeotrigger.d.ts +1 -1
  1135. package/webdoc/geotriggersInfo/Geotrigger.d.ts +1 -1
  1136. package/webdoc/geotriggersInfo/GeotriggerNotificationOptions.d.ts +1 -1
  1137. package/webmap/ApplicationProperties.d.ts +1 -1
  1138. package/webmap/Bookmark.d.ts +1 -1
  1139. package/webmap/InitialViewProperties.d.ts +1 -1
  1140. package/webmap/background/ColorBackground.d.ts +1 -1
  1141. package/webscene/ApplicationProperties.d.ts +1 -1
  1142. package/webscene/Environment.d.ts +1 -1
  1143. package/webscene/InitialViewProperties.d.ts +1 -1
  1144. package/webscene/Lighting.d.ts +1 -1
  1145. package/webscene/Presentation.d.ts +1 -1
  1146. package/webscene/Slide.d.ts +1 -1
  1147. package/webscene/Slide.js +1 -1
  1148. package/webscene/SunLighting.d.ts +1 -1
  1149. package/webscene/VirtualLighting.d.ts +1 -1
  1150. package/webscene/background/Background.d.ts +1 -1
  1151. package/webscene/background/ColorBackground.d.ts +1 -1
  1152. package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.d.ts +1 -1
  1153. package/widgets/AreaMeasurement2D.d.ts +1 -1
  1154. package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.d.ts +1 -1
  1155. package/widgets/AreaMeasurement3D.d.ts +1 -1
  1156. package/widgets/Attachments/AttachmentsViewModel.d.ts +1 -1
  1157. package/widgets/Attachments.d.ts +1 -1
  1158. package/widgets/Attribution/AttributionViewModel.d.ts +1 -1
  1159. package/widgets/Attribution.d.ts +1 -1
  1160. package/widgets/BasemapGallery/BasemapGalleryViewModel.d.ts +1 -1
  1161. package/widgets/BasemapGallery/support/BasemapGalleryItem.d.ts +1 -1
  1162. package/widgets/BasemapGallery/support/LocalBasemapsSource.d.ts +1 -1
  1163. package/widgets/BasemapGallery/support/PortalBasemapsSource.d.ts +1 -1
  1164. package/widgets/BasemapGallery.d.ts +1 -1
  1165. package/widgets/BasemapLayerList/BasemapLayerListViewModel.d.ts +1 -1
  1166. package/widgets/BasemapLayerList.d.ts +1 -1
  1167. package/widgets/BasemapToggle/BasemapToggleViewModel.d.ts +1 -1
  1168. package/widgets/BasemapToggle.d.ts +1 -1
  1169. package/widgets/Bookmarks/BookmarksViewModel.d.ts +1 -1
  1170. package/widgets/Bookmarks.d.ts +1 -1
  1171. package/widgets/BuildingExplorer/BuildingExplorerViewModel.d.ts +1 -1
  1172. package/widgets/BuildingExplorer/BuildingLevel.d.ts +1 -1
  1173. package/widgets/BuildingExplorer/BuildingPhase.d.ts +1 -1
  1174. package/widgets/BuildingExplorer.d.ts +1 -1
  1175. package/widgets/Compass/CompassViewModel.d.ts +1 -1
  1176. package/widgets/Compass.d.ts +1 -1
  1177. package/widgets/CoordinateConversion/CoordinateConversionViewModel.d.ts +1 -1
  1178. package/widgets/CoordinateConversion/support/Conversion.d.ts +1 -1
  1179. package/widgets/CoordinateConversion/support/Format.d.ts +1 -1
  1180. package/widgets/CoordinateConversion.d.ts +1 -1
  1181. package/widgets/Daylight/DaylightViewModel.d.ts +1 -1
  1182. package/widgets/Daylight.d.ts +1 -1
  1183. package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.d.ts +1 -1
  1184. package/widgets/DirectLineMeasurement3D.d.ts +1 -1
  1185. package/widgets/Directions/DirectionsViewModel.d.ts +1 -1
  1186. package/widgets/Directions.d.ts +1 -1
  1187. package/widgets/Directions.js +1 -1
  1188. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.d.ts +1 -1
  1189. package/widgets/DistanceMeasurement2D.d.ts +1 -1
  1190. package/widgets/Editor/CreateFeaturesWorkflow.d.ts +1 -1
  1191. package/widgets/Editor/CreateFeaturesWorkflowData.d.ts +1 -1
  1192. package/widgets/Editor/CreateWorkflow.d.ts +1 -1
  1193. package/widgets/Editor/CreateWorkflowData.d.ts +1 -1
  1194. package/widgets/Editor/EditorViewModel.d.ts +1 -1
  1195. package/widgets/Editor/Edits.d.ts +1 -1
  1196. package/widgets/Editor/UpdateWorkflow.d.ts +1 -1
  1197. package/widgets/Editor/UpdateWorkflowData.d.ts +1 -1
  1198. package/widgets/Editor/Workflow.d.ts +1 -1
  1199. package/widgets/Editor.d.ts +1 -1
  1200. package/widgets/Editor.js +1 -1
  1201. package/widgets/ElevationProfile/ElevationProfileLine.d.ts +1 -1
  1202. package/widgets/ElevationProfile/ElevationProfileLineGround.d.ts +1 -1
  1203. package/widgets/ElevationProfile/ElevationProfileLineInput.d.ts +1 -1
  1204. package/widgets/ElevationProfile/ElevationProfileLineQuery.d.ts +1 -1
  1205. package/widgets/ElevationProfile/ElevationProfileLineView.d.ts +1 -1
  1206. package/widgets/ElevationProfile/ElevationProfileViewModel.d.ts +1 -1
  1207. package/widgets/ElevationProfile/support/ProfileLines3D.js +1 -1
  1208. package/widgets/ElevationProfile/support/constants.js +1 -1
  1209. package/widgets/ElevationProfile.d.ts +1 -1
  1210. package/widgets/Expand/ExpandViewModel.d.ts +1 -1
  1211. package/widgets/Expand.d.ts +1 -1
  1212. package/widgets/Feature/FeatureMedia.js +1 -1
  1213. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  1214. package/widgets/Feature/FeatureViewModel.d.ts +1 -1
  1215. package/widgets/Feature/FeatureViewModel.js +1 -1
  1216. package/widgets/Feature.d.ts +1 -1
  1217. package/widgets/FeatureForm/FeatureFormViewModel.d.ts +1 -1
  1218. package/widgets/FeatureForm/FieldConfig.d.ts +1 -1
  1219. package/widgets/FeatureForm/FieldGroupConfig.d.ts +1 -1
  1220. package/widgets/FeatureForm/FormExpressionArcadeExecutor.js +1 -1
  1221. package/widgets/FeatureForm/InputField.d.ts +1 -1
  1222. package/widgets/FeatureForm/InputField.js +1 -1
  1223. package/widgets/FeatureForm/InputFieldGroup.d.ts +1 -1
  1224. package/widgets/FeatureForm.d.ts +1 -1
  1225. package/widgets/FeatureForm.js +1 -1
  1226. package/widgets/FeatureTable/FeatureTableViewModel.d.ts +1 -1
  1227. package/widgets/FeatureTable/FieldColumn.d.ts +1 -1
  1228. package/widgets/FeatureTable/FieldColumnConfig.d.ts +1 -1
  1229. package/widgets/FeatureTable/Grid/Column.d.ts +1 -1
  1230. package/widgets/FeatureTable/Grid/GroupColumn.d.ts +1 -1
  1231. package/widgets/FeatureTable/Grid/support/ButtonMenu.d.ts +1 -1
  1232. package/widgets/FeatureTable/Grid/support/ButtonMenuItem.d.ts +1 -1
  1233. package/widgets/FeatureTable/Grid/support/ButtonMenuViewModel.d.ts +1 -1
  1234. package/widgets/FeatureTable/support/ColumnTemplate.d.ts +1 -1
  1235. package/widgets/FeatureTable/support/ColumnTemplateBase.d.ts +1 -1
  1236. package/widgets/FeatureTable/support/FieldColumnTemplate.d.ts +1 -1
  1237. package/widgets/FeatureTable/support/GroupColumnTemplate.d.ts +1 -1
  1238. package/widgets/FeatureTable/support/TableTemplate.d.ts +1 -1
  1239. package/widgets/FeatureTable.d.ts +1 -1
  1240. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.d.ts +1 -1
  1241. package/widgets/FeatureTemplates/TemplateItem.d.ts +1 -1
  1242. package/widgets/FeatureTemplates/TemplateItemGroup.d.ts +1 -1
  1243. package/widgets/FeatureTemplates.d.ts +1 -1
  1244. package/widgets/FloorFilter/FloorFilterViewModel.d.ts +1 -1
  1245. package/widgets/FloorFilter.d.ts +1 -1
  1246. package/widgets/Fullscreen/FullscreenViewModel.d.ts +1 -1
  1247. package/widgets/Fullscreen.d.ts +1 -1
  1248. package/widgets/Histogram/HistogramViewModel.d.ts +1 -1
  1249. package/widgets/Histogram.d.ts +1 -1
  1250. package/widgets/HistogramRangeSlider/HistogramRangeSliderViewModel.d.ts +1 -1
  1251. package/widgets/HistogramRangeSlider.d.ts +1 -1
  1252. package/widgets/Home/HomeViewModel.d.ts +1 -1
  1253. package/widgets/Home.d.ts +1 -1
  1254. package/widgets/LayerList/LayerListViewModel.d.ts +1 -1
  1255. package/widgets/LayerList/ListItem.d.ts +1 -1
  1256. package/widgets/LayerList/ListItemPanel.d.ts +1 -1
  1257. package/widgets/LayerList.d.ts +1 -1
  1258. package/widgets/Legend/LegendViewModel.d.ts +1 -1
  1259. package/widgets/Legend/support/ActiveLayerInfo.d.ts +1 -1
  1260. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  1261. package/widgets/Legend.d.ts +1 -1
  1262. package/widgets/LineOfSight/LineOfSightTarget.d.ts +1 -1
  1263. package/widgets/LineOfSight/LineOfSightViewModel.d.ts +1 -1
  1264. package/widgets/LineOfSight.d.ts +1 -1
  1265. package/widgets/Locate/LocateViewModel.d.ts +1 -1
  1266. package/widgets/Locate.d.ts +1 -1
  1267. package/widgets/Measurement/MeasurementViewModel.d.ts +1 -1
  1268. package/widgets/Measurement.d.ts +1 -1
  1269. package/widgets/NavigationToggle/NavigationToggleViewModel.d.ts +1 -1
  1270. package/widgets/NavigationToggle.d.ts +1 -1
  1271. package/widgets/Popup/PopupViewModel.d.ts +1 -1
  1272. package/widgets/Popup.d.ts +1 -1
  1273. package/widgets/Popup.js +1 -1
  1274. package/widgets/Print/CustomTemplate.d.ts +1 -1
  1275. package/widgets/Print/PrintViewModel.d.ts +1 -1
  1276. package/widgets/Print/TemplateOptions.d.ts +1 -1
  1277. package/widgets/Print.d.ts +1 -1
  1278. package/widgets/ScaleBar/ScaleBarViewModel.d.ts +1 -1
  1279. package/widgets/ScaleBar.d.ts +1 -1
  1280. package/widgets/ScaleRangeSlider/ScaleRangeSliderViewModel.d.ts +1 -1
  1281. package/widgets/ScaleRangeSlider/ScaleRanges.d.ts +1 -1
  1282. package/widgets/ScaleRangeSlider.d.ts +1 -1
  1283. package/widgets/Search/LayerSearchSource.d.ts +1 -1
  1284. package/widgets/Search/LocatorSearchSource.d.ts +1 -1
  1285. package/widgets/Search/SearchResultRenderer.d.ts +1 -1
  1286. package/widgets/Search/SearchSource.d.ts +1 -1
  1287. package/widgets/Search/SearchViewModel.d.ts +1 -1
  1288. package/widgets/Search.d.ts +1 -1
  1289. package/widgets/ShadowCast/ShadowCastViewModel.d.ts +1 -1
  1290. package/widgets/ShadowCast.d.ts +1 -1
  1291. package/widgets/Sketch/SketchViewModel.d.ts +1 -1
  1292. package/widgets/Sketch/SketchViewModel.js +1 -1
  1293. package/widgets/Sketch/support/OperationHandle.js +1 -1
  1294. package/widgets/Sketch.d.ts +1 -1
  1295. package/widgets/Slice/SlicePlane.d.ts +1 -1
  1296. package/widgets/Slice/SliceViewModel.d.ts +1 -1
  1297. package/widgets/Slice.d.ts +1 -1
  1298. package/widgets/Slider/SliderViewModel.d.ts +1 -1
  1299. package/widgets/Slider.d.ts +1 -1
  1300. package/widgets/Swipe/SwipeViewModel.d.ts +1 -1
  1301. package/widgets/Swipe.d.ts +1 -1
  1302. package/widgets/TableList/ListItem.d.ts +1 -1
  1303. package/widgets/TableList/TableListViewModel.d.ts +1 -1
  1304. package/widgets/TableList.d.ts +1 -1
  1305. package/widgets/TimeSlider/TimeSliderViewModel.d.ts +1 -1
  1306. package/widgets/TimeSlider.d.ts +1 -1
  1307. package/widgets/Track/TrackViewModel.d.ts +1 -1
  1308. package/widgets/Track.d.ts +1 -1
  1309. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.d.ts +1 -1
  1310. package/widgets/UtilityNetworkTrace.d.ts +1 -1
  1311. package/widgets/UtilityNetworkTrace.js +1 -1
  1312. package/widgets/Weather/WeatherViewModel.d.ts +1 -1
  1313. package/widgets/Weather.d.ts +1 -1
  1314. package/widgets/Widget.d.ts +1 -1
  1315. package/widgets/Zoom/ZoomViewModel.d.ts +1 -1
  1316. package/widgets/Zoom.d.ts +1 -1
  1317. package/widgets/smartMapping/ClassedColorSlider/ClassedColorSliderViewModel.d.ts +1 -1
  1318. package/widgets/smartMapping/ClassedColorSlider.d.ts +1 -1
  1319. package/widgets/smartMapping/ClassedSizeSlider/ClassedSizeSliderViewModel.d.ts +1 -1
  1320. package/widgets/smartMapping/ClassedSizeSlider.d.ts +1 -1
  1321. package/widgets/smartMapping/ColorSizeSlider/ColorSizeSliderViewModel.d.ts +1 -1
  1322. package/widgets/smartMapping/ColorSizeSlider.d.ts +1 -1
  1323. package/widgets/smartMapping/ColorSlider/ColorSliderViewModel.d.ts +1 -1
  1324. package/widgets/smartMapping/ColorSlider.d.ts +1 -1
  1325. package/widgets/smartMapping/HeatmapSlider/HeatmapSliderViewModel.d.ts +1 -1
  1326. package/widgets/smartMapping/HeatmapSlider.d.ts +1 -1
  1327. package/widgets/smartMapping/OpacitySlider/OpacitySliderViewModel.d.ts +1 -1
  1328. package/widgets/smartMapping/OpacitySlider.d.ts +1 -1
  1329. package/widgets/smartMapping/SizeSlider/SizeSliderViewModel.d.ts +1 -1
  1330. package/widgets/smartMapping/SizeSlider.d.ts +1 -1
  1331. package/widgets/smartMapping/SmartMappingPrimaryHandleSliderViewModel.d.ts +1 -1
  1332. package/widgets/smartMapping/SmartMappingSliderBase.d.ts +1 -1
  1333. package/widgets/smartMapping/SmartMappingSliderViewModel.d.ts +1 -1
  1334. package/widgets/smartMapping/support/utils.d.ts +1 -1
  1335. package/widgets/support/DatePicker.d.ts +1 -1
  1336. package/widgets/support/DatePickerViewModel.d.ts +1 -1
  1337. package/widgets/support/DateTimeElementViewModel.d.ts +1 -1
  1338. package/widgets/support/GeolocationPositioning.d.ts +1 -1
  1339. package/widgets/support/GoTo.d.ts +1 -1
  1340. package/widgets/support/SnappingControls/SnappingControlsViewModel.d.ts +1 -1
  1341. package/widgets/support/SnappingControls.d.ts +1 -1
  1342. package/widgets/support/TimePicker.d.ts +1 -1
  1343. package/widgets/support/TimePickerViewModel.d.ts +1 -1
  1344. package/widgets/support/widget.d.ts +1 -1
  1345. package/assets/esri/core/workers/chunks/09255015e57bdfa5337f.js +0 -1
  1346. package/assets/esri/core/workers/chunks/24ffd7180bb947bc8aec.js +0 -1
  1347. package/assets/esri/core/workers/chunks/2d6d089176b6bd490b9f.js +0 -1
  1348. package/assets/esri/core/workers/chunks/325f9eb52610c6c22f46.js +0 -1
  1349. package/assets/esri/core/workers/chunks/6a2358861b3d3007ad26.js +0 -1
  1350. package/assets/esri/core/workers/chunks/7230a7d5fb7106b14024.js +0 -1
  1351. package/assets/esri/core/workers/chunks/90dfa238d78c92fe43b1.js +0 -1
  1352. package/assets/esri/core/workers/chunks/a16109389dce496ab51c.js +0 -1
  1353. package/assets/esri/core/workers/chunks/bf248b08e18a50878f38.js +0 -1
  1354. package/assets/esri/core/workers/chunks/c9399a106dc167368a39.js +0 -1
  1355. package/assets/esri/core/workers/chunks/ceb68e994b82d69c1215.js +0 -1
  1356. package/assets/esri/core/workers/chunks/dbf72099949febfae5a1.js +0 -1
  1357. package/assets/esri/core/workers/chunks/e158ca25c239a5912ea0.js +0 -1
  1358. package/assets/esri/core/workers/chunks/ece3d9989c9ec13cae09.js +0 -1
  1359. package/assets/esri/core/workers/chunks/f6772f57bb1466e50d63.js +0 -1
  1360. package/chunks/MultipointDrawAction.js +0 -5
  1361. package/smartMapping/statistics/summaryStatisticsForBinning.js +0 -5
  1362. package/views/2d/draw/Draw.js +0 -5
  1363. package/views/2d/draw/DrawAction.js +0 -5
  1364. package/views/2d/draw/MultipointDrawAction.js +0 -5
  1365. package/views/2d/draw/PointDrawAction.js +0 -5
  1366. package/views/2d/draw/PolygonDrawAction.js +0 -5
  1367. package/views/2d/draw/PolylineDrawAction.js +0 -5
  1368. package/views/2d/draw/SegmentDrawAction.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../../Color.js";import"../../../../geometry.js";import{lengthDimensionMeasureType as t,LengthDimensionMeasureType as n}from"../../../../analysis/dimensionUtils.js";import{cyclicalDegrees as r}from"../../../../core/Cyclical.js";import{rad2deg as o}from"../../../../core/mathUtils.js";import{isNone as i,unwrapOr as a}from"../../../../core/maybe.js";import{pt2px as s}from"../../../../core/screenUtils.js";import{k as c}from"../../../../chunks/mat4.js";import{c as m}from"../../../../chunks/mat4f64.js";import{g as d,c as p,b as u,f as l,e as f,l as g,s as h,p as y}from"../../../../chunks/vec3.js";import{c as v,Z as S,f as M}from"../../../../chunks/vec3f64.js";import{fromPositionAndNormal as j,create as x,signedDistance as P,normal as H}from"../../../../geometry/support/plane.js";import{sv3d as w}from"../../../../geometry/support/vectorStacks.js";import{clonePoint as C}from"../../../../layers/graphics/hydratedFeatures.js";import{isValidComputation as T,computeGeometryFromDimension as k,computationToGeometryDependencies as b,headingFromGeometry as z,computeOffsetForPoint as O,computeSegmentForMeasureType as U,computeOffsetAxis as D,directUp as R,directStartToEnd as F,dimensionStartToEnd as E}from"./lengthDimensionUtils.js";import{settings as L}from"./settings.js";import{Manipulator3D as A}from"../../interactive/Manipulator3D.js";import{createSphereManipulator as G,worldScaledManipulatorSettings as B,createRotateManipulator as I,calculateInputRotationTransform as N,calculateTranslateRotateFromBases as V}from"../../interactive/manipulatorUtils.js";import{screenToMap3D as W,screenToRenderPlane as Z,hideManipulatorWhileDragging as q}from"../../interactive/editingTools/dragEventPipeline3D.js";import{EuclideanSegment as J}from"../../interactive/visualElements/support/Segment.js";import{MARKER_SIZE_PER_LINE_WIDTH as K}from"../../support/engineContent/marker.js";import{createPolylineGeometry as Q}from"../../webgl-engine/lib/GeometryUtil.js";import{createManipulatorDragEventPipeline as X,resetProperties as Y,EventPipeline as $}from"../../../interactive/dragEventPipeline.js";import{ManipulatorStateCustomFlags as _,ManipulatorStateFlags as ee}from"../../../interactive/interfaces.js";import te from"../../../../geometry/Point.js";class ne{constructor(e){this.start=e.start,this.end=e.end,this.offset=e.offset,this.heading=e.heading,this.rotation=e.rotation,this.direct=e.direct,this.horizontal=e.horizontal,this.vertical=e.vertical}manipulatorName(e){return Object.keys(this).find((t=>this.hasOwnProperty(t)&&e===this[t]))}values(){return[this.start,this.end,this.offset,this.heading,this.rotation,this.direct,this.horizontal,this.vertical]}forEachMeasureTypeManipulator(e){for(const n of t)e(this.manipulatorForMeasureType(n),n)}manipulatorForMeasureType(e){switch(e){case n.Direct:return this.direct;case n.Horizontal:return this.horizontal;case n.Vertical:return this.vertical}}}function re(t,n){const r=G(t,e.toUnitRGB(L.pointManipulators.color),L.pointManipulators.opacity,Ue);return r.available=!1,r.grabCursor="crosshair",r.radius=L.pointManipulators.radius,r.metadata=n.metadata,r.collisionPriority=1,r}function oe(e,t){const n=[M(-.5,0,0),M(.5,0,0)],{lengthFraction:r}=L.offsetManipulator,o=Q(n.map((e=>d(v(),e,r))));return new A({view:e,renderObjects:[{geometry:o,material:t.unfocusedMaterial,stateMask:ee.Unfocused|ee.Selected|Ue},{geometry:o,material:t.focusedMaterial,stateMask:ee.Focused|Ue}],collisionType:{type:"line",paths:[n]},radius:Oe(t.lineSizePt)/2,metadata:t.metadata,available:!1,...B})}function ie({lineSizePt:e,metadata:t}){const n=10;return{calloutLength:.25*K*s(e)+n,calloutOpacity:.5,calloutWidth:2,customStateMask:Ue,discScale:.25,focusMultiplier:2,metadata:t}}function ae(e,t){const{manipulator:n,updateOptions:r}=I(e,t.texture,ie(t));return{manipulator:n,updateLineSize:e=>{r(ie({lineSizePt:e,metadata:t.metadata}))}}}function se(e,t){const n=[M(-.5,0,0),M(.5,0,0)],{lengthFraction:r}=L.offsetManipulator,o=Q(n),i=Q(n.map((e=>d(v(),e,r))));return new A({view:e,renderObjects:[{geometry:i,material:t.unfocusedMaterial,stateMask:ee.Unfocused|Ue},{geometry:i,material:t.focusedMaterial,stateMask:ee.Focused|Ue},{geometry:o,material:t.thinOffsetManipulatorMaterial,stateMask:Ue}],collisionType:{type:"line",paths:[n]},radius:Oe(t.lineSizePt)/2,available:!1,metadata:t.metadata,...B})}function ce(e,{isStart:t,createSnappingPipelineStep:n,dimension:r,onUpdate:o,snappingPipeline:i,view:a}){const s=t?"startPoint":"endPoint",c=X(e,((e,t,c,m)=>{const d=q(e);t.next(d).next(W(a)).next(n(c,m),i.next).next((e=>{const t=C(e.mapEnd,new te);o("startPoint"===s?{startPoint:t}:{endPoint:t})})),c.next(d).next(Y(r,[s]))}));return[c]}function me(e,{computation:t,view:n}){return[X(e,((e,r,o)=>{if(!T(t)||!e.selected)return;const{geometry:i,dimension:a}=t,s=q(e);r.next(s).next(he(n,a,i.dimensionSegment,i.primaryOffsetAxis)),o.next(s).next(Y(a,["offset"]))}))]}function de(e,{computation:t,view:n}){return[X(e,((e,r,o)=>{le({cancel:o,computation:t,settingHeading:!0,steps:r,view:n})}))]}function pe(e,{computation:t,view:n}){return[X(e,((e,r,o)=>{le({cancel:o,computation:t,settingHeading:!1,steps:r,view:n})})),e.events.on("immediate-click",(e=>{ue(e,t,n)}))]}function ue(e,t,n){const{dimension:o,geometry:a}=t;if(90===o.orientation||270===o.orientation)return o.orientation=0,void e.stopPropagation();if(i(a))return;const{renderCoordsHelper:s}=n,c=k({...b(t),orientation:90},s),m=k({...b(t),orientation:270},s);if(i(c)||i(m))return;const d=z(c,s),p=z(m,s),u=ye(a,n),l=r.shortestSignedDiff(u,d),f=r.shortestSignedDiff(u,p);o.orientation=Math.abs(l)<Math.abs(f)?90:270,e.stopPropagation()}function le(e){const{cancel:t,computation:n,settingHeading:r,steps:i,view:s}=e;if(!T(n))return;const{renderCoordsHelper:c}=s,{dimension:m,geometry:d}=n,u=v(),l=we(v(),d,d.directSegment,c),f=Ce(w.get(),{forHeading:r,geometry:d,renderCoordsHelper:c}),g=j(l,f,x()),h=a(m.orientation,r?()=>z(d,s.renderCoordsHelper):0);i.next(Z(s,g)).next((e=>{"start"===e.action&&p(u,e.renderStart);const t=H(g),n=N(u,e.renderEnd,l,t);let i=h-o(n);r||(i=fe(i)),m.orientation=i})),t.next(Y(m,["orientation"]))}function fe(e){const t=r.normalize(e)%90;return t<L.orientationSnapThresholdDegrees?e-t:90-t<L.orientationSnapThresholdDegrees?e+(90-t):e}function ge(e,{computation:t,manipulatorMeasureType:r,view:o}){let i=n.Direct,a=0,s=0;return[e.events.on("grab-changed",(n=>{if("start"!==n.action||!T(t))return;const{dimension:c,geometry:m}=t;i=c.measureType,a=c.offset,s=c.orientation;const d=p(w.get(),e.renderLocation);c.measureType=r,c.offset=O(d,r,m,o.renderCoordsHelper),c.orientation=0})),X(e,((e,n,c)=>{if(!T(t))return;const{geometry:m,dimension:d}=t,{renderCoordsHelper:p}=o,u=U(Ee,r,t,p),l=D(w.get(),{measureType:r,directSegment:m.directSegment,renderCoordsHelper:p}),f=q(e);n.next(f).next(he(o,d,u,l)),c.next(f).next((e=>(d.measureType=i,d.offset=a,d.orientation=s,e)))}))]}function he(e,t,n,r){const o=u(w.get(),n.endRenderSpace,n.startRenderSpace);l(o,o,r);const i=j(n.startRenderSpace,o,x()),a=j(n.startRenderSpace,r,x()),s=t.offset;let c,m=0;const d=new $;return d.next(Z(e,i)).next((n=>{"start"===n.action&&(m=P(a,n.renderStart));const r=(P(a,n.renderEnd)-m)*e.renderCoordsHelper.unitInMeters;t.offset=s+r,c=n})),e=>(d.execute(e),c)}function ye(e,t){const{directSegment:n}=e,{renderCoordsHelper:r}=t,o=R(w.get(),e,r),i=F(w.get(),e),a=l(w.get(),i,o),{viewForward:s}=t.state.camera;f(a,s)>0&&d(a,a,-1);const c=n.eval(.5,w.get());return r.headingAtPosition(c,a)}function ve(e,t){const{dimensionSegment:n,primaryOffsetAxis:r}=t,o=E(De,t),i=V(o,r,S,Fe),a=g(o);c(i,i,h(De,a,a,a)),e.modelTransform=i,e.renderLocation=n.eval(.5,De)}function Se(e,t,n){je(e,t,n,{forHeading:!0})}function Me(e,t,n){je(e,t,n,{forHeading:!1})}function je(e,t,n,{forHeading:r}){const{dimension:o,geometry:i}=t,{primaryOffsetAxis:a}=i,s=d(xe,a,o.offset>=0?1:-1),c=Ce(Pe,{forHeading:r,geometry:i,renderCoordsHelper:n});l(c,c,s);const m=V(s,c,S,Fe);e.modelTransform=m,e.renderLocation=we(De,i,i.dimensionSegment,n)}const xe=v(),Pe=v();function He(e,t,n,r){const{geometry:o}=t,i=U(Ee,n,t,r),a=D(De,{measureType:n,directSegment:o.directSegment,renderCoordsHelper:r}),s=y(Re,i.endRenderSpace,i.startRenderSpace),m=V(s,a,S,Fe),d=g(s);c(m,m,h(Re,d,d,d)),e.modelTransform=m,e.renderLocation=i.eval(.5,Re)}function we(e,t,n,r){const{startRenderSpace:o,endRenderSpace:i}=n,a=Te(t,r)?o:i;return p(e,a)}function Ce(e,{forHeading:t,geometry:n,renderCoordsHelper:r}){return t?R(e,n,r):E(e,n,{invert:!0})}function Te(e,t){const n=F(ke,e),r=R(be,e,t);return f(n,r)>0}const ke=v(),be=v();function ze(e){return s(e)+L.offsetManipulator.linePaddingPx}function Oe(e){return s(e)+L.offsetManipulator.focusedLinePaddingPx}const Ue=_.Custom1,De=v(),Re=v(),Fe=m(),Ee=new J;export{Ue as DidPointerMoveRecentlyFlag,ne as LengthDimensionManipulators,ye as automaticHeadingFromCamera,se as createMeasureTypeManipulator,oe as createOffsetManipulator,ae as createOrientationManipulator,re as createPointManipulator,Oe as focusedOffsetWidth,de as headingManipulatorHandles,ge as measureTypeManipulatorHandles,me as offsetManipulatorHandles,ce as pointManipulatorHandles,pe as rotationManipulatorHandles,fe as snapOrientationToNearestRightAngle,ze as unfocusedOffsetWidth,Se as updateHeadingManipulatorTransform,He as updateMeasureTypeManipulatorTransform,ve as updateOffsetManipulatorTransform,Me as updateRotationManipulatorTransform};
5
+ import e from"../../../../Color.js";import"../../../../geometry.js";import{lengthDimensionMeasureType as t,LengthDimensionMeasureType as n}from"../../../../analysis/dimensionUtils.js";import{cyclicalDegrees as r}from"../../../../core/Cyclical.js";import{rad2deg as o}from"../../../../core/mathUtils.js";import{isNone as i,unwrapOr as a}from"../../../../core/maybe.js";import{pt2px as s}from"../../../../core/screenUtils.js";import{k as c}from"../../../../chunks/mat4.js";import{c as m}from"../../../../chunks/mat4f64.js";import{g as d,c as l,b as u,f as p,e as f,l as g,s as h,y}from"../../../../chunks/vec3.js";import{c as v,Z as S,f as M}from"../../../../chunks/vec3f64.js";import{fromPositionAndNormal as j,create as x,signedDistance as P,normal as H}from"../../../../geometry/support/plane.js";import{sv3d as w}from"../../../../geometry/support/vectorStacks.js";import{clonePoint as C}from"../../../../layers/graphics/hydratedFeatures.js";import{isValidComputation as T,computeGeometryFromDimension as k,computationToGeometryDependencies as b,headingFromGeometry as O,computeOffsetForPoint as z,computeSegmentForMeasureType as U,computeOffsetAxis as D,directUp as F,directStartToEnd as R,dimensionStartToEnd as E}from"./lengthDimensionUtils.js";import{settings as L}from"./settings.js";import{Manipulator3D as A}from"../../interactive/Manipulator3D.js";import{createSphereManipulator as G,worldScaledManipulatorSettings as W,createRotateManipulator as B,updateRotateManipulator as I,calculateInputRotationTransform as N,calculateTranslateRotateFromBases as V}from"../../interactive/manipulatorUtils.js";import{screenToMap3D as Z,screenToRenderPlane as q,hideManipulatorWhileDragging as J}from"../../interactive/editingTools/dragEventPipeline3D.js";import{EuclideanSegment as K}from"../../interactive/visualElements/support/Segment.js";import{MARKER_SIZE_PER_LINE_WIDTH as Q}from"../../support/engineContent/marker.js";import{createPolylineGeometry as X}from"../../webgl-engine/lib/GeometryUtil.js";import{createManipulatorDragEventPipeline as Y,resetProperties as $,EventPipeline as _}from"../../../interactive/dragEventPipeline.js";import{ManipulatorStateCustomFlags as ee,ManipulatorStateFlags as te}from"../../../interactive/interfaces.js";import ne from"../../../../geometry/Point.js";class re{constructor(e){this.start=e.start,this.end=e.end,this.offset=e.offset,this.heading=e.heading,this.rotation=e.rotation,this.direct=e.direct,this.horizontal=e.horizontal,this.vertical=e.vertical}manipulatorName(e){return Object.keys(this).find((t=>this.hasOwnProperty(t)&&e===this[t]))}values(){return[this.start,this.end,this.offset,this.heading,this.rotation,this.direct,this.horizontal,this.vertical]}forEachMeasureTypeManipulator(e){for(const n of t)e(this.manipulatorForMeasureType(n),n)}manipulatorForMeasureType(e){switch(e){case n.Direct:return this.direct;case n.Horizontal:return this.horizontal;case n.Vertical:return this.vertical}}}function oe(t,n){const r=G(t,e.toUnitRGB(L.pointManipulators.color),L.pointManipulators.opacity,Fe);return r.available=!1,r.grabCursor="crosshair",r.radius=L.pointManipulators.radius,r.metadata=n.metadata,r.collisionPriority=1,r}function ie(e,t){const n=[M(-.5,0,0),M(.5,0,0)],{lengthFraction:r}=L.offsetManipulator,o=X(n.map((e=>d(v(),e,r))));return new A({view:e,renderObjects:[{geometry:o,material:t.unfocusedMaterial,stateMask:te.Unfocused|te.Selected|Fe},{geometry:o,material:t.focusedMaterial,stateMask:te.Focused|Fe}],collisionType:{type:"line",paths:[n]},radius:De(t.lineSizePt)/2,metadata:t.metadata,available:!1,...W})}function ae(e,{lineSizePt:t,material:n}){const{calloutOffsetPx:r,calloutOpacity:o,calloutWidth:i,discScale:a,focusMultiplier:c}=L.orientationManipulator;return{calloutLength:.25*Q*L.markers.lineSizeFraction*s(t)+r,calloutOpacity:o,calloutWidth:i,customStateMask:Fe,discScale:a,focusMultiplier:c,material:n,metadata:e}}function se(e,t){return B(e,ae(t.metadata,t))}function ce(e,t){I(e,ae(e.metadata,t))}function me(e,t){const n=[M(-.5,0,0),M(.5,0,0)],{lengthFraction:r}=L.offsetManipulator,o=X(n),i=X(n.map((e=>d(v(),e,r))));return new A({view:e,renderObjects:[{geometry:i,material:t.unfocusedMaterial,stateMask:te.Unfocused|Fe},{geometry:i,material:t.focusedMaterial,stateMask:te.Focused|Fe},{geometry:o,material:t.thinOffsetManipulatorMaterial,stateMask:Fe}],collisionType:{type:"line",paths:[n]},radius:De(t.lineSizePt)/2,available:!1,metadata:t.metadata,...W})}function de(e,{isStart:t,createSnappingPipelineStep:n,dimension:r,onUpdate:o,snappingPipeline:i,view:a}){const s=t?"startPoint":"endPoint",c=Y(e,((e,t,c,m)=>{const d=J(e);t.next(d).next(Z(a)).next(n(c,m),i.next).next((e=>{const t=C(e.mapEnd,new ne);o("startPoint"===s?{startPoint:t}:{endPoint:t})})),c.next(d).next($(r,[s]))}));return[c]}function le(e,{computation:t,view:n}){return[Y(e,((e,r,o)=>{if(!T(t)||!e.selected)return;const{geometry:i,dimension:a}=t,s=J(e);r.next(s).next(ve(n,a,i.dimensionSegment,i.primaryOffsetAxis)),o.next(s).next($(a,["offset"]))}))]}function ue(e,{computation:t,view:n}){return[Y(e,((e,r,o)=>{ge({cancel:o,computation:t,settingHeading:!0,steps:r,view:n})}))]}function pe(e,{computation:t,view:n}){return[Y(e,((e,r,o)=>{ge({cancel:o,computation:t,settingHeading:!1,steps:r,view:n})})),e.events.on("immediate-click",(e=>{fe(e,t,n)}))]}function fe(e,t,n){const{dimension:o,geometry:a}=t;if(90===o.orientation||270===o.orientation)return o.orientation=0,void e.stopPropagation();if(i(a))return;const{renderCoordsHelper:s}=n,c=k({...b(t),orientation:90},s),m=k({...b(t),orientation:270},s);if(i(c)||i(m))return;const d=O(c,s),l=O(m,s),u=Se(a,n),p=r.shortestSignedDiff(u,d),f=r.shortestSignedDiff(u,l);o.orientation=Math.abs(p)<Math.abs(f)?90:270,e.stopPropagation()}function ge(e){const{cancel:t,computation:n,settingHeading:r,steps:i,view:s}=e;if(!T(n))return;const{renderCoordsHelper:c}=s,{dimension:m,geometry:d}=n,u=v(),p=Te(v(),d,d.directSegment,c),f=ke(w.get(),{forHeading:r,geometry:d,renderCoordsHelper:c}),g=j(p,f,x()),h=a(m.orientation,r?()=>O(d,s.renderCoordsHelper):0);i.next(q(s,g)).next((e=>{"start"===e.action&&l(u,e.renderStart);const t=H(g),n=N(u,e.renderEnd,p,t);let i=h-o(n);r||(i=he(i)),m.orientation=i})),t.next($(m,["orientation"]))}function he(e){const t=r.normalize(e)%90;return t<L.orientationSnapThresholdDegrees?e-t:90-t<L.orientationSnapThresholdDegrees?e+(90-t):e}function ye(e,{computation:t,manipulatorMeasureType:r,view:o}){let i=n.Direct,a=0,s=0;return[e.events.on("grab-changed",(n=>{if("start"!==n.action||!T(t))return;const{dimension:c,geometry:m}=t;i=c.measureType,a=c.offset,s=c.orientation;const d=l(w.get(),e.renderLocation);c.measureType=r,c.offset=z(d,r,m,o.renderCoordsHelper),c.orientation=0})),Y(e,((e,n,c)=>{if(!T(t))return;const{geometry:m,dimension:d}=t,{renderCoordsHelper:l}=o,u=U(Ae,r,t,l),p=D(w.get(),{measureType:r,directSegment:m.directSegment,renderCoordsHelper:l}),f=J(e);n.next(f).next(ve(o,d,u,p)),c.next(f).next((e=>(d.measureType=i,d.offset=a,d.orientation=s,e)))}))]}function ve(e,t,n,r){const o=u(w.get(),n.endRenderSpace,n.startRenderSpace);p(o,o,r);const i=j(n.startRenderSpace,o,x()),a=j(n.startRenderSpace,r,x()),s=t.offset;let c,m=0;const d=new _;return d.next(q(e,i)).next((n=>{"start"===n.action&&(m=P(a,n.renderStart));const r=(P(a,n.renderEnd)-m)*e.renderCoordsHelper.unitInMeters;t.offset=s+r,c=n})),e=>(d.execute(e),c)}function Se(e,t){const{directSegment:n}=e,{renderCoordsHelper:r}=t,o=F(w.get(),e,r),i=R(w.get(),e),a=p(w.get(),i,o),{viewForward:s}=t.state.camera;f(a,s)>0&&d(a,a,-1);const c=n.eval(.5,w.get());return r.headingAtPosition(c,a)}function Me(e,t){const{dimensionSegment:n,primaryOffsetAxis:r}=t,o=E(Re,t),i=V(o,r,S,Le),a=g(o);c(i,i,h(Re,a,a,a)),e.modelTransform=i,e.renderLocation=n.eval(.5,Re)}function je(e,t,n){Pe(e,t,n,{forHeading:!0})}function xe(e,t,n){Pe(e,t,n,{forHeading:!1})}function Pe(e,t,n,{forHeading:r}){const{dimension:o,geometry:i}=t,{primaryOffsetAxis:a}=i,s=d(He,a,o.offset>=0?1:-1),c=ke(we,{forHeading:r,geometry:i,renderCoordsHelper:n});p(c,c,s);const m=V(s,c,S,Le);e.modelTransform=m,e.renderLocation=Te(Re,i,i.dimensionSegment,n)}const He=v(),we=v();function Ce(e,t,n,r){const{geometry:o}=t,i=U(Ae,n,t,r),a=D(Re,{measureType:n,directSegment:o.directSegment,renderCoordsHelper:r}),s=y(Ee,i.endRenderSpace,i.startRenderSpace),m=V(s,a,S,Le),d=g(s);c(m,m,h(Ee,d,d,d)),e.modelTransform=m,e.renderLocation=i.eval(.5,Ee)}function Te(e,t,n,r){const{startRenderSpace:o,endRenderSpace:i}=n,a=be(t,r)?o:i;return l(e,a)}function ke(e,{forHeading:t,geometry:n,renderCoordsHelper:r}){return t?F(e,n,r):E(e,n,{invert:!0})}function be(e,t){const n=R(Oe,e),r=F(ze,e,t);return f(n,r)>0}const Oe=v(),ze=v();function Ue(e){return s(e)+L.offsetManipulator.linePaddingPx}function De(e){return s(e)+L.offsetManipulator.focusedLinePaddingPx}const Fe=ee.Custom1,Re=v(),Ee=v(),Le=m(),Ae=new K;export{Fe as DidPointerMoveRecentlyFlag,re as LengthDimensionManipulators,Se as automaticHeadingFromCamera,me as createMeasureTypeManipulator,ie as createOffsetManipulator,se as createOrientationManipulator,oe as createPointManipulator,De as focusedOffsetWidth,ue as headingManipulatorHandles,ye as measureTypeManipulatorHandles,le as offsetManipulatorHandles,de as pointManipulatorHandles,pe as rotationManipulatorHandles,he as snapOrientationToNearestRightAngle,Ue as unfocusedOffsetWidth,je as updateHeadingManipulatorTransform,Ce as updateMeasureTypeManipulatorTransform,Me as updateOffsetManipulatorTransform,ce as updateOrientationManipulator,xe as updateRotationManipulatorTransform};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{LengthDimensionMeasureType as e}from"../../../../analysis/dimensionUtils.js";import{deg2rad as t}from"../../../../core/mathUtils.js";import{isNone as n,isSome as r,unwrapOr as i}from"../../../../core/maybe.js";import{toUnit as o}from"../../../../core/quantityUtils.js";import{preferredVerticalLengthUnit as a,preferredLengthUnit as s}from"../../../../core/unitUtils.js";import{d}from"../../../../chunks/mat4.js";import{c}from"../../../../chunks/mat4f64.js";import{c as l,q as p,F as m,p as u,e as S,E as f,v as g,f as v,n as R,z as A}from"../../../../chunks/vec3.js";import{c as P,Z as y}from"../../../../chunks/vec3f64.js";import{Axis as E}from"../../../../geometry/support/Axis.js";import{sv3d as j}from"../../../../geometry/support/vectorStacks.js";import{makeDehydratedPoint as h}from"../../../../layers/graphics/dehydratedFeatures.js";import{clonePoint as x}from"../../../../layers/graphics/hydratedFeatures.js";import{EuclideanSegment as T}from"../../interactive/visualElements/support/Segment.js";import{euclideanDirectDistance as C,euclideanDirectDistanceBetweenPoints as H}from"../../../support/euclideanLengthMeasurementUtils.js";function w(t,r,i){if(n(t))return null;const d=t.dimensionSegment.startRenderSpace,c=t.dimensionSegment.endRenderSpace,l=C(d,c,t.spatialReference);if(n(l))return null;const p=r===e.Vertical?a(l.value,l.unit,i):s(l.value,l.unit,i);return o(l,p)}function z(e){const{elevationAlignedStartPoint:t,elevationAlignedEndPoint:n,dimension:{offset:r,measureType:i,orientation:o}}=e;return{elevationAlignedStartPoint:t,elevationAlignedEndPoint:n,offset:r,measureType:i,orientation:o}}function k({elevationAlignedStartPoint:t,elevationAlignedEndPoint:i,offset:o,measureType:a,orientation:s},d,c=null){if(n(t)||n(i))return null;const p=D(r(c)?c.directSegment:new T,{elevationAlignedStartPoint:t,elevationAlignedEndPoint:i},d),m=r(c)?c.primaryOffsetAxis:P();L(m,{measureType:a,elevationAlignedStartPoint:t,elevationAlignedEndPoint:i,directSegment:p,orientation:s,renderCoordsHelper:d});const u=r(c)?c.dimensionSegment:new T;return Z({elevationAlignedStartPoint:t,elevationAlignedEndPoint:i})&&a===e.Vertical?(l(u.startRenderSpace,p.startRenderSpace),l(u.endRenderSpace,p.endRenderSpace)):G(u,{offsetAxis:m,offset:o,relativeToSegment:p,renderCoordsHelper:d}),{directSegment:p,dimensionSegment:u,primaryOffsetAxis:m,spatialReference:d.spatialReference}}function U(e,t,n,r){return t===b.Start?(l(e.startRenderSpace,n.startRenderSpace),l(e.endRenderSpace,r.startRenderSpace)):(l(e.startRenderSpace,n.endRenderSpace),l(e.endRenderSpace,r.endRenderSpace)),e}var b;function M(e,t,n,r){p(e.startRenderSpace,t.startRenderSpace,n,r),p(e.endRenderSpace,t.endRenderSpace,n,r)}function V(t,n,r,i){switch(n){case e.Direct:return D(t,r,i);case e.Horizontal:case e.Vertical:{const{elevationAlignedStartPoint:o,elevationAlignedEndPoint:a,dimension:s,geometry:d}=r;let c;if(s.measureType===e.Direct){c=F(d,i)===o.z>a.z,n===e.Horizontal&&(c=!c)}else c=!O(d);const[l,p]=c?[o,a]:[a,o],m=x(p,q);return n===e.Horizontal?m.z=l.z:(m.x=l.x,m.y=l.y),i.toRenderCoords(l,t.startRenderSpace),i.toRenderCoords(m,t.endRenderSpace),t}}}function D(e,t,n){return n.toRenderCoords(t.elevationAlignedStartPoint,e.startRenderSpace),n.toRenderCoords(t.elevationAlignedEndPoint,e.endRenderSpace),e}function F(e,t){const n=e.directSegment.eval(.5,j.get()),r=t.worldUpAtPosition(n,j.get()),i=e.dimensionSegment.eval(.5,j.get());if(m(n,i))return!1;const o=u(j.get(),i,n);return S(o,r)>0}function O(e){const{startRenderSpace:t,endRenderSpace:n}=e.dimensionSegment,{startRenderSpace:r,endRenderSpace:i}=e.directSegment;return f(r,t)<f(i,n)}!function(e){e[e.Start=0]="Start",e[e.End=1]="End"}(b||(b={}));const q=h(0,0,0,null);function I(e,t,n,r){const{directSegment:i}=n,o=L(j.get(),{measureType:t,directSegment:i,renderCoordsHelper:r}),a=G(B,{offsetAxis:o,offset:0,relativeToSegment:i,renderCoordsHelper:r}).eval(.5,j.get()),s=u(j.get(),e,a);return S(s,o)*r.unitInMeters}const B=new T;function L(n,r){const{measureType:o,elevationAlignedStartPoint:a,elevationAlignedEndPoint:s,directSegment:{startRenderSpace:c,endRenderSpace:p},directSegment:f,renderCoordsHelper:A}=r,P=f.eval(.5,j.get()),h=A.worldUpAtPosition(P,j.get()),x=A.worldBasisAtPosition(P,E.Y,j.get());switch(o){case e.Horizontal:l(n,h);break;case e.Vertical:S(c,h)<S(p,h)?u(n,p,c):u(n,c,p),v(n,n,h),v(n,n,h);break;case e.Direct:{const e=i(r.orientation,0);if(Z({elevationAlignedStartPoint:a,elevationAlignedEndPoint:s}))d(Y,-t(e),h),g(n,x,Y);else{const r=u(j.get(),p,c),i=v(j.get(),r,h);v(i,i,r),d(Y,t(e),r),g(n,i,Y)}break}}return m(n,y)?l(n,x):R(n,n)}const Y=c();function Z({elevationAlignedStartPoint:e,elevationAlignedEndPoint:t}){return r(e)&&r(t)&&e.x===t.x&&e.y===t.y}function G(e,t){const{offsetAxis:n,offset:r,relativeToSegment:{startRenderSpace:i,endRenderSpace:o},relativeToSegment:a,renderCoordsHelper:s}=t,d=r/s.unitInMeters,[c,l]=J(i,o,n,d);return p(e.startRenderSpace,a.startRenderSpace,n,c),p(e.endRenderSpace,a.endRenderSpace,n,l),e}function J(e,t,n,r=0){const i=S(t,n),o=S(e,n),a=Math.abs(i-o)+r;return i>o?[a,r]:[r,a]}function K(e,t,n){const r=t.directSegment.eval(.5,j.get());return n.worldUpAtPosition(r,e)}function N(e,t){const{startRenderSpace:n,endRenderSpace:r}=t.directSegment;return u(e,r,n)}function Q(e,t,n={invert:!1}){const{startRenderSpace:r,endRenderSpace:i}=t.dimensionSegment;return n.invert?u(e,r,i):u(e,i,r)}function W(e,t){const n=e.directSegment.eval(.5,j.get());return t.headingAtPosition(n,e.primaryOffsetAxis)}function X(e,t){return A(Q($,e))/t**2}const $=P();function _(e){const{elevationAlignedStartPoint:t,elevationAlignedEndPoint:i}=e;if(n(t)||n(i))return!1;const a=H(t,i);return r(a)&&o(a,"meters").value>ee}const ee=1e5;function te(e){return r(e.geometry)}export{ee as GEODESIC_DISTANCE_THRESHOLD,b as OffsetSegmentLocation,Z as arePointsVerticallyAligned,z as computationToGeometryDependencies,k as computeGeometryFromDimension,w as computeLength,L as computeOffsetAxis,I as computeOffsetForPoint,V as computeSegmentForMeasureType,U as computeSpanningSegment,Q as dimensionStartToEnd,N as directStartToEnd,K as directUp,W as headingFromGeometry,_ as isGeodesicDimension,te as isValidComputation,X as maxScreenLengthSquaredFromGeometry,M as offsetSegment};
5
+ import{LengthDimensionMeasureType as e}from"../../../../analysis/dimensionUtils.js";import{deg2rad as t}from"../../../../core/mathUtils.js";import{isNone as n,isSome as r,unwrapOr as i}from"../../../../core/maybe.js";import{toUnit as o}from"../../../../core/quantityUtils.js";import{preferredVerticalLengthUnit as a,preferredLengthUnit as s}from"../../../../core/unitUtils.js";import{d}from"../../../../chunks/mat4.js";import{c}from"../../../../chunks/mat4f64.js";import{c as l,z as p,F as m,y as u,e as S,E as f,m as g,f as v,n as R,p as A}from"../../../../chunks/vec3.js";import{c as P,Z as y}from"../../../../chunks/vec3f64.js";import{Axis as E}from"../../../../geometry/support/Axis.js";import{sv3d as j}from"../../../../geometry/support/vectorStacks.js";import{makeDehydratedPoint as h}from"../../../../layers/graphics/dehydratedFeatures.js";import{clonePoint as x}from"../../../../layers/graphics/hydratedFeatures.js";import{EuclideanSegment as T}from"../../interactive/visualElements/support/Segment.js";import{euclideanDirectDistance as C,euclideanDirectDistanceBetweenPoints as H}from"../../../support/euclideanLengthMeasurementUtils.js";function w(t,r,i){if(n(t))return null;const d=t.dimensionSegment.startRenderSpace,c=t.dimensionSegment.endRenderSpace,l=C(d,c,t.spatialReference);if(n(l))return null;const p=r===e.Vertical?a(l.value,l.unit,i):s(l.value,l.unit,i);return o(l,p)}function z(e){const{elevationAlignedStartPoint:t,elevationAlignedEndPoint:n,dimension:{offset:r,measureType:i,orientation:o}}=e;return{elevationAlignedStartPoint:t,elevationAlignedEndPoint:n,offset:r,measureType:i,orientation:o}}function k({elevationAlignedStartPoint:t,elevationAlignedEndPoint:i,offset:o,measureType:a,orientation:s},d,c=null){if(n(t)||n(i))return null;const p=D(r(c)?c.directSegment:new T,{elevationAlignedStartPoint:t,elevationAlignedEndPoint:i},d),m=r(c)?c.primaryOffsetAxis:P();L(m,{measureType:a,elevationAlignedStartPoint:t,elevationAlignedEndPoint:i,directSegment:p,orientation:s,renderCoordsHelper:d});const u=r(c)?c.dimensionSegment:new T;return Z({elevationAlignedStartPoint:t,elevationAlignedEndPoint:i})&&a===e.Vertical?(l(u.startRenderSpace,p.startRenderSpace),l(u.endRenderSpace,p.endRenderSpace)):G(u,{offsetAxis:m,offset:o,relativeToSegment:p,renderCoordsHelper:d}),{directSegment:p,dimensionSegment:u,primaryOffsetAxis:m,spatialReference:d.spatialReference}}function U(e,t,n,r){return t===b.Start?(l(e.startRenderSpace,n.startRenderSpace),l(e.endRenderSpace,r.startRenderSpace)):(l(e.startRenderSpace,n.endRenderSpace),l(e.endRenderSpace,r.endRenderSpace)),e}var b;function M(e,t,n,r){p(e.startRenderSpace,t.startRenderSpace,n,r),p(e.endRenderSpace,t.endRenderSpace,n,r)}function V(t,n,r,i){switch(n){case e.Direct:return D(t,r,i);case e.Horizontal:case e.Vertical:{const{elevationAlignedStartPoint:o,elevationAlignedEndPoint:a,dimension:s,geometry:d}=r;let c;if(s.measureType===e.Direct){c=F(d,i)===o.z>a.z,n===e.Horizontal&&(c=!c)}else c=!O(d);const[l,p]=c?[o,a]:[a,o],m=x(p,I);return n===e.Horizontal?m.z=l.z:(m.x=l.x,m.y=l.y),i.toRenderCoords(l,t.startRenderSpace),i.toRenderCoords(m,t.endRenderSpace),t}}}function D(e,t,n){return n.toRenderCoords(t.elevationAlignedStartPoint,e.startRenderSpace),n.toRenderCoords(t.elevationAlignedEndPoint,e.endRenderSpace),e}function F(e,t){const n=e.directSegment.eval(.5,j.get()),r=t.worldUpAtPosition(n,j.get()),i=e.dimensionSegment.eval(.5,j.get());if(m(n,i))return!1;const o=u(j.get(),i,n);return S(o,r)>0}function O(e){const{startRenderSpace:t,endRenderSpace:n}=e.dimensionSegment,{startRenderSpace:r,endRenderSpace:i}=e.directSegment;return f(r,t)<f(i,n)}!function(e){e[e.Start=0]="Start",e[e.End=1]="End"}(b||(b={}));const I=h(0,0,0,null);function q(e,t,n,r){const{directSegment:i}=n,o=L(j.get(),{measureType:t,directSegment:i,renderCoordsHelper:r}),a=G(B,{offsetAxis:o,offset:0,relativeToSegment:i,renderCoordsHelper:r}).eval(.5,j.get()),s=u(j.get(),e,a);return S(s,o)*r.unitInMeters}const B=new T;function L(n,r){const{measureType:o,elevationAlignedStartPoint:a,elevationAlignedEndPoint:s,directSegment:{startRenderSpace:c,endRenderSpace:p},directSegment:f,renderCoordsHelper:A}=r,P=f.eval(.5,j.get()),h=A.worldUpAtPosition(P,j.get()),x=A.worldBasisAtPosition(P,E.Y,j.get());switch(o){case e.Horizontal:l(n,h);break;case e.Vertical:S(c,h)<S(p,h)?u(n,p,c):u(n,c,p),v(n,n,h),v(n,n,h);break;case e.Direct:{const e=i(r.orientation,0);if(Z({elevationAlignedStartPoint:a,elevationAlignedEndPoint:s}))d(Y,-t(e),h),g(n,x,Y);else{const r=u(j.get(),p,c),i=v(j.get(),r,h);v(i,i,r),d(Y,t(e),r),g(n,i,Y)}break}}return m(n,y)?l(n,x):R(n,n)}const Y=c();function Z({elevationAlignedStartPoint:e,elevationAlignedEndPoint:t}){return r(e)&&r(t)&&e.x===t.x&&e.y===t.y}function G(e,t){const{offsetAxis:n,offset:r,relativeToSegment:{startRenderSpace:i,endRenderSpace:o},relativeToSegment:a,renderCoordsHelper:s}=t,d=r/s.unitInMeters,[c,l]=J(i,o,n,d);return p(e.startRenderSpace,a.startRenderSpace,n,c),p(e.endRenderSpace,a.endRenderSpace,n,l),e}function J(e,t,n,r=0){const i=S(t,n),o=S(e,n),a=Math.abs(i-o)+r;return i>o?[a,r]:[r,a]}function K(e,t,n){const r=t.directSegment.eval(.5,j.get());return n.worldUpAtPosition(r,e)}function N(e,t){const{startRenderSpace:n,endRenderSpace:r}=t.directSegment;return u(e,r,n)}function Q(e,t,n={invert:!1}){const{startRenderSpace:r,endRenderSpace:i}=t.dimensionSegment;return n.invert?u(e,r,i):u(e,i,r)}function W(e,t){const n=e.directSegment.eval(.5,j.get());return t.headingAtPosition(n,e.primaryOffsetAxis)}function X(e,t){return A(Q($,e))/t**2}const $=P();function _(e){const{elevationAlignedStartPoint:t,elevationAlignedEndPoint:i}=e;if(n(t)||n(i))return!1;const a=H(t,i);return r(a)&&o(a,"meters").value>ee}const ee=1e5;function te(e){return r(e.geometry)}export{ee as GEODESIC_DISTANCE_THRESHOLD,b as OffsetSegmentLocation,Z as arePointsVerticallyAligned,z as computationToGeometryDependencies,k as computeGeometryFromDimension,w as computeLength,L as computeOffsetAxis,q as computeOffsetForPoint,V as computeSegmentForMeasureType,U as computeSpanningSegment,Q as dimensionStartToEnd,N as directStartToEnd,K as directUp,W as headingFromGeometry,_ as isGeodesicDimension,te as isValidComputation,X as maxScreenLengthSquaredFromGeometry,M as offsetSegment};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import t from"../../../../Color.js";const s={main:new t([255,127,0])};class i{constructor(){this.color=s.main,this.opacity=.5,this.radius=5}}class n{constructor(){this.lineSizeFraction=.8}}class o{constructor(){this.color=s.main,this.opacity=.5,this.linePaddingPx=4,this.focusedLinePaddingPx=6,this.lengthFraction=.5}}class e{constructor(){this.lineSizeFraction=.25}}class r{constructor(){this.marginPx=20,this.minScreenLengthFontSizeFactor=5}}class c{constructor(){this.color=new t([255,127,0,.5])}}class a{constructor(){this.pointManipulators=new i,this.offsetManipulator=new o,this.markers=new n,this.labels=new r,this.offsetLine=new e,this.constraint=new c,this.constraintThresholdPx=10,this.initialOffsetPx=50,this.orientationSnapThresholdDegrees=5,this.smallScreenLengthLineSizeFactor=2,this.pointerMoveTimeoutMs=2500}}const h=new a;export{h as settings};
5
+ import t from"../../../../Color.js";const s={main:new t([255,127,0])};class i{constructor(){this.color=s.main,this.opacity=.5,this.radius=5}}class o{constructor(){this.lineSizeFraction=.8}}class n{constructor(){this.color=s.main,this.opacity=.5,this.linePaddingPx=4,this.focusedLinePaddingPx=6,this.lengthFraction=.5}}class c{constructor(){this.calloutOffsetPx=15,this.calloutOpacity=.5,this.calloutWidth=2,this.discScale=.25,this.focusMultiplier=2}}class e{constructor(){this.lineSizeFraction=.25}}class r{constructor(){this.marginPx=20,this.minScreenLengthFontSizeFactor=5}}class a{constructor(){this.color=new t([255,127,0,.5])}}class h{constructor(){this.pointManipulators=new i,this.offsetManipulator=new n,this.orientationManipulator=new c,this.markers=new o,this.labels=new r,this.offsetLine=new e,this.constraint=new a,this.constraintThresholdPx=10,this.initialOffsetPx=50,this.orientationSnapThresholdDegrees=5,this.smallScreenLengthLineSizeFactor=2,this.pointerMoveTimeoutMs=2500}}const l=new h;export{l as settings};
@@ -1,4 +1,4 @@
1
1
  import "../../../interfaces";
2
2
 
3
- import DirectLineMeasurementAnalysisView3D = __esri.DirectLineMeasurementAnalysisView3D;
3
+ import DirectLineMeasurementAnalysisView3D = __esri.DirectLineMeasurementAnalysisView3D;
4
4
  export default DirectLineMeasurementAnalysisView3D;
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import"../../../../geometry.js";import{getFeatureId as t}from"../../../../analysis/featureReferenceUtils.js";import o from"../../../../core/Accessor.js";import{createTask as i}from"../../../../core/asyncUtils.js";import n from"../../../../core/Evented.js";import r from"../../../../core/Handles.js";import{handlesGroup as s,makeHandle as a}from"../../../../core/handleUtils.js";import l from"../../../../core/Logger.js";import{isNone as c,isSome as d,abortMaybe as u,unwrapOr as p,none as h}from"../../../../core/maybe.js";import{ignoreAbortErrors as g}from"../../../../core/promiseUtils.js";import{initial as v}from"../../../../core/reactiveUtils.js";import{property as m}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as f}from"../../../../core/accessorSupport/decorators/subclass.js";import{c as _,i as b,b as y,n as C,g as I,a as T,j as P,p as O}from"../../../../chunks/vec3.js";import{c as S}from"../../../../chunks/vec3f64.js";import{WatchUpdatingTracking as j}from"../../../../core/support/WatchUpdatingTracking.js";import{projectOrLoad as w,projectBoundingRect as R}from"../../../../geometry/projection.js";import{empty as A,containsPointObject as E,intersectsSegment as H}from"../../../../geometry/support/aaBoundingRect.js";import{fromPoints as F,create as L}from"../../../../geometry/support/ray.js";import{zValueInAbsoluteHeightMode as V}from"../../../../support/elevationInfoUtils.js";import{LineOfSightAnalysisResult as D}from"../LineOfSightAnalysisResult.js";import{LineOfSightComputation as x}from"./LineOfSightComputation.js";import{LineOfSightRayIntersector as N}from"./LineOfSightRayIntersector.js";import{logFailedGeometryProjectionError as k}from"../support/projectionUtils.js";import{StoreResults as z}from"../../webgl-engine/lib/IntersectorInterfaces.js";import{toGraphic as G,hasLod as U,getIntersectedFeatureBSRadius as M}from"../../webgl-engine/lib/intersectorUtilsConversions.js";import{ImmediateTask as Z,TaskPriority as q}from"../../../support/Scheduler.js";import B from"../../../../geometry/Point.js";const W="esri.views.3d.analysis.LineOfSight.LineOfSightController",J=l.getLogger(W);let K=class extends(n.EventedMixin(o)){constructor(e){super(e),this.updateOnCameraChange=!0,this._effectiveObserverElevationMode="absolute-height",this._observerFeatureId=null,this._updatingHandles=new j,this._frameTask=Z,this._handles=new r,this._computationHandles=new r,this._externalObserverUpdate=!0}initialize(){const e=this.view.resourceController?.scheduler;this._frameTask=e?e.registerTask(q.LINE_OF_SIGHT_TOOL):Z,this._intersector=new N({view:this.view}),this._handles.add([this._connectObserver(),this._connectComputations(),this._connectTargets()])}destroy(){this._handles.destroy(),this._computationHandles.destroy(),this._computations.removeAll(),this._updatingHandles.destroy()}get updating(){return this._frameTask.updating||this._updatingHandles.updating}get priority(){return this._frameTask.priority}set priority(e){this._frameTask.priority=e}get _computations(){return this.analysisViewData.computations}get _elevationAlignedObserverPositionRenderSpace(){return this.analysisViewData.observerEngineLocation}set _elevationAlignedObserverPositionRenderSpace(e){this.analysisViewData.observerEngineLocation=e}get _screenPixelSize(){return this.view.state.camera.computeScreenPixelSizeAt(this._elevationAlignedObserverPositionRenderSpace)}_computeResult(e){const t=e.computation,{inputPoints:o,computationResult:i}=t,{observerAdjusted:n,targetAdjusted:r}=o,{start:s,end:a}=i;_(s,n),_(a,r);this._canCompute(t)?this._computeIntersection(e):this._interpolateIntersection(e),t.notifyResultChanged(),this.emit("result-changed",{target:e.computation.target,result:t.result})}_updateAdjustedPointsFromFeatures(e){const o=this.view,{sceneIntersectionHelper:i}=o,{inputPoints:n}=e,{observerAdjusted:r,observerFeatureId:s,targetFeatureId:a,targetAdjusted:l}=n;if(c(s)&&c(a))return;const u=b(r,l),p=this._intersector.intersector,h=F(n.observer,n.target,Y);p.options.store=z.ALL,i.intersectToolIntersectorRay(h,p);let g=null,v=null,m=null,f=null;for(const _ of p.results.all){const e=G(_,this.view);if(c(e)||c(_.distanceInRenderSpace))continue;const i=t(e);c(i)||(d(s)&&i===s&&(c(g)&&(g=this._getFeatureDistanceThreshold(_,o,u)),_.distanceInRenderSpace<g&&(m=_)),d(a)&&i===a&&(c(v)&&(v=this._getFeatureDistanceThreshold(_,o,u)),c(f)&&_.distanceInRenderSpace<u&&u-_.distanceInRenderSpace<v&&(f=_)))}d(m)&&m.getIntersectionPoint(r)&&(n.observerSurfaceNormal=m.getTransformedNormal(S())),d(f)&&f.getIntersectionPoint(l)&&(n.targetSurfaceNormal=f.getTransformedNormal(S()))}_getFeatureDistanceThreshold(e,t,o){if(U(e)){const i=M(e,t);if(d(i))return Math.min(i*ee,o)}return 1e-5*o}_adjustStartEndPositions(e){const t=this._screenPixelSize,o=this.view,{inputPoints:i}=e,{observer:n,observerSurfaceNormal:r,target:s,targetSurfaceNormal:a,observerAdjusted:l,targetAdjusted:c}=i,u=X;_(l,n),_(c,s),this._updateAdjustedPointsFromFeatures(e),d(r)?_(u,r):y(u,c,l);const p=t;C(u,u),I(u,u,Math.min(p,1)),T(l,l,u),d(a)?_(u,a):y(u,l,c);const h=o.state.camera.computeScreenPixelSizeAt(c);C(u,u),I(u,u,Math.min(h,1)),T(c,c,u)}_computeIntersection({computation:e,interpolationInfo:t}){const{view:o}=this,{sceneIntersectionHelper:i,renderCoordsHelper:n}=o;if(c(i))return;const r=this._intersector.intersector,{computationResult:s,inputPoints:a}=e,{observer:l,target:u}=a,{start:p,end:h}=s,g=F(p,h,Y);r.options.store=z.MIN,i.intersectToolIntersectorRay(g,r);const v=r.results.min,m=s.intersection,f=X;let b=!0;if(d(v)&&v.getIntersectionPoint(m)){_(t.originalIntersection,m),_(t.originalObserver,p),_(t.originalTarget,h),n.fromRenderCoords(m,f,o.spatialReference);const e=1-P(h,u)/P(p,u);b=P(l,m)>=e*P(l,u)}const y=new B(f,o.spatialReference);{const{result:t,target:i}=e;d(t)?(t.target=i,t.intersectedGraphic=b?null:G(v,o),t.intersectedLocation=b?null:y,t.visible=b):e.result=new D({target:i,elevationAlignedTargetLocation:e.elevationAlignedTargetLocation,intersectedGraphic:b?null:G(v,o),intersectedLocation:b?null:y,visible:b})}s.isValid=a.isValid=!0,s.isTargetVisible=b}_interpolateIntersection({computation:e,interpolationInfo:t}){const{computationResult:o,inputPoints:i}=e,{start:n,end:r,intersection:s}=o,{originalIntersection:a,originalObserver:l,originalTarget:c}=t;if(_(s,a),i.isValid){const e=X,t=P(l,a)/P(l,c);O(e,n,l),I(e,e,1-t),T(s,s,e),O(e,r,c),I(e,e,t),T(s,s,e),o.isValid=!0}else e.result=null,o.isValid=!1,o.isTargetVisible=!1}_canCompute(e){const t=this.analysisViewData.elevationAlignedObserver,o=this.view.frustum;if(c(t)||c(e.elevationAlignedTargetLocation)||c(o))return!1;const{observerAdjusted:i,targetAdjusted:n}=e.inputPoints,r=o.intersectsPoint(i),s=o.intersectsPoint(n);return r&&s}_onObserverPositionChange(e,o,i,n,r){if(this._externalObserverUpdate=r,c(e))return this.analysisViewData.elevationAlignedObserver=null,void(this._observerFeatureId=null);if(c(o))return k(this.analysis,e.spatialReference,J),void(this.analysisViewData.elevationAlignedObserver=null);const s=this._getEffectiveElevationInfo(o,i),{absoluteZ:a,elevation:l}=V(o.x,o.y,o.z,this.view.spatialReference,this.view,s),d=o.clone();d.z=a,this._effectiveObserverElevationMode=s.mode,this.analysisViewData.elevationAlignedObserver=d;const u=S();this.view.renderCoordsHelper.toRenderCoords(d,u),this._elevationAlignedObserverPositionRenderSpace=u,this._observerGroundOffsetRenderSpace=a-l,this._observerFeatureId=t(n),this.priority=q.LINE_OF_SIGHT_TOOL_INTERACTIVE}_onObserverRenderSpacePositionChangeForComputation(e,t,o,i,n){const{inputPoints:r}=e;switch(_(r.observer,t),r.observerFeatureId=n,r.observerSurfaceNormal=null,i){case"on-the-ground":case"relative-to-ground":{const e=this._intersector.updateFromGroundIntersection(r.observer,o,r.observer);c(r.observerFeatureId)&&(r.observerSurfaceNormal=e)}}this._adjustStartEndPositions(e),e.notifyInputPointsChanged(),this.priority=q.LINE_OF_SIGHT_TOOL_INTERACTIVE}_onTargetPositionChange(e,o,i,n,r,s=!0){const a=e.inputPoints;if(s&&(a.isValid=!1),c(i))return d(o)&&k(this.analysis,o.spatialReference,J),e.elevationAlignedTargetLocation=null,void e.notifyInputPointsChanged();const l=this._getEffectiveElevationInfo(i,n),{absoluteZ:u,elevation:p}=V(i.x,i.y,i.z,this.view.spatialReference,this.view,l),h=i.clone();switch(h.z=u,e.elevationAlignedTargetLocation=h,this.view.renderCoordsHelper.toRenderCoords(e.elevationAlignedTargetLocation,a.target),a.targetFeatureId=t(r),a.targetSurfaceNormal=null,l.mode){case"on-the-ground":case"relative-to-ground":{const e=this._intersector.updateFromGroundIntersection(a.target,u-p,a.target);c(a.targetFeatureId)&&(a.targetSurfaceNormal=e)}}this._adjustStartEndPositions(e),e.notifyInputPointsChanged(),this.priority=q.LINE_OF_SIGHT_TOOL_INTERACTIVE}_connectComputationToTarget(e){return s([this._updatingHandles.add((()=>({computation:e,targetPosition:e.target.position,targetElevationInfo:e.target.elevationInfo,targetFeatureInfo:e.target.feature,projectedTargetPosition:w(e.target.position,this.view.spatialReference)})),(({computation:e,targetPosition:t,targetElevationInfo:o,targetFeatureInfo:i,projectedTargetPosition:n})=>{d(n.pending)?this._updatingHandles.addPromise(n.pending):this._onTargetPositionChange(e,t,n.geometry,o,i)}),v)])}_connectComputationToObserver(e){return this._updatingHandles.add((()=>({computation:e,observer:this.analysisViewData.elevationAlignedObserver})),(({computation:e})=>{this._externalObserverUpdate&&(e.inputPoints.isValid=!1,e.notifyInputPointsChanged())}),v)}_connectComputationToRenderSpaceObserver(e){return this._updatingHandles.add((()=>({computation:e,observer:this._elevationAlignedObserverPositionRenderSpace,observerGroundOffset:this._observerGroundOffsetRenderSpace,observerElevationMode:this._effectiveObserverElevationMode,observerFeatureId:this._observerFeatureId})),(({computation:e,observer:t,observerGroundOffset:o,observerElevationMode:i,observerFeatureId:n})=>{this._onObserverRenderSpacePositionChangeForComputation(e,t,o,i,n)}),v)}_connectComputationToCamera(e){return this._updatingHandles.add((()=>({camera:this.view.state.camera,isDirty:this._isCameraDirty})),(({isDirty:t})=>{!this.updateOnCameraChange||e.inputPoints.isValid&&!t||e.notifyInputPointsChanged()}))}_connectComputationToSlicePlane(e){return this._updatingHandles.add((()=>this.view.slicePlane),(()=>{e.inputPoints.isValid=!1,e.notifyInputPointsChanged()}))}_connectComputationToElevation(e){const t=(o,i)=>{const n=this.analysis.observer,r=e.target;let s=null,a=null,l=null,u=null,p=null,h=null;if(d(n)&&d(n.position)){const e=w(n.position,this.view.spatialReference);if(d(e.pending))return this._updatingHandles.addPromise(e.pending),void e.pending.finally((()=>t(o,i)));s=e.geometry,a=n.elevationInfo,l=n.feature}if(d(r.position)){const e=w(r.position,this.view.spatialReference);if(d(e.pending))return this._updatingHandles.addPromise(e.pending),void e.pending.finally((()=>t(o,i)));u=e.geometry,p=r.elevationInfo,h=r.feature}c(s)&&c(u)||(R(o,i,$,this.view.spatialReference),d(s)&&E($,s)&&this._onObserverPositionChange(d(n)?n.position:null,s,a,l,!1),d(u)&&E($,u)&&this._onTargetPositionChange(e,r.position,u,p,h,!1),d(s)&&d(u)&&H($,s,u)&&e.notifyInputPointsChanged())};return this.view.elevationProvider.on("elevation-change",(e=>t(e.extent,e.spatialReference)))}_connectComputationToTask(e){let t=h;const o={computation:e,interpolationInfo:{originalIntersection:S(),originalObserver:S(),originalTarget:S()}};return s([this._updatingHandles.add((()=>e.inputPoints),(()=>{t=u(t),t=i((async e=>{await g(this._frameTask.schedule((()=>this._computeResult(o)),e))}))}),{initial:!0,equals:()=>!1}),a((()=>t=u(t)))])}_connectComputation(e){const t=this._computationHandles;t.has(e)||t.add([this._connectComputationToTarget(e),this._connectComputationToObserver(e),this._connectComputationToRenderSpaceObserver(e),this._connectComputationToCamera(e),this._connectComputationToSlicePlane(e),this._connectComputationToElevation(e),this._connectComputationToTask(e)],e)}_disconnectComputation(e){this._computationHandles.remove(e)}_onComputationCollectionChange({added:e,removed:t}){for(const o of t)this._disconnectComputation(o);for(const o of e)this._connectComputation(o)}_onTargetCollectionChange({added:e,removed:t}){for(const o of t)this._removeTarget(o);for(const o of e)this._addTarget(o)}_onCursorTargetChange(e,t){d(t)&&this._removeTarget(t),d(e)&&this._addTarget(e)}_addTarget(e){this._computations.some((t=>t.target===e))||this._computations.add(new x({target:e}))}_removeTarget(e){const t=this._computations.findIndex((t=>t.target===e));this._computations.removeAt(t)}_connectObserver(){return s([this._updatingHandles.add((()=>({observerPosition:d(this.analysis.observer)?this.analysis.observer.position:null,projectedObserverPosition:w(d(this.analysis.observer)?this.analysis.observer.position:null,this.view.spatialReference),observerElevationInfo:d(this.analysis.observer)?this.analysis.observer.elevationInfo:null,observerFeatureInfo:d(this.analysis.observer)?this.analysis.observer.feature:null})),(({observerPosition:e,projectedObserverPosition:t,observerElevationInfo:o,observerFeatureInfo:i})=>{d(t.pending)?this._updatingHandles.addPromise(t.pending):this._onObserverPositionChange(e,t.geometry,o,i,!0)}),v)])}_connectComputations(){return this._updatingHandles.addOnCollectionChange((()=>this._computations),(e=>this._onComputationCollectionChange(e)),{initial:!0,final:!0})}_connectTargets(){return s([this._updatingHandles.addOnCollectionChange((()=>this.analysis.targets),(e=>this._onTargetCollectionChange(e)),{initial:!0,final:!0}),this._updatingHandles.add((()=>this.analysisViewData.cursorTarget),((e,t)=>{this._onCursorTargetChange(e,t)}))])}get _isCameraDirty(){const e=this.analysisViewData.elevationAlignedObserver,{view:t}=this,{renderCoordsHelper:o}=t;if(c(e)||c(o))return!1;const i=X;o.toRenderCoords(e,i);const n=t.state.camera.computeScreenPixelSizeAt(i);return Math.abs((n-this._screenPixelSize)/this._screenPixelSize)>Q}_getEffectiveElevationInfo(e,t){return e.hasZ?p(t,{mode:"absolute-height",offset:0}):{mode:"on-the-ground",offset:0}}};e([m({constructOnly:!0})],K.prototype,"analysis",void 0),e([m({constructOnly:!0})],K.prototype,"analysisViewData",void 0),e([m({constructOnly:!0})],K.prototype,"view",void 0),e([m()],K.prototype,"updating",null),e([m()],K.prototype,"priority",null),e([m()],K.prototype,"updateOnCameraChange",void 0),e([m()],K.prototype,"_computations",null),e([m()],K.prototype,"_elevationAlignedObserverPositionRenderSpace",null),e([m()],K.prototype,"_observerGroundOffsetRenderSpace",void 0),e([m()],K.prototype,"_effectiveObserverElevationMode",void 0),e([m()],K.prototype,"_observerFeatureId",void 0),e([m()],K.prototype,"_screenPixelSize",null),e([m({readOnly:!0})],K.prototype,"_updatingHandles",void 0),e([m()],K.prototype,"_frameTask",void 0),e([m()],K.prototype,"_isCameraDirty",null),K=e([f(W)],K);const Q=.1,X=S(),Y=L(),$=A(),ee=.05;export{K as LineOfSightController};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import"../../../../geometry.js";import{getFeatureId as t}from"../../../../analysis/featureReferenceUtils.js";import o from"../../../../core/Accessor.js";import{createTask as i}from"../../../../core/asyncUtils.js";import n from"../../../../core/Evented.js";import r from"../../../../core/Handles.js";import{handlesGroup as s,makeHandle as a}from"../../../../core/handleUtils.js";import l from"../../../../core/Logger.js";import{isNone as c,isSome as d,abortMaybe as u,unwrapOr as p,none as h}from"../../../../core/maybe.js";import{ignoreAbortErrors as g}from"../../../../core/promiseUtils.js";import{initial as v}from"../../../../core/reactiveUtils.js";import{property as m}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as f}from"../../../../core/accessorSupport/decorators/subclass.js";import{c as _,i as b,b as y,n as C,g as I,a as T,j as P,y as O}from"../../../../chunks/vec3.js";import{c as S}from"../../../../chunks/vec3f64.js";import{WatchUpdatingTracking as j}from"../../../../core/support/WatchUpdatingTracking.js";import{projectOrLoad as w,projectBoundingRect as R}from"../../../../geometry/projection.js";import{empty as A,containsPointObject as E,intersectsSegment as H}from"../../../../geometry/support/aaBoundingRect.js";import{fromPoints as F,create as L}from"../../../../geometry/support/ray.js";import{zValueInAbsoluteHeightMode as V}from"../../../../support/elevationInfoUtils.js";import{LineOfSightAnalysisResult as D}from"../LineOfSightAnalysisResult.js";import{LineOfSightComputation as x}from"./LineOfSightComputation.js";import{LineOfSightRayIntersector as N}from"./LineOfSightRayIntersector.js";import{logFailedGeometryProjectionError as k}from"../support/projectionUtils.js";import{StoreResults as z}from"../../webgl-engine/lib/IntersectorInterfaces.js";import{toGraphic as G,hasLod as U,getIntersectedFeatureBSRadius as M}from"../../webgl-engine/lib/intersectorUtilsConversions.js";import{ImmediateTask as Z,TaskPriority as q}from"../../../support/Scheduler.js";import B from"../../../../geometry/Point.js";const W="esri.views.3d.analysis.LineOfSight.LineOfSightController",J=l.getLogger(W);let K=class extends(n.EventedMixin(o)){constructor(e){super(e),this.updateOnCameraChange=!0,this._effectiveObserverElevationMode="absolute-height",this._observerFeatureId=null,this._updatingHandles=new j,this._frameTask=Z,this._handles=new r,this._computationHandles=new r,this._externalObserverUpdate=!0}initialize(){const e=this.view.resourceController?.scheduler;this._frameTask=e?e.registerTask(q.LINE_OF_SIGHT_TOOL):Z,this._intersector=new N({view:this.view}),this._handles.add([this._connectObserver(),this._connectComputations(),this._connectTargets()])}destroy(){this._handles.destroy(),this._computationHandles.destroy(),this._computations.removeAll(),this._updatingHandles.destroy()}get updating(){return this._frameTask.updating||this._updatingHandles.updating}get priority(){return this._frameTask.priority}set priority(e){this._frameTask.priority=e}get _computations(){return this.analysisViewData.computations}get _elevationAlignedObserverPositionRenderSpace(){return this.analysisViewData.observerEngineLocation}set _elevationAlignedObserverPositionRenderSpace(e){this.analysisViewData.observerEngineLocation=e}get _screenPixelSize(){return this.view.state.camera.computeScreenPixelSizeAt(this._elevationAlignedObserverPositionRenderSpace)}_computeResult(e){const t=e.computation,{inputPoints:o,computationResult:i}=t,{observerAdjusted:n,targetAdjusted:r}=o,{start:s,end:a}=i;_(s,n),_(a,r);this._canCompute(t)?this._computeIntersection(e):this._interpolateIntersection(e),t.notifyResultChanged(),this.emit("result-changed",{target:e.computation.target,result:t.result})}_updateAdjustedPointsFromFeatures(e){const o=this.view,{sceneIntersectionHelper:i}=o,{inputPoints:n}=e,{observerAdjusted:r,observerFeatureId:s,targetFeatureId:a,targetAdjusted:l}=n;if(c(s)&&c(a))return;const u=b(r,l),p=this._intersector.intersector,h=F(n.observer,n.target,Y);p.options.store=z.ALL,i.intersectToolIntersectorRay(h,p);let g=null,v=null,m=null,f=null;for(const _ of p.results.all){const e=G(_,this.view);if(c(e)||c(_.distanceInRenderSpace))continue;const i=t(e);c(i)||(d(s)&&i===s&&(c(g)&&(g=this._getFeatureDistanceThreshold(_,o,u)),_.distanceInRenderSpace<g&&(m=_)),d(a)&&i===a&&(c(v)&&(v=this._getFeatureDistanceThreshold(_,o,u)),c(f)&&_.distanceInRenderSpace<u&&u-_.distanceInRenderSpace<v&&(f=_)))}d(m)&&m.getIntersectionPoint(r)&&(n.observerSurfaceNormal=m.getTransformedNormal(S())),d(f)&&f.getIntersectionPoint(l)&&(n.targetSurfaceNormal=f.getTransformedNormal(S()))}_getFeatureDistanceThreshold(e,t,o){if(U(e)){const i=M(e,t);if(d(i))return Math.min(i*ee,o)}return 1e-5*o}_adjustStartEndPositions(e){const t=this._screenPixelSize,o=this.view,{inputPoints:i}=e,{observer:n,observerSurfaceNormal:r,target:s,targetSurfaceNormal:a,observerAdjusted:l,targetAdjusted:c}=i,u=X;_(l,n),_(c,s),this._updateAdjustedPointsFromFeatures(e),d(r)?_(u,r):y(u,c,l);const p=t;C(u,u),I(u,u,Math.min(p,1)),T(l,l,u),d(a)?_(u,a):y(u,l,c);const h=o.state.camera.computeScreenPixelSizeAt(c);C(u,u),I(u,u,Math.min(h,1)),T(c,c,u)}_computeIntersection({computation:e,interpolationInfo:t}){const{view:o}=this,{sceneIntersectionHelper:i,renderCoordsHelper:n}=o;if(c(i))return;const r=this._intersector.intersector,{computationResult:s,inputPoints:a}=e,{observer:l,target:u}=a,{start:p,end:h}=s,g=F(p,h,Y);r.options.store=z.MIN,i.intersectToolIntersectorRay(g,r);const v=r.results.min,m=s.intersection,f=X;let b=!0;if(d(v)&&v.getIntersectionPoint(m)){_(t.originalIntersection,m),_(t.originalObserver,p),_(t.originalTarget,h),n.fromRenderCoords(m,f,o.spatialReference);const e=1-P(h,u)/P(p,u);b=P(l,m)>=e*P(l,u)}const y=new B(f,o.spatialReference);{const{result:t,target:i}=e;d(t)?(t.target=i,t.intersectedGraphic=b?null:G(v,o),t.intersectedLocation=b?null:y,t.visible=b):e.result=new D({target:i,elevationAlignedTargetLocation:e.elevationAlignedTargetLocation,intersectedGraphic:b?null:G(v,o),intersectedLocation:b?null:y,visible:b})}s.isValid=a.isValid=!0,s.isTargetVisible=b}_interpolateIntersection({computation:e,interpolationInfo:t}){const{computationResult:o,inputPoints:i}=e,{start:n,end:r,intersection:s}=o,{originalIntersection:a,originalObserver:l,originalTarget:c}=t;if(_(s,a),i.isValid){const e=X,t=P(l,a)/P(l,c);O(e,n,l),I(e,e,1-t),T(s,s,e),O(e,r,c),I(e,e,t),T(s,s,e),o.isValid=!0}else e.result=null,o.isValid=!1,o.isTargetVisible=!1}_canCompute(e){const t=this.analysisViewData.elevationAlignedObserver,o=this.view.frustum;if(c(t)||c(e.elevationAlignedTargetLocation)||c(o))return!1;const{observerAdjusted:i,targetAdjusted:n}=e.inputPoints,r=o.intersectsPoint(i),s=o.intersectsPoint(n);return r&&s}_onObserverPositionChange(e,o,i,n,r){if(this._externalObserverUpdate=r,c(e))return this.analysisViewData.elevationAlignedObserver=null,void(this._observerFeatureId=null);if(c(o))return k(this.analysis,e.spatialReference,J),void(this.analysisViewData.elevationAlignedObserver=null);const s=this._getEffectiveElevationInfo(o,i),{absoluteZ:a,elevation:l}=V(o.x,o.y,o.z,this.view.spatialReference,this.view,s),d=o.clone();d.z=a,this._effectiveObserverElevationMode=s.mode,this.analysisViewData.elevationAlignedObserver=d;const u=S();this.view.renderCoordsHelper.toRenderCoords(d,u),this._elevationAlignedObserverPositionRenderSpace=u,this._observerGroundOffsetRenderSpace=a-l,this._observerFeatureId=t(n),this.priority=q.LINE_OF_SIGHT_TOOL_INTERACTIVE}_onObserverRenderSpacePositionChangeForComputation(e,t,o,i,n){const{inputPoints:r}=e;switch(_(r.observer,t),r.observerFeatureId=n,r.observerSurfaceNormal=null,i){case"on-the-ground":case"relative-to-ground":{const e=this._intersector.updateFromGroundIntersection(r.observer,o,r.observer);c(r.observerFeatureId)&&(r.observerSurfaceNormal=e)}}this._adjustStartEndPositions(e),e.notifyInputPointsChanged(),this.priority=q.LINE_OF_SIGHT_TOOL_INTERACTIVE}_onTargetPositionChange(e,o,i,n,r,s=!0){const a=e.inputPoints;if(s&&(a.isValid=!1),c(i))return d(o)&&k(this.analysis,o.spatialReference,J),e.elevationAlignedTargetLocation=null,void e.notifyInputPointsChanged();const l=this._getEffectiveElevationInfo(i,n),{absoluteZ:u,elevation:p}=V(i.x,i.y,i.z,this.view.spatialReference,this.view,l),h=i.clone();switch(h.z=u,e.elevationAlignedTargetLocation=h,this.view.renderCoordsHelper.toRenderCoords(e.elevationAlignedTargetLocation,a.target),a.targetFeatureId=t(r),a.targetSurfaceNormal=null,l.mode){case"on-the-ground":case"relative-to-ground":{const e=this._intersector.updateFromGroundIntersection(a.target,u-p,a.target);c(a.targetFeatureId)&&(a.targetSurfaceNormal=e)}}this._adjustStartEndPositions(e),e.notifyInputPointsChanged(),this.priority=q.LINE_OF_SIGHT_TOOL_INTERACTIVE}_connectComputationToTarget(e){return s([this._updatingHandles.add((()=>({computation:e,targetPosition:e.target.position,targetElevationInfo:e.target.elevationInfo,targetFeatureInfo:e.target.feature,projectedTargetPosition:w(e.target.position,this.view.spatialReference)})),(({computation:e,targetPosition:t,targetElevationInfo:o,targetFeatureInfo:i,projectedTargetPosition:n})=>{d(n.pending)?this._updatingHandles.addPromise(n.pending):this._onTargetPositionChange(e,t,n.geometry,o,i)}),v)])}_connectComputationToObserver(e){return this._updatingHandles.add((()=>({computation:e,observer:this.analysisViewData.elevationAlignedObserver})),(({computation:e})=>{this._externalObserverUpdate&&(e.inputPoints.isValid=!1,e.notifyInputPointsChanged())}),v)}_connectComputationToRenderSpaceObserver(e){return this._updatingHandles.add((()=>({computation:e,observer:this._elevationAlignedObserverPositionRenderSpace,observerGroundOffset:this._observerGroundOffsetRenderSpace,observerElevationMode:this._effectiveObserverElevationMode,observerFeatureId:this._observerFeatureId})),(({computation:e,observer:t,observerGroundOffset:o,observerElevationMode:i,observerFeatureId:n})=>{this._onObserverRenderSpacePositionChangeForComputation(e,t,o,i,n)}),v)}_connectComputationToCamera(e){return this._updatingHandles.add((()=>({camera:this.view.state.camera,isDirty:this._isCameraDirty})),(({isDirty:t})=>{!this.updateOnCameraChange||e.inputPoints.isValid&&!t||e.notifyInputPointsChanged()}))}_connectComputationToSlicePlane(e){return this._updatingHandles.add((()=>this.view.slicePlane),(()=>{e.inputPoints.isValid=!1,e.notifyInputPointsChanged()}))}_connectComputationToElevation(e){const t=(o,i)=>{const n=this.analysis.observer,r=e.target;let s=null,a=null,l=null,u=null,p=null,h=null;if(d(n)&&d(n.position)){const e=w(n.position,this.view.spatialReference);if(d(e.pending))return this._updatingHandles.addPromise(e.pending),void e.pending.finally((()=>t(o,i)));s=e.geometry,a=n.elevationInfo,l=n.feature}if(d(r.position)){const e=w(r.position,this.view.spatialReference);if(d(e.pending))return this._updatingHandles.addPromise(e.pending),void e.pending.finally((()=>t(o,i)));u=e.geometry,p=r.elevationInfo,h=r.feature}c(s)&&c(u)||(R(o,i,$,this.view.spatialReference),d(s)&&E($,s)&&this._onObserverPositionChange(d(n)?n.position:null,s,a,l,!1),d(u)&&E($,u)&&this._onTargetPositionChange(e,r.position,u,p,h,!1),d(s)&&d(u)&&H($,s,u)&&e.notifyInputPointsChanged())};return this.view.elevationProvider.on("elevation-change",(e=>t(e.extent,e.spatialReference)))}_connectComputationToTask(e){let t=h;const o={computation:e,interpolationInfo:{originalIntersection:S(),originalObserver:S(),originalTarget:S()}};return s([this._updatingHandles.add((()=>e.inputPoints),(()=>{t=u(t),t=i((async e=>{await g(this._frameTask.schedule((()=>this._computeResult(o)),e))}))}),{initial:!0,equals:()=>!1}),a((()=>t=u(t)))])}_connectComputation(e){const t=this._computationHandles;t.has(e)||t.add([this._connectComputationToTarget(e),this._connectComputationToObserver(e),this._connectComputationToRenderSpaceObserver(e),this._connectComputationToCamera(e),this._connectComputationToSlicePlane(e),this._connectComputationToElevation(e),this._connectComputationToTask(e)],e)}_disconnectComputation(e){this._computationHandles.remove(e)}_onComputationCollectionChange({added:e,removed:t}){for(const o of t)this._disconnectComputation(o);for(const o of e)this._connectComputation(o)}_onTargetCollectionChange({added:e,removed:t}){for(const o of t)this._removeTarget(o);for(const o of e)this._addTarget(o)}_onCursorTargetChange(e,t){d(t)&&this._removeTarget(t),d(e)&&this._addTarget(e)}_addTarget(e){this._computations.some((t=>t.target===e))||this._computations.add(new x({target:e}))}_removeTarget(e){const t=this._computations.findIndex((t=>t.target===e));this._computations.removeAt(t)}_connectObserver(){return s([this._updatingHandles.add((()=>({observerPosition:d(this.analysis.observer)?this.analysis.observer.position:null,projectedObserverPosition:w(d(this.analysis.observer)?this.analysis.observer.position:null,this.view.spatialReference),observerElevationInfo:d(this.analysis.observer)?this.analysis.observer.elevationInfo:null,observerFeatureInfo:d(this.analysis.observer)?this.analysis.observer.feature:null})),(({observerPosition:e,projectedObserverPosition:t,observerElevationInfo:o,observerFeatureInfo:i})=>{d(t.pending)?this._updatingHandles.addPromise(t.pending):this._onObserverPositionChange(e,t.geometry,o,i,!0)}),v)])}_connectComputations(){return this._updatingHandles.addOnCollectionChange((()=>this._computations),(e=>this._onComputationCollectionChange(e)),{initial:!0,final:!0})}_connectTargets(){return s([this._updatingHandles.addOnCollectionChange((()=>this.analysis.targets),(e=>this._onTargetCollectionChange(e)),{initial:!0,final:!0}),this._updatingHandles.add((()=>this.analysisViewData.cursorTarget),((e,t)=>{this._onCursorTargetChange(e,t)}))])}get _isCameraDirty(){const e=this.analysisViewData.elevationAlignedObserver,{view:t}=this,{renderCoordsHelper:o}=t;if(c(e)||c(o))return!1;const i=X;o.toRenderCoords(e,i);const n=t.state.camera.computeScreenPixelSizeAt(i);return Math.abs((n-this._screenPixelSize)/this._screenPixelSize)>Q}_getEffectiveElevationInfo(e,t){return e.hasZ?p(t,{mode:"absolute-height",offset:0}):{mode:"on-the-ground",offset:0}}};e([m({constructOnly:!0})],K.prototype,"analysis",void 0),e([m({constructOnly:!0})],K.prototype,"analysisViewData",void 0),e([m({constructOnly:!0})],K.prototype,"view",void 0),e([m()],K.prototype,"updating",null),e([m()],K.prototype,"priority",null),e([m()],K.prototype,"updateOnCameraChange",void 0),e([m()],K.prototype,"_computations",null),e([m()],K.prototype,"_elevationAlignedObserverPositionRenderSpace",null),e([m()],K.prototype,"_observerGroundOffsetRenderSpace",void 0),e([m()],K.prototype,"_effectiveObserverElevationMode",void 0),e([m()],K.prototype,"_observerFeatureId",void 0),e([m()],K.prototype,"_screenPixelSize",null),e([m({readOnly:!0})],K.prototype,"_updatingHandles",void 0),e([m()],K.prototype,"_frameTask",void 0),e([m()],K.prototype,"_isCameraDirty",null),K=e([f(W)],K);const Q=.1,X=S(),Y=L(),$=A(),ee=.05;export{K as LineOfSightController};
@@ -1,4 +1,4 @@
1
1
  import "../../../interfaces";
2
2
 
3
- import LineOfSightAnalysisResult = __esri.LineOfSightAnalysisResult;
3
+ import LineOfSightAnalysisResult = __esri.LineOfSightAnalysisResult;
4
4
  export = LineOfSightAnalysisResult;
@@ -1,4 +1,4 @@
1
1
  import "../../../interfaces";
2
2
 
3
- import LineOfSightAnalysisView3D = __esri.LineOfSightAnalysisView3D;
3
+ import LineOfSightAnalysisView3D = __esri.LineOfSightAnalysisView3D;
4
4
  export default LineOfSightAnalysisView3D;
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../../../../chunks/tslib.es6.js";import e from"../../../../analysis/SlicePlane.js";import{clock as i}from"../../../../core/clock.js";import a from"../../../../core/Handles.js";import{releaseMaybe as s,destroyMaybe as n,isSome as r,isNone as l,removeMaybe as o}from"../../../../core/maybe.js";import{watch as h,sync as p,syncAndInitial as u}from"../../../../core/reactiveUtils.js";import{addFrameTask as c}from"../../../../core/scheduling.js";import{createScreenPoint as d,screenPointObjectToArray as _,createScreenPointArray as v}from"../../../../core/screenUtils.js";import{property as P}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as y}from"../../../../core/accessorSupport/decorators/subclass.js";import{d as m,C as g,m as w}from"../../../../chunks/mat4.js";import{e as f,l as M,c as D,g as T,a as V,v as b,n as k,s as E}from"../../../../chunks/vec3.js";import{a as S,c as H}from"../../../../chunks/vec3f64.js";import{a as x,c as I,n as R,f as j}from"../../../../chunks/boundedPlane.js";import{signedDistance as C,create as O,intersectRay as z,normal as G}from"../../../../geometry/support/plane.js";import{create as U}from"../../../../geometry/support/ray.js";import{sv3d as L,sm4d as K,sv2d as A}from"../../../../geometry/support/vectorStacks.js";import{POINTER_MOVE_TIMER_MS as B,PLANE_PREVIEW_OUTLINE_WIDTH as F,forceVerticalModifier as N,forceHorizontalModifier as q,PLANE_OUTLINE_COLOR as Z,PLANE_BACKGROUND_COLOR as J,PREVIEW_FADE_DOT_THRESHOLD as Q,PREVIEW_FADE_DURATION_SECONDS as W,INITIAL_DEPTH_OFFSET_FRAC as X}from"./sliceToolConfig.js";import{createShiftManipulator as Y,createRotateManipulator as $,createResizeManipulator as tt,createGridVisualElement as et,createOutlineVisualElement as it,planeToShape as at,createRotatePlane as st,RotationAxis as nt,resizePlane as rt,calculatePlaneHalfSize as lt,SliceOrientation as ot,createPlane as ht,DidPointerMoveRecentlyFlag as pt,calculateBoundedPlaneTranslateRotate as ut,updateShiftRestartHandle as ct,updateRotateHeadingHandle as dt,updateRotateTiltHandle as _t,updateResizeHandle as vt,createShiftPlane as Pt}from"./sliceToolUtils.js";import{getRotateHeadingTexture as yt,getTiltRotateTexture as mt}from"./images/Factory.js";import{calculateInputRotationTransform as gt}from"../../interactive/manipulatorUtils.js";import{screenToRenderPlane as wt}from"../../interactive/editingTools/dragEventPipeline3D.js";import{fromScreen as ft}from"../../support/geometryUtils/ray.js";import{newIntersector as Mt}from"../../webgl-engine/lib/Intersector.js";import{StoreResults as Dt}from"../../webgl-engine/lib/IntersectorInterfaces.js";import{AnalysisToolBase as Tt}from"../../../interactive/AnalysisToolBase.js";import{createManipulatorDragEventPipeline as Vt}from"../../../interactive/dragEventPipeline.js";import{createScreenPointFromEvent as bt}from"../../../support/screenUtils.js";var kt;let Et=kt=class extends Tt{constructor(t){super(t),this._clock=i,this._previewPlaneOpacity=1,this.removeIncompleteOnCancel=!1,this.layersMode="none",this.shiftManipulator=null,this.rotateHeadingManipulator=null,this.rotateTiltManipulator=null,this.resizeManipulators=null,this._handles=new a,this._viewHandles=new a,this._frameTask=null,this._pointerMoveTimerMs=B,this._prevPointerMoveTimeout=null,this._previewPlaneGridVisualElement=null,this._previewPlaneOutlineVisualElement=null,this._startPlane=x(),this._previewPlane=null,this._activeKeyModifiers={},this._lastCursorPosition=d(),this._resizeHandles=[{direction:[1,0]},{direction:[1,1]},{direction:[0,1]},{direction:[-1,1]},{direction:[-1,0]},{direction:[-1,-1]},{direction:[0,-1]},{direction:[1,-1]}],this._intersector=Mt(t.view.state.viewingMode),this._intersector.options.store=Dt.MIN}initialize(){if(null==this.analysis)throw new Error("SliceTool requires valid analysis, but null was provided.");this._rotateHeadingImage=yt(this.view.toolViewManager.textures),this._rotateTiltImage=mt(this.view.toolViewManager.textures);const t=t=>{this._updateManipulatorsInteractive(t),t.grabbing||(r(this.analysisViewData.plane)&&I(this.analysisViewData.plane,this._startPlane),this.inputState=null)};this.shiftManipulator=Y(this.view),this.manipulators.add(this.shiftManipulator),this.shiftManipulator.events.on("grab-changed",(e=>{this._onShiftGrab(e),t(this.shiftManipulator)})),this._handles.add(this._createShiftDragPipeline(this.shiftManipulator)),this.rotateHeadingManipulator=$(this.view,this._rotateHeadingImage.texture),this.manipulators.add(this.rotateHeadingManipulator),this.rotateHeadingManipulator.events.on("grab-changed",(e=>{this._onRotateHeadingGrab(e),t(this.rotateHeadingManipulator)})),this._handles.add(this._createRotateHeadingDragPipeline(this.rotateHeadingManipulator)),this.rotateTiltManipulator=$(this.view,this._rotateTiltImage.texture),this.manipulators.add(this.rotateTiltManipulator),this.rotateTiltManipulator.events.on("grab-changed",(e=>{this._onRotateTiltGrab(e),t(this.rotateTiltManipulator)})),this._handles.add(this._createRotateTiltDragPipeline(this.rotateTiltManipulator)),this.resizeManipulators=this._resizeHandles.map(((e,i)=>{const a=tt(this.view,e);return a.events.on("grab-changed",(e=>{this._onResizeGrab(e,i),t(a)})),this._handles.add(this._createResizeDragPipeline(a)),a})),this.manipulators.addMany(this.resizeManipulators),this._previewPlaneGridVisualElement=et(this.view),this._previewPlaneOutlineVisualElement=it(this.view),this._previewPlaneOutlineVisualElement.width=F,this._handles.add(h((()=>this.analysisViewData.plane),(()=>this._updateManipulators()),p));const e=h((()=>this.state),(t=>{"sliced"===t&&this.finishToolCreation()}),u);this._handles.add([e,h((()=>this.view.state.camera),(()=>this._onCameraChange()))])}destroy(){this._rotateHeadingImage=s(this._rotateHeadingImage),this._rotateTiltImage=s(this._rotateTiltImage),this._handles=n(this._handles),this._viewHandles=n(this._viewHandles),this._removeFrameTask(),this._clearPointerMoveTimeout(),this._previewPlaneOutlineVisualElement=n(this._previewPlaneOutlineVisualElement),this._previewPlaneGridVisualElement=n(this._previewPlaneGridVisualElement)}get state(){const t=!!this.analysisViewData.plane,e=!!this.inputState;return t?t&&e?"slicing":t&&!e?"sliced":"ready":"ready"}get cursor(){return this._isPlacingSlicePlane||"exclude"===this.layersMode?"crosshair":r(this._creatingPointerId)?"grabbing":null}set analysis(t){if(null==t)throw new Error("SliceTool requires valid analysis, but null was provided.");this._handles.remove("analysis"),this._set("analysis",t)}get inputState(){return this._get("inputState")}set inputState(t){this._set("inputState",t),this.analysisViewData.showGrid=r(t)&&"resize"===t.type,this._updateMaterials()}get _isPlacingSlicePlane(){return!this.inputState&&!this.analysisViewData.plane&&this.active}get _creatingPointerId(){return r(this.inputState)&&"shift"===this.inputState.type?this.inputState.creatingPointerId:null}enterExcludeLayerMode(){l(this.analysisViewData.plane)||(this._set("layersMode","exclude"),this.active||(this.view.activeTool=this))}exitExcludeLayerMode(){l(this.analysisViewData.plane)||(this._set("layersMode","none"),this.active&&(this.view.activeTool=null))}onDeactivate(){this._set("layersMode","none"),this._updatePreviewPlane(null)}onShow(){this._updateVisibility(!0)}onHide(){this._updateVisibility(!1)}_updateVisibility(t){this._updateManipulators(),t||this._clearPointerMoveTimeout()}onInputEvent(t){switch(t.type){case"pointer-drag":if(!Ht(t))return;this._isPlacingSlicePlane?this._onClickPlacePlane(t)&&t.stopPropagation():this._onPointerDrag(t)&&t.stopPropagation();break;case"pointer-move":this._onPointerMove(t);break;case"pointer-up":this._onPointerUp(t)&&t.stopPropagation();break;case"immediate-click":if(!Ht(t))return;this._onClickPlacePlane(t)&&t.stopPropagation();break;case"click":if(!Ht(t))return;this._onClickExcludeLayer(t)&&t.stopPropagation();break;case"drag":this.inputState&&t.stopPropagation();break;case"key-down":this._onKeyDown(t)&&t.stopPropagation();break;case"key-up":this._onKeyUp(t)&&t.stopPropagation()}}onEditableChange(){this.analysisViewData.editable=this.editable}_onPointerDrag(t){const e=this.inputState;if(t.pointerId===this._creatingPointerId&&r(e)&&"shift"===e.type){const i=bt(t);return this.shiftManipulator.events.emit("drag",{action:e.hasBeenDragged?"update":"start",pointerType:t.pointerType,start:i,screenPoint:i}),e.hasBeenDragged=!0,!0}return!1}_onPointerMove(t){this._lastCursorPosition.x=t.x,this._lastCursorPosition.y=t.y,this._resetPointerMoveTimeout(),"touch"!==t.pointerType&&this._updatePreviewPlane(bt(t),this._activeKeyModifiers)}_onCameraChange(){this._updatePreviewPlane(this._lastCursorPosition,this._activeKeyModifiers),this._updateManipulators()}_onPointerUp(t){if(t.pointerId===this._creatingPointerId&&r(this.analysisViewData.plane)){const e=bt(t);return this.shiftManipulator.events.emit("drag",{action:"end",start:e,screenPoint:e}),I(this.analysisViewData.plane,this._startPlane),this.inputState=null,!0}return!1}_onClickPlacePlane(t){if("exclude"===this.layersMode)return!1;if(this._isPlacingSlicePlane){const i=bt(t),a=x();if(this._pickPlane(i,!1,this._activeKeyModifiers,a)){if(I(a,this._startPlane),this.analysis.shape=at(a,this.view,this.view.spatialReference,new e),"pointer-drag"===t.type){const e=this._calculatePickRay(i);this.inputState=St(e,t.pointerId,a.origin,a)}return!0}}return!1}_onClickExcludeLayer(t){return!("exclude"!==this.layersMode||!this.created)&&(this.view.hitTest(bt(t)).then((t=>{if(t.results.length){const e=t.results[0],i="graphic"===e?.type&&e.graphic;if(i){const t=i.sourceLayer||i.layer;t&&this.analysis.excludedLayers.push(t)}}else t.ground.layer?this.analysis.excludedLayers.push(t.ground.layer):this.analysis.excludeGroundSurface=!0})),this._set("layersMode","none"),this.active&&(this.view.activeTool=null),!0)}_onKeyDown(t){return(t.key===N||t.key===q)&&(this._activeKeyModifiers[t.key]=!0,r(this._previewPlane)&&this._updatePreviewPlane(this._lastCursorPosition,this._activeKeyModifiers),!0)}_onKeyUp(t){return!(t.key!==N&&t.key!==q||!this._activeKeyModifiers[t.key])&&(delete this._activeKeyModifiers[t.key],r(this._previewPlane)&&this._updatePreviewPlane(this._lastCursorPosition,this._activeKeyModifiers),!0)}_onShiftGrab(t){if("start"!==t.action||l(this.analysisViewData.plane))return;const e=this._calculatePickRay(t.screenPoint);I(this.analysisViewData.plane,this._startPlane),this.inputState=St(e,null,this.shiftManipulator.renderLocation,this.analysisViewData.plane)}_createShiftDragPipeline(t){return Vt(t,((t,e,i)=>{const a=this.inputState;if(l(a)||"shift"!==a.type)return;const s=r(this.analysisViewData.plane)?I(this.analysisViewData.plane,x()):null;e.next(wt(this.view,a.shiftPlane)).next(this._shiftDragAdjustSensitivity(a)).next(this._shiftDragUpdatePlane(a)),i.next((()=>{r(s)&&this._updateBoundedPlane(s)}))}))}_shiftDragAdjustSensitivity(t){return e=>{if(l(this.analysisViewData.plane))return null;const i=.001,a=Math.min((1-Math.abs(f(R(this.analysisViewData.plane),e.ray.direction)/M(e.ray.direction)))/i,1),s=-C(this._startPlane.plane,e.renderEnd),n=-C(this._startPlane.plane,t.startPoint);return t.depth=t.depth*(1-a)+s*a-n,e}}_shiftDragUpdatePlane(t){return()=>{if(l(this.analysisViewData.plane))return;const e=D(L.get(),this._startPlane.origin),i=D(L.get(),R(this._startPlane));T(i,i,-t.depth),V(i,i,e);const a=j(i,this.analysisViewData.plane.basis1,this.analysisViewData.plane.basis2,x());this._updateBoundedPlane(a)}}_onRotateHeadingGrab(t){if("start"!==t.action||l(this.analysisViewData.plane))return;const e=st(this.analysisViewData.plane,this.view.renderCoordsHelper,nt.HEADING,O()),i=this._calculatePickRay(t.screenPoint),a=H();z(e,i,a)&&(I(this.analysisViewData.plane,this._startPlane),this.inputState={type:"rotate",rotatePlane:e,startPoint:a})}_createRotateHeadingDragPipeline(t){return Vt(t,((t,e,i)=>{const a=this.inputState;if(l(a)||"rotate"!==a.type)return;const s=r(this.analysisViewData.plane)?I(this.analysisViewData.plane,x()):null;e.next(wt(this.view,a.rotatePlane)).next(this._rotateDragRenderPlaneToRotate(a)).next(this._rotateDragUpdatePlaneFromRotate()),i.next((()=>{r(s)&&this._updateBoundedPlane(s)}))}))}_onRotateTiltGrab(t){if("start"!==t.action||l(this.analysisViewData.plane))return;const e=st(this.analysisViewData.plane,this.view.renderCoordsHelper,nt.TILT,O()),i=this._calculatePickRay(t.screenPoint),a=H();z(e,i,a)&&(I(this.analysisViewData.plane,this._startPlane),this.inputState={type:"rotate",rotatePlane:e,startPoint:a})}_createRotateTiltDragPipeline(t){return Vt(t,((t,e,i)=>{const a=this.inputState;if(l(a)||"rotate"!==a.type)return;const s=r(this.analysisViewData.plane)?I(this.analysisViewData.plane,x()):null;e.next(wt(this.view,a.rotatePlane)).next(this._rotateDragRenderPlaneToRotate(a)).next(this._rotateDragUpdatePlaneFromRotate()),i.next((()=>{r(s)&&this._updateBoundedPlane(s)}))}))}_rotateDragRenderPlaneToRotate(t){return e=>{if(l(this.analysisViewData.plane))return null;const i=G(t.rotatePlane),a=gt(t.startPoint,e.renderEnd,this.analysisViewData.plane.origin,i);return{...e,rotateAxis:i,rotateAngle:a}}}_rotateDragUpdatePlaneFromRotate(){return t=>{if(l(this.analysisViewData.plane))return;const e=m(K.get(),t.rotateAngle,t.rotateAxis);if(l(e))return;const i=b(L.get(),this._startPlane.basis1,e),a=b(L.get(),this._startPlane.basis2,e),s=j(this.analysisViewData.plane.origin,i,a,x());this._updateBoundedPlane(s)}}_onResizeGrab(t,e){if("start"!==t.action||l(this.analysisViewData.plane))return;const i=this._calculatePickRay(t.screenPoint),a=L.get();z(this.analysisViewData.plane.plane,i,a)&&(I(this.analysisViewData.plane,this._startPlane),this.inputState={type:"resize",activeHandleIdx:e,startPoint:S(a)})}_createResizeDragPipeline(t){return Vt(t,((t,e,i)=>{const a=this.inputState;if(l(a)||"resize"!==a.type||l(this.analysisViewData.plane))return;const s=I(this.analysisViewData.plane,x());e.next(wt(this.view,this.analysisViewData.plane.plane)).next(this._resizeDragUpdatePlane(a)),i.next((()=>{this._updateBoundedPlane(s)}))}))}_resizeDragUpdatePlane(t){return e=>{if(l(this.analysisViewData.plane))return;const i=this._resizeHandles[t.activeHandleIdx],a=rt(i,t.startPoint,e.renderEnd,this.view.state.camera,this._startPlane,I(this.analysisViewData.plane));this._updateBoundedPlane(a)}}_updateBoundedPlane(t){const e=this.analysisViewData;if(!r(e))throw new Error("valid internal object expected");e.plane=t}_updatePreviewPlane(t,e={}){let i=this._previewPlane;if(this._previewPlane=null,l(t))return this._removeFrameTask(),void this._updateManipulators();if(!this.analysisViewData.plane&&this.active){const a=r(i)?i:x();if(i=r(i)?I(i,xt):null,this._pickPlane(t,!0,e,a)){const t=Q;let e=!1;r(i)&&(e=f(i.plane,a.plane)<t||f(k(L.get(),i.basis1),k(L.get(),a.basis1))<t),e&&(this._previewPlaneOpacity=0),this._previewPlane=a}}r(this._previewPlane)&&l(this._frameTask)&&0===this._previewPlaneOpacity?this._frameTask=c({update:({deltaTime:t})=>{this._previewPlaneOpacity=Math.min(this._previewPlaneOpacity+t/(1e3*W),1),this._updateManipulators(),1===this._previewPlaneOpacity&&this._removeFrameTask()}}):l(this._previewPlane)&&r(this._frameTask)?this._removeFrameTask():r(this._previewPlane)&&this._updateManipulators()}_removeFrameTask(){this._frameTask=o(this._frameTask)}_calculatePickRay(t){const e=U(),i=_(t,It);return ft(this.view.state.camera,i,e),k(e.direction,e.direction),e}_pickMinResult(t){const e=_(t,A.get());return this.view.sceneIntersectionHelper.intersectToolIntersectorScreen(e,this._intersector),this._intersector.results.min}_pickPlane(t,e,i,a){const s=this._pickMinResult(t),n=L.get();if(!s.getIntersectionPoint(n))return!1;const r=s.getTransformedNormal(L.get()),l=this.view.state.camera;f(r,l.viewForward)>0&&T(r,r,-1);const o=lt(n,l),h=(e?1:-1)*o*X,p=T(L.get(),r,h);V(p,p,n);const u=this.analysis.tiltEnabled?ot.TILTED:ot.HORIZONTAL_OR_VERTICAL,c=i[N]?ot.VERTICAL:i[q]?ot.HORIZONTAL:u;return ht(p,r,o,o,l,c,this.view.renderCoordsHelper,a),!0}_clearPointerMoveTimeout(){this._prevPointerMoveTimeout=o(this._prevPointerMoveTimeout)}_resetPointerMoveTimeout(){this._clearPointerMoveTimeout(),this.shiftManipulator.state|=pt,this.rotateHeadingManipulator.state|=pt,this.rotateTiltManipulator.state|=pt,this._prevPointerMoveTimeout=this._clock.setTimeout((()=>{this.shiftManipulator.state&=~pt,this.rotateHeadingManipulator.state&=~pt,this.rotateTiltManipulator.state&=~pt}),this._pointerMoveTimerMs)}_updateManipulators(){if(kt.disableEngineLayers)return;let t=null,e=!1;if(r(this.analysisViewData.plane))t=this.analysisViewData.plane,e=!1;else{if(!r(this._previewPlane))return this.shiftManipulator.available=!1,this.rotateHeadingManipulator.available=!1,this.rotateTiltManipulator.available=!1,this.resizeManipulators.forEach((t=>t.available=!1)),this._previewPlaneOutlineVisualElement.visible=!1,void(this._previewPlaneGridVisualElement.visible=!1);t=this._previewPlane,e=!0}const i=ut(t,K.get());e?(this.shiftManipulator.available=!1,this.rotateHeadingManipulator.available=!1,this.rotateTiltManipulator.available=!1,this.resizeManipulators.forEach((t=>t.available=!1)),this._previewPlaneOutlineVisualElement.visible=!0,this._previewPlaneGridVisualElement.visible=!0):(this.shiftManipulator.available=!0,this.rotateHeadingManipulator.available=!0,this.rotateTiltManipulator.available=this.analysis.tiltEnabled,this.resizeManipulators.forEach((t=>t.available=!0)),ct(this.shiftManipulator,i,t,this.view.state.camera),dt(this.rotateHeadingManipulator,i,t,this.view.renderCoordsHelper),_t(this.rotateTiltManipulator,i,t),this.resizeManipulators.forEach(((e,a)=>vt(e,this._resizeHandles[a],i,t))),this._previewPlaneOutlineVisualElement.visible=!1,this._previewPlaneGridVisualElement.visible=!1);const a=E(L.get(),M(t.basis1),M(t.basis2),1),s=g(K.get(),a),n=w(s,i,s);this._previewPlaneOutlineVisualElement.transform=n,this._previewPlaneGridVisualElement.transform=n,this._updateMaterials()}_updateMaterials(){const t=[Z[0],Z[1],Z[2],Z[3]*this._previewPlaneOpacity];this._previewPlaneOutlineVisualElement.color=t;const e=[J[0],J[1],J[2],J[3]*this._previewPlaneOpacity],i=[0,0,0,0];this._previewPlaneGridVisualElement.backgroundColor=e,this._previewPlaneGridVisualElement.gridColor=i}_updateManipulatorsInteractive(t){if(!t.grabbing)return this.shiftManipulator.interactive=!0,this.rotateHeadingManipulator.interactive=!0,this.rotateTiltManipulator.interactive=!0,void this.resizeManipulators.forEach((t=>{t.interactive=!0}));this.shiftManipulator.interactive=this.shiftManipulator===t,this.rotateHeadingManipulator.interactive=this.rotateHeadingManipulator===t,this.rotateTiltManipulator.interactive=this.rotateTiltManipulator===t,this.resizeManipulators.forEach((e=>{e.interactive=e===t}))}testData(){return{plane:this.analysisViewData.plane,setPointerMoveTimerMs:t=>{this._pointerMoveTimerMs=t}}}};function St(t,e,i,a){const s=Pt(i,R(a),t.direction,O()),n=H();return z(s,t,n)?{type:"shift",creatingPointerId:e,hasBeenDragged:!1,shiftPlane:s,depth:0,startPoint:n}:null}function Ht(t){return"mouse"!==t.pointerType||0===t.button}Et.disableEngineLayers=!1,t([P()],Et.prototype,"_clock",void 0),t([P({constructOnly:!0})],Et.prototype,"view",void 0),t([P()],Et.prototype,"analysisViewData",void 0),t([P({readOnly:!0})],Et.prototype,"state",null),t([P({readOnly:!0})],Et.prototype,"cursor",null),t([P()],Et.prototype,"analysis",null),t([P()],Et.prototype,"removeIncompleteOnCancel",void 0),t([P({readOnly:!0})],Et.prototype,"layersMode",void 0),t([P({value:null})],Et.prototype,"inputState",null),t([P()],Et.prototype,"_isPlacingSlicePlane",null),t([P()],Et.prototype,"_creatingPointerId",null),Et=kt=t([y("esri.views.3d.analysis.Slice.SliceTool")],Et);const xt=x(),It=v(),Rt=Et;export{Rt as default};
5
+ import{_ as t}from"../../../../chunks/tslib.es6.js";import e from"../../../../analysis/SlicePlane.js";import{clock as i}from"../../../../core/clock.js";import a from"../../../../core/Handles.js";import{releaseMaybe as s,destroyMaybe as n,isSome as r,isNone as l,removeMaybe as o}from"../../../../core/maybe.js";import{watch as h,sync as p,syncAndInitial as u}from"../../../../core/reactiveUtils.js";import{addFrameTask as c}from"../../../../core/scheduling.js";import{createScreenPoint as d,screenPointObjectToArray as _,createScreenPointArray as v}from"../../../../core/screenUtils.js";import{property as P}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as y}from"../../../../core/accessorSupport/decorators/subclass.js";import{d as m,C as g,m as w}from"../../../../chunks/mat4.js";import{e as f,l as M,c as D,g as T,a as V,m as b,n as k,s as E}from"../../../../chunks/vec3.js";import{a as S,c as H}from"../../../../chunks/vec3f64.js";import{a as x,c as I,n as R,f as j}from"../../../../chunks/boundedPlane.js";import{signedDistance as O,create as C,intersectRay as z,normal as G}from"../../../../geometry/support/plane.js";import{create as U}from"../../../../geometry/support/ray.js";import{sv3d as L,sm4d as K,sv2d as A}from"../../../../geometry/support/vectorStacks.js";import{POINTER_MOVE_TIMER_MS as B,PLANE_PREVIEW_OUTLINE_WIDTH as F,forceVerticalModifier as N,forceHorizontalModifier as q,PLANE_OUTLINE_COLOR as Z,PLANE_BACKGROUND_COLOR as J,PREVIEW_FADE_DOT_THRESHOLD as Q,PREVIEW_FADE_DURATION_SECONDS as W,INITIAL_DEPTH_OFFSET_FRAC as X}from"./sliceToolConfig.js";import{createShiftManipulator as Y,createRotateManipulator as $,createResizeManipulator as tt,createGridVisualElement as et,createOutlineVisualElement as it,planeToShape as at,createRotatePlane as st,RotationAxis as nt,resizePlane as rt,calculatePlaneHalfSize as lt,SliceOrientation as ot,createPlane as ht,DidPointerMoveRecentlyFlag as pt,calculateBoundedPlaneTranslateRotate as ut,updateShiftRestartHandle as ct,updateRotateHeadingHandle as dt,updateRotateTiltHandle as _t,updateResizeHandle as vt,createShiftPlane as Pt}from"./sliceToolUtils.js";import{getRotateHeadingTexture as yt,getTiltRotateTexture as mt}from"./images/Factory.js";import{calculateInputRotationTransform as gt}from"../../interactive/manipulatorUtils.js";import{screenToRenderPlane as wt}from"../../interactive/editingTools/dragEventPipeline3D.js";import{fromScreen as ft}from"../../support/geometryUtils/ray.js";import{newIntersector as Mt}from"../../webgl-engine/lib/Intersector.js";import{StoreResults as Dt}from"../../webgl-engine/lib/IntersectorInterfaces.js";import{AnalysisToolBase as Tt}from"../../../interactive/AnalysisToolBase.js";import{createManipulatorDragEventPipeline as Vt}from"../../../interactive/dragEventPipeline.js";import{createScreenPointFromEvent as bt}from"../../../support/screenUtils.js";var kt;let Et=kt=class extends Tt{constructor(t){super(t),this._clock=i,this._previewPlaneOpacity=1,this.removeIncompleteOnCancel=!1,this.layersMode="none",this.shiftManipulator=null,this.rotateHeadingManipulator=null,this.rotateTiltManipulator=null,this.resizeManipulators=null,this._handles=new a,this._viewHandles=new a,this._frameTask=null,this._pointerMoveTimerMs=B,this._prevPointerMoveTimeout=null,this._previewPlaneGridVisualElement=null,this._previewPlaneOutlineVisualElement=null,this._startPlane=x(),this._previewPlane=null,this._activeKeyModifiers={},this._lastCursorPosition=d(),this._resizeHandles=[{direction:[1,0]},{direction:[1,1]},{direction:[0,1]},{direction:[-1,1]},{direction:[-1,0]},{direction:[-1,-1]},{direction:[0,-1]},{direction:[1,-1]}],this._intersector=Mt(t.view.state.viewingMode),this._intersector.options.store=Dt.MIN}initialize(){if(null==this.analysis)throw new Error("SliceTool requires valid analysis, but null was provided.");this._rotateHeadingImage=yt(this.view.toolViewManager.textures),this._rotateTiltImage=mt(this.view.toolViewManager.textures);const t=t=>{this._updateManipulatorsInteractive(t),t.grabbing||(r(this.analysisViewData.plane)&&I(this.analysisViewData.plane,this._startPlane),this.inputState=null)};this.shiftManipulator=Y(this.view),this.manipulators.add(this.shiftManipulator),this.shiftManipulator.events.on("grab-changed",(e=>{this._onShiftGrab(e),t(this.shiftManipulator)})),this._handles.add(this._createShiftDragPipeline(this.shiftManipulator)),this.rotateHeadingManipulator=$(this.view,this._rotateHeadingImage.texture),this.manipulators.add(this.rotateHeadingManipulator),this.rotateHeadingManipulator.events.on("grab-changed",(e=>{this._onRotateHeadingGrab(e),t(this.rotateHeadingManipulator)})),this._handles.add(this._createRotateHeadingDragPipeline(this.rotateHeadingManipulator)),this.rotateTiltManipulator=$(this.view,this._rotateTiltImage.texture),this.manipulators.add(this.rotateTiltManipulator),this.rotateTiltManipulator.events.on("grab-changed",(e=>{this._onRotateTiltGrab(e),t(this.rotateTiltManipulator)})),this._handles.add(this._createRotateTiltDragPipeline(this.rotateTiltManipulator)),this.resizeManipulators=this._resizeHandles.map(((e,i)=>{const a=tt(this.view,e);return a.events.on("grab-changed",(e=>{this._onResizeGrab(e,i),t(a)})),this._handles.add(this._createResizeDragPipeline(a)),a})),this.manipulators.addMany(this.resizeManipulators),this._previewPlaneGridVisualElement=et(this.view),this._previewPlaneOutlineVisualElement=it(this.view),this._previewPlaneOutlineVisualElement.width=F,this._handles.add(h((()=>this.analysisViewData.plane),(()=>this._updateManipulators()),p));const e=h((()=>this.state),(t=>{"sliced"===t&&this.finishToolCreation()}),u);this._handles.add([e,h((()=>this.view.state.camera),(()=>this._onCameraChange()))])}destroy(){this._rotateHeadingImage=s(this._rotateHeadingImage),this._rotateTiltImage=s(this._rotateTiltImage),this._handles=n(this._handles),this._viewHandles=n(this._viewHandles),this._removeFrameTask(),this._clearPointerMoveTimeout(),this._previewPlaneOutlineVisualElement=n(this._previewPlaneOutlineVisualElement),this._previewPlaneGridVisualElement=n(this._previewPlaneGridVisualElement)}get state(){const t=!!this.analysisViewData.plane,e=!!this.inputState;return t?t&&e?"slicing":t&&!e?"sliced":"ready":"ready"}get cursor(){return this._isPlacingSlicePlane||"exclude"===this.layersMode?"crosshair":r(this._creatingPointerId)?"grabbing":null}set analysis(t){if(null==t)throw new Error("SliceTool requires valid analysis, but null was provided.");this._handles.remove("analysis"),this._set("analysis",t)}get inputState(){return this._get("inputState")}set inputState(t){this._set("inputState",t),this.analysisViewData.showGrid=r(t)&&"resize"===t.type,this._updateMaterials()}get _isPlacingSlicePlane(){return!this.inputState&&!this.analysisViewData.plane&&this.active}get _creatingPointerId(){return r(this.inputState)&&"shift"===this.inputState.type?this.inputState.creatingPointerId:null}enterExcludeLayerMode(){l(this.analysisViewData.plane)||(this._set("layersMode","exclude"),this.active||(this.view.activeTool=this))}exitExcludeLayerMode(){l(this.analysisViewData.plane)||(this._set("layersMode","none"),this.active&&(this.view.activeTool=null))}onDeactivate(){this._set("layersMode","none"),this._updatePreviewPlane(null)}onShow(){this._updateVisibility(!0)}onHide(){this._updateVisibility(!1)}_updateVisibility(t){this._updateManipulators(),t||this._clearPointerMoveTimeout()}onInputEvent(t){switch(t.type){case"pointer-drag":if(!Ht(t))return;this._isPlacingSlicePlane?this._onClickPlacePlane(t)&&t.stopPropagation():this._onPointerDrag(t)&&t.stopPropagation();break;case"pointer-move":this._onPointerMove(t);break;case"pointer-up":this._onPointerUp(t)&&t.stopPropagation();break;case"immediate-click":if(!Ht(t))return;this._onClickPlacePlane(t)&&t.stopPropagation();break;case"click":if(!Ht(t))return;this._onClickExcludeLayer(t)&&t.stopPropagation();break;case"drag":this.inputState&&t.stopPropagation();break;case"key-down":this._onKeyDown(t)&&t.stopPropagation();break;case"key-up":this._onKeyUp(t)&&t.stopPropagation()}}onEditableChange(){this.analysisViewData.editable=this.internallyEditable}_onPointerDrag(t){const e=this.inputState;if(t.pointerId===this._creatingPointerId&&r(e)&&"shift"===e.type){const i=bt(t);return this.shiftManipulator.events.emit("drag",{action:e.hasBeenDragged?"update":"start",pointerType:t.pointerType,start:i,screenPoint:i}),e.hasBeenDragged=!0,!0}return!1}_onPointerMove(t){this._lastCursorPosition.x=t.x,this._lastCursorPosition.y=t.y,this._resetPointerMoveTimeout(),"touch"!==t.pointerType&&this._updatePreviewPlane(bt(t),this._activeKeyModifiers)}_onCameraChange(){this._updatePreviewPlane(this._lastCursorPosition,this._activeKeyModifiers),this._updateManipulators()}_onPointerUp(t){if(t.pointerId===this._creatingPointerId&&r(this.analysisViewData.plane)){const e=bt(t);return this.shiftManipulator.events.emit("drag",{action:"end",start:e,screenPoint:e}),I(this.analysisViewData.plane,this._startPlane),this.inputState=null,!0}return!1}_onClickPlacePlane(t){if("exclude"===this.layersMode)return!1;if(this._isPlacingSlicePlane){const i=bt(t),a=x();if(this._pickPlane(i,!1,this._activeKeyModifiers,a)){if(I(a,this._startPlane),this.analysis.shape=at(a,this.view,this.view.spatialReference,new e),"pointer-drag"===t.type){const e=this._calculatePickRay(i);this.inputState=St(e,t.pointerId,a.origin,a)}return!0}}return!1}_onClickExcludeLayer(t){return!("exclude"!==this.layersMode||!this.created)&&(this.view.hitTest(bt(t)).then((t=>{if(t.results.length){const e=t.results[0],i="graphic"===e?.type&&e.graphic;if(i){const t=i.sourceLayer||i.layer;t&&this.analysis.excludedLayers.push(t)}}else t.ground.layer?this.analysis.excludedLayers.push(t.ground.layer):this.analysis.excludeGroundSurface=!0})),this._set("layersMode","none"),this.active&&(this.view.activeTool=null),!0)}_onKeyDown(t){return(t.key===N||t.key===q)&&(this._activeKeyModifiers[t.key]=!0,r(this._previewPlane)&&this._updatePreviewPlane(this._lastCursorPosition,this._activeKeyModifiers),!0)}_onKeyUp(t){return!(t.key!==N&&t.key!==q||!this._activeKeyModifiers[t.key])&&(delete this._activeKeyModifiers[t.key],r(this._previewPlane)&&this._updatePreviewPlane(this._lastCursorPosition,this._activeKeyModifiers),!0)}_onShiftGrab(t){if("start"!==t.action||l(this.analysisViewData.plane))return;const e=this._calculatePickRay(t.screenPoint);I(this.analysisViewData.plane,this._startPlane),this.inputState=St(e,null,this.shiftManipulator.renderLocation,this.analysisViewData.plane)}_createShiftDragPipeline(t){return Vt(t,((t,e,i)=>{const a=this.inputState;if(l(a)||"shift"!==a.type)return;const s=r(this.analysisViewData.plane)?I(this.analysisViewData.plane,x()):null;e.next(wt(this.view,a.shiftPlane)).next(this._shiftDragAdjustSensitivity(a)).next(this._shiftDragUpdatePlane(a)),i.next((()=>{r(s)&&this._updateBoundedPlane(s)}))}))}_shiftDragAdjustSensitivity(t){return e=>{if(l(this.analysisViewData.plane))return null;const i=.001,a=Math.min((1-Math.abs(f(R(this.analysisViewData.plane),e.ray.direction)/M(e.ray.direction)))/i,1),s=-O(this._startPlane.plane,e.renderEnd),n=-O(this._startPlane.plane,t.startPoint);return t.depth=t.depth*(1-a)+s*a-n,e}}_shiftDragUpdatePlane(t){return()=>{if(l(this.analysisViewData.plane))return;const e=D(L.get(),this._startPlane.origin),i=D(L.get(),R(this._startPlane));T(i,i,-t.depth),V(i,i,e);const a=j(i,this.analysisViewData.plane.basis1,this.analysisViewData.plane.basis2,x());this._updateBoundedPlane(a)}}_onRotateHeadingGrab(t){if("start"!==t.action||l(this.analysisViewData.plane))return;const e=st(this.analysisViewData.plane,this.view.renderCoordsHelper,nt.HEADING,C()),i=this._calculatePickRay(t.screenPoint),a=H();z(e,i,a)&&(I(this.analysisViewData.plane,this._startPlane),this.inputState={type:"rotate",rotatePlane:e,startPoint:a})}_createRotateHeadingDragPipeline(t){return Vt(t,((t,e,i)=>{const a=this.inputState;if(l(a)||"rotate"!==a.type)return;const s=r(this.analysisViewData.plane)?I(this.analysisViewData.plane,x()):null;e.next(wt(this.view,a.rotatePlane)).next(this._rotateDragRenderPlaneToRotate(a)).next(this._rotateDragUpdatePlaneFromRotate()),i.next((()=>{r(s)&&this._updateBoundedPlane(s)}))}))}_onRotateTiltGrab(t){if("start"!==t.action||l(this.analysisViewData.plane))return;const e=st(this.analysisViewData.plane,this.view.renderCoordsHelper,nt.TILT,C()),i=this._calculatePickRay(t.screenPoint),a=H();z(e,i,a)&&(I(this.analysisViewData.plane,this._startPlane),this.inputState={type:"rotate",rotatePlane:e,startPoint:a})}_createRotateTiltDragPipeline(t){return Vt(t,((t,e,i)=>{const a=this.inputState;if(l(a)||"rotate"!==a.type)return;const s=r(this.analysisViewData.plane)?I(this.analysisViewData.plane,x()):null;e.next(wt(this.view,a.rotatePlane)).next(this._rotateDragRenderPlaneToRotate(a)).next(this._rotateDragUpdatePlaneFromRotate()),i.next((()=>{r(s)&&this._updateBoundedPlane(s)}))}))}_rotateDragRenderPlaneToRotate(t){return e=>{if(l(this.analysisViewData.plane))return null;const i=G(t.rotatePlane),a=gt(t.startPoint,e.renderEnd,this.analysisViewData.plane.origin,i);return{...e,rotateAxis:i,rotateAngle:a}}}_rotateDragUpdatePlaneFromRotate(){return t=>{if(l(this.analysisViewData.plane))return;const e=m(K.get(),t.rotateAngle,t.rotateAxis);if(l(e))return;const i=b(L.get(),this._startPlane.basis1,e),a=b(L.get(),this._startPlane.basis2,e),s=j(this.analysisViewData.plane.origin,i,a,x());this._updateBoundedPlane(s)}}_onResizeGrab(t,e){if("start"!==t.action||l(this.analysisViewData.plane))return;const i=this._calculatePickRay(t.screenPoint),a=L.get();z(this.analysisViewData.plane.plane,i,a)&&(I(this.analysisViewData.plane,this._startPlane),this.inputState={type:"resize",activeHandleIdx:e,startPoint:S(a)})}_createResizeDragPipeline(t){return Vt(t,((t,e,i)=>{const a=this.inputState;if(l(a)||"resize"!==a.type||l(this.analysisViewData.plane))return;const s=I(this.analysisViewData.plane,x());e.next(wt(this.view,this.analysisViewData.plane.plane)).next(this._resizeDragUpdatePlane(a)),i.next((()=>{this._updateBoundedPlane(s)}))}))}_resizeDragUpdatePlane(t){return e=>{if(l(this.analysisViewData.plane))return;const i=this._resizeHandles[t.activeHandleIdx],a=rt(i,t.startPoint,e.renderEnd,this.view.state.camera,this._startPlane,I(this.analysisViewData.plane));this._updateBoundedPlane(a)}}_updateBoundedPlane(t){const e=this.analysisViewData;if(!r(e))throw new Error("valid internal object expected");e.plane=t}_updatePreviewPlane(t,e={}){let i=this._previewPlane;if(this._previewPlane=null,l(t))return this._removeFrameTask(),void this._updateManipulators();if(!this.analysisViewData.plane&&this.active){const a=r(i)?i:x();if(i=r(i)?I(i,xt):null,this._pickPlane(t,!0,e,a)){const t=Q;let e=!1;r(i)&&(e=f(i.plane,a.plane)<t||f(k(L.get(),i.basis1),k(L.get(),a.basis1))<t),e&&(this._previewPlaneOpacity=0),this._previewPlane=a}}r(this._previewPlane)&&l(this._frameTask)&&0===this._previewPlaneOpacity?this._frameTask=c({update:({deltaTime:t})=>{this._previewPlaneOpacity=Math.min(this._previewPlaneOpacity+t/(1e3*W),1),this._updateManipulators(),1===this._previewPlaneOpacity&&this._removeFrameTask()}}):l(this._previewPlane)&&r(this._frameTask)?this._removeFrameTask():r(this._previewPlane)&&this._updateManipulators()}_removeFrameTask(){this._frameTask=o(this._frameTask)}_calculatePickRay(t){const e=U(),i=_(t,It);return ft(this.view.state.camera,i,e),k(e.direction,e.direction),e}_pickMinResult(t){const e=_(t,A.get());return this.view.sceneIntersectionHelper.intersectToolIntersectorScreen(e,this._intersector),this._intersector.results.min}_pickPlane(t,e,i,a){const s=this._pickMinResult(t),n=L.get();if(!s.getIntersectionPoint(n))return!1;const r=s.getTransformedNormal(L.get()),l=this.view.state.camera;f(r,l.viewForward)>0&&T(r,r,-1);const o=lt(n,l),h=(e?1:-1)*o*X,p=T(L.get(),r,h);V(p,p,n);const u=this.analysis.tiltEnabled?ot.TILTED:ot.HORIZONTAL_OR_VERTICAL,c=i[N]?ot.VERTICAL:i[q]?ot.HORIZONTAL:u;return ht(p,r,o,o,l,c,this.view.renderCoordsHelper,a),!0}_clearPointerMoveTimeout(){this._prevPointerMoveTimeout=o(this._prevPointerMoveTimeout)}_resetPointerMoveTimeout(){this._clearPointerMoveTimeout(),this.shiftManipulator.state|=pt,this.rotateHeadingManipulator.state|=pt,this.rotateTiltManipulator.state|=pt,this._prevPointerMoveTimeout=this._clock.setTimeout((()=>{this.shiftManipulator.state&=~pt,this.rotateHeadingManipulator.state&=~pt,this.rotateTiltManipulator.state&=~pt}),this._pointerMoveTimerMs)}_updateManipulators(){if(kt.disableEngineLayers)return;let t=null,e=!1;if(r(this.analysisViewData.plane))t=this.analysisViewData.plane,e=!1;else{if(!r(this._previewPlane))return this.shiftManipulator.available=!1,this.rotateHeadingManipulator.available=!1,this.rotateTiltManipulator.available=!1,this.resizeManipulators.forEach((t=>t.available=!1)),this._previewPlaneOutlineVisualElement.visible=!1,void(this._previewPlaneGridVisualElement.visible=!1);t=this._previewPlane,e=!0}const i=ut(t,K.get());e?(this.shiftManipulator.available=!1,this.rotateHeadingManipulator.available=!1,this.rotateTiltManipulator.available=!1,this.resizeManipulators.forEach((t=>t.available=!1)),this._previewPlaneOutlineVisualElement.attached=!0,this._previewPlaneGridVisualElement.attached=!0,this._previewPlaneOutlineVisualElement.visible=!0,this._previewPlaneGridVisualElement.visible=!0):(this.shiftManipulator.available=!0,this.rotateHeadingManipulator.available=!0,this.rotateTiltManipulator.available=this.analysis.tiltEnabled,this.resizeManipulators.forEach((t=>t.available=!0)),ct(this.shiftManipulator,i,t,this.view.state.camera),dt(this.rotateHeadingManipulator,i,t,this.view.renderCoordsHelper),_t(this.rotateTiltManipulator,i,t),this.resizeManipulators.forEach(((e,a)=>vt(e,this._resizeHandles[a],i,t))),this._previewPlaneOutlineVisualElement.visible=!1,this._previewPlaneGridVisualElement.visible=!1);const a=E(L.get(),M(t.basis1),M(t.basis2),1),s=g(K.get(),a),n=w(s,i,s);this._previewPlaneOutlineVisualElement.transform=n,this._previewPlaneGridVisualElement.transform=n,this._updateMaterials()}_updateMaterials(){const t=[Z[0],Z[1],Z[2],Z[3]*this._previewPlaneOpacity];this._previewPlaneOutlineVisualElement.color=t;const e=[J[0],J[1],J[2],J[3]*this._previewPlaneOpacity],i=[0,0,0,0];this._previewPlaneGridVisualElement.backgroundColor=e,this._previewPlaneGridVisualElement.gridColor=i}_updateManipulatorsInteractive(t){if(!t.grabbing)return this.shiftManipulator.interactive=!0,this.rotateHeadingManipulator.interactive=!0,this.rotateTiltManipulator.interactive=!0,void this.resizeManipulators.forEach((t=>{t.interactive=!0}));this.shiftManipulator.interactive=this.shiftManipulator===t,this.rotateHeadingManipulator.interactive=this.rotateHeadingManipulator===t,this.rotateTiltManipulator.interactive=this.rotateTiltManipulator===t,this.resizeManipulators.forEach((e=>{e.interactive=e===t}))}testData(){return{plane:this.analysisViewData.plane,setPointerMoveTimerMs:t=>{this._pointerMoveTimerMs=t}}}};function St(t,e,i,a){const s=Pt(i,R(a),t.direction,C()),n=H();return z(s,t,n)?{type:"shift",creatingPointerId:e,hasBeenDragged:!1,shiftPlane:s,depth:0,startPoint:n}:null}function Ht(t){return"mouse"!==t.pointerType||0===t.button}Et.disableEngineLayers=!1,t([P()],Et.prototype,"_clock",void 0),t([P({constructOnly:!0})],Et.prototype,"view",void 0),t([P()],Et.prototype,"analysisViewData",void 0),t([P({readOnly:!0})],Et.prototype,"state",null),t([P({readOnly:!0})],Et.prototype,"cursor",null),t([P()],Et.prototype,"analysis",null),t([P()],Et.prototype,"removeIncompleteOnCancel",void 0),t([P({readOnly:!0})],Et.prototype,"layersMode",void 0),t([P({value:null})],Et.prototype,"inputState",null),t([P()],Et.prototype,"_isPlacingSlicePlane",null),t([P()],Et.prototype,"_creatingPointerId",null),Et=kt=t([y("esri.views.3d.analysis.Slice.SliceTool")],Et);const xt=x(),It=v(),Rt=Et;export{Rt as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{_ as i}from"../../../../chunks/tslib.es6.js";import e from"../../../../core/Accessor.js";import s from"../../../../core/Handles.js";import{isNone as t,isSome as r,destroyMaybe as o}from"../../../../core/maybe.js";import{watch as l,syncAndInitial as a}from"../../../../core/reactiveUtils.js";import{property as n}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as p}from"../../../../core/accessorSupport/decorators/subclass.js";import{C as m,m as u}from"../../../../chunks/mat4.js";import{s as h,l as c}from"../../../../chunks/vec3.js";import{Z as d}from"../../../../chunks/vec4f64.js";import{sv3d as v,sm4d as _}from"../../../../geometry/support/vectorStacks.js";import{PLANE_OUTLINE_COLOR as w,PLANE_PREVIEW_OUTLINE_WIDTH as V,PLANE_OUTLINE_WIDTH as f,PLANE_BACKGROUND_COLOR as y,GRID_COLOR as E}from"./sliceToolConfig.js";import{createGridVisualElement as g,createOutlineVisualElement as j,calculateBoundedPlaneTranslateRotate as b}from"./sliceToolUtils.js";import{createStipplePatternSimple as S}from"../../webgl-engine/materials/lineStippleUtils.js";let k=class extends e{constructor(i){super(i),this._handles=new s,this._gridVisualElement=null,this._outlineVisualElement=null,this.showGrid=!1,this.preview=!0}initialize(){const i=this.analysisViewData;if(t(i))throw new Error("expected internal object to be valid");this._gridVisualElement=g(this.view),this._outlineVisualElement=j(this.view),this._handles.add([l((()=>({visible:r(i.plane)&&this.analysisViewData.visible,active:this.analysisViewData.active,preview:this.preview,showGrid:this.showGrid})),(i=>this._updateMaterials(i)),a),l((()=>i.plane),(i=>this._updatePlane(i)),a)],"internal")}destroy(){this._handles.destroy(),this._gridVisualElement=o(this._gridVisualElement),this._outlineVisualElement=o(this._outlineVisualElement),this.set("view",null)}_updatePlane(i){if(t(i))return;const e=h(v.get(),c(i.basis1),c(i.basis2),1),s=m(_.get(),e),r=b(i,_.get()),o=u(s,r,s);this._outlineVisualElement.transform=o,this._gridVisualElement.transform=o}_updateMaterials({visible:i,active:e,preview:s,showGrid:t}){this._outlineVisualElement.color=w,this._outlineVisualElement.width=s?V:f,this._outlineVisualElement.stipplePattern=e?null:S(5),this._gridVisualElement.backgroundColor=y,this._gridVisualElement.gridColor=t?E:d,this._gridVisualElement.visible=i,this._outlineVisualElement.visible=i}};i([n()],k.prototype,"view",void 0),i([n()],k.prototype,"analysis",void 0),i([n()],k.prototype,"analysisViewData",void 0),i([n()],k.prototype,"showGrid",void 0),i([n()],k.prototype,"preview",void 0),k=i([p("esri.views.3d.analysis.Slice.SliceVisualization")],k);export{k as SliceVisualization};
5
+ import{_ as i}from"../../../../chunks/tslib.es6.js";import e from"../../../../core/Accessor.js";import s from"../../../../core/Handles.js";import{isNone as t,isSome as r,destroyMaybe as o}from"../../../../core/maybe.js";import{watch as l,syncAndInitial as a}from"../../../../core/reactiveUtils.js";import{property as n}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as m}from"../../../../core/accessorSupport/decorators/subclass.js";import{C as p,m as u}from"../../../../chunks/mat4.js";import{s as h,l as c}from"../../../../chunks/vec3.js";import{Z as d}from"../../../../chunks/vec4f64.js";import{sv3d as v,sm4d as _}from"../../../../geometry/support/vectorStacks.js";import{PLANE_OUTLINE_COLOR as w,PLANE_PREVIEW_OUTLINE_WIDTH as V,PLANE_OUTLINE_WIDTH as f,PLANE_BACKGROUND_COLOR as E,GRID_COLOR as g}from"./sliceToolConfig.js";import{createGridVisualElement as y,createOutlineVisualElement as j,calculateBoundedPlaneTranslateRotate as b}from"./sliceToolUtils.js";import{createStipplePatternSimple as S}from"../../webgl-engine/materials/lineStippleUtils.js";let k=class extends e{constructor(i){super(i),this._handles=new s,this._gridVisualElement=null,this._outlineVisualElement=null,this.showGrid=!1,this.preview=!0}initialize(){const i=this.analysisViewData;if(t(i))throw new Error("expected internal object to be valid");this._gridVisualElement=y(this.view),this._outlineVisualElement=j(this.view),this._handles.add([l((()=>({visible:r(i.plane)&&this.analysisViewData.visible,active:this.analysisViewData.active,preview:this.preview,showGrid:this.showGrid})),(i=>this._updateMaterials(i)),a),l((()=>i.plane),(i=>this._updatePlane(i)),a)],"internal")}destroy(){this._handles.destroy(),this._gridVisualElement=o(this._gridVisualElement),this._outlineVisualElement=o(this._outlineVisualElement),this.set("view",null)}_updatePlane(i){if(t(i))return;this._gridVisualElement.attached=!0,this._outlineVisualElement.attached=!0;const e=h(v.get(),c(i.basis1),c(i.basis2),1),s=p(_.get(),e),r=b(i,_.get()),o=u(s,r,s);this._outlineVisualElement.transform=o,this._gridVisualElement.transform=o}_updateMaterials({visible:i,active:e,preview:s,showGrid:t}){this._outlineVisualElement.color=w,this._outlineVisualElement.width=s?V:f,this._outlineVisualElement.stipplePattern=e?null:S(5),this._gridVisualElement.backgroundColor=E,this._gridVisualElement.gridColor=t?g:d,this._gridVisualElement.visible=i,this._outlineVisualElement.visible=i}};i([n()],k.prototype,"view",void 0),i([n()],k.prototype,"analysis",void 0),i([n()],k.prototype,"analysisViewData",void 0),i([n()],k.prototype,"showGrid",void 0),i([n()],k.prototype,"preview",void 0),k=i([m("esri.views.3d.analysis.Slice.SliceVisualization")],k);export{k as SliceVisualization};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import has from"../../../../core/has.js";import{deg2rad as o}from"../../../../core/mathUtils.js";import{f as s}from"../../../../chunks/vec3f64.js";import{a as t,f as r}from"../../../../chunks/vec4f64.js";const a=has("mac")?"Meta":"Control",c="Shift",m=2,f=1.15,h=1.15,e=2500,i=.02,p=Math.cos(o(45)),j=Math.cos(o(5)),n=.95,M=.3,k=.7,l=s(1,.5,0),u=2,v=1,x=t([...l,k]),C=[0,0,0,.04],S=t([...l,.5]),U=r(1,1,1,1),b=r(1,.8,.6,1),d=r(1,.93,.86,1),g=t([...l,1]),q=t([...l,1]),w=3,y=11,z=22.5,A=40,B=48,D=2.25,E=t([...l,1]),F=4,G=1,H=.3,I=6,J=4,K=1600,L=.4;export{m as DISPLAY_FOCUS_MULTIPLIER,S as GRID_COLOR,i as INITIAL_DEPTH_OFFSET_FRAC,L as INITIAL_PLANE_HALF_SIZE_VIEW_PROPORTION,C as PLANE_BACKGROUND_COLOR,K as PLANE_MIN_BASIS_SCREEN_LEN2,x as PLANE_OUTLINE_COLOR,v as PLANE_OUTLINE_WIDTH,u as PLANE_PREVIEW_OUTLINE_WIDTH,e as POINTER_MOVE_TIMER_MS,n as PREVIEW_FADE_DOT_THRESHOLD,M as PREVIEW_FADE_DURATION_SECONDS,E as RESIZE_HANDLE_COLOR,I as RESIZE_HANDLE_CORNER_INPUT_RADIUS,F as RESIZE_HANDLE_CORNER_WIDTH,J as RESIZE_HANDLE_EDGE_INPUT_RADIUS,H as RESIZE_HANDLE_EDGE_PADDING_FRAC,G as RESIZE_HANDLE_EDGE_WIDTH,b as SHIFT_RESTART_ARROW_CAP_COLOR,B as SHIFT_RESTART_ARROW_LENGTH,D as SHIFT_RESTART_ARROW_OUTLINE_WIDTH,U as SHIFT_RESTART_ARROW_TIP_COLOR,g as SHIFT_RESTART_CALLOUT_COLOR,A as SHIFT_RESTART_OFFSET_DISTANCE,q as SHIFT_RESTART_OUTLINE_COLOR,h as SHIFT_RESTART_TIP_FOCUS_MULTIPLIER,z as SHIFT_RESTART_TIP_LENGTH,y as SHIFT_RESTART_TIP_RADIUS,d as SHIFT_RESTART_TUBE_COLOR,f as SHIFT_RESTART_TUBE_FOCUS_MULTIPLIER,w as SHIFT_RESTART_TUBE_RADIUS,j as SMALL_ANGLE_DOT_THRESHOLD,p as VERTICAL_DOT_THRESHOLD,a as forceHorizontalModifier,c as forceVerticalModifier};
5
+ import has from"../../../../core/has.js";import{deg2rad as o}from"../../../../core/mathUtils.js";import{f as s}from"../../../../chunks/vec3f64.js";import{b as t,f as r}from"../../../../chunks/vec4f64.js";const c=has("mac")?"Meta":"Control",m="Shift",a=2,f=1.15,h=1.15,e=2500,i=.02,p=Math.cos(o(45)),j=Math.cos(o(5)),n=.95,M=.3,k=.7,l=s(1,.5,0),u=2,v=1,b=t([...l,k]),x=[0,0,0,.04],C=t([...l,.5]),S=r(1,1,1,1),U=r(1,.8,.6,1),d=r(1,.93,.86,1),g=t([...l,1]),q=t([...l,1]),w=3,y=11,z=22.5,A=40,B=48,D=2.25,E=t([...l,1]),F=4,G=1,H=.3,I=6,J=4,K=1600,L=.4;export{a as DISPLAY_FOCUS_MULTIPLIER,C as GRID_COLOR,i as INITIAL_DEPTH_OFFSET_FRAC,L as INITIAL_PLANE_HALF_SIZE_VIEW_PROPORTION,x as PLANE_BACKGROUND_COLOR,K as PLANE_MIN_BASIS_SCREEN_LEN2,b as PLANE_OUTLINE_COLOR,v as PLANE_OUTLINE_WIDTH,u as PLANE_PREVIEW_OUTLINE_WIDTH,e as POINTER_MOVE_TIMER_MS,n as PREVIEW_FADE_DOT_THRESHOLD,M as PREVIEW_FADE_DURATION_SECONDS,E as RESIZE_HANDLE_COLOR,I as RESIZE_HANDLE_CORNER_INPUT_RADIUS,F as RESIZE_HANDLE_CORNER_WIDTH,J as RESIZE_HANDLE_EDGE_INPUT_RADIUS,H as RESIZE_HANDLE_EDGE_PADDING_FRAC,G as RESIZE_HANDLE_EDGE_WIDTH,U as SHIFT_RESTART_ARROW_CAP_COLOR,B as SHIFT_RESTART_ARROW_LENGTH,D as SHIFT_RESTART_ARROW_OUTLINE_WIDTH,S as SHIFT_RESTART_ARROW_TIP_COLOR,g as SHIFT_RESTART_CALLOUT_COLOR,A as SHIFT_RESTART_OFFSET_DISTANCE,q as SHIFT_RESTART_OUTLINE_COLOR,h as SHIFT_RESTART_TIP_FOCUS_MULTIPLIER,z as SHIFT_RESTART_TIP_LENGTH,y as SHIFT_RESTART_TIP_RADIUS,d as SHIFT_RESTART_TUBE_COLOR,f as SHIFT_RESTART_TUBE_FOCUS_MULTIPLIER,w as SHIFT_RESTART_TUBE_RADIUS,j as SMALL_ANGLE_DOT_THRESHOLD,p as VERTICAL_DOT_THRESHOLD,c as forceHorizontalModifier,m as forceVerticalModifier};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../geometry.js";import t from"../../../../analysis/SlicePlane.js";import"../../../../core/has.js";import e from"../../../../core/Logger.js";import{rad2deg as i,deg2rad as n}from"../../../../core/mathUtils.js";import{isNone as r,isSome as s}from"../../../../core/maybe.js";import{castRenderScreenPointArray3 as o}from"../../../../core/screenUtils.js";import{o as a,b as c,k as l,m as u,r as d,i as m,v as p,D as g}from"../../../../chunks/mat4.js";import{c as f}from"../../../../chunks/mat4f64.js";import{r as b}from"../../../../chunks/quat.js";import{g as h,c as T,e as E,f as O,n as I,a as R,l as w,b as A,s as j,z as y,p as M}from"../../../../chunks/vec3.js";import{a as L,c as _,f as k}from"../../../../chunks/vec3f64.js";import{tryProjectWithZConversion as C}from"../../../../geometry/projection.js";import{Axis as N}from"../../../../geometry/support/Axis.js";import{r as P,f as v,i as U,a as V,n as S,u as F}from"../../../../chunks/boundedPlane.js";import{fromVectorsAndPoint as H,fromPositionAndNormal as x}from"../../../../geometry/support/plane.js";import{create as G}from"../../../../geometry/support/ray.js";import{angleAroundAxis as D}from"../../../../geometry/support/vector.js";import{sv3d as X,sm4d as Y,sq4d as Z}from"../../../../geometry/support/vectorStacks.js";import{VERTICAL_DOT_THRESHOLD as W,SMALL_ANGLE_DOT_THRESHOLD as z,PLANE_MIN_BASIS_SCREEN_LEN2 as B,INITIAL_PLANE_HALF_SIZE_VIEW_PROPORTION as q,SHIFT_RESTART_OFFSET_DISTANCE as $,RESIZE_HANDLE_EDGE_PADDING_FRAC as J,SHIFT_RESTART_ARROW_TIP_COLOR as K,SHIFT_RESTART_ARROW_CAP_COLOR as Q,SHIFT_RESTART_TUBE_COLOR as tt,SHIFT_RESTART_OUTLINE_COLOR as et,SHIFT_RESTART_CALLOUT_COLOR as it,SHIFT_RESTART_TIP_RADIUS as nt,PLANE_OUTLINE_COLOR as rt,PLANE_OUTLINE_WIDTH as st,PLANE_BACKGROUND_COLOR as ot,GRID_COLOR as at,RESIZE_HANDLE_CORNER_INPUT_RADIUS as ct,RESIZE_HANDLE_EDGE_INPUT_RADIUS as lt,SHIFT_RESTART_TIP_LENGTH as ut,SHIFT_RESTART_ARROW_LENGTH as dt,SHIFT_RESTART_TUBE_RADIUS as mt,SHIFT_RESTART_TUBE_FOCUS_MULTIPLIER as pt,SHIFT_RESTART_TIP_FOCUS_MULTIPLIER as gt,SHIFT_RESTART_ARROW_OUTLINE_WIDTH as ft,RESIZE_HANDLE_CORNER_WIDTH as bt,RESIZE_HANDLE_EDGE_WIDTH as ht,DISPLAY_FOCUS_MULTIPLIER as Tt,RESIZE_HANDLE_COLOR as Et}from"./sliceToolConfig.js";import{applyProjectionAndElevationAlignment as Ot}from"../support/projectionUtils.js";import{Manipulator3D as It}from"../../interactive/Manipulator3D.js";import{calculateTranslateRotateFromBases as Rt,createRotateManipulator as wt,worldScaledManipulatorSettings as At}from"../../interactive/manipulatorUtils.js";import{LineVisualElement as jt}from"../../interactive/visualElements/LineVisualElement.js";import{SlicePlaneVisualElement as yt}from"../../interactive/visualElements/SlicePlaneVisualElement.js";import{RenderCoordsHelper as Mt}from"../../support/RenderCoordsHelper.js";import{fromRender as Lt}from"../../support/geometryUtils/ray.js";import{CullFaceOptions as _t}from"../../webgl-engine/lib/basicInterfaces.js";import{createPolylineGeometry as kt,createExtrudedTriangle as Ct,createConeGeometry as Nt,createPathExtrusionGeometry as Pt}from"../../webgl-engine/lib/GeometryUtil.js";import{RenderOccludedFlag as vt}from"../../webgl-engine/lib/Material.js";import{ColorMaterial as Ut}from"../../webgl-engine/materials/ColorMaterial.js";import{NativeLineMaterial as Vt}from"../../webgl-engine/materials/NativeLineMaterial.js";import{RibbonLineMaterial as St}from"../../webgl-engine/materials/RibbonLineMaterial.js";import{ManipulatorStateCustomFlags as Ft,ManipulatorStateFlags as Ht}from"../../../interactive/interfaces.js";import xt from"../../../../geometry/Extent.js";function Gt(t,e,i,n,r,s,o,a){return Dt(e,o.worldUpAtPosition(t,X.get()),r,s,a.basis1,a.basis2),h(a.basis1,a.basis1,i),h(a.basis2,a.basis2,n),T(a.origin,t),H(a.basis2,a.basis1,a.origin,a.plane),a}function Dt(t,e,i,n,r,s){const o=E(t,e),a=X.get(),c=X.get();switch(n===we.HORIZONTAL_OR_VERTICAL?Math.abs(o)>W?we.HORIZONTAL:we.VERTICAL:n){case we.VERTICAL:{const n=Math.abs(o)<=z?t:i.viewUp;O(a,n,e),T(c,e);break}case we.HORIZONTAL:O(a,i.viewUp,e),O(c,e,a);break;case we.TILTED:{const n=Math.abs(o)<=z?e:i.viewUp;O(a,n,t),O(c,t,a);break}}const l=O(X.get(),a,c);E(l,i.viewForward)>0&&h(c,c,-1),I(r,a),I(s,c)}function Xt(t,e,i){const n=e.worldUpAtPosition(t.origin,X.get()),r=t.basis1,s=be(t,n),o=Math.round(s/ye)*ye;return P(t,o-s,r,i)}function Yt(t,e,i,n,r,s){const o=T(X.get(),r.origin);R(o,o,h(X.get(),r.basis1,t.direction[0]<0?1:-1)),R(o,o,h(X.get(),r.basis2,t.direction[1]<0?1:-1));const a=w(r.basis1),c=w(r.basis2),l=A(X.get(),i,o),u=A(X.get(),e,o);let d=0,m=0;if(se(t)){const e=re(r),i=re(s);d=a-.5*t.direction[0]*E(r.basis1,u)/a,m=c-.5*t.direction[1]*E(r.basis2,u)/c;const n=i/e;d*=n,m*=n}const p=d+.5*t.direction[0]*E(r.basis1,l)/a,g=m+.5*t.direction[1]*E(r.basis2,l)/c,f=h(X.get(),r.basis1,p/a),b=h(X.get(),r.basis2,g/c);(p<=0||ie(s.origin,f,n)<=B)&&T(f,s.basis1),(g<=0||ie(s.origin,b,n)<=B)&&T(b,s.basis2);const O=T(X.get(),o);return R(O,O,h(X.get(),f,t.direction[0]<0?-1:1)),R(O,O,h(X.get(),b,t.direction[1]<0?-1:1)),v(O,f,b,s)}function Zt(t,e){return q*Math.min(e.width,e.height)*e.computeRenderPixelSizeAt(t)}function Wt(t,e,i,n){const r=O(X.get(),e,i);return O(r,r,e),x(t,r,n)}function zt(t,e){return Rt(t.basis1,t.basis2,t.origin,e)}function Bt(t,e,i,n){const r=e.worldUpAtPosition(t.origin,X.get()),s=X.get();switch(i){case Re.HEADING:T(s,r);break;case Re.TILT:T(s,t.basis1)}return x(t.origin,s,n)}function qt(t,e,i,n){const r=ee(i,te.NEGATIVE_X),s=Y.get();a(s,e,r.edge*Math.PI/2);const c=I(X.get(),r.basis);let l=h(X.get(),c,r.direction*n.computeScreenPixelSizeAt(r.position)*$);R(l,l,r.position);const u=n.projectToRenderScreen(l,o(X.get())),d=$t(n,u);Lt(n,u,je),I(je.direction,je.direction);const m=X.get();!d&&U(i,je,m)&&(l=m),s[12]=0,s[13]=0,s[14]=0,t.modelTransform=s,t.renderLocation=L(l),d?t.state|=Ae:t.state&=~Ae}function $t(t,e){const[i,n,r,s]=t.viewport,o=Math.min(r,s)/16;let a=!0;return e[0]<i+o?(e[0]=i+o,a=!1):e[0]>i+r-o&&(e[0]=i+r-o,a=!1),e[1]<n+o?(e[1]=n+o,a=!1):e[1]>n+s-o&&(e[1]=n+s-o,a=!1),a}function Jt(t,e,i,n){const r=w(n.basis1),s=w(n.basis2),o=ne(n),a=re(n),d=j(X.get(),0,0,0);R(d,h(X.get(),n.basis1,e.direction[0]),h(X.get(),n.basis2,e.direction[1])),R(d,n.origin,d);let m=0,p=1;if(se(e))1===e.direction[0]&&-1===e.direction[1]?m=ye:1===e.direction[0]&&1===e.direction[1]?m=Math.PI:-1===e.direction[0]&&1===e.direction[1]&&(m=3*Math.PI/2),p=a;else{const t=0!==e.direction[0]?1:2;m=1===t?ye:0,p=(1===t?s:r)-o}const g=c(Y.get(),m);l(g,g,j(X.get(),p,p,p)),u(g,i,g),g[12]=0,g[13]=0,g[14]=0,t.modelTransform=g,t.renderLocation=d}function Kt(t,e,i,n){const r=n.worldUpAtPosition(i.origin,X.get()),s=ee(i,te.POSITIVE_X),o=c(Y.get(),s.edge*Math.PI/2);d(o,o,-be(i,r)),u(o,e,o),o[12]=0,o[13]=0,o[14]=0,t.modelTransform=o,t.renderLocation=s.position}function Qt(t,e,i){const n=ee(i,te.POSITIVE_Y),r=c(Y.get(),n.edge*Math.PI/2);d(r,r,ye),u(r,e,r),r[12]=0,r[13]=0,r[14]=0,t.modelTransform=r,t.renderLocation=n.position}var te;function ee(t,e){switch(e){case te.POSITIVE_X:return{basis:t.basis1,direction:1,position:R(X.get(),t.origin,t.basis1),edge:e};case te.POSITIVE_Y:return{basis:t.basis2,direction:1,position:R(X.get(),t.origin,t.basis2),edge:e};case te.NEGATIVE_X:return{basis:t.basis1,direction:-1,position:A(X.get(),t.origin,t.basis1),edge:e};case te.NEGATIVE_Y:return{basis:t.basis2,direction:-1,position:A(X.get(),t.origin,t.basis2),edge:e}}}function ie(t,e,i){const n=i.projectToRenderScreen(R(X.get(),t,e),o(X.get())),r=i.projectToRenderScreen(A(X.get(),t,e),o(X.get()));return y(A(n,n,r))}function ne(t){const e=w(t.basis1),i=w(t.basis2);return J*Math.min(e,i)}function re(t){return ne(t)}function se(t){return 0!==t.direction[0]&&0!==t.direction[1]}function oe(t,e=_e.CENTER_ON_ARROW){const i=e===_e.CENTER_ON_CALLOUT?$:0,n=[k(i,0,-dt/2),k(i,0,dt/2)],r=pe(n,!0),s=(t,e)=>de(n,n,{tubeRadius:mt,tipRadius:nt,tipLength:ut,tubeFocusMultiplier:pt,tipFocusMultiplier:gt,padding:t,bothEnds:!0,flat:null,focusTipLength:!0,addCap:e}),o=s(0,!1),a=s(ft,!0),c=new Ut({color:K,cullFace:_t.Back,renderOccluded:vt.Opaque}),l=new Ut({color:Q,cullFace:_t.Back,renderOccluded:vt.Opaque}),u=new Ut({color:tt,cullFace:_t.Back,renderOccluded:vt.Opaque}),d=new Ut({color:et,transparent:!0,writeDepth:!1,cullFace:_t.Front,renderOccluded:vt.Transparent}),m=kt([[i,0,0],[i-$,0,0]]),p=kt([[i,0,0],[i-$,0,0]]),g=new Vt({color:it,renderOccluded:vt.OccludeAndTransparent});return new It({view:t,renderObjects:[...o.normal.map((({part:t,geometry:e,transform:i})=>({geometry:e,material:"tip"===t?c:"cap"===t?l:u,transform:i,stateMask:Ht.Unfocused|Ie}))),...a.normal.map((({geometry:t,transform:e})=>({geometry:t,material:d,transform:e,stateMask:Ht.Unfocused|Ie}))),{geometry:m,material:g,stateMask:Ht.Unfocused|Ie|Ae},...o.focused.map((({part:t,geometry:e,transform:i})=>({geometry:e,material:"tip"===t?c:"cap"===t?l:u,transform:i,stateMask:Ht.Focused|Ie}))),...a.focused.map((({geometry:t,transform:e})=>({geometry:t,material:d,transform:e,stateMask:Ht.Focused|Ie}))),{geometry:p,material:g,stateMask:Ht.Focused|Ie|Ae}],autoScaleRenderObjects:!1,collisionType:{type:"line",paths:[r]},collisionPriority:1,radius:nt,state:Ie})}function ae(t,e){const{manipulator:i}=wt(t,e,{customStateMask:Ie});return i.state=Ie,i}function ce(t){const e=[[-1,-1,0],[1,-1,0],[1,1,0],[-1,1,0],[-1,-1,0]];return new jt({view:t,attached:!0,color:rt,width:st,writeDepthEnabled:!1,renderOccluded:vt.OccludeAndTransparent,geometry:[e]})}function le(t){return new yt({view:t,attached:!0,backgroundColor:[...ot],gridColor:at,gridWidth:4,renderOccluded:vt.OccludeAndTransparent})}function ue(t,e){const i=se(e),n=i?[k(1,0,0),k(0,0,0),k(0,1,0)]:[k(1,0,0),k(-1,0,0)],r=kt(n),s=Et,o=t=>new St({color:s,width:t,renderOccluded:vt.OccludeAndTransparent}),a=()=>new Vt({color:s,renderOccluded:vt.OccludeAndTransparent}),c=i?bt:ht,l=c*Tt,u=ht,d=t=>t>1?o(t):a(),m=[{geometry:r,material:d(c),stateMask:Ht.Unfocused|Me},{geometry:r,material:d(l),stateMask:Ht.Focused|Me},{geometry:r,material:d(u),stateMask:Le}],p=new It({view:t,renderObjects:m,collisionType:{type:"line",paths:[n]},radius:i?ct:lt,...At});return p.state=Me,p}function de(t,e,i){const n=n=>{const r=(n?e:t).slice(0),o=A(X.get(),r[0],r[1]);I(o,o);const a=A(X.get(),r[r.length-1],r[r.length-2]);if(I(a,a),i.padding>0){const t=h(_(),a,-i.padding);if(r[r.length-1]=R(t,t,r[r.length-1]),i.bothEnds){const t=h(_(),o,-i.padding);r[0]=R(t,t,r[0])}}const c=n?i.tipFocusMultiplier:1,d=i.tipLength*(i.focusTipLength?c:1),T=i.tipRadius*c,E=m(Y.get());if(i.padding>0){const t=d/4,e=j(X.get(),0,t,0),n=1+i.padding/t;p(E,E,e),l(E,E,j(X.get(),n,n,n)),p(E,E,h(e,e,-1/n))}const O=m(f()),w=k(0,1,0),y=g(f(),b(Z.get(),w,a));y[12]=r[r.length-1][0],y[13]=r[r.length-1][1],y[14]=r[r.length-1][2],u(y,y,E);const M=[{part:"tube",geometry:me(i.tubeRadius*(n?i.tubeFocusMultiplier:1)+i.padding,i.flat,r),transform:O}];let L,C;if(s(i.flat)?L=Ct(d,T,T,i.flat.thickness):(L=Nt(d,T,24,!1,!1,!0),C=Nt(d,T,24,!1,!0,!1)),M.push({part:"tip",geometry:L,transform:y}),C&&M.push({part:"cap",geometry:C,transform:y}),i.bothEnds){const t=g(f(),b(Z.get(),w,o));t[12]=r[0][0],t[13]=r[0][1],t[14]=r[0][2],u(t,t,E),M.push({part:"tip",geometry:L,transform:t}),C&&M.push({part:"cap",geometry:C,transform:t})}return M};return{normal:n(!1),focused:n(!0)}}function me(t,e,i){const n=[];if(s(e))n.push([t,e.thickness/2],[-t,e.thickness/2],[-t,-e.thickness/2],[t,-e.thickness/2]);else{const e=12;for(let i=0;i<e;i++){const r=i/e*2*Math.PI;n.push([Math.cos(r)*t,Math.sin(r)*t])}}return Pt(n,i,[],[],!1)}function pe(t,e){const i=A(_(),t[t.length-1],t[t.length-2]);if(I(i,i),h(i,i,ut),R(i,i,t[t.length-1]),e){const e=A(_(),t[0],t[1]);return I(e,e),h(e,e,ut),R(e,e,t[0]),[e,...t,i]}return[...t,i]}function ge(e,n,s,o=new t){if(r(e))return null;const{renderCoordsHelper:a}=n,c=a.fromRenderCoords(e.origin,n.spatialReference);if(r(c))return null;const l=C(c,s);if(r(l))return null;o.position=l;const u=2*w(e.basis1),d=2*w(e.basis2),m=Mt.renderUnitScaleFactor(n.spatialReference,s);o.width=u*m,o.height=d*m;const p=a.worldUpAtPosition(e.origin,X.get());return o.tilt=i(be(e,p)),o.heading=a.headingAtPosition(e.origin,e.basis1)-90,o}function fe(t,e,i){if(r(t))return null;const n=t.origin,s=X.get(),o=X.get(),a=X.get(),c=X.get();let l,u,d,m,p,g;R(s,n,t.basis1),R(s,s,t.basis2),R(o,n,t.basis1),M(o,o,t.basis2),M(a,n,t.basis1),M(a,a,t.basis2),M(c,n,t.basis1),R(c,c,t.basis2);for(const f of[s,o,a,c]){const t=e.fromRenderCoords(f,f,i);if(r(t))return null;l=null==l?t[0]:Math.min(l,t[0]),u=null==u?t[0]:Math.max(u,t[0]),d=null==d?t[1]:Math.min(d,t[1]),m=null==m?t[1]:Math.max(m,t[1]),p=null==p?t[2]:Math.min(p,t[2]),g=null==g?t[2]:Math.max(g,t[2])}return new xt({xmin:l,xmax:u,ymin:d,ymax:m,zmin:p,zmax:g,spatialReference:i})}function be(t,e){return D(e,t.basis2,t.basis1)+ye}function he(t,i,r,s,o,a,c=V()){return a.toRenderCoords(t,c.origin)?(a.worldBasisAtPosition(c.origin,N.X,c.basis1),a.worldBasisAtPosition(c.origin,N.Y,c.basis2),H(c.basis2,c.basis1,c.origin,c.plane),P(c,-n(i),S(c),c),P(c,n(r),c.basis1,c),h(c.basis1,c.basis1,s/2),h(c.basis2,c.basis2,o/2),F(c),c):(e.getLogger("esri.views.3d.analysis.Slice.sliceToolUtils").error(`Failed to project slice plane position, projection from ${t.spatialReference.wkid} is not supported`),null)}function Te(t,e){if(r(t)||r(t.position))return null;const i=Ot(t.position,e.spatialReference,e.elevationProvider);if(r(i))return null;const n=Mt.renderUnitScaleFactor(t.position.spatialReference,e.spatialReference),s=t.width*n,o=t.height*n;return{position:i,heading:t.heading,tilt:t.tilt,renderWidth:s,renderHeight:o}}function Ee(t,e,i,n=V()){const s=Te(t,e);return r(s)?null:Oe(s,e,i,n)}function Oe(t,e,i,n=V()){if(r(t))return null;const o=he(t.position,t.heading,t.tilt,t.renderWidth,t.renderHeight,e.renderCoordsHelper,n);return!i.tiltEnabled&&s(o)&&Xt(o,e.renderCoordsHelper,o),o}!function(t){t[t.POSITIVE_X=0]="POSITIVE_X",t[t.POSITIVE_Y=1]="POSITIVE_Y",t[t.NEGATIVE_X=2]="NEGATIVE_X",t[t.NEGATIVE_Y=3]="NEGATIVE_Y"}(te||(te={}));const Ie=Ft.Custom1;var Re,we;!function(t){t[t.HEADING=1]="HEADING",t[t.TILT=2]="TILT"}(Re||(Re={})),function(t){t[t.HORIZONTAL_OR_VERTICAL=0]="HORIZONTAL_OR_VERTICAL",t[t.HORIZONTAL=1]="HORIZONTAL",t[t.VERTICAL=2]="VERTICAL",t[t.TILTED=3]="TILTED"}(we||(we={}));const Ae=Ft.Custom2,je=G(),ye=Math.PI/2,Me=Ft.Custom1,Le=Ft.Custom2;var _e;function ke(t){const e="building-scene-3d"===t.type?t:null;return s(e)}!function(t){t[t.CENTER_ON_CALLOUT=0]="CENTER_ON_CALLOUT",t[t.CENTER_ON_ARROW=1]="CENTER_ON_ARROW"}(_e||(_e={}));export{Ie as DidPointerMoveRecentlyFlag,Ae as IsShiftEdgeOnScreenFlag,_e as OffsetMode,Re as RotationAxis,we as SliceOrientation,pe as addArrowTips,zt as calculateBoundedPlaneTranslateRotate,re as calculateDiagonalResizeHandleScale,Zt as calculatePlaneHalfSize,ne as calculateResizeHandlePadding,ie as calculateScreenSpaceBasisLength2,de as createArrowGeometry,le as createGridVisualElement,ce as createOutlineVisualElement,Gt as createPlane,ue as createResizeManipulator,ae as createRotateManipulator,Bt as createRotatePlane,oe as createShiftManipulator,Wt as createShiftPlane,Xt as forceHorizontalOrVertical,se as isDiagonalResizeHandle,ke as isIBuildingSceneLayerView3D,Dt as normalToBases,fe as planeToExtent,ge as planeToShape,Te as projectAndElevationAlignShape,Oe as projectedShapeToPlane,Me as resizeNormal,Le as resizeOutlineOnly,Yt as resizePlane,Ee as shapeToPlane,Jt as updateResizeHandle,Kt as updateRotateHeadingHandle,Qt as updateRotateTiltHandle,qt as updateShiftRestartHandle};
5
+ import"../../../../geometry.js";import t from"../../../../analysis/SlicePlane.js";import"../../../../core/has.js";import e from"../../../../core/Logger.js";import{rad2deg as i,deg2rad as n}from"../../../../core/mathUtils.js";import{isNone as r,isSome as s}from"../../../../core/maybe.js";import{castRenderScreenPointArray3 as o}from"../../../../core/screenUtils.js";import{o as a,b as c,k as l,m as u,r as d,i as m,v as p,D as g}from"../../../../chunks/mat4.js";import{c as f}from"../../../../chunks/mat4f64.js";import{r as b}from"../../../../chunks/quat.js";import{g as h,c as T,e as E,f as O,n as I,a as R,l as w,b as A,s as j,p as y,y as M}from"../../../../chunks/vec3.js";import{a as L,c as _,f as k}from"../../../../chunks/vec3f64.js";import{tryProjectWithZConversion as C}from"../../../../geometry/projection.js";import{Axis as N}from"../../../../geometry/support/Axis.js";import{r as P,f as v,i as U,a as V,n as S,u as F}from"../../../../chunks/boundedPlane.js";import{fromVectorsAndPoint as H,fromPositionAndNormal as x}from"../../../../geometry/support/plane.js";import{create as G}from"../../../../geometry/support/ray.js";import{angleAroundAxis as D}from"../../../../geometry/support/vector.js";import{sv3d as X,sm4d as Y,sq4d as Z}from"../../../../geometry/support/vectorStacks.js";import{VERTICAL_DOT_THRESHOLD as W,SMALL_ANGLE_DOT_THRESHOLD as B,PLANE_MIN_BASIS_SCREEN_LEN2 as q,INITIAL_PLANE_HALF_SIZE_VIEW_PROPORTION as z,SHIFT_RESTART_OFFSET_DISTANCE as $,RESIZE_HANDLE_EDGE_PADDING_FRAC as J,SHIFT_RESTART_ARROW_TIP_COLOR as K,SHIFT_RESTART_ARROW_CAP_COLOR as Q,SHIFT_RESTART_TUBE_COLOR as tt,SHIFT_RESTART_OUTLINE_COLOR as et,SHIFT_RESTART_CALLOUT_COLOR as it,SHIFT_RESTART_TIP_RADIUS as nt,PLANE_OUTLINE_COLOR as rt,PLANE_OUTLINE_WIDTH as st,PLANE_BACKGROUND_COLOR as ot,GRID_COLOR as at,RESIZE_HANDLE_CORNER_INPUT_RADIUS as ct,RESIZE_HANDLE_EDGE_INPUT_RADIUS as lt,SHIFT_RESTART_TIP_LENGTH as ut,SHIFT_RESTART_ARROW_LENGTH as dt,SHIFT_RESTART_TUBE_RADIUS as mt,SHIFT_RESTART_TUBE_FOCUS_MULTIPLIER as pt,SHIFT_RESTART_TIP_FOCUS_MULTIPLIER as gt,SHIFT_RESTART_ARROW_OUTLINE_WIDTH as ft,RESIZE_HANDLE_CORNER_WIDTH as bt,RESIZE_HANDLE_EDGE_WIDTH as ht,DISPLAY_FOCUS_MULTIPLIER as Tt,RESIZE_HANDLE_COLOR as Et}from"./sliceToolConfig.js";import{applyProjectionAndElevationAlignment as Ot}from"../support/projectionUtils.js";import{Manipulator3D as It}from"../../interactive/Manipulator3D.js";import{calculateTranslateRotateFromBases as Rt,createRotateManipulator as wt,worldScaledManipulatorSettings as At}from"../../interactive/manipulatorUtils.js";import{LineVisualElement as jt}from"../../interactive/visualElements/LineVisualElement.js";import{SlicePlaneVisualElement as yt}from"../../interactive/visualElements/SlicePlaneVisualElement.js";import{RenderCoordsHelper as Mt}from"../../support/RenderCoordsHelper.js";import{fromRender as Lt}from"../../support/geometryUtils/ray.js";import{CullFaceOptions as _t}from"../../webgl-engine/lib/basicInterfaces.js";import{createPolylineGeometry as kt,createExtrudedTriangle as Ct,createConeGeometry as Nt,createPathExtrusionGeometry as Pt}from"../../webgl-engine/lib/GeometryUtil.js";import{RenderOccludedFlag as vt}from"../../webgl-engine/lib/Material.js";import{ColorMaterial as Ut}from"../../webgl-engine/materials/ColorMaterial.js";import{NativeLineMaterial as Vt}from"../../webgl-engine/materials/NativeLineMaterial.js";import{RibbonLineMaterial as St}from"../../webgl-engine/materials/RibbonLineMaterial.js";import{ManipulatorStateCustomFlags as Ft,ManipulatorStateFlags as Ht}from"../../../interactive/interfaces.js";import xt from"../../../../geometry/Extent.js";function Gt(t,e,i,n,r,s,o,a){return Dt(e,o.worldUpAtPosition(t,X.get()),r,s,a.basis1,a.basis2),h(a.basis1,a.basis1,i),h(a.basis2,a.basis2,n),T(a.origin,t),H(a.basis2,a.basis1,a.origin,a.plane),a}function Dt(t,e,i,n,r,s){const o=E(t,e),a=X.get(),c=X.get();switch(n===we.HORIZONTAL_OR_VERTICAL?Math.abs(o)>W?we.HORIZONTAL:we.VERTICAL:n){case we.VERTICAL:{const n=Math.abs(o)<=B?t:i.viewUp;O(a,n,e),T(c,e);break}case we.HORIZONTAL:O(a,i.viewUp,e),O(c,e,a);break;case we.TILTED:{const n=Math.abs(o)<=B?e:i.viewUp;O(a,n,t),O(c,t,a);break}}const l=O(X.get(),a,c);E(l,i.viewForward)>0&&h(c,c,-1),I(r,a),I(s,c)}function Xt(t,e,i){const n=e.worldUpAtPosition(t.origin,X.get()),r=t.basis1,s=be(t,n),o=Math.round(s/ye)*ye;return P(t,o-s,r,i)}function Yt(t,e,i,n,r,s){const o=T(X.get(),r.origin);R(o,o,h(X.get(),r.basis1,t.direction[0]<0?1:-1)),R(o,o,h(X.get(),r.basis2,t.direction[1]<0?1:-1));const a=w(r.basis1),c=w(r.basis2),l=A(X.get(),i,o),u=A(X.get(),e,o);let d=0,m=0;if(se(t)){const e=re(r),i=re(s);d=a-.5*t.direction[0]*E(r.basis1,u)/a,m=c-.5*t.direction[1]*E(r.basis2,u)/c;const n=i/e;d*=n,m*=n}const p=d+.5*t.direction[0]*E(r.basis1,l)/a,g=m+.5*t.direction[1]*E(r.basis2,l)/c,f=h(X.get(),r.basis1,p/a),b=h(X.get(),r.basis2,g/c);(p<=0||ie(s.origin,f,n)<=q)&&T(f,s.basis1),(g<=0||ie(s.origin,b,n)<=q)&&T(b,s.basis2);const O=T(X.get(),o);return R(O,O,h(X.get(),f,t.direction[0]<0?-1:1)),R(O,O,h(X.get(),b,t.direction[1]<0?-1:1)),v(O,f,b,s)}function Zt(t,e){return z*Math.min(e.width,e.height)*e.computeRenderPixelSizeAt(t)}function Wt(t,e,i,n){const r=O(X.get(),e,i);return O(r,r,e),x(t,r,n)}function Bt(t,e){return Rt(t.basis1,t.basis2,t.origin,e)}function qt(t,e,i,n){const r=e.worldUpAtPosition(t.origin,X.get()),s=X.get();switch(i){case Re.HEADING:T(s,r);break;case Re.TILT:T(s,t.basis1)}return x(t.origin,s,n)}function zt(t,e,i,n){const r=ee(i,te.NEGATIVE_X),s=Y.get();a(s,e,r.edge*Math.PI/2);const c=I(X.get(),r.basis);let l=h(X.get(),c,r.direction*n.computeScreenPixelSizeAt(r.position)*$);R(l,l,r.position);const u=n.projectToRenderScreen(l,o(X.get())),d=$t(n,u);Lt(n,u,je),I(je.direction,je.direction);const m=X.get();!d&&U(i,je,m)&&(l=m),s[12]=0,s[13]=0,s[14]=0,t.modelTransform=s,t.renderLocation=L(l),d?t.state|=Ae:t.state&=~Ae}function $t(t,e){const[i,n,r,s]=t.viewport,o=Math.min(r,s)/16;let a=!0;return e[0]<i+o?(e[0]=i+o,a=!1):e[0]>i+r-o&&(e[0]=i+r-o,a=!1),e[1]<n+o?(e[1]=n+o,a=!1):e[1]>n+s-o&&(e[1]=n+s-o,a=!1),a}function Jt(t,e,i,n){const r=w(n.basis1),s=w(n.basis2),o=ne(n),a=re(n),d=j(X.get(),0,0,0);R(d,h(X.get(),n.basis1,e.direction[0]),h(X.get(),n.basis2,e.direction[1])),R(d,n.origin,d);let m=0,p=1;if(se(e))1===e.direction[0]&&-1===e.direction[1]?m=ye:1===e.direction[0]&&1===e.direction[1]?m=Math.PI:-1===e.direction[0]&&1===e.direction[1]&&(m=3*Math.PI/2),p=a;else{const t=0!==e.direction[0]?1:2;m=1===t?ye:0,p=(1===t?s:r)-o}const g=c(Y.get(),m);l(g,g,j(X.get(),p,p,p)),u(g,i,g),g[12]=0,g[13]=0,g[14]=0,t.modelTransform=g,t.renderLocation=d}function Kt(t,e,i,n){const r=n.worldUpAtPosition(i.origin,X.get()),s=ee(i,te.POSITIVE_X),o=c(Y.get(),s.edge*Math.PI/2);d(o,o,-be(i,r)),u(o,e,o),o[12]=0,o[13]=0,o[14]=0,t.modelTransform=o,t.renderLocation=s.position}function Qt(t,e,i){const n=ee(i,te.POSITIVE_Y),r=c(Y.get(),n.edge*Math.PI/2);d(r,r,ye),u(r,e,r),r[12]=0,r[13]=0,r[14]=0,t.modelTransform=r,t.renderLocation=n.position}var te;function ee(t,e){switch(e){case te.POSITIVE_X:return{basis:t.basis1,direction:1,position:R(X.get(),t.origin,t.basis1),edge:e};case te.POSITIVE_Y:return{basis:t.basis2,direction:1,position:R(X.get(),t.origin,t.basis2),edge:e};case te.NEGATIVE_X:return{basis:t.basis1,direction:-1,position:A(X.get(),t.origin,t.basis1),edge:e};case te.NEGATIVE_Y:return{basis:t.basis2,direction:-1,position:A(X.get(),t.origin,t.basis2),edge:e}}}function ie(t,e,i){const n=i.projectToRenderScreen(R(X.get(),t,e),o(X.get())),r=i.projectToRenderScreen(A(X.get(),t,e),o(X.get()));return y(A(n,n,r))}function ne(t){const e=w(t.basis1),i=w(t.basis2);return J*Math.min(e,i)}function re(t){return ne(t)}function se(t){return 0!==t.direction[0]&&0!==t.direction[1]}function oe(t,e=_e.CENTER_ON_ARROW){const i=e===_e.CENTER_ON_CALLOUT?$:0,n=[k(i,0,-dt/2),k(i,0,dt/2)],r=pe(n,!0),s=(t,e)=>de(n,n,{tubeRadius:mt,tipRadius:nt,tipLength:ut,tubeFocusMultiplier:pt,tipFocusMultiplier:gt,padding:t,bothEnds:!0,flat:null,focusTipLength:!0,addCap:e}),o=s(0,!1),a=s(ft,!0),c=new Ut({color:K,cullFace:_t.Back,renderOccluded:vt.Opaque}),l=new Ut({color:Q,cullFace:_t.Back,renderOccluded:vt.Opaque}),u=new Ut({color:tt,cullFace:_t.Back,renderOccluded:vt.Opaque}),d=new Ut({color:et,transparent:!0,writeDepth:!1,cullFace:_t.Front,renderOccluded:vt.Transparent}),m=kt([[i,0,0],[i-$,0,0]]),p=kt([[i,0,0],[i-$,0,0]]),g=new Vt({color:it,renderOccluded:vt.OccludeAndTransparent});return new It({view:t,renderObjects:[...o.normal.map((({part:t,geometry:e,transform:i})=>({geometry:e,material:"tip"===t?c:"cap"===t?l:u,transform:i,stateMask:Ht.Unfocused|Ie}))),...a.normal.map((({geometry:t,transform:e})=>({geometry:t,material:d,transform:e,stateMask:Ht.Unfocused|Ie}))),{geometry:m,material:g,stateMask:Ht.Unfocused|Ie|Ae},...o.focused.map((({part:t,geometry:e,transform:i})=>({geometry:e,material:"tip"===t?c:"cap"===t?l:u,transform:i,stateMask:Ht.Focused|Ie}))),...a.focused.map((({geometry:t,transform:e})=>({geometry:t,material:d,transform:e,stateMask:Ht.Focused|Ie}))),{geometry:p,material:g,stateMask:Ht.Focused|Ie|Ae}],autoScaleRenderObjects:!1,collisionType:{type:"line",paths:[r]},collisionPriority:1,radius:nt,state:Ie})}function ae(t,e){const i=wt(t,{customStateMask:Ie,texture:e});return i.state=Ie,i}function ce(t){const e=[[-1,-1,0],[1,-1,0],[1,1,0],[-1,1,0],[-1,-1,0]];return new jt({view:t,attached:!1,color:rt,width:st,writeDepthEnabled:!1,renderOccluded:vt.OccludeAndTransparent,geometry:[e]})}function le(t){return new yt({view:t,attached:!1,backgroundColor:[...ot],gridColor:at,gridWidth:4,renderOccluded:vt.OccludeAndTransparent})}function ue(t,e){const i=se(e),n=i?[k(1,0,0),k(0,0,0),k(0,1,0)]:[k(1,0,0),k(-1,0,0)],r=kt(n),s=Et,o=t=>new St({color:s,width:t,renderOccluded:vt.OccludeAndTransparent}),a=()=>new Vt({color:s,renderOccluded:vt.OccludeAndTransparent}),c=i?bt:ht,l=c*Tt,u=ht,d=t=>t>1?o(t):a(),m=[{geometry:r,material:d(c),stateMask:Ht.Unfocused|Me},{geometry:r,material:d(l),stateMask:Ht.Focused|Me},{geometry:r,material:d(u),stateMask:Le}],p=new It({view:t,renderObjects:m,collisionType:{type:"line",paths:[n]},radius:i?ct:lt,...At});return p.state=Me,p}function de(t,e,i){const n=n=>{const r=(n?e:t).slice(0),o=A(X.get(),r[0],r[1]);I(o,o);const a=A(X.get(),r[r.length-1],r[r.length-2]);if(I(a,a),i.padding>0){const t=h(_(),a,-i.padding);if(r[r.length-1]=R(t,t,r[r.length-1]),i.bothEnds){const t=h(_(),o,-i.padding);r[0]=R(t,t,r[0])}}const c=n?i.tipFocusMultiplier:1,d=i.tipLength*(i.focusTipLength?c:1),T=i.tipRadius*c,E=m(Y.get());if(i.padding>0){const t=d/4,e=j(X.get(),0,t,0),n=1+i.padding/t;p(E,E,e),l(E,E,j(X.get(),n,n,n)),p(E,E,h(e,e,-1/n))}const O=m(f()),w=k(0,1,0),y=g(f(),b(Z.get(),w,a));y[12]=r[r.length-1][0],y[13]=r[r.length-1][1],y[14]=r[r.length-1][2],u(y,y,E);const M=[{part:"tube",geometry:me(i.tubeRadius*(n?i.tubeFocusMultiplier:1)+i.padding,i.flat,r),transform:O}];let L,C;if(s(i.flat)?L=Ct(d,T,T,i.flat.thickness):(L=Nt(d,T,24,!1,!1,!0),C=Nt(d,T,24,!1,!0,!1)),M.push({part:"tip",geometry:L,transform:y}),C&&M.push({part:"cap",geometry:C,transform:y}),i.bothEnds){const t=g(f(),b(Z.get(),w,o));t[12]=r[0][0],t[13]=r[0][1],t[14]=r[0][2],u(t,t,E),M.push({part:"tip",geometry:L,transform:t}),C&&M.push({part:"cap",geometry:C,transform:t})}return M};return{normal:n(!1),focused:n(!0)}}function me(t,e,i){const n=[];if(s(e))n.push([t,e.thickness/2],[-t,e.thickness/2],[-t,-e.thickness/2],[t,-e.thickness/2]);else{const e=12;for(let i=0;i<e;i++){const r=i/e*2*Math.PI;n.push([Math.cos(r)*t,Math.sin(r)*t])}}return Pt(n,i,[],[],!1)}function pe(t,e){const i=A(_(),t[t.length-1],t[t.length-2]);if(I(i,i),h(i,i,ut),R(i,i,t[t.length-1]),e){const e=A(_(),t[0],t[1]);return I(e,e),h(e,e,ut),R(e,e,t[0]),[e,...t,i]}return[...t,i]}function ge(e,n,s,o=new t){if(r(e))return null;const{renderCoordsHelper:a}=n,c=a.fromRenderCoords(e.origin,n.spatialReference);if(r(c))return null;const l=C(c,s);if(r(l))return null;o.position=l;const u=2*w(e.basis1),d=2*w(e.basis2),m=Mt.renderUnitScaleFactor(n.spatialReference,s);o.width=u*m,o.height=d*m;const p=a.worldUpAtPosition(e.origin,X.get());return o.tilt=i(be(e,p)),o.heading=a.headingAtPosition(e.origin,e.basis1)-90,o}function fe(t,e,i){if(r(t))return null;const n=t.origin,s=X.get(),o=X.get(),a=X.get(),c=X.get();let l,u,d,m,p,g;R(s,n,t.basis1),R(s,s,t.basis2),R(o,n,t.basis1),M(o,o,t.basis2),M(a,n,t.basis1),M(a,a,t.basis2),M(c,n,t.basis1),R(c,c,t.basis2);for(const f of[s,o,a,c]){const t=e.fromRenderCoords(f,f,i);if(r(t))return null;l=null==l?t[0]:Math.min(l,t[0]),u=null==u?t[0]:Math.max(u,t[0]),d=null==d?t[1]:Math.min(d,t[1]),m=null==m?t[1]:Math.max(m,t[1]),p=null==p?t[2]:Math.min(p,t[2]),g=null==g?t[2]:Math.max(g,t[2])}return new xt({xmin:l,xmax:u,ymin:d,ymax:m,zmin:p,zmax:g,spatialReference:i})}function be(t,e){return D(e,t.basis2,t.basis1)+ye}function he(t,i,r,s,o,a,c=V()){return a.toRenderCoords(t,c.origin)?(a.worldBasisAtPosition(c.origin,N.X,c.basis1),a.worldBasisAtPosition(c.origin,N.Y,c.basis2),H(c.basis2,c.basis1,c.origin,c.plane),P(c,-n(i),S(c),c),P(c,n(r),c.basis1,c),h(c.basis1,c.basis1,s/2),h(c.basis2,c.basis2,o/2),F(c),c):(e.getLogger("esri.views.3d.analysis.Slice.sliceToolUtils").error(`Failed to project slice plane position, projection from ${t.spatialReference.wkid} is not supported`),null)}function Te(t,e){if(r(t)||r(t.position))return null;const i=Ot(t.position,e.spatialReference,e.elevationProvider);if(r(i))return null;const n=Mt.renderUnitScaleFactor(t.position.spatialReference,e.spatialReference),s=t.width*n,o=t.height*n;return{position:i,heading:t.heading,tilt:t.tilt,renderWidth:s,renderHeight:o}}function Ee(t,e,i,n=V()){const s=Te(t,e);return r(s)?null:Oe(s,e,i,n)}function Oe(t,e,i,n=V()){if(r(t))return null;const o=he(t.position,t.heading,t.tilt,t.renderWidth,t.renderHeight,e.renderCoordsHelper,n);return!i.tiltEnabled&&s(o)&&Xt(o,e.renderCoordsHelper,o),o}!function(t){t[t.POSITIVE_X=0]="POSITIVE_X",t[t.POSITIVE_Y=1]="POSITIVE_Y",t[t.NEGATIVE_X=2]="NEGATIVE_X",t[t.NEGATIVE_Y=3]="NEGATIVE_Y"}(te||(te={}));const Ie=Ft.Custom1;var Re,we;!function(t){t[t.HEADING=1]="HEADING",t[t.TILT=2]="TILT"}(Re||(Re={})),function(t){t[t.HORIZONTAL_OR_VERTICAL=0]="HORIZONTAL_OR_VERTICAL",t[t.HORIZONTAL=1]="HORIZONTAL",t[t.VERTICAL=2]="VERTICAL",t[t.TILTED=3]="TILTED"}(we||(we={}));const Ae=Ft.Custom2,je=G(),ye=Math.PI/2,Me=Ft.Custom1,Le=Ft.Custom2;var _e;function ke(t){const e="building-scene-3d"===t.type?t:null;return s(e)}!function(t){t[t.CENTER_ON_CALLOUT=0]="CENTER_ON_CALLOUT",t[t.CENTER_ON_ARROW=1]="CENTER_ON_ARROW"}(_e||(_e={}));export{Ie as DidPointerMoveRecentlyFlag,Ae as IsShiftEdgeOnScreenFlag,_e as OffsetMode,Re as RotationAxis,we as SliceOrientation,pe as addArrowTips,Bt as calculateBoundedPlaneTranslateRotate,re as calculateDiagonalResizeHandleScale,Zt as calculatePlaneHalfSize,ne as calculateResizeHandlePadding,ie as calculateScreenSpaceBasisLength2,de as createArrowGeometry,le as createGridVisualElement,ce as createOutlineVisualElement,Gt as createPlane,ue as createResizeManipulator,ae as createRotateManipulator,qt as createRotatePlane,oe as createShiftManipulator,Wt as createShiftPlane,Xt as forceHorizontalOrVertical,se as isDiagonalResizeHandle,ke as isIBuildingSceneLayerView3D,Dt as normalToBases,fe as planeToExtent,ge as planeToShape,Te as projectAndElevationAlignShape,Oe as projectedShapeToPlane,Me as resizeNormal,Le as resizeOutlineOnly,Yt as resizePlane,Ee as shapeToPlane,Jt as updateResizeHandle,Kt as updateRotateHeadingHandle,Qt as updateRotateTiltHandle,zt as updateShiftRestartHandle};
@@ -1,4 +1,4 @@
1
1
  import "../../../interfaces";
2
2
 
3
- import SliceAnalysisView3D = __esri.SliceAnalysisView3D;
3
+ import SliceAnalysisView3D = __esri.SliceAnalysisView3D;
4
4
  export default SliceAnalysisView3D;
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{isSome as e}from"../../../../core/maybe.js";import{c as n,b as r,a as t,i as o,A as i}from"../../../../chunks/vec3.js";import{c as s}from"../../../../chunks/vec3f64.js";import{wrap as c}from"../../../../geometry/support/ray.js";import{i as a,k as f}from"../../../../chunks/sphere.js";import{defaultConstraintOptions as m,interactionDirectionTowardsConstraintMinimization as u,adjustRangeForInteraction as p}from"./common.js";import{InteractionType as y}from"./InteractionType.js";function d(e,n,r=m){if(!e.state.isLocal)return 0;const t=e.state.constraints.distance;if(!e.pointsOfInterest.surfaceOrigin.renderLocation||t===1/0)return 0;I.min=0,I.max=t,j(e,r,I);const o=g(e,n),i=I.max-o;return i>=-1e-6?0:i}function O(o,i,s=m){const p=d(o,i,s);if(0===p)return!1;const y=o.pointsOfInterest.surfaceOrigin,O=g(o,i)+p,j=n(l,i.eye),I=u(i,s.interactionDirection,x(o,i,k),h);if(!a(f(y.renderLocation,O),c(i.eye,I),A))return!1;i.eye=A;const C=r(L,i.eye,j);i.center=t(A,i.center,C);const N=o.renderCoordsHelper.getAltitude(i.center),b=o.renderCoordsHelper.intersectInfiniteManifold(i.ray,N,A);return e(b)&&(i.center=b),!0}function j(e,n,r){const t=n.interactionType;if(t===y.NONE)return;const{min:o,max:i}=r,{interactionStartCamera:s,interactionFactor:c}=n,a=t===y.ZOOM||t===y.PAN,f=d(e,s),m=0===f?0:g(e,s);r.min=o,r.max=i;p(f,m,a,c,.05*m,r)}function g(e,n){const r=e.pointsOfInterest.surfaceOrigin;return o(n.eye,r.renderLocation)}function x(e,n,r){const t=e.pointsOfInterest.surfaceOrigin;return i(r,n.eye,t.renderLocation)}const I={min:0,max:0},l=s(),L=s(),h=s(),k=s(),A=s();export{O as applyDistanceConstraint,d as getDistanceConstraintError};
5
+ import{isSome as e}from"../../../../core/maybe.js";import{c as r,b as n,a as t,i as o,r as i}from"../../../../chunks/vec3.js";import{c as s}from"../../../../chunks/vec3f64.js";import{wrap as c}from"../../../../geometry/support/ray.js";import{i as a,k as f}from"../../../../chunks/sphere.js";import{defaultConstraintOptions as m,interactionDirectionTowardsConstraintMinimization as u,adjustRangeForInteraction as p}from"./common.js";import{InteractionType as y}from"./InteractionType.js";function d(e,r,n=m){if(!e.state.isLocal)return 0;const t=e.state.constraints.distance;if(!e.pointsOfInterest.surfaceOrigin.renderLocation||t===1/0)return 0;I.min=0,I.max=t,j(e,n,I);const o=g(e,r),i=I.max-o;return i>=-1e-6?0:i}function O(o,i,s=m){const p=d(o,i,s);if(0===p)return!1;const y=o.pointsOfInterest.surfaceOrigin,O=g(o,i)+p,j=r(l,i.eye),I=u(i,s.interactionDirection,x(o,i,k),h);if(!a(f(y.renderLocation,O),c(i.eye,I),C))return!1;i.eye=C;const N=n(L,i.eye,j);i.center=t(C,i.center,N);const b=o.renderCoordsHelper.getAltitude(i.center),v=o.renderCoordsHelper.intersectInfiniteManifold(i.ray,b,C);return e(v)&&(i.center=v),!0}function j(e,r,n){const t=r.interactionType;if(t===y.NONE)return;const{min:o,max:i}=n,{interactionStartCamera:s,interactionFactor:c}=r,a=t===y.ZOOM||t===y.PAN,f=d(e,s),m=0===f?0:g(e,s);n.min=o,n.max=i;p(f,m,a,c,.05*m,n)}function g(e,r){const n=e.pointsOfInterest.surfaceOrigin;return o(r.eye,n.renderLocation)}function x(e,r,n){const t=e.pointsOfInterest.surfaceOrigin;return i(n,r.eye,t.renderLocation)}const I={min:0,max:0},l=s(),L=s(),h=s(),k=s(),C=s();export{O as applyDistanceConstraint,d as getDistanceConstraintError};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{neverReached as e}from"../../../../core/compilerUtils.js";import{clamp as t,acosClamped as r,asinClamped as n,deg2rad as i}from"../../../../core/mathUtils.js";import{isSome as s}from"../../../../core/maybe.js";import{d as a}from"../../../../chunks/mat4.js";import{c as o}from"../../../../chunks/mat4f64.js";import{b as c,v as u,g as m,a as l,i as d,e as f,n as p,l as y,z as M}from"../../../../chunks/vec3.js";import{c as h}from"../../../../chunks/vec3f64.js";import{getReferenceEllipsoid as C}from"../../../../geometry/projectionEllipsoid.js";import{b as T,e as I,t as O}from"../../../../chunks/sphere.js";import{defaultConstraintOptions as A,hasConstraintType as D,adjustRangeForInteraction as S}from"./common.js";import{ConstraintTypes as j}from"./ConstraintTypes.js";import{InteractionType as w}from"./InteractionType.js";import{TiltMode as R}from"./TiltMode.js";import{viewAngle as x}from"../../state/utils/viewUtils.js";function v(t,r,n=A,i=!0){W.eyeCenterDistance=0,W.requiresTwoSteps=!1;const s=P(t,r,n,void 0,W);if(0===s)return!1;switch(a(z,-s,r.viewRight),n.tiltMode){case R.LOOK_AROUND:u(_,r.viewForward,z),m(_,_,W.eyeCenterDistance),r.center=l(G,r.eye,_);break;case R.TUMBLE:c(_,r.center,r.eye),u(_,_,z),r.eye=c(G,r.center,_);break;default:e(n.tiltMode)}return r.up=u(G,r.up,z),!W.requiresTwoSteps||!i||v(t,r,n,!1)}function P(e,t,r=A,n=A,i){if(!e.state.constraints.tilt)return 0;const s=t.distance,a=e.state.constraints.tilt(s,Q);return B(e,r,a),n.interactionType===w.TUMBLE&&D(n.selection,j.ALTITUDE)&&K(e,n.interactionStartCamera,a),r.tiltMode===R.LOOK_AROUND||n.tiltMode===R.LOOK_AROUND?L(e,t,a,i):U(e,t,a)}function U(e,r,n){const i=x(e.renderCoordsHelper,r.center,r.eye),s=i-t(i,n.min,n.max);return k(s)?s:0}function L(t,r,n,i){switch(i&&(i.requiresTwoSteps=!1),t.viewingMode){case"global":return q(t,r,n,i);case"local":return b(t,r,n,i);default:return void e(t.viewingMode)}}function b(e,r,n,i){const s=x(e.renderCoordsHelper,r.center,r.eye),a=t(s,n.min,n.max),o=s-a;if(!k(o))return 0;if(i){const t=e.pointsOfInterest.centerOnSurfaceFrequent.estimatedSurfaceAltitude,n=e.renderCoordsHelper.getAltitude(r.eye)-t,s=Math.cos(a);Math.abs(s)>1e-4?i.eyeCenterDistance=n/s:i.eyeCenterDistance=r.distance}return o}function q(e,r,n,i){const s=g(e,r,V),a=t(s.tiltAtCenter,n.min,n.max);if(!k(s.tiltAtCenter-a))return 0;let o,c;return s.centerIsOnSurface?(o=E(s),c=F(s,o)):(o=s.constraints.clampTilt(s.eyeCenterDistance,s.tiltAtCenter),i&&o<Math.PI/2&&(i.requiresTwoSteps=!0,o=Math.PI/2-1e-5),c=N(s,o)),i&&(i.eyeCenterDistance=H(s,o)),c}function g(e,t,n){const i=e.pointsOfInterest.centerOnSurfaceFrequent.estimatedSurfaceAltitude,a=i+C(e.spatialReference).radius,o=e.renderCoordsHelper.intersectManifold(t.ray,i,G);return n.eyeCenterDistance=t.distance,n.centerIsOnSurface=!1,s(o)?(n.eyeCenterDistance=d(t.eye,o),n.tiltAtCenter=x(e.renderCoordsHelper,o,t.eye),n.centerIsOnSurface=!0):e.state.isLocal?n.tiltAtCenter=x(e.renderCoordsHelper,t.center,t.eye):(T(I(O,a),t.ray,G),n.eyeCenterDistance=d(t.eye,G),n.tiltAtCenter=r(-f(t.viewForward,p(G,G)))),n.radius=a,n.eyeRadius=y(t.eye),n.constraints=e.state.constraints,n}function k(e){return Math.abs(e)>1e-9}function E(e){const{constraints:t,eyeCenterDistance:r,tiltAtCenter:n}=e;let i=n,s=t.clampTilt(r,n);const a=H(e,s);if(t.clampTilt(a,n)===s)return s;let o=0;for(;o<10&&k(s-i);){const r=(i+s)/2,n=H(e,r);k(t.clampTilt(n,r)-r)?i=r:s=r,o++}return s}function H(e,r){if(!e.centerIsOnSurface)return e.eyeCenterDistance;const i=Math.PI-t(r,0,Math.PI),s=n(e.radius/e.eyeRadius*Math.sin(i)),a=Math.PI-i-s,o=Math.sin(a)/Math.sin(i);if(e.eyeRadius<e.radius&&o>1){const t=Math.PI-s,r=Math.PI-i-t;return Math.sin(r)/Math.sin(i)*e.eyeRadius}return o*e.eyeRadius}function F(e,t){const r=n(e.radius/e.eyeRadius*Math.sin(e.tiltAtCenter)),i=n(e.radius/e.eyeRadius*Math.sin(t));return e.eyeRadius>e.radius?r-i:i-r}function N(e,t){return e.tiltAtCenter-Math.PI/2-(t-Math.PI/2)}function B(e,t,r){if(t.interactionType===w.NONE)return;const{interactionStartCamera:n,interactionFactor:i}=t,{min:s,max:a}=r,o=P(e,n,A,t),c=0===o?0:x(e.renderCoordsHelper,n.center,n.eye);r.min=s,r.max=a,t.interactionType===w.TUMBLE?(D(t.selection,j.ALTITUDE)&&K(e,n,r),S(o,c,!0,i,J,r)):S(o,c,!1,i,J,r)}function K(e,t,n){if(e.state.isLocal)return;const i=e.state.constraints;if(!i.altitude)return;const s=M(t.center),a=Math.sqrt(s),o=t.distance,c=C(e.spatialReference).radius,u=i.altitude.min+c,m=i.altitude.max+c,l=(u*u-o*o-s)/(-2*a*o),d=(m*m-o*o-s)/(-2*a*o);n.min=Math.max(n.min,Math.min(Math.PI-r(d),n.max)),n.max=Math.min(n.max,Math.PI-r(l))}const _=h(),z=o(),G=h(),J=i(5),Q={min:0,max:0},V={constraints:null,radius:0,eyeRadius:0,centerIsOnSurface:!0,eyeCenterDistance:0,tiltAtCenter:0},W={eyeCenterDistance:0,requiresTwoSteps:!1};export{v as applyTiltConstraint,P as getTiltConstraintError};
5
+ import{neverReached as e}from"../../../../core/compilerUtils.js";import{clamp as t,acosClamped as r,asinClamped as n,deg2rad as i}from"../../../../core/mathUtils.js";import{isSome as s}from"../../../../core/maybe.js";import{d as a}from"../../../../chunks/mat4.js";import{c as o}from"../../../../chunks/mat4f64.js";import{b as c,m as u,g as m,a as l,i as d,e as f,n as p,l as y,p as M}from"../../../../chunks/vec3.js";import{c as h}from"../../../../chunks/vec3f64.js";import{getReferenceEllipsoid as C}from"../../../../geometry/projectionEllipsoid.js";import{b as T,e as I,t as O}from"../../../../chunks/sphere.js";import{defaultConstraintOptions as A,hasConstraintType as D,adjustRangeForInteraction as S}from"./common.js";import{ConstraintTypes as j}from"./ConstraintTypes.js";import{InteractionType as w}from"./InteractionType.js";import{TiltMode as R}from"./TiltMode.js";import{viewAngle as x}from"../../state/utils/viewUtils.js";function P(t,r,n=A,i=!0){W.eyeCenterDistance=0,W.requiresTwoSteps=!1;const s=U(t,r,n,void 0,W);if(0===s)return!1;switch(a(z,-s,r.viewRight),n.tiltMode){case R.LOOK_AROUND:u(_,r.viewForward,z),m(_,_,W.eyeCenterDistance),r.center=l(G,r.eye,_);break;case R.TUMBLE:c(_,r.center,r.eye),u(_,_,z),r.eye=c(G,r.center,_);break;default:e(n.tiltMode)}return r.up=u(G,r.up,z),!W.requiresTwoSteps||!i||P(t,r,n,!1)}function U(e,t,r=A,n=A,i){if(!e.state.constraints.tilt)return 0;const s=t.distance,a=e.state.constraints.tilt(s,Q);return B(e,r,a),n.interactionType===w.TUMBLE&&D(n.selection,j.ALTITUDE)&&K(e,n.interactionStartCamera,a),r.tiltMode===R.LOOK_AROUND||n.tiltMode===R.LOOK_AROUND?L(e,t,a,i):v(e,t,a)}function v(e,r,n){const i=x(e.renderCoordsHelper,r.center,r.eye),s=i-t(i,n.min,n.max);return k(s)?s:0}function L(t,r,n,i){switch(i&&(i.requiresTwoSteps=!1),t.viewingMode){case"global":return q(t,r,n,i);case"local":return b(t,r,n,i);default:return void e(t.viewingMode)}}function b(e,r,n,i){const s=x(e.renderCoordsHelper,r.center,r.eye),a=t(s,n.min,n.max),o=s-a;if(!k(o))return 0;if(i){const t=e.pointsOfInterest.centerOnSurfaceFrequent.estimatedSurfaceAltitude,n=e.renderCoordsHelper.getAltitude(r.eye)-t,s=Math.cos(a);Math.abs(s)>1e-4?i.eyeCenterDistance=n/s:i.eyeCenterDistance=r.distance}return o}function q(e,r,n,i){const s=g(e,r,V),a=t(s.tiltAtCenter,n.min,n.max);if(!k(s.tiltAtCenter-a))return 0;let o,c;return s.centerIsOnSurface?(o=E(s),c=F(s,o)):(o=s.constraints.clampTilt(s.eyeCenterDistance,s.tiltAtCenter),i&&o<Math.PI/2&&(i.requiresTwoSteps=!0,o=Math.PI/2-1e-5),c=N(s,o)),i&&(i.eyeCenterDistance=H(s,o)),c}function g(e,t,n){const i=e.pointsOfInterest.centerOnSurfaceFrequent.estimatedSurfaceAltitude,a=i+C(e.spatialReference).radius,o=e.renderCoordsHelper.intersectManifold(t.ray,i,G);return n.eyeCenterDistance=t.distance,n.centerIsOnSurface=!1,s(o)?(n.eyeCenterDistance=d(t.eye,o),n.tiltAtCenter=x(e.renderCoordsHelper,o,t.eye),n.centerIsOnSurface=!0):e.state.isLocal?n.tiltAtCenter=x(e.renderCoordsHelper,t.center,t.eye):(T(I(O,a),t.ray,G),n.eyeCenterDistance=d(t.eye,G),n.tiltAtCenter=r(-f(t.viewForward,p(G,G)))),n.radius=a,n.eyeRadius=y(t.eye),n.constraints=e.state.constraints,n}function k(e){return Math.abs(e)>1e-9}function E(e){const{constraints:t,eyeCenterDistance:r,tiltAtCenter:n}=e;let i=n,s=t.clampTilt(r,n);const a=H(e,s);if(t.clampTilt(a,n)===s)return s;let o=0;for(;o<10&&k(s-i);){const r=(i+s)/2,n=H(e,r);k(t.clampTilt(n,r)-r)?i=r:s=r,o++}return s}function H(e,r){if(!e.centerIsOnSurface)return e.eyeCenterDistance;const i=Math.PI-t(r,0,Math.PI),s=n(e.radius/e.eyeRadius*Math.sin(i)),a=Math.PI-i-s,o=Math.sin(a)/Math.sin(i);if(e.eyeRadius<e.radius&&o>1){const t=Math.PI-s,r=Math.PI-i-t;return Math.sin(r)/Math.sin(i)*e.eyeRadius}return o*e.eyeRadius}function F(e,t){const r=n(e.radius/e.eyeRadius*Math.sin(e.tiltAtCenter)),i=n(e.radius/e.eyeRadius*Math.sin(t));return e.eyeRadius>e.radius?r-i:i-r}function N(e,t){return e.tiltAtCenter-Math.PI/2-(t-Math.PI/2)}function B(e,t,r){if(t.interactionType===w.NONE)return;const{interactionStartCamera:n,interactionFactor:i}=t,{min:s,max:a}=r,o=U(e,n,A,t),c=0===o?0:x(e.renderCoordsHelper,n.center,n.eye);r.min=s,r.max=a,t.interactionType===w.TUMBLE?(D(t.selection,j.ALTITUDE)&&K(e,n,r),S(o,c,!0,i,J,r)):S(o,c,!1,i,J,r)}function K(e,t,n){if(e.state.isLocal)return;const i=e.state.constraints;if(!i.altitude)return;const s=M(t.center),a=Math.sqrt(s),o=t.distance,c=C(e.spatialReference).radius,u=i.altitude.min+c,m=i.altitude.max+c,l=(u*u-o*o-s)/(-2*a*o),d=(m*m-o*o-s)/(-2*a*o);n.min=Math.max(n.min,Math.min(Math.PI-r(d),n.max)),n.max=Math.min(n.max,Math.PI-r(l))}const _=h(),z=o(),G=h(),J=i(5),Q={min:0,max:0},V={constraints:null,radius:0,eyeRadius:0,centerIsOnSurface:!0,eyeCenterDistance:0,tiltAtCenter:0},W={eyeCenterDistance:0,requiresTwoSteps:!1};export{P as applyTiltConstraint,U as getTiltConstraintError};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../core/Handles.js";import{lerp as t,smoothstep as s}from"../../../core/mathUtils.js";import{releaseMaybe as i,disposeMaybe as r,destroyMaybe as a,isNone as o}from"../../../core/maybe.js";import{watch as n}from"../../../core/reactiveUtils.js";import{s as h}from"../../../chunks/vec2.js";import{l as d}from"../../../chunks/vec3.js";import{s as u}from"../../../chunks/vec4.js";import{earth as m}from"../../../geometry/support/Ellipsoid.js";import{AtmosphereType as p}from"./AtmosphereType.js";import{atmosphereHeight as _,innerAtmosphereDepth as l,computeInnerAltitudeFade as c}from"./atmosphereUtils.js";import{ChapmanAtmospherePassParameters as T,ChapmanAtmosphereTechnique as v}from"./ChapmanAtmosphereTechnique.js";import{ChapmanAtmosphereTechniqueConfiguration as f}from"./ChapmanAtmosphereTechniqueConfiguration.js";import{Pos2Tex as b}from"../webgl-engine/lib/DefaultVertexBufferLayouts.js";import{createQuadVAO as R}from"../webgl-engine/lib/glUtil3D.js";import{PrimitiveType as E}from"../../webgl/enums.js";class j{constructor(e){this._view=e,this.type=p.Realistic,this._passParameters=new T,this._rootTileElevationMin=NaN,this._lowerBoundEarthRadius=m.radius,this._darkenHaze=!1,this._updateRadius(m.radius)}destroy(){this._atmosphereTechnique=i(this._atmosphereTechnique),this._atmosphereHazeTechnique=i(this._atmosphereHazeTechnique),this._vao=r(this._vao),this._handles=a(this._handles)}initializeRenderContext(t){const s=t.renderContext.rctx,i=this._handles=new e;this._updateRootTileElevationBounds(),i.add(n((()=>this._view.basemapTerrain.rootTileElevationBounds),(()=>this._updateRootTileElevationBounds()))),i.add(n((()=>this._view.basemapTerrain.visibleElevationBounds),(()=>this._updateVisibleElevationBounds())));const r=new f;r.haze=!1,this._atmosphereTechnique=t.shaderTechniqueRepository.acquire(v,r),r.haze=!0,this._atmosphereHazeTechnique=t.shaderTechniqueRepository.acquire(v,r),this._vao=R(s,b)}render(e){this._render(e,this._atmosphereTechnique,e.offscreenRenderingHelper.depthTexture)}renderHaze(e,t){this._darkenHaze=t,this._render(e,this._atmosphereHazeTechnique,e.offscreenRenderingHelper.linearDepthTexture)}_render(e,t,s){if(o(s))return;this._update(e.bindParameters.camera),this._passParameters.depthTex=s;const i=e.rctx.bindTechnique(t,this._passParameters,e.bindParameters);e.offscreenRenderingHelper.renderDepthDetached((()=>{this._renderCommon(i,e)}))}_renderCommon(e,t){o(this._vao)||(t.rctx.bindVAO(this._vao),e.assertCompatibleVertexAttributeLocations(this._vao),t.rctx.drawArrays(E.TRIANGLE_STRIP,0,4))}_adjustRadiusForTesselation(e){return e*Math.cos(Math.PI/16/16)}_updateRootTileElevationBounds(){const e=this._view.basemapTerrain.rootTileElevationBounds.min;e!==this._rootTileElevationMin&&(this._rootTileElevationMin=e,this._lowerBoundEarthRadius=m.radius,this._updateVisibleElevationBounds())}_updateVisibleElevationBounds(){const e=this._adjustRadiusForTesselation(m.radius+this._view.basemapTerrain.visibleElevationBounds.min);e<this._lowerBoundEarthRadius&&this._updateRadius(e)}_updateRadius(e){this._lowerBoundEarthRadius=e,h(this._passParameters.radii,e,e+_),this._passParameters.innerFadeDistance=2*Math.sqrt((2*e-l)*l)}_update(e){if(o(e))return;const i=d(e.eye),r=i*i,a=r-this._passParameters.radii[1]*this._passParameters.radii[1],n=Math.min(1,Math.max(0,(i-this._passParameters.radii[0])/_));u(this._passParameters.heightParameters,i,r,a,n),this._passParameters.altitudeFade=c(i-this._lowerBoundEarthRadius),this._passParameters.hazeStrength=this._darkenHaze?t(.6,1,s(9500,10500,i-m.radius)):1}static isSupported(e){return e.renderContext.rctx.capabilities.depthTexture}}export{j as ChapmanAtmosphere};
5
+ import e from"../../../core/Handles.js";import{lerp as t,smoothstep as s}from"../../../core/mathUtils.js";import{releaseMaybe as i,disposeMaybe as r,destroyMaybe as a,isNone as o}from"../../../core/maybe.js";import{watch as n}from"../../../core/reactiveUtils.js";import{s as h}from"../../../chunks/vec2.js";import{l as d}from"../../../chunks/vec3.js";import{s as u}from"../../../chunks/vec4.js";import{earth as m}from"../../../geometry/support/Ellipsoid.js";import{AtmosphereType as p}from"./AtmosphereType.js";import{atmosphereHeight as _,innerAtmosphereDepth as l,computeInnerAltitudeFade as c}from"./atmosphereUtils.js";import{ChapmanAtmospherePassParameters as T,ChapmanAtmosphereTechnique as f}from"./ChapmanAtmosphereTechnique.js";import{ChapmanAtmosphereTechniqueConfiguration as v}from"./ChapmanAtmosphereTechniqueConfiguration.js";import{Pos2Tex as b}from"../webgl-engine/lib/DefaultVertexBufferLayouts.js";import{createQuadVAO as R}from"../webgl-engine/lib/glUtil3D.js";import{PrimitiveType as E}from"../../webgl/enums.js";class j{constructor(e){this._view=e,this.type=p.Realistic,this._passParameters=new T,this._rootTileElevationMin=NaN,this._lowerBoundEarthRadius=m.radius,this._fadeHaze=0,this._updateRadius(m.radius)}destroy(){this._atmosphereTechnique=i(this._atmosphereTechnique),this._atmosphereHazeTechnique=i(this._atmosphereHazeTechnique),this._vao=r(this._vao),this._handles=a(this._handles)}initializeRenderContext(t){const s=t.renderContext.rctx,i=this._handles=new e;this._updateRootTileElevationBounds(),i.add(n((()=>this._view.basemapTerrain.rootTileElevationBounds),(()=>this._updateRootTileElevationBounds()))),i.add(n((()=>this._view.basemapTerrain.visibleElevationBounds),(()=>this._updateVisibleElevationBounds())));const r=new v;r.haze=!1,this._atmosphereTechnique=t.shaderTechniqueRepository.acquire(f,r),r.haze=!0,this._atmosphereHazeTechnique=t.shaderTechniqueRepository.acquire(f,r),this._vao=R(s,b)}render(e){this._render(e,this._atmosphereTechnique,e.offscreenRenderingHelper.depthTexture)}renderHaze(e,t){this._fadeHaze=t,this._render(e,this._atmosphereHazeTechnique,e.offscreenRenderingHelper.linearDepthTexture)}_render(e,t,s){if(o(s))return;this._update(e.bindParameters.camera),this._passParameters.depthTex=s;const i=e.rctx.bindTechnique(t,this._passParameters,e.bindParameters);e.offscreenRenderingHelper.renderDepthDetached((()=>{this._renderCommon(i,e)}))}_renderCommon(e,t){o(this._vao)||(t.rctx.bindVAO(this._vao),e.assertCompatibleVertexAttributeLocations(this._vao),t.rctx.drawArrays(E.TRIANGLE_STRIP,0,4))}_adjustRadiusForTesselation(e){return e*Math.cos(Math.PI/16/16)}_updateRootTileElevationBounds(){const e=this._view.basemapTerrain.rootTileElevationBounds.min;e!==this._rootTileElevationMin&&(this._rootTileElevationMin=e,this._lowerBoundEarthRadius=m.radius,this._updateVisibleElevationBounds())}_updateVisibleElevationBounds(){const e=this._adjustRadiusForTesselation(m.radius+this._view.basemapTerrain.visibleElevationBounds.min);e<this._lowerBoundEarthRadius&&this._updateRadius(e)}_updateRadius(e){this._lowerBoundEarthRadius=e,h(this._passParameters.radii,e,e+_),this._passParameters.innerFadeDistance=2*Math.sqrt((2*e-l)*l)}_update(e){if(o(e))return;const i=d(e.eye),r=i*i,a=r-this._passParameters.radii[1]*this._passParameters.radii[1],n=Math.min(1,Math.max(0,(i-this._passParameters.radii[0])/_));u(this._passParameters.heightParameters,i,r,a,n),this._passParameters.altitudeFade=c(i-this._lowerBoundEarthRadius),this._passParameters.hazeStrength=t(t(.6,1,s(9500,10500,i-m.radius)),1,this._fadeHaze)}static isSupported(e){return e.renderContext.rctx.capabilities.depthTexture}}export{j as ChapmanAtmosphere};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{c as t}from"../../../chunks/mat4f64.js";import{c as s}from"../../../chunks/vec3f64.js";import{CloudsTextureChannels as a,CloudsRenderingStages as e}from"./CloudsData.js";class i{constructor(){this.readChannels=a.RG,this.renderingStage=e.FINISHED,this.startTime=0,this.startTimeHeightFade=0,this.cameraPositionLastFrame=s(),this.isCameraPositionFinal=!0,this.parallax=new I,this.parallaxNew=new I,this.crossFade={enabled:!1,factor:1,distanceThresholdFactor:.3},this.fadeInOut={stage:o.FINISHED,factor:1,distanceThresholdFactor:.6},this.fadeIn={stage:r.FINISHED,factor:1,distanceThresholdFactor:2},this.fadeInOutHeight={stage:n.FINISHED,factor:-1}}get isFading(){return this.fadeInOut.stage===o.FADE_OUT||this.fadeInOutHeight.stage!==n.FINISHED||this.renderingStage===e.FADING_TEXTURE_CHANNELS}}var r,o,n;!function(t){t[t.FINISHED=0]="FINISHED",t[t.CHANGE_ANCHOR=1]="CHANGE_ANCHOR",t[t.FADE_IN=2]="FADE_IN"}(r||(r={})),function(t){t[t.FINISHED=0]="FINISHED",t[t.FADE_OUT=1]="FADE_OUT",t[t.SWITCH=2]="SWITCH",t[t.FADE_IN=3]="FADE_IN"}(o||(o={})),function(t){t[t.FINISHED=0]="FINISHED",t[t.HEIGHT_FADE=1]="HEIGHT_FADE"}(n||(n={}));class I{constructor(){this.anchorPointClouds=s(),this.cloudsHeight=1e5,this.radiusCurvatureCorrectionFactor=0,this.transform=t()}}export{i as CloudsFadeParameters,n as FadeHeightStages,o as FadeInOutStages,r as FadeInStages};
5
+ import{c as t}from"../../../chunks/mat4f64.js";import{c as s}from"../../../chunks/vec3f64.js";import{CloudsTextureChannels as a,CloudsRenderingStages as e}from"./CloudsData.js";class i{constructor(){this.readChannels=a.RG,this.renderingStage=e.FINISHED,this.startTime=0,this.startTimeHeightFade=0,this.cameraPositionLastFrame=s(),this.isCameraPositionFinal=!0,this.parallax=new o,this.parallaxNew=new o,this.crossFade={enabled:!1,factor:1,distanceThresholdFactor:.3},this.fadeInOut={stage:I.FINISHED,factor:1,distanceThresholdFactor:.6},this.fadeIn={stage:r.FINISHED,factor:1,distanceThresholdFactor:2},this.fadeInOutHeight={stage:n.FINISHED,factor:-1}}get isFading(){return this.fadeInOut.stage===I.FADE_OUT||this.fadeInOut.stage===I.FADE_IN||this.fadeIn.stage===r.FADE_IN||this.fadeInOutHeight.stage!==n.FINISHED||this.renderingStage===e.FADING_TEXTURE_CHANNELS}}var r,I,n;!function(t){t[t.FINISHED=0]="FINISHED",t[t.CHANGE_ANCHOR=1]="CHANGE_ANCHOR",t[t.FADE_IN=2]="FADE_IN"}(r||(r={})),function(t){t[t.FINISHED=0]="FINISHED",t[t.FADE_OUT=1]="FADE_OUT",t[t.SWITCH=2]="SWITCH",t[t.FADE_IN=3]="FADE_IN"}(I||(I={})),function(t){t[t.FINISHED=0]="FINISHED",t[t.HEIGHT_FADE=1]="HEIGHT_FADE"}(n||(n={}));class o{constructor(){this.anchorPointClouds=s(),this.cloudsHeight=1e5,this.radiusCurvatureCorrectionFactor=0,this.transform=t()}}export{i as CloudsFadeParameters,n as FadeHeightStages,I as FadeInOutStages,r as FadeInStages};
@@ -1,4 +1,4 @@
1
1
  import "../../../interfaces";
2
2
 
3
- import CloudyWeather = __esri.CloudyWeather;
3
+ import CloudyWeather = __esri.CloudyWeather;
4
4
  export default CloudyWeather;