@arcgis/core 4.23.0-next.20220126 → 4.23.0-next.20220130

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 (523) hide show
  1. package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/02fbc76dfdc20e628c61.js +1 -0
  4. package/assets/esri/core/workers/chunks/0453fad5cb819797b4f6.js +1 -0
  5. package/assets/esri/core/workers/chunks/0463ba46df855a92b9c0.js +1 -0
  6. package/assets/esri/core/workers/chunks/0cd0a6eef51fc5b9ea61.js +1 -0
  7. package/assets/esri/core/workers/chunks/{97ec9eef0048760fa260.js → 0d02c6ad1f4688bfa374.js} +1 -1
  8. package/assets/esri/core/workers/chunks/0d684f16f37d5dc385dd.js +1 -0
  9. package/assets/esri/core/workers/chunks/0e17691520d890d34efb.js +1 -0
  10. package/assets/esri/core/workers/chunks/16b6d0f8378582c051c3.js +1 -0
  11. package/assets/esri/core/workers/chunks/{0ce1dc14280d6f188468.js → 17de7a324dfa7f57ad5d.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{b313ab14a643273e7d09.js → 1877ab1b6a115dbba1c5.js} +1 -1
  13. package/assets/esri/core/workers/chunks/{c36f84daa7736878418d.js → 197ec52641aed20029c6.js} +1 -1
  14. package/assets/esri/core/workers/chunks/1b2a961f776a0b57e57a.js +1 -0
  15. package/assets/esri/core/workers/chunks/1b3fd66577b19aa5f2b6.js +1 -0
  16. package/assets/esri/core/workers/chunks/1c733b7db092a2a88ef3.js +1 -0
  17. package/assets/esri/core/workers/chunks/1f8c6a179e39fd4c5e6f.js +1 -0
  18. package/assets/esri/core/workers/chunks/2076fcbae63f1bfb7143.js +1 -0
  19. package/assets/esri/core/workers/chunks/{9387db408f496e7dd003.js → 214910032945dd2d86b0.js} +1 -1
  20. package/assets/esri/core/workers/chunks/27474b007988855bea9d.js +1 -0
  21. package/assets/esri/core/workers/chunks/281b89dbf5574fc642ae.js +1 -0
  22. package/assets/esri/core/workers/chunks/2c8fe9bc988c3c5760a5.js +1 -0
  23. package/assets/esri/core/workers/chunks/34b59d7099904dcb28b5.js +1 -0
  24. package/assets/esri/core/workers/chunks/357033117dfe61eb81ea.js +1 -0
  25. package/assets/esri/core/workers/chunks/{b2ebe4f6d100e15b512d.js → 37c03cfc19086ce631c6.js} +1 -1
  26. package/assets/esri/core/workers/chunks/386f86f961146f530aa7.js +1 -0
  27. package/assets/esri/core/workers/chunks/{e6165e17fbb07bfc40a1.js → 391e96192d1ec4e55ce2.js} +1 -1
  28. package/assets/esri/core/workers/chunks/44f0c3663b293afbd172.js +1 -0
  29. package/assets/esri/core/workers/chunks/483d5d8593d96d0f0b15.js +1 -0
  30. package/assets/esri/core/workers/chunks/{c959e0d1cf7dce0421b9.js → 48fa8aed6c24877b44c4.js} +1 -1
  31. package/assets/esri/core/workers/chunks/{438f0b5ae5c53ae4f06a.js → 4954fd86b48cc68b737c.js} +1 -1
  32. package/assets/esri/core/workers/chunks/49a1a633bb0d93764aae.js +1 -0
  33. package/assets/esri/core/workers/chunks/4ba6de8aa7e2960bad49.js +1 -0
  34. package/assets/esri/core/workers/chunks/4be35af7d6babbfe9d84.js +1 -0
  35. package/assets/esri/core/workers/chunks/5457962a70bd3c557a75.js +1 -0
  36. package/assets/esri/core/workers/chunks/57856b4a9b8784a69844.js +1 -0
  37. package/assets/esri/core/workers/chunks/{b9c177524b3e7de1ffd1.js → 5790d171072b3c7d108f.js} +1 -1
  38. package/assets/esri/core/workers/chunks/{5dfe1f8d520025e2118b.js → 57b349d1dbc0bed75b79.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{97a28641b3b2fd31bea2.js → 5bcb3240b3c005e5fe72.js} +1 -1
  40. package/assets/esri/core/workers/chunks/5d11b97b667921d67ae7.js +1 -0
  41. package/assets/esri/core/workers/chunks/5dbe555a5a662ff3d9ce.js +1 -0
  42. package/assets/esri/core/workers/chunks/5ec98f4ddac707d0fbd1.js +1 -0
  43. package/assets/esri/core/workers/chunks/64b7e8d812ea8fcf269e.js +1 -0
  44. package/assets/esri/core/workers/chunks/{ba5eb394f098968c22d2.js → 655b55ac0cd533d7e9d7.js} +1 -1
  45. package/assets/esri/core/workers/chunks/{b0b036ad3ad3cd956747.js → 69fd99b7c76e9992ccf3.js} +1 -1
  46. package/assets/esri/core/workers/chunks/75d812955a473d0e8960.js +1 -0
  47. package/assets/esri/core/workers/chunks/7903a3e2e0faff0f86c0.js +1 -0
  48. package/assets/esri/core/workers/chunks/{cc146c57bbdac8029fd8.js → 7a5f5acfbd4ca1a5c1f3.js} +1 -1
  49. package/assets/esri/core/workers/chunks/83d00afae4406ec78bc9.js +1 -0
  50. package/assets/esri/core/workers/chunks/{434b16731c6a81f868ef.js → 85b1f36790df95b17659.js} +1 -1
  51. package/assets/esri/core/workers/chunks/89820b200ee44e678af5.js +1 -0
  52. package/assets/esri/core/workers/chunks/918bb7a7d901544a7367.js +1 -0
  53. package/assets/esri/core/workers/chunks/{94b8dbf859df71858d1c.js → 929c9b7cdab7c4ca3d87.js} +1 -1
  54. package/assets/esri/core/workers/chunks/949b2269457302ffc64b.js +1 -0
  55. package/assets/esri/core/workers/chunks/{601e697dc7414bda128a.js → 952980635afc7ec81804.js} +1 -1
  56. package/assets/esri/core/workers/chunks/9876a1bae350795fab36.js +1 -0
  57. package/assets/esri/core/workers/chunks/99619fcb772807c74f3b.js +1 -0
  58. package/assets/esri/core/workers/chunks/{010a71c2aa1b7681e191.js → 9d11f84e6c893b9d0019.js} +1 -1
  59. package/assets/esri/core/workers/chunks/a1930e4f035bc9aa1ae5.js +1 -0
  60. package/assets/esri/core/workers/chunks/a8692bffb76444c34760.js +1 -0
  61. package/assets/esri/core/workers/chunks/{f760a3e030b0f358a92a.js → aeaa1667c2d9f1b3366b.js} +1 -1
  62. package/assets/esri/core/workers/chunks/{3f343f792fd9f44d6f25.js → b3f5e91116112b0b612a.js} +1 -1
  63. package/assets/esri/core/workers/chunks/b97953694f42bfec1b3c.js +1 -0
  64. package/assets/esri/core/workers/chunks/b9e9cb354822c6d995a4.js +1 -0
  65. package/assets/esri/core/workers/chunks/ba762bcfd74af0bb8218.js +1 -0
  66. package/assets/esri/core/workers/chunks/{e4b84ca8ddfd48dd79b1.js → bac9fc90e6756e211160.js} +1 -1
  67. package/assets/esri/core/workers/chunks/{4c76146014dc15143ba3.js → be588873c16770ceb9ef.js} +1 -1
  68. package/assets/esri/core/workers/chunks/bf97a933ea3b220115e1.js +1 -0
  69. package/assets/esri/core/workers/chunks/bfedd6ebff817c9b31c0.js +1 -0
  70. package/assets/esri/core/workers/chunks/c093dff4592832ac0973.js +1 -0
  71. package/assets/esri/core/workers/chunks/c1135cb02ec46c491459.js +1 -0
  72. package/assets/esri/core/workers/chunks/{e4e2036373166c1d5cf5.js → c2253a9f29c1aabb2b75.js} +1 -1
  73. package/assets/esri/core/workers/chunks/d04fca5d46cca02500b7.js +1 -0
  74. package/assets/esri/core/workers/chunks/d08efbc349dd9f999497.js +1 -0
  75. package/assets/esri/core/workers/chunks/d1fe53b597351dc58305.js +1 -0
  76. package/assets/esri/core/workers/chunks/{a8b13fb804bb775e4967.js → db3c729ce0c0b2690dc9.js} +1 -1
  77. package/assets/esri/core/workers/chunks/dd13772a5e2eccc6a2bc.js +1 -0
  78. package/assets/esri/core/workers/chunks/dedc333a61081772ca7b.js +1 -0
  79. package/assets/esri/core/workers/chunks/{6f50a9647f026a8d4729.js → e0c8d61c7a85ce15499a.js} +1 -1
  80. package/assets/esri/core/workers/chunks/{199670a3a564ebe3bd79.js → e218bde41ffbcc5194f5.js} +1 -1
  81. package/assets/esri/core/workers/chunks/e21b211913aefde47e30.js +1 -0
  82. package/assets/esri/core/workers/chunks/e287f49184d076af17e2.js +1 -0
  83. package/assets/esri/core/workers/chunks/{bde1d5b0a7717350986e.js → e4019b63a1fe74e2c842.js} +1 -1
  84. package/assets/esri/core/workers/chunks/e8e775758b79c5a084c8.js +1 -0
  85. package/assets/esri/core/workers/chunks/e93dfdede0532a89ffa5.js +1 -0
  86. package/assets/esri/core/workers/chunks/ea595b0df5050eda2a13.js +1 -0
  87. package/assets/esri/core/workers/chunks/eb82ff10cef2bde6e57f.js +1 -0
  88. package/assets/esri/core/workers/chunks/ebc6f4764b82d4104c65.js +1 -0
  89. package/assets/esri/core/workers/chunks/{1305ef8717da6e902a55.js → ec10151a2a95e95a0bb5.js} +1 -1
  90. package/assets/esri/core/workers/chunks/eccba071ced2d922bb85.js +1 -0
  91. package/assets/esri/core/workers/chunks/ee6e0db58dc64410e687.js +1 -0
  92. package/assets/esri/core/workers/chunks/f0a9f161805fc7a30fc5.js +1 -0
  93. package/assets/esri/core/workers/chunks/f2124f4d0f2b8a91f0ea.js +1 -0
  94. package/assets/esri/core/workers/chunks/ff6abdc72076f3994659.js +981 -0
  95. package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
  96. package/assets/esri/themes/base/widgets/_Weather.scss +1 -1
  97. package/assets/esri/themes/dark/main.css +1 -1
  98. package/assets/esri/themes/dark-blue/main.css +1 -1
  99. package/assets/esri/themes/dark-green/main.css +1 -1
  100. package/assets/esri/themes/dark-purple/main.css +1 -1
  101. package/assets/esri/themes/dark-red/main.css +1 -1
  102. package/assets/esri/themes/light/main.css +1 -1
  103. package/assets/esri/themes/light/view.css +1 -1
  104. package/assets/esri/themes/light-blue/main.css +1 -1
  105. package/assets/esri/themes/light-green/main.css +1 -1
  106. package/assets/esri/themes/light-purple/main.css +1 -1
  107. package/assets/esri/themes/light-red/main.css +1 -1
  108. package/assets/esri/widgets/Weather/t9n/Weather.json +1 -1
  109. package/assets/esri/widgets/Weather/t9n/Weather_ar.json +1 -1
  110. package/assets/esri/widgets/Weather/t9n/Weather_bg.json +1 -1
  111. package/assets/esri/widgets/Weather/t9n/Weather_bs.json +1 -1
  112. package/assets/esri/widgets/Weather/t9n/Weather_ca.json +1 -1
  113. package/assets/esri/widgets/Weather/t9n/Weather_cs.json +1 -1
  114. package/assets/esri/widgets/Weather/t9n/Weather_da.json +1 -1
  115. package/assets/esri/widgets/Weather/t9n/Weather_de.json +1 -1
  116. package/assets/esri/widgets/Weather/t9n/Weather_el.json +1 -1
  117. package/assets/esri/widgets/Weather/t9n/Weather_en.json +1 -1
  118. package/assets/esri/widgets/Weather/t9n/Weather_es.json +1 -1
  119. package/assets/esri/widgets/Weather/t9n/Weather_et.json +1 -1
  120. package/assets/esri/widgets/Weather/t9n/Weather_fi.json +1 -1
  121. package/assets/esri/widgets/Weather/t9n/Weather_fr.json +1 -1
  122. package/assets/esri/widgets/Weather/t9n/Weather_he.json +1 -1
  123. package/assets/esri/widgets/Weather/t9n/Weather_hr.json +1 -1
  124. package/assets/esri/widgets/Weather/t9n/Weather_hu.json +1 -1
  125. package/assets/esri/widgets/Weather/t9n/Weather_id.json +1 -1
  126. package/assets/esri/widgets/Weather/t9n/Weather_it.json +1 -1
  127. package/assets/esri/widgets/Weather/t9n/Weather_ja.json +1 -1
  128. package/assets/esri/widgets/Weather/t9n/Weather_ko.json +1 -1
  129. package/assets/esri/widgets/Weather/t9n/Weather_lt.json +1 -1
  130. package/assets/esri/widgets/Weather/t9n/Weather_lv.json +1 -1
  131. package/assets/esri/widgets/Weather/t9n/Weather_nb.json +1 -1
  132. package/assets/esri/widgets/Weather/t9n/Weather_nl.json +1 -1
  133. package/assets/esri/widgets/Weather/t9n/Weather_pl.json +1 -1
  134. package/assets/esri/widgets/Weather/t9n/Weather_pt-BR.json +1 -1
  135. package/assets/esri/widgets/Weather/t9n/Weather_pt-PT.json +1 -1
  136. package/assets/esri/widgets/Weather/t9n/Weather_ro.json +1 -1
  137. package/assets/esri/widgets/Weather/t9n/Weather_ru.json +1 -1
  138. package/assets/esri/widgets/Weather/t9n/Weather_sk.json +1 -1
  139. package/assets/esri/widgets/Weather/t9n/Weather_sl.json +1 -1
  140. package/assets/esri/widgets/Weather/t9n/Weather_sr.json +1 -1
  141. package/assets/esri/widgets/Weather/t9n/Weather_sv.json +1 -1
  142. package/assets/esri/widgets/Weather/t9n/Weather_th.json +1 -1
  143. package/assets/esri/widgets/Weather/t9n/Weather_tr.json +1 -1
  144. package/assets/esri/widgets/Weather/t9n/Weather_uk.json +1 -1
  145. package/assets/esri/widgets/Weather/t9n/Weather_vi.json +1 -1
  146. package/assets/esri/widgets/Weather/t9n/Weather_zh-CN.json +1 -1
  147. package/assets/esri/widgets/Weather/t9n/Weather_zh-HK.json +1 -1
  148. package/assets/esri/widgets/Weather/t9n/Weather_zh-TW.json +1 -1
  149. package/chunks/BlendLayers.glsl.js +2 -2
  150. package/chunks/ChapmanAtmosphere.glsl.js +17 -17
  151. package/chunks/CheckerBoard.glsl.js +3 -3
  152. package/chunks/Clouds.glsl.js +2 -2
  153. package/chunks/CloudsComposition.glsl.js +1 -1
  154. package/chunks/ColorMaterial.glsl.js +12 -12
  155. package/chunks/ComponentShader.glsl.js +3 -3
  156. package/chunks/Compositing.glsl.js +1 -1
  157. package/chunks/DefaultMaterial.glsl.js +33 -33
  158. package/chunks/EdgeShaderProgram.glsl.js +7 -7
  159. package/chunks/Fog.glsl.js +10 -12
  160. package/chunks/HUDMaterial.glsl.js +2 -2
  161. package/chunks/HighlightComposition.glsl.js +5 -5
  162. package/chunks/ImageMaterial.glsl.js +6 -6
  163. package/chunks/LaserlinePath.glsl.js +8 -8
  164. package/chunks/LineCallout.glsl.js +6 -6
  165. package/chunks/MeasurementArrow.glsl.js +1 -1
  166. package/chunks/NativeLine.glsl.js +1 -1
  167. package/chunks/Path.glsl.js +5 -5
  168. package/chunks/Pattern.glsl.js +9 -9
  169. package/chunks/PointRenderer.glsl.js +14 -14
  170. package/chunks/Precipitation.glsl.js +91 -0
  171. package/chunks/RealisticTree.glsl.js +21 -21
  172. package/chunks/RibbonLine.glsl.js +11 -11
  173. package/chunks/SMAA.glsl.js +40 -40
  174. package/chunks/ShadedColorMaterial.glsl.js +12 -12
  175. package/chunks/ShadowCast.glsl.js +6 -6
  176. package/chunks/ShadowHighlight.glsl.js +4 -4
  177. package/chunks/SimpleAtmosphere.glsl.js +3 -3
  178. package/chunks/SlicePlaneMaterial.glsl.js +3 -3
  179. package/chunks/Stars.glsl.js +3 -3
  180. package/chunks/Terrain.glsl.js +11 -11
  181. package/chunks/TextureOnly.glsl.js +2 -2
  182. package/chunks/WaterSurface.glsl.js +5 -5
  183. package/chunks/boundedPlane.js +1 -1
  184. package/chunks/vxlLayer.js +1 -1
  185. package/core/accessorSupport/watch.js +1 -1
  186. package/core/clock.js +1 -1
  187. package/core/jsonMap.js +1 -1
  188. package/core/loadAll.js +1 -1
  189. package/core/promiseUtils.js +1 -1
  190. package/core/reactiveUtils.js +1 -1
  191. package/form/ExpressionInfo.js +1 -1
  192. package/geometry/support/frustum.js +1 -1
  193. package/geometry/support/plane.js +1 -1
  194. package/interfaces.d.ts +232 -38
  195. package/layers/VectorTileLayer.js +1 -1
  196. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  197. package/layers/graphics/featureConversionUtils.js +1 -1
  198. package/layers/support/LayerContingentValuesCache.js +1 -1
  199. package/layers/support/TileInfo.js +1 -1
  200. package/package.json +1 -1
  201. package/rest/print.js +1 -1
  202. package/smartMapping/statistics/support/predominanceUtils.d.ts +4 -0
  203. package/support/arcadeOnDemand.js +1 -1
  204. package/support/featureFlags.js +1 -1
  205. package/support/revision.js +1 -1
  206. package/symbols/FillSymbol3DLayer.js +1 -1
  207. package/symbols/IconSymbol3DLayer.js +1 -1
  208. package/symbols/ObjectSymbol3DLayer.js +1 -1
  209. package/symbols/Symbol3D.js +1 -1
  210. package/symbols/WebStyleSymbol.js +1 -1
  211. package/symbols/cim/CIMSymbolRasterizer.js +1 -1
  212. package/symbols/support/IconSymbol3DLayerResource.js +1 -1
  213. package/symbols/support/ObjectSymbol3DLayerResource.js +1 -1
  214. package/symbols/support/Symbol3DAnchorPosition2D.js +1 -1
  215. package/symbols/support/Symbol3DAnchorPosition3D.js +1 -1
  216. package/symbols/support/Symbol3DFillMaterial.js +1 -1
  217. package/symbols/support/Symbol3DIconOutline.js +1 -1
  218. package/symbols/support/Symbol3DOutline.js +1 -1
  219. package/symbols/support/Thumbnail.js +1 -1
  220. package/symbols/support/webStyleSymbolUtils.js +1 -1
  221. package/views/2d/MapViewConstraints.js +1 -1
  222. package/views/2d/engine/vectorTiles/SchemaHelper.js +1 -1
  223. package/views/2d/viewpointUtils.js +1 -1
  224. package/views/3d/environment/ChapmanAtmosphere.glsl.js +1 -1
  225. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  226. package/views/3d/environment/CloudsComposition.glsl.js +1 -1
  227. package/views/3d/environment/CloudsGenerator.js +1 -1
  228. package/views/3d/environment/CloudsPresets.js +1 -1
  229. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  230. package/views/3d/environment/Fog.glsl.js +1 -1
  231. package/views/3d/environment/Fog.js +1 -1
  232. package/views/3d/environment/PanoramicAtmosphere.js +1 -1
  233. package/views/3d/environment/Precipitation.glsl.js +5 -0
  234. package/views/3d/environment/Precipitation.js +5 -0
  235. package/views/3d/environment/PrecipitationTechnique.js +5 -0
  236. package/views/3d/environment/RainyWeather.js +1 -1
  237. package/views/3d/environment/SimpleAtmosphere.glsl.js +1 -1
  238. package/views/3d/environment/SimpleAtmosphere.js +1 -1
  239. package/views/3d/environment/SnowyWeather.js +5 -0
  240. package/views/3d/environment/Stars.glsl.js +1 -1
  241. package/views/3d/environment/Stars.js +1 -1
  242. package/views/3d/environment/weather.js +1 -1
  243. package/views/3d/interactive/analysisTools/slice/SliceTool.js +1 -1
  244. package/views/3d/interactive/analysisTools/slice/sliceToolUtils.js +1 -1
  245. package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
  246. package/views/3d/interactive/visualElements/MeasurementAreaVisualElement.js +1 -1
  247. package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
  248. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  249. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  250. package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
  251. package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
  252. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  253. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  254. package/views/3d/layers/GraphicsView3D.js +1 -1
  255. package/views/3d/layers/I3SMeshView3D.js +1 -1
  256. package/views/3d/layers/VectorTileLayerView3D.js +1 -1
  257. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  258. package/views/3d/layers/graphics/ElevationAligners.js +1 -1
  259. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  260. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  261. package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
  262. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  263. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  264. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  265. package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
  266. package/views/3d/layers/graphics/graphicUtils.js +1 -1
  267. package/views/3d/layers/graphics/lineUtils.js +1 -1
  268. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  269. package/views/3d/layers/graphics/polygonUtils.js +1 -1
  270. package/views/3d/layers/graphics/symbolComplexity.js +1 -1
  271. package/views/3d/layers/i3s/I3SBinaryReader.js +1 -1
  272. package/views/3d/layers/i3s/PointRenderer.js +1 -1
  273. package/views/3d/layers/support/HeatmapFeatureProcessor.js +5 -0
  274. package/views/3d/layers/support/overlayImageUtils.js +1 -1
  275. package/views/3d/layers/support/patternUtils.js +1 -1
  276. package/views/3d/state/controllers/local/PinchAndPanController.js +1 -1
  277. package/views/3d/support/FrustumExtentIntersection.js +1 -1
  278. package/views/3d/support/LaserLineRenderer.js +1 -1
  279. package/views/3d/support/LaserlinePathData.js +1 -1
  280. package/views/3d/support/sunUtils.js +1 -1
  281. package/views/3d/terrain/OverlayRenderer.js +1 -1
  282. package/views/3d/terrain/PatchGeometryFactory.js +1 -1
  283. package/views/3d/terrain/TerrainRenderer.js +1 -1
  284. package/views/3d/terrain/TerrainSurface.js +1 -1
  285. package/views/3d/terrain/Tile.js +1 -1
  286. package/views/3d/terrain/terrainUtils.js +1 -1
  287. package/views/3d/terrain/tileUtils.js +1 -1
  288. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  289. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  290. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
  291. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentData.glsl.js +10 -10
  292. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
  293. package/views/3d/webgl-engine/collections/Component/SourceGeometry.js +1 -1
  294. package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
  295. package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
  296. package/views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js +2 -2
  297. package/views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js +2 -2
  298. package/views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js +2 -2
  299. package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js +2 -2
  300. package/views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js +4 -4
  301. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +1 -1
  302. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js +1 -1
  303. package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +1 -1
  304. package/views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js +1 -1
  305. package/views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js +3 -3
  306. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js +1 -1
  307. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +6 -6
  308. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +12 -12
  309. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTextureCoordinates.glsl.js +4 -4
  310. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js +1 -1
  311. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +16 -16
  312. package/views/3d/webgl-engine/core/shaderLibrary/default/RealisticTree.glsl.js +1 -1
  313. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +5 -5
  314. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js +3 -3
  315. package/views/3d/webgl-engine/core/shaderLibrary/raster/BasicGrid.glsl.js +2 -2
  316. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeMaterialColor.glsl.js +6 -6
  317. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js +2 -2
  318. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeShadingNormal.glsl.js +10 -11
  319. package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +2 -2
  320. package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassGeometryTest.glsl.js +2 -2
  321. package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js +2 -2
  322. package/views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js +6 -6
  323. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadBaseColorTexture.glsl.js +4 -4
  324. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +6 -6
  325. package/views/3d/webgl-engine/core/shaderLibrary/shading/Reprojection.glsl.js +4 -4
  326. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +5 -5
  327. package/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js +1 -1
  328. package/views/3d/webgl-engine/core/shaderLibrary/shading/Water.glsl.js +10 -10
  329. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Terrain.glsl.js +1 -1
  330. package/views/3d/webgl-engine/core/shaderLibrary/util/BlendLayers.glsl.js +1 -1
  331. package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +4 -4
  332. package/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js +1 -1
  333. package/views/3d/webgl-engine/lib/Camera.js +1 -1
  334. package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +1 -1
  335. package/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js +1 -1
  336. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  337. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  338. package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
  339. package/views/3d/webgl-engine/lib/MagnifierHelper.js +1 -1
  340. package/views/3d/webgl-engine/lib/Material.js +1 -1
  341. package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
  342. package/views/3d/webgl-engine/lib/RenderPluginManager.js +1 -1
  343. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  344. package/views/3d/webgl-engine/lib/SSAOHelper.js +1 -1
  345. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  346. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  347. package/views/3d/webgl-engine/lib/SmaaRenderPass.js +1 -1
  348. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  349. package/views/3d/webgl-engine/lib/Texture.js +1 -1
  350. package/views/3d/webgl-engine/lib/TextureUniformName.js +4 -0
  351. package/views/3d/webgl-engine/lib/UniformName.js +4 -0
  352. package/views/3d/webgl-engine/lib/VertexAttribute.js +5 -0
  353. package/views/3d/webgl-engine/lib/basicInterfaces.js +1 -1
  354. package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
  355. package/views/3d/webgl-engine/lib/edgeRendering/EdgeRenderer.js +1 -1
  356. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
  357. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  358. package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
  359. package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
  360. package/views/3d/webgl-engine/lib/lodRendering/RenderInstanceData.js +1 -1
  361. package/views/3d/webgl-engine/lib/pathGeometryUtils.js +1 -1
  362. package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
  363. package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
  364. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  365. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  366. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  367. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  368. package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
  369. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  370. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  371. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  372. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  373. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  374. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  375. package/views/3d/webgl-engine/materials/SlicePlaneMaterial.js +1 -1
  376. package/views/3d/webgl-engine/materials/VisualVariableMaterialParameters.js +1 -1
  377. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  378. package/views/3d/webgl-engine/materials/internal/DefaultBufferWriter.js +1 -1
  379. package/views/3d/webgl-engine/materials/internal/MaterialUtil.js +1 -1
  380. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  381. package/views/3d/webgl-engine/materials/internal/waterMaterialUtils.js +1 -1
  382. package/views/3d/webgl-engine/shaders/CheckerBoard.glsl.js +1 -1
  383. package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
  384. package/views/3d/webgl-engine/shaders/ColorMaterial.glsl.js +1 -1
  385. package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
  386. package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
  387. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  388. package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
  389. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  390. package/views/3d/webgl-engine/shaders/HighlightComposition.glsl.js +1 -1
  391. package/views/3d/webgl-engine/shaders/HighlightTechnique.js +1 -1
  392. package/views/3d/webgl-engine/shaders/ImageMaterial.glsl.js +1 -1
  393. package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
  394. package/views/3d/webgl-engine/shaders/LaserlinePath.glsl.js +1 -1
  395. package/views/3d/webgl-engine/shaders/LaserlinePathTechnique.js +1 -1
  396. package/views/3d/webgl-engine/shaders/LineCallout.glsl.js +1 -1
  397. package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
  398. package/views/3d/webgl-engine/shaders/Magnifier.glsl.js +1 -1
  399. package/views/3d/webgl-engine/shaders/MeasurementArrow.glsl.js +1 -1
  400. package/views/3d/webgl-engine/shaders/NativeLine.glsl.js +1 -1
  401. package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
  402. package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
  403. package/views/3d/webgl-engine/shaders/PointRenderer.glsl.js +1 -1
  404. package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
  405. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  406. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  407. package/views/3d/webgl-engine/shaders/SMAA.glsl.js +1 -1
  408. package/views/3d/webgl-engine/shaders/ShadedColorMaterial.glsl.js +1 -1
  409. package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
  410. package/views/3d/webgl-engine/shaders/ShadowCastTechnique.js +1 -1
  411. package/views/3d/webgl-engine/shaders/ShadowHighlightTechnique.js +1 -1
  412. package/views/3d/webgl-engine/shaders/SlicePlaneMaterial.glsl.js +1 -1
  413. package/views/3d/webgl-engine/shaders/WaterSurface.glsl.js +1 -1
  414. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/AdjustProjectedPosition.glsl.js +10 -10
  415. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/DiscardShortEdges.glsl.js +1 -1
  416. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeShaderProgram.glsl.js +1 -1
  417. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +21 -21
  418. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineAmplitude.glsl.js +6 -6
  419. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineOffset.glsl.js +13 -13
  420. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/UnpackAttributes.glsl.js +6 -6
  421. package/views/MapView.js +1 -1
  422. package/views/SceneView.js +1 -1
  423. package/views/View.js +1 -1
  424. package/views/input/recognizers/DoubleTapDrag.js +1 -1
  425. package/views/input/recognizers/ImmediateDoubleClick.js +1 -1
  426. package/views/input/recognizers/PointerClickHoldAndDrag.js +1 -1
  427. package/views/input/recognizers/SingleAndDoubleClick.js +1 -1
  428. package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
  429. package/views/support/DefaultsFromMap.js +1 -1
  430. package/views/support/WatchUpdatingTracking.js +1 -1
  431. package/views/support/projectionUtils.js +5 -0
  432. package/views/webgl/BufferObject.js +1 -1
  433. package/views/webgl/InstanceCounter.js +1 -1
  434. package/views/webgl/Program.js +1 -1
  435. package/webdoc/support/{Thumbnail.js → SlideThumbnail.js} +1 -1
  436. package/webmap/Bookmark.js +1 -1
  437. package/webmap/Version.js +1 -1
  438. package/webscene/Slide.js +1 -1
  439. package/webscene/Version.js +1 -1
  440. package/webscene/support/SlideVisibleLayer.js +1 -1
  441. package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.js +1 -1
  442. package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
  443. package/widgets/BasemapGallery/support/BasemapGalleryItem.js +1 -1
  444. package/widgets/BasemapGallery/support/basemapCompatibilityUtils.js +1 -1
  445. package/widgets/BasemapGallery.js +1 -1
  446. package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
  447. package/widgets/Bookmarks.js +1 -1
  448. package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.js +1 -1
  449. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
  450. package/widgets/LineOfSight/LineOfSightViewModel.js +1 -1
  451. package/widgets/Search/support/locatorUtils.js +1 -1
  452. package/widgets/Search.js +1 -1
  453. package/widgets/Slice/SliceViewModel.js +1 -1
  454. package/widgets/TimeSlider.js +1 -1
  455. package/widgets/Weather/WeatherViewModel.js +1 -1
  456. package/widgets/Weather/css.js +1 -1
  457. package/widgets/Weather/enums.js +5 -0
  458. package/widgets/Weather.js +1 -1
  459. package/widgets/support/InteractiveToolViewModel.js +1 -1
  460. package/assets/esri/core/workers/chunks/00c5bb5eecb0e89266df.js +0 -1
  461. package/assets/esri/core/workers/chunks/021a37e2b191298e80b7.js +0 -1
  462. package/assets/esri/core/workers/chunks/1370c92c40fd6271553c.js +0 -1
  463. package/assets/esri/core/workers/chunks/14bef72154b3a19561a7.js +0 -1
  464. package/assets/esri/core/workers/chunks/18668dc45eb9e35530df.js +0 -1
  465. package/assets/esri/core/workers/chunks/1e4d37c2b9dc83d20a11.js +0 -1
  466. package/assets/esri/core/workers/chunks/1fbcc8424452d0256bd6.js +0 -1
  467. package/assets/esri/core/workers/chunks/208a7e24e19fc5633dd7.js +0 -1
  468. package/assets/esri/core/workers/chunks/22b09e276c9b9f22f0f8.js +0 -1
  469. package/assets/esri/core/workers/chunks/23b15e7c2f96d260e16c.js +0 -1
  470. package/assets/esri/core/workers/chunks/25a3e9bc0b4c7e0d3165.js +0 -1
  471. package/assets/esri/core/workers/chunks/2792ca40f1e92849247c.js +0 -1
  472. package/assets/esri/core/workers/chunks/2a96f1bba9ce6883e5e0.js +0 -1
  473. package/assets/esri/core/workers/chunks/3231ee3e090bb4cac3fc.js +0 -1
  474. package/assets/esri/core/workers/chunks/36a3f6fb4d1d18fcb642.js +0 -1
  475. package/assets/esri/core/workers/chunks/36e250278b5622ccf068.js +0 -1
  476. package/assets/esri/core/workers/chunks/395ba088d4864588ff66.js +0 -1
  477. package/assets/esri/core/workers/chunks/3aa4194dc5497c57647f.js +0 -1
  478. package/assets/esri/core/workers/chunks/3cc77692b2eee27b9c9e.js +0 -1
  479. package/assets/esri/core/workers/chunks/40a1e713f63ec77110c0.js +0 -1
  480. package/assets/esri/core/workers/chunks/4385a268c2a64281d1c1.js +0 -1
  481. package/assets/esri/core/workers/chunks/46b4bb66a54bbd8e2e57.js +0 -1
  482. package/assets/esri/core/workers/chunks/4bfbf5a34c9207fdcf44.js +0 -1
  483. package/assets/esri/core/workers/chunks/5a4a5585ec8027079f32.js +0 -1
  484. package/assets/esri/core/workers/chunks/5d4863a92b03bebc1b54.js +0 -1
  485. package/assets/esri/core/workers/chunks/5d991b74d958005c26c4.js +0 -1
  486. package/assets/esri/core/workers/chunks/634b5ccd7a3ac67f855d.js +0 -1
  487. package/assets/esri/core/workers/chunks/662d13f68cf3ec92439b.js +0 -1
  488. package/assets/esri/core/workers/chunks/663ad15b86936eb06b69.js +0 -1
  489. package/assets/esri/core/workers/chunks/7bc5cc5dbf1b7b70ddac.js +0 -1
  490. package/assets/esri/core/workers/chunks/7d661129a0d8c466eeec.js +0 -1
  491. package/assets/esri/core/workers/chunks/8070972c0efb78523b68.js +0 -1
  492. package/assets/esri/core/workers/chunks/85e27fd949475f9a6bbc.js +0 -1
  493. package/assets/esri/core/workers/chunks/8b6ab6202a40fe622833.js +0 -1
  494. package/assets/esri/core/workers/chunks/96ab518eb6ba11333dee.js +0 -1
  495. package/assets/esri/core/workers/chunks/9796d54ff12b6429164a.js +0 -1
  496. package/assets/esri/core/workers/chunks/98986e6601b0366376b4.js +0 -1
  497. package/assets/esri/core/workers/chunks/9cdcf9309d6feda70185.js +0 -1
  498. package/assets/esri/core/workers/chunks/aa861b8eae6c85f3dad4.js +0 -1
  499. package/assets/esri/core/workers/chunks/aace7e1fef256bb961c9.js +0 -1
  500. package/assets/esri/core/workers/chunks/ad081d8e49e7f90c3c26.js +0 -1
  501. package/assets/esri/core/workers/chunks/af5694b4d278cf1db2d9.js +0 -1
  502. package/assets/esri/core/workers/chunks/afbb4f802ca5774f0326.js +0 -1
  503. package/assets/esri/core/workers/chunks/b2c5f92e3d7606297ca9.js +0 -1
  504. package/assets/esri/core/workers/chunks/b8316c6469a543029bc6.js +0 -1
  505. package/assets/esri/core/workers/chunks/ba615f118a3a8970ef25.js +0 -1
  506. package/assets/esri/core/workers/chunks/ba6654a885be4b7a43f0.js +0 -1
  507. package/assets/esri/core/workers/chunks/bf0a65b4be31959f921d.js +0 -1
  508. package/assets/esri/core/workers/chunks/c11474b702dfb94e8e87.js +0 -1
  509. package/assets/esri/core/workers/chunks/c890c7fca27170e3341f.js +0 -1
  510. package/assets/esri/core/workers/chunks/c976785f2391c77d8a30.js +0 -1
  511. package/assets/esri/core/workers/chunks/ca2f5faa01d99c21ec14.js +0 -1
  512. package/assets/esri/core/workers/chunks/cef4af64860ebbfc1c47.js +0 -1
  513. package/assets/esri/core/workers/chunks/cfbffa429d88e7709c3f.js +0 -1
  514. package/assets/esri/core/workers/chunks/d24c4fbc567486b1188f.js +0 -1
  515. package/assets/esri/core/workers/chunks/de6cff7b6cbbf99b20d1.js +0 -981
  516. package/assets/esri/core/workers/chunks/e4f93c55eaefab4192b5.js +0 -1
  517. package/assets/esri/core/workers/chunks/e59764ee8cf25d4f74e2.js +0 -1
  518. package/assets/esri/core/workers/chunks/ec89466f76d0ba22525e.js +0 -1
  519. package/assets/esri/core/workers/chunks/ee45618c45806ab654cb.js +0 -1
  520. package/assets/esri/core/workers/chunks/f467c8f1fce22f6f599c.js +0 -1
  521. package/assets/esri/core/workers/chunks/f4baa5ea2e42b1317941.js +0 -1
  522. package/assets/esri/core/workers/chunks/face43cf5abcd2f5bd9d.js +0 -1
  523. package/assets/esri/core/workers/chunks/ffaf091c6023225cf5aa.js +0 -1
@@ -2,10 +2,10 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{glsl as e}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as o}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as t}from"../views/3d/webgl-engine/lib/basicInterfaces.js";var r;function d(d){const s=new o;return d.output===r.EdgeDetector&&(s.attributes.add(t.POSITION,"vec2"),s.vertex.uniforms.add("uResolution","vec4"),s.varyings.add("fTexCoord","vec2"),s.varyings.add("fOffset[3]","vec4"),s.vertex.code.add(e`void SMAAEdgeDetectionVS( vec2 texcoord ) {
6
- fOffset[0] = texcoord.xyxy + uResolution.xyxy * vec4( -1.0, 0.0, 0.0, 1.0 );
7
- fOffset[1] = texcoord.xyxy + uResolution.xyxy * vec4( 1.0, 0.0, 0.0, -1.0 );
8
- fOffset[2] = texcoord.xyxy + uResolution.xyxy * vec4( -2.0, 0.0, 0.0, 2.0 );
5
+ import{glsl as e}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as o}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as t}from"../views/3d/webgl-engine/lib/VertexAttribute.js";var r;function d(d){const s=new o;return d.output===r.EdgeDetector&&(s.attributes.add(t.POSITION,"vec2"),s.vertex.uniforms.add("resolution","vec4"),s.varyings.add("fTexCoord","vec2"),s.varyings.add("fOffset[3]","vec4"),s.vertex.code.add(e`void SMAAEdgeDetectionVS( vec2 texcoord ) {
6
+ fOffset[0] = texcoord.xyxy + resolution.xyxy * vec4( -1.0, 0.0, 0.0, 1.0 );
7
+ fOffset[1] = texcoord.xyxy + resolution.xyxy * vec4( 1.0, 0.0, 0.0, -1.0 );
8
+ fOffset[2] = texcoord.xyxy + resolution.xyxy * vec4( -2.0, 0.0, 0.0, 2.0 );
9
9
  }
10
10
  void main() {
11
11
  fTexCoord = (position + 1.0 ) * 0.5;
@@ -67,12 +67,12 @@ SMAAEdgeDetectionVS( fTexCoord );
67
67
  void main() {
68
68
  gl_FragColor = SMAAColorEdgeDetectionPS( fTexCoord, fOffset, tColor );
69
69
  }
70
- `)),d.output===r.BlendWeight&&(s.attributes.add(t.POSITION,"vec2"),s.vertex.uniforms.add("uResolution","vec4"),s.varyings.add("fTexCoord","vec2"),s.varyings.add("fOffset[3]","vec4"),s.varyings.add("fPixCoord","vec2"),s.vertex.code.add(e`
70
+ `)),d.output===r.BlendWeight&&(s.attributes.add(t.POSITION,"vec2"),s.vertex.uniforms.add("resolution","vec4"),s.varyings.add("fTexCoord","vec2"),s.varyings.add("fOffset[3]","vec4"),s.varyings.add("fPixCoord","vec2"),s.vertex.code.add(e`
71
71
  void SMAABlendingWeightCalculationVS( vec2 texcoord ) {
72
- fPixCoord = texcoord * uResolution.zw;
73
- fOffset[0] = texcoord.xyxy + uResolution.xyxy * vec4( -0.25, 0.125, 1.25, 0.125 );
74
- fOffset[1] = texcoord.xyxy + uResolution.xyxy * vec4( -0.125, 0.25, -0.125, -1.25 );
75
- fOffset[2] = vec4( fOffset[0].xz, fOffset[1].yw ) + vec4( -2.0, 2.0, -2.0, 2.0 ) * uResolution.xxyy * float( ${e.int(d.maxSearchSteps)} );
72
+ fPixCoord = texcoord * resolution.zw;
73
+ fOffset[0] = texcoord.xyxy + resolution.xyxy * vec4( -0.25, 0.125, 1.25, 0.125 );
74
+ fOffset[1] = texcoord.xyxy + resolution.xyxy * vec4( -0.125, 0.25, -0.125, -1.25 );
75
+ fOffset[2] = vec4( fOffset[0].xz, fOffset[1].yw ) + vec4( -2.0, 2.0, -2.0, 2.0 ) * resolution.xxyy * float( ${e.int(d.maxSearchSteps)} );
76
76
  }
77
77
 
78
78
  void main() {
@@ -80,12 +80,12 @@ SMAAEdgeDetectionVS( fTexCoord );
80
80
  gl_Position = vec4(position, 0, 1);
81
81
  SMAABlendingWeightCalculationVS( fTexCoord );
82
82
  }
83
- `),s.fragment.uniforms.add("tEdges","sampler2D").add("tArea","sampler2D").add("tSearch","sampler2D").add("tColor","sampler2D").add("uResolution","vec4"),s.fragment.code.add(e`
83
+ `),s.fragment.uniforms.add("tEdges","sampler2D").add("tArea","sampler2D").add("tSearch","sampler2D").add("tColor","sampler2D").add("resolution","vec4"),s.fragment.code.add(e`
84
84
  #define SMAA_AREATEX_PIXEL_SIZE ( 1.0 / vec2( 160.0, 560.0 ) )
85
85
  #define SMAA_AREATEX_SUBTEX_SIZE ( 1.0 / 7.0 )
86
86
 
87
87
  vec4 SMAASampleLevelZeroOffset(sampler2D tex, vec2 coord, vec2 offset) {
88
- return texture2D( tex, coord + offset.x * uResolution.xy, 0.0 );
88
+ return texture2D( tex, coord + offset.x * resolution.xy, 0.0 );
89
89
  }
90
90
 
91
91
  vec2 round( vec2 x ) {
@@ -101,13 +101,13 @@ SMAAEdgeDetectionVS( fTexCoord );
101
101
  vec2 e = vec2( 0.0, 1.0 );
102
102
  for ( int i = 0; i < ${e.int(d.maxSearchSteps)}; i ++ ) {
103
103
  e = texture2D( edgesTex, texcoord, 0.0 ).rg;
104
- texcoord -= vec2( 2.0, 0.0 ) * uResolution.xy;
104
+ texcoord -= vec2( 2.0, 0.0 ) * resolution.xy;
105
105
  if ( ! ( texcoord.x > end && e.g > 0.8281 && e.r == 0.0 ) ) break;
106
106
  }
107
- texcoord.x += 0.25 * uResolution.x;
108
- texcoord.x += uResolution.x;
109
- texcoord.x += 2.0 * uResolution.x;
110
- texcoord.x -= uResolution.x * SMAASearchLength(searchTex, e, 0.0, 0.5);
107
+ texcoord.x += 0.25 * resolution.x;
108
+ texcoord.x += resolution.x;
109
+ texcoord.x += 2.0 * resolution.x;
110
+ texcoord.x -= resolution.x * SMAASearchLength(searchTex, e, 0.0, 0.5);
111
111
  return texcoord.x;
112
112
  }
113
113
 
@@ -115,13 +115,13 @@ SMAAEdgeDetectionVS( fTexCoord );
115
115
  vec2 e = vec2( 0.0, 1.0 );
116
116
  for ( int i = 0; i < ${e.int(d.maxSearchSteps)}; i ++ ) {
117
117
  e = texture2D( edgesTex, texcoord, 0.0 ).rg;
118
- texcoord += vec2( 2.0, 0.0 ) * uResolution.xy;
118
+ texcoord += vec2( 2.0, 0.0 ) * resolution.xy;
119
119
  if ( ! ( texcoord.x < end && e.g > 0.8281 && e.r == 0.0 ) ) break;
120
120
  }
121
- texcoord.x -= 0.25 * uResolution.x;
122
- texcoord.x -= uResolution.x;
123
- texcoord.x -= 2.0 * uResolution.x;
124
- texcoord.x += uResolution.x * SMAASearchLength( searchTex, e, 0.5, 0.5 );
121
+ texcoord.x -= 0.25 * resolution.x;
122
+ texcoord.x -= resolution.x;
123
+ texcoord.x -= 2.0 * resolution.x;
124
+ texcoord.x += resolution.x * SMAASearchLength( searchTex, e, 0.5, 0.5 );
125
125
  return texcoord.x;
126
126
  }
127
127
 
@@ -129,13 +129,13 @@ SMAAEdgeDetectionVS( fTexCoord );
129
129
  vec2 e = vec2( 1.0, 0.0 );
130
130
  for ( int i = 0; i < ${e.int(d.maxSearchSteps)}; i ++ ) {
131
131
  e = texture2D( edgesTex, texcoord, 0.0 ).rg;
132
- texcoord += vec2( 0.0, 2.0 ) * uResolution.xy;
132
+ texcoord += vec2( 0.0, 2.0 ) * resolution.xy;
133
133
  if ( ! ( texcoord.y > end && e.r > 0.8281 && e.g == 0.0 ) ) break;
134
134
  }
135
- texcoord.y -= 0.25 * uResolution.y;
136
- texcoord.y -= uResolution.y;
137
- texcoord.y -= 2.0 * uResolution.y;
138
- texcoord.y += uResolution.y * SMAASearchLength( searchTex, e.gr, 0.0, 0.5 );
135
+ texcoord.y -= 0.25 * resolution.y;
136
+ texcoord.y -= resolution.y;
137
+ texcoord.y -= 2.0 * resolution.y;
138
+ texcoord.y += resolution.y * SMAASearchLength( searchTex, e.gr, 0.0, 0.5 );
139
139
  return texcoord.y;
140
140
  }
141
141
 
@@ -143,13 +143,13 @@ SMAAEdgeDetectionVS( fTexCoord );
143
143
  vec2 e = vec2( 1.0, 0.0 );
144
144
  for ( int i = 0; i < ${e.int(d.maxSearchSteps)}; i ++ ) {
145
145
  e = texture2D( edgesTex, texcoord, 0.0 ).rg;
146
- texcoord -= vec2( 0.0, 2.0 ) * uResolution.xy;
146
+ texcoord -= vec2( 0.0, 2.0 ) * resolution.xy;
147
147
  if ( ! ( texcoord.y < end && e.r > 0.8281 && e.g == 0.0 ) ) break;
148
148
  }
149
- texcoord.y += 0.25 * uResolution.y;
150
- texcoord.y += uResolution.y;
151
- texcoord.y += 2.0 * uResolution.y;
152
- texcoord.y -= uResolution.y * SMAASearchLength( searchTex, e.gr, 0.5, 0.5 );
149
+ texcoord.y += 0.25 * resolution.y;
150
+ texcoord.y += resolution.y;
151
+ texcoord.y += 2.0 * resolution.y;
152
+ texcoord.y -= resolution.y * SMAASearchLength( searchTex, e.gr, 0.5, 0.5 );
153
153
  return texcoord.y;
154
154
  }
155
155
 
@@ -172,9 +172,9 @@ SMAAEdgeDetectionVS( fTexCoord );
172
172
  float e1 = texture2D( edgesTex, coords, 0.0 ).r;
173
173
  coords.x = SMAASearchXRight( edgesTex, searchTex, offset[ 0 ].zw, offset[ 2 ].y );
174
174
  d.y = coords.x;
175
- d = d * uResolution.z - pixcoord.x;
175
+ d = d * resolution.z - pixcoord.x;
176
176
  vec2 sqrt_d = sqrt( abs( d ) );
177
- coords.y -= 1.0 * uResolution.y;
177
+ coords.y -= 1.0 * resolution.y;
178
178
  float e2 = SMAASampleLevelZeroOffset( edgesTex, coords, vec2( 1.0, 0.0 ) ).r;
179
179
  weights.rg = SMAAArea( areaTex, sqrt_d, e1, e2, float( subsampleIndices.y ) );
180
180
  }
@@ -188,9 +188,9 @@ SMAAEdgeDetectionVS( fTexCoord );
188
188
  float e1 = texture2D( edgesTex, coords, 0.0 ).g;
189
189
  coords.y = SMAASearchYDown( edgesTex, searchTex, offset[ 1 ].zw, offset[ 2 ].w );
190
190
  d.y = coords.y;
191
- d = d * uResolution.w - pixcoord.y;
191
+ d = d * resolution.w - pixcoord.y;
192
192
  vec2 sqrt_d = sqrt( abs( d ) );
193
- coords.y -= 1.0 * uResolution.y;
193
+ coords.y -= 1.0 * resolution.y;
194
194
  float e2 = SMAASampleLevelZeroOffset( edgesTex, coords, vec2( 0.0, 1.0 ) ).g;
195
195
  weights.ba = SMAAArea( areaTex, sqrt_d, e1, e2, float( subsampleIndices.x ) );
196
196
 
@@ -205,15 +205,15 @@ SMAAEdgeDetectionVS( fTexCoord );
205
205
  void main() {
206
206
  gl_FragColor = SMAABlendingWeightCalculationPS( fTexCoord, fPixCoord, fOffset, tEdges, tArea, tSearch, ivec4( 0.0 ) );
207
207
  }
208
- `)),d.output===r.Blur&&(s.attributes.add(t.POSITION,"vec2"),s.vertex.uniforms.add("uResolution","vec4"),s.varyings.add("fTexCoord","vec2"),s.varyings.add("fOffset[2]","vec4"),s.vertex.code.add(e`void SMAANeighborhoodBlendingVS( vec2 texcoord ) {
209
- fOffset[0] = texcoord.xyxy + uResolution.xyxy * vec4( -1.0, 0.0, 0.0, 1.0 );
210
- fOffset[1] = texcoord.xyxy + uResolution.xyxy * vec4( 1.0, 0.0, 0.0, -1.0 );
208
+ `)),d.output===r.Blur&&(s.attributes.add(t.POSITION,"vec2"),s.vertex.uniforms.add("resolution","vec4"),s.varyings.add("fTexCoord","vec2"),s.varyings.add("fOffset[2]","vec4"),s.vertex.code.add(e`void SMAANeighborhoodBlendingVS( vec2 texcoord ) {
209
+ fOffset[0] = texcoord.xyxy + resolution.xyxy * vec4( -1.0, 0.0, 0.0, 1.0 );
210
+ fOffset[1] = texcoord.xyxy + resolution.xyxy * vec4( 1.0, 0.0, 0.0, -1.0 );
211
211
  }
212
212
  void main() {
213
213
  fTexCoord = (position + 1.0 ) * 0.5;
214
214
  gl_Position = vec4(position, 0, 1);
215
215
  SMAANeighborhoodBlendingVS(fTexCoord);
216
- }`),s.fragment.uniforms.add("tBlendWeights","sampler2D"),s.fragment.uniforms.add("tColor","sampler2D"),s.fragment.uniforms.add("uResolution","vec4"),s.fragment.code.add(e`vec4 SMAANeighborhoodBlendingPS( vec2 texcoord, vec4 offset[ 2 ], sampler2D colorTex, sampler2D blendTex ) {
216
+ }`),s.fragment.uniforms.add("tBlendWeights","sampler2D"),s.fragment.uniforms.add("tColor","sampler2D"),s.fragment.uniforms.add("resolution","vec4"),s.fragment.code.add(e`vec4 SMAANeighborhoodBlendingPS( vec2 texcoord, vec4 offset[ 2 ], sampler2D colorTex, sampler2D blendTex ) {
217
217
  vec4 a;
218
218
  a.xz = texture2D( blendTex, texcoord ).xz;
219
219
  a.y = texture2D( blendTex, offset[ 1 ].zw ).g;
@@ -230,7 +230,7 @@ offset.y = 0.0;
230
230
  offset.x = 0.0;
231
231
  }
232
232
  vec4 C = texture2D( colorTex, texcoord, 0.0 );
233
- texcoord += sign( offset ) * uResolution.xy;
233
+ texcoord += sign( offset ) * resolution.xy;
234
234
  vec4 Cop = texture2D( colorTex, texcoord, 0.0 );
235
235
  float s = abs( offset.x ) > abs( offset.y ) ? abs( offset.x ) : abs( offset.y );
236
236
  vec4 mixed = mix(C, Cop, s);
@@ -2,26 +2,26 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ScreenSizeScaling as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js";import{ShaderOutput as r}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as o}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{ReadLinearDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{multipassTerrainTest as d}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{symbolAlphaCutoff as l}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{ColorConversion as n}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as s}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as t}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as c}from"../views/3d/webgl-engine/lib/basicInterfaces.js";function g(g){const m=new t;return m.include(o,{linearDepth:!1}),m.include(e,{}),m.include(i,g),m.fragment.include(n),m.vertex.uniforms.add("proj","mat4").add("view","mat4"),m.fragment.uniforms.add("color","vec4"),m.attributes.add(c.POSITION,"vec3"),m.varyings.add("vWorldPosition","vec3"),g.multipassTerrainEnabled&&m.varyings.add("depth","float"),g.screenSizeEnabled&&m.attributes.add(c.OFFSET,"vec3"),g.shadingEnabled&&(m.vertex.uniforms.add("viewNormal","mat4"),m.fragment.uniforms.add("shadedColor","vec4").add("shadingDirection","vec3"),m.attributes.add(c.NORMAL,"vec3"),m.varyings.add("vViewNormal","vec3")),m.vertex.code.add(s`
5
+ import{ScreenSizeScaling as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js";import{ShaderOutput as r}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as o}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{ReadLinearDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{multipassTerrainTest as d}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{symbolAlphaCutoff as l}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{ColorConversion as n}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as s}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as t}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as g}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function m(m){const c=new t;return c.include(o,{linearDepth:!1}),c.include(e,{}),c.include(i,m),c.fragment.include(n),c.vertex.uniforms.add("proj","mat4").add("view","mat4"),c.fragment.uniforms.add("uColor","vec4"),c.attributes.add(g.POSITION,"vec3"),c.varyings.add("vWorldPosition","vec3"),m.multipassTerrainEnabled&&c.varyings.add("depth","float"),m.screenSizeEnabled&&c.attributes.add(g.OFFSET,"vec3"),m.shadingEnabled&&(c.vertex.uniforms.add("viewNormal","mat4"),c.fragment.uniforms.add("shadedColor","vec4").add("shadingDirection","vec3"),c.attributes.add(g.NORMAL,"vec3"),c.varyings.add("vViewNormal","vec3")),c.vertex.code.add(s`
6
6
  void main(void) {
7
- vWorldPosition = ${g.screenSizeEnabled?"screenSizeScaling(offset, position)":"position"};
8
- `),g.shadingEnabled&&m.vertex.code.add(s`vec3 worldNormal = normal;
9
- vViewNormal = (viewNormal * vec4(worldNormal, 1)).xyz;`),m.vertex.code.add(s`
10
- ${g.multipassTerrainEnabled?"depth = (view * vec4(vWorldPosition, 1.0)).z;":""}
7
+ vWorldPosition = ${m.screenSizeEnabled?"screenSizeScaling(offset, position)":"position"};
8
+ `),m.shadingEnabled&&c.vertex.code.add(s`vec3 worldNormal = normal;
9
+ vViewNormal = (viewNormal * vec4(worldNormal, 1)).xyz;`),c.vertex.code.add(s`
10
+ ${m.multipassTerrainEnabled?"depth = (view * vec4(vWorldPosition, 1.0)).z;":""}
11
11
  gl_Position = transformPosition(proj, view, vWorldPosition);
12
12
  }
13
- `),g.multipassTerrainEnabled&&(m.fragment.include(a),m.include(d,g)),m.fragment.code.add(s`
13
+ `),m.multipassTerrainEnabled&&(c.fragment.include(a),c.include(d,m)),c.fragment.code.add(s`
14
14
  void main() {
15
15
  discardBySlice(vWorldPosition);
16
- ${g.multipassTerrainEnabled?"terrainDepthTest(gl_FragCoord, depth);":""}
17
- `),g.shadingEnabled?m.fragment.code.add(s`vec3 viewNormalNorm = normalize(vViewNormal);
16
+ ${m.multipassTerrainEnabled?"terrainDepthTest(gl_FragCoord, depth);":""}
17
+ `),m.shadingEnabled?c.fragment.code.add(s`vec3 viewNormalNorm = normalize(vViewNormal);
18
18
  float shadingFactor = 1.0 - clamp(-dot(viewNormalNorm, shadingDirection), 0.0, 1.0);
19
- vec4 finalColor = mix(color, shadedColor, shadingFactor);`):m.fragment.code.add(s`vec4 finalColor = color;`),m.fragment.code.add(s`
19
+ vec4 finalColor = mix(uColor, shadedColor, shadingFactor);`):c.fragment.code.add(s`vec4 finalColor = uColor;`),c.fragment.code.add(s`
20
20
  if (finalColor.a < ${s.float(l)}) {
21
21
  discard;
22
22
  }
23
- ${g.output===r.Alpha?s`gl_FragColor = vec4(finalColor.a);`:""}
23
+ ${m.output===r.Alpha?s`gl_FragColor = vec4(finalColor.a);`:""}
24
24
 
25
- ${g.output===r.Color?s`gl_FragColor = highlightSlice(finalColor, vWorldPosition); ${g.OITEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}`:""}
25
+ ${m.output===r.Color?s`gl_FragColor = highlightSlice(finalColor, vWorldPosition); ${m.oitEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}`:""}
26
26
  }
27
- `),m}const m=Object.freeze({__proto__:null,build:g});export{m as S,g as b};
27
+ `),c}const c=Object.freeze({__proto__:null,build:m});export{c as S,m as b};
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js";import{ReadLinearDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{ReadShadowMap as r}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{CameraSpace as o}from"../views/3d/webgl-engine/core/shaderLibrary/util/CameraSpace.glsl.js";import{RgbaFloatEncoding as t}from"../views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js";import{glsl as s}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as i}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";var d,n;!function(e){e[e.Accumulate=0]="Accumulate",e[e.Visualize=1]="Visualize",e[e.VisualizeCurrent=2]="VisualizeCurrent",e[e.COUNT=3]="COUNT"}(d||(d={})),function(e){e[e.Gradient=0]="Gradient",e[e.Threshold=1]="Threshold"}(n||(n={}));const l=255,c=1/l;function u(u){const h=new i;h.fragment.include(t),h.fragment.include(a),h.include(o),h.include(e);const{pass:p}=u;if(p===d.Visualize){const{visualization:e,bandsEnabled:a}=u;h.fragment.constants.add("inverseSampleValue","float",l),h.fragment.uniforms.add("shadowCastMap","sampler2D"),h.fragment.uniforms.add("sampleScale","float"),h.fragment.uniforms.add("opacityFromElevation","float");const r=e===n.Gradient,o=e===n.Threshold;h.fragment.uniforms.add("color","vec4"),r?a&&h.fragment.uniforms.add("bandSize","float"):o&&h.fragment.uniforms.add("threshold","float"),h.fragment.code.add(s`
5
+ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js";import{ReadLinearDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{ReadShadowMap as r}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{CameraSpace as o}from"../views/3d/webgl-engine/core/shaderLibrary/util/CameraSpace.glsl.js";import{RgbaFloatEncoding as t}from"../views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js";import{glsl as s}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as i}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";var d,n;!function(e){e[e.Accumulate=0]="Accumulate",e[e.Visualize=1]="Visualize",e[e.VisualizeCurrent=2]="VisualizeCurrent",e[e.COUNT=3]="COUNT"}(d||(d={})),function(e){e[e.Gradient=0]="Gradient",e[e.Threshold=1]="Threshold"}(n||(n={}));const l=255,c=1/l;function u(u){const h=new i;h.fragment.include(t),h.fragment.include(a),h.include(o),h.include(e);const{pass:p}=u;if(p===d.Visualize){const{visualization:e,bandsEnabled:a}=u;h.fragment.constants.add("inverseSampleValue","float",l),h.fragment.uniforms.add("shadowCastMap","sampler2D"),h.fragment.uniforms.add("sampleScale","float"),h.fragment.uniforms.add("opacityFromElevation","float");const r=e===n.Gradient,o=e===n.Threshold;h.fragment.uniforms.add("uColor","vec4"),r?a&&h.fragment.uniforms.add("bandSize","float"):o&&h.fragment.uniforms.add("threshold","float"),h.fragment.code.add(s`
6
6
  void main(void) {
7
7
  vec4 record = texture2D(shadowCastMap, uv);
8
8
  float pixelSamples = record.r * inverseSampleValue;
@@ -20,9 +20,9 @@ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/Scr
20
20
 
21
21
  ${r&&a?s`strength = ceil(strength / bandSize) * bandSize;`:""}
22
22
 
23
- gl_FragColor = vec4(color.xyz, color.a * opacityFromElevation ${r?s`* strength`:""});
23
+ gl_FragColor = vec4(uColor.xyz, uColor.a * opacityFromElevation ${r?s`* strength`:""});
24
24
  }
25
- `)}else p!==d.Accumulate&&p!==d.VisualizeCurrent||(h.include(r),h.fragment.uniforms.add("depthMap","sampler2D"),h.fragment.uniforms.add("inverseView","mat4"),h.fragment.uniforms.add("nearFar","vec2"),p===d.Accumulate?h.fragment.constants.add("sampleValue","float",c):h.fragment.constants.add("shadowColor","vec4",[0,0,0,.8]),h.fragment.code.add(s`
25
+ `)}else p!==d.Accumulate&&p!==d.VisualizeCurrent||(h.include(r),h.fragment.uniforms.add("depthMap","sampler2D"),h.fragment.uniforms.add("inverseViewMatrix","mat4"),h.fragment.uniforms.add("nearFar","vec2"),p===d.Accumulate?h.fragment.constants.add("sampleValue","float",c):h.fragment.constants.add("shadowColor","vec4",[0,0,0,.8]),h.fragment.code.add(s`
26
26
  void main(void) {
27
27
 
28
28
  float depth = rgba2float(texture2D(depthMap, uv));
@@ -38,13 +38,13 @@ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/Scr
38
38
  }
39
39
 
40
40
  vec4 currentPixelPos = vec4(reconstructPosition(gl_FragCoord.xy, currentPixelDepth), 1.0);
41
- vec4 worldSpacePos = inverseView * currentPixelPos;
41
+ vec4 worldSpacePos = inverseViewMatrix * currentPixelPos;
42
42
 
43
43
  mat4 shadowMatrix;
44
44
  float linearDepth = -currentPixelDepth;
45
45
  int i = chooseCascade(linearDepth, shadowMatrix);
46
46
 
47
- if (i >= uShadowMapNum) {
47
+ if (i >= numCascades) {
48
48
  discard;
49
49
  }
50
50
 
@@ -57,7 +57,7 @@ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/Scr
57
57
 
58
58
  vec2 uvShadow = cascadeCoordinates(i, lvpos);
59
59
 
60
- float depthShadow = readShadowMapDepth(uvShadow, uShadowMapTex);
60
+ float depthShadow = readShadowMapDepth(uvShadow, shadowMapTex);
61
61
  bool shadow = depthShadow < lvpos.z;
62
62
 
63
63
  if (!shadow) {
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js";import{unoccludedHighlightFlag as o}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{ReadLinearDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{ReadShadowMap as t}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{CameraSpace as r}from"../views/3d/webgl-engine/core/shaderLibrary/util/CameraSpace.glsl.js";import{RgbaFloatEncoding as i}from"../views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js";import{glsl as l}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as d}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";function h(h){const c=new d;return c.include(t),c.fragment.include(i),c.fragment.include(a),c.include(r),c.include(e),c.fragment.uniforms.add("defaultDepthTex","sampler2D").add("highlightDepthTex","sampler2D").add("depthMap","sampler2D").add("highlightMap","sampler2D").add("color","vec4").add("nearFar","vec2").add("opacity","float").add("occludedOpacity","float").add("terminationFactor","float").add("inverseView","mat4").add("lightingMainDirectionView","vec3").add("texelSize","vec2"),c.fragment.constants.add("unoccludedHighlightFlag","vec4",o).add("highlightedThreshold","float",h.highlightedThreshold).add("selfShadowThreshold","float",h.selfShadowThreshold),c.fragment.code.add(l`vec3 normalFromDepth(vec3 pixelPos, vec2 fragCoord, vec2 uv, vec2 texelSize, sampler2D depthMap, vec2 nearFar) {
5
+ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js";import{unoccludedHighlightFlag as a}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{ReadLinearDepth as o}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{ReadShadowMap as t}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{CameraSpace as r}from"../views/3d/webgl-engine/core/shaderLibrary/util/CameraSpace.glsl.js";import{RgbaFloatEncoding as i}from"../views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js";import{glsl as l}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as d}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";function h(h){const c=new d;return c.include(t),c.fragment.include(i),c.fragment.include(o),c.include(r),c.include(e),c.fragment.uniforms.add("defaultDepthTex","sampler2D").add("highlightDepthTex","sampler2D").add("depthMap","sampler2D").add("highlightMap","sampler2D").add("uColor","vec4").add("nearFar","vec2").add("opacity","float").add("occludedOpacity","float").add("terminationFactor","float").add("inverseViewMatrix","mat4").add("lightingMainDirectionView","vec3").add("texelSize","vec2"),c.fragment.constants.add("unoccludedHighlightFlag","vec4",a).add("highlightedThreshold","float",h.highlightedThreshold).add("selfShadowThreshold","float",h.selfShadowThreshold),c.fragment.code.add(l`vec3 normalFromDepth(vec3 pixelPos, vec2 fragCoord, vec2 uv, vec2 texelSize, sampler2D depthMap, vec2 nearFar) {
6
6
  float leftPixelDepth = linearDepthFromTexture(depthMap, uv + vec2(-1.0, 0.0) * texelSize, nearFar);
7
7
  float rightPixelDepth = linearDepthFromTexture(depthMap, uv + vec2(1.0, 0.0) * texelSize, nearFar);
8
8
  float bottomPixelDepth = linearDepthFromTexture(depthMap, uv + vec2(0.0, -1.0) * texelSize, nearFar);
@@ -34,11 +34,11 @@ if (-currentPixelDepth>nearFar.y || -currentPixelDepth<nearFar.x) {
34
34
  discard;
35
35
  }
36
36
  vec4 currentPixelPos = vec4(reconstructPosition(gl_FragCoord.xy, currentPixelDepth), 1.0);
37
- vec4 worldSpacePos = inverseView * currentPixelPos;
37
+ vec4 worldSpacePos = inverseViewMatrix * currentPixelPos;
38
38
  mat4 shadowMatrix;
39
39
  float linearDepth = -currentPixelDepth;
40
40
  int i = chooseCascade(linearDepth, shadowMatrix);
41
- if (i >= uShadowMapNum) {
41
+ if (i >= numCascades) {
42
42
  discard;
43
43
  }
44
44
  vec3 lvpos = lightSpacePosition(worldSpacePos.xyz, shadowMatrix);
@@ -58,5 +58,5 @@ bool shaded = dot(normal, lightingMainDirectionView) < selfShadowThreshold;
58
58
  float differenceOpacity = opacity;
59
59
  float bothOpacity = occludedOpacity;
60
60
  float fragOpacity = (shadowDefault || shaded) ? bothOpacity : differenceOpacity;
61
- gl_FragColor = vec4(color.rgb, color.a * fragOpacity * terminationFactor);
61
+ gl_FragColor = vec4(uColor.rgb, uColor.a * fragOpacity * terminationFactor);
62
62
  }`),c}const c=Object.freeze({__proto__:null,build:h});export{c as S,h as b};
@@ -2,14 +2,14 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{Transform as e}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{glsl as o}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as i}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as r}from"../views/3d/webgl-engine/lib/basicInterfaces.js";var t;function n(n){const a=new i;if(n.geometry===t.Underground)a.attributes.add(r.POSITION,"vec2"),a.varyings.add("color","vec4"),a.vertex.uniforms.add("lightingMainDirection","vec3").add("cameraPosition","vec3").add("undergroundFadeAlpha","float"),a.vertex.code.add(o`void main(void) {
5
+ import{Transform as e}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{glsl as o}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as i}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as t}from"../views/3d/webgl-engine/lib/VertexAttribute.js";var r;function n(n){const a=new i;if(n.geometry===r.Underground)a.attributes.add(t.POSITION,"vec2"),a.varyings.add("color","vec4"),a.vertex.uniforms.add("lightingMainDirection","vec3").add("cameraPosition","vec3").add("undergroundFadeAlpha","float"),a.vertex.code.add(o`void main(void) {
6
6
  float ndotl = dot(normalize(cameraPosition), lightingMainDirection);
7
7
  float lighting = max(0.0, smoothstep(-1.0, 0.8, 2.0 * ndotl));
8
8
  color = vec4(vec3(lighting), undergroundFadeAlpha);
9
9
  gl_Position = vec4(position.xy, 1.0, 1.0);
10
10
  }`),a.fragment.code.add(o`void main() {
11
11
  gl_FragColor = color;
12
- }`);else{a.include(e,{linearDepth:!1}),a.attributes.add(r.POSITION,"vec3"),a.varyings.add("vtc","vec2"),a.varyings.add("falloff","float");const i=n.geometry===t.Cylinder;a.vertex.uniforms.add("proj","mat4").add("view","mat4").add("lightingMainDirection","vec3"),i||(a.varyings.add("innerFactor","float"),a.vertex.uniforms.add("silCircleCenter","vec3").add("silCircleV1","vec3").add("silCircleV2","vec3").add("texV","vec2").add("innerScale","float"));const l=6.2831853,d=1/128;a.vertex.code.add(o`
12
+ }`);else{a.include(e,{linearDepth:!1}),a.attributes.add(t.POSITION,"vec3"),a.varyings.add("vtc","vec2"),a.varyings.add("falloff","float");const i=n.geometry===r.Cylinder;a.vertex.uniforms.add("proj","mat4").add("view","mat4").add("lightingMainDirection","vec3"),i||(a.varyings.add("innerFactor","float"),a.vertex.uniforms.add("silCircleCenter","vec3").add("silCircleV1","vec3").add("silCircleV2","vec3").add("texV","vec2").add("innerScale","float"));const l=6.2831853,d=1/128;a.vertex.code.add(o`
13
13
  void main(void) {
14
14
  ${i?o`
15
15
  vec3 pos = position;
@@ -35,4 +35,4 @@ gl_FragColor = color;
35
35
  vec4 innerColor = vec4(atmosphereColor.rgb, 1.0 - altitudeFade);
36
36
  gl_FragColor = mix(atmosphereColor, innerColor, smoothstep(0.0, 1.0, innerFactor));
37
37
  `}
38
- }`)}return a}!function(e){e[e.Cone=0]="Cone",e[e.Cylinder=1]="Cylinder",e[e.Underground=2]="Underground",e[e.COUNT=3]="COUNT"}(t||(t={}));const a=Object.freeze({__proto__:null,get SimpleAtmosphereGeometry(){return t},build:n});export{t as S,a,n as b};
38
+ }`)}return a}!function(e){e[e.Cone=0]="Cone",e[e.Cylinder=1]="Cylinder",e[e.Underground=2]="Underground",e[e.COUNT=3]="COUNT"}(r||(r={}));const a=Object.freeze({__proto__:null,get SimpleAtmosphereGeometry(){return r},build:n});export{r as S,a,n as b};
@@ -2,10 +2,10 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{glsl as d}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as e}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as r}from"../views/3d/webgl-engine/lib/basicInterfaces.js";function a(){const a=new e;return a.extensions.add("GL_OES_standard_derivatives"),a.vertex.uniforms.add("proj","mat4").add("view","mat4"),a.attributes.add(r.POSITION,"vec3"),a.attributes.add(r.UV0,"vec2"),a.varyings.add("vUV","vec2"),a.vertex.code.add(d`void main(void) {
5
+ import{glsl as d}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as e}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as r}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function i(){const i=new e;return i.extensions.add("GL_OES_standard_derivatives"),i.vertex.uniforms.add("proj","mat4").add("view","mat4"),i.attributes.add(r.POSITION,"vec3"),i.attributes.add(r.UV0,"vec2"),i.varyings.add("vUV","vec2"),i.vertex.code.add(d`void main(void) {
6
6
  vUV = uv0;
7
7
  gl_Position = proj * view * vec4(position, 1.0);
8
- }`),a.fragment.uniforms.add("backgroundColor","vec4").add("gridColor","vec4").add("ratio","float").add("gridWidth","float"),a.fragment.code.add(d`void main() {
8
+ }`),i.fragment.uniforms.add("backgroundColor","vec4").add("gridColor","vec4").add("ratio","float").add("gridWidth","float"),i.fragment.code.add(d`void main() {
9
9
  const float LINE_WIDTH = 1.0;
10
10
  vec2 uvScaled = vUV * gridWidth;
11
11
  vec2 gridUV = (fract(uvScaled + 0.5) - 0.5) / (LINE_WIDTH * fwidth(uvScaled));
@@ -17,4 +17,4 @@ float gridAlpha = gridColor.a * gridFade;
17
17
  gl_FragColor =
18
18
  vec4(backgroundColor.rgb * backgroundColor.a, backgroundColor.a) * (1.0 - gridAlpha) +
19
19
  vec4(gridColor.rgb, 1.0) * gridAlpha;
20
- }`),a}const i=Object.freeze({__proto__:null,build:a});export{i as S,a as b};
20
+ }`),i}const a=Object.freeze({__proto__:null,build:i});export{a as S,i as b};
@@ -2,13 +2,13 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{AlignPixel as e}from"../views/3d/webgl-engine/core/shaderLibrary/hud/AlignPixel.glsl.js";import{glsl as o}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as a}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as i}from"../views/3d/webgl-engine/lib/basicInterfaces.js";function r(){const r=new a;return r.attributes.add(i.POSITION,"vec3"),r.attributes.add(i.COLOR,"vec4"),r.attributes.add(i.SIZE,"float"),r.varyings.add("vcolor","vec4"),r.varyings.add("vsize","float"),r.vertex.uniforms.add("transform","mat4").add("viewport","vec4").add("pixelRatio","float"),r.include(e),r.vertex.code.add(o`void main(void) {
5
+ import{AlignPixel as e}from"../views/3d/webgl-engine/core/shaderLibrary/hud/AlignPixel.glsl.js";import{glsl as o}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as i}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as a}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function t(){const t=new i;return t.attributes.add(a.POSITION,"vec3"),t.attributes.add(a.COLOR,"vec4"),t.attributes.add(a.SIZE,"float"),t.varyings.add("vcolor","vec4"),t.varyings.add("vsize","float"),t.vertex.uniforms.add("transform","mat4").add("viewport","vec4").add("pixelRatio","float"),t.include(e),t.vertex.code.add(o`void main(void) {
6
6
  vec4 posProj = transform * vec4(position, 0);
7
7
  gl_Position = alignToPixelCenter(posProj, viewport.zw);
8
8
  vcolor = color / 1.2;
9
9
  vsize = size * 5.0 * pixelRatio;
10
10
  gl_PointSize = vsize;
11
- }`),r.fragment.code.add(o`void main() {
11
+ }`),t.fragment.code.add(o`void main() {
12
12
  float cap = 0.7;
13
13
  float scale = 1.0 / cap;
14
14
  float helper = clamp(length(abs(gl_PointCoord - vec2(0.5))), 0.0, cap);
@@ -18,4 +18,4 @@ if (vsize < 3.0) {
18
18
  intensity *= 0.5;
19
19
  }
20
20
  gl_FragColor = vec4(vcolor.xyz, intensity);
21
- }`),r}const t=Object.freeze({__proto__:null,build:r});export{t as S,r as b};
21
+ }`),t}const r=Object.freeze({__proto__:null,build:t});export{r as S,t as b};
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as r}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as o}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{VertexTangent as a}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTangent.glsl.js";import{OutputDepth as i}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as l}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{EvaluateSceneLighting as t}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{NormalUtils as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{PBRMode as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{OverlayMode as v,Overlay as d}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js";import{Skirts as c}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/Skirts.glsl.js";import{TerrainTexture as g}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/TerrainTexture.glsl.js";import{HeaderComment as m}from"../views/3d/webgl-engine/core/shaderLibrary/util/HeaderComment.glsl.js";import{glsl as p}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as u}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as h}from"../views/3d/webgl-engine/lib/basicInterfaces.js";function w(w){const f=new u;if(f.include(m,{name:"Terrain Shader",output:w.output}),f.include(c),f.attributes.add(h.POSITION,"vec3"),f.attributes.add(h.UV0,"vec2"),f.vertex.uniforms.add("proj","mat4").add("view","mat4").add("origin","vec3").add("skirtScale","float"),f.fragment.uniforms.add("origin","vec3"),w.output===e.Color){f.include(o,{linearDepth:!1}),f.include(n,w),f.include(g,w),f.include(t,w);const e=w.overlayMode!==v.Disabled,i=w.overlayMode===v.EnabledWithWater;e&&f.include(d,{pbrMode:s.Water,useCustomDTRExponentForWater:!1,ssrEnabled:w.ssrEnabled,highStepCount:w.highStepCount}),i&&f.include(a,w),f.varyings.add("vnormal","vec3"),f.varyings.add("vpos","vec3"),f.vertex.uniforms.add("viewNormal","mat4"),w.receiveShadows&&f.varyings.add("linearDepth","float"),w.tileBorders&&f.varyings.add("vuv","vec2"),w.atmosphere&&(f.vertex.uniforms.add("lightingMainDirection","vec3"),f.varyings.add("wnormal","vec3"),f.varyings.add("wlight","vec3")),w.screenSizePerspective&&(f.vertex.uniforms.add("screenSizePerspective","vec4"),f.varyings.add("screenSizeDistanceToCamera","float"),f.varyings.add("screenSizeCosAngle","float")),f.vertex.code.add(p`
5
+ import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as r}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as o}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{VertexTangent as a}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTangent.glsl.js";import{OutputDepth as i}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as l}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{EvaluateSceneLighting as t}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{NormalUtils as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{PBRMode as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{OverlayMode as v,Overlay as d}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js";import{Skirts as c}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/Skirts.glsl.js";import{TerrainTexture as g}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/TerrainTexture.glsl.js";import{HeaderComment as m}from"../views/3d/webgl-engine/core/shaderLibrary/util/HeaderComment.glsl.js";import{glsl as p}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as u}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as h}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function w(w){const y=new u;if(y.include(m,{name:"Terrain Shader",output:w.output}),y.include(c),y.attributes.add(h.POSITION,"vec3"),y.attributes.add(h.UV0,"vec2"),y.vertex.uniforms.add("proj","mat4").add("view","mat4").add("origin","vec3").add("skirtScale","float"),y.fragment.uniforms.add("origin","vec3"),w.output===e.Color){y.include(o,{linearDepth:!1}),y.include(n,w),y.include(g,w),y.include(t,w);const e=w.overlayMode!==v.Disabled,i=w.overlayMode===v.EnabledWithWater;e&&y.include(d,{pbrMode:s.Water,useCustomDTRExponentForWater:!1,ssrEnabled:w.ssrEnabled,highStepCount:w.highStepCount}),i&&y.include(a,w),y.varyings.add("vnormal","vec3"),y.varyings.add("vpos","vec3"),y.vertex.uniforms.add("viewNormal","mat4"),w.receiveShadows&&y.varyings.add("linearDepth","float"),w.tileBorders&&y.varyings.add("vuv","vec2"),w.atmosphere&&(y.vertex.uniforms.add("lightingMainDirection","vec3"),y.varyings.add("wnormal","vec3"),y.varyings.add("wlight","vec3")),w.screenSizePerspective&&(y.vertex.uniforms.add("screenSizePerspective","vec4"),y.varyings.add("screenSizeDistanceToCamera","float"),y.varyings.add("screenSizeCosAngle","float")),y.vertex.code.add(p`
6
6
  void main(void) {
7
7
  vpos = position;
8
8
  vnormal = getLocalUp(vpos, origin);
@@ -24,10 +24,10 @@ import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/Shader
24
24
  ${e?p`setOverlayVTC(uv);`:""}
25
25
  ${i?p`forwardVertexTangent(vnormal);`:p``}
26
26
  }
27
- `),f.extensions.add("GL_OES_standard_derivatives"),f.extensions.add("GL_EXT_shader_texture_lod"),f.include(r,w),f.include(t,w),f.fragment.uniforms.add("camPos","vec3").add("viewDirection","vec3").add("ssaoTex","sampler2D").add("viewportPixelSz","vec4"),w.screenSizePerspective&&f.fragment.uniforms.add("screenSizePerspective","vec4"),i&&(f.fragment.uniforms.add("ovWaterTex","sampler2D"),f.fragment.uniforms.add("view","mat4")),f.fragment.code.add(p`const float sliceOpacity = 0.2;
27
+ `),y.extensions.add("GL_OES_standard_derivatives"),y.extensions.add("GL_EXT_shader_texture_lod"),y.include(r,w),y.include(t,w),y.fragment.uniforms.add("cameraPosition","vec3").add("viewDirection","vec3").add("ssaoTex","sampler2D").add("viewportPixelSz","vec4"),w.screenSizePerspective&&y.fragment.uniforms.add("screenSizePerspective","vec4"),i&&(y.fragment.uniforms.add("ovWaterTex","sampler2D"),y.fragment.uniforms.add("view","mat4")),y.fragment.code.add(p`const float sliceOpacity = 0.2;
28
28
  float lum(vec3 c) {
29
29
  return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
30
- }`),f.fragment.code.add(p`
30
+ }`),y.fragment.code.add(p`
31
31
  void main() {
32
32
  ${w.receiveShadows?p`float shadow = readShadowMap(vpos, linearDepth);`:p`float shadow = 0.0;`}
33
33
  float vndl = dot(normalize(vnormal), lightingMainDirection);
@@ -64,7 +64,7 @@ return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
64
64
  mat3 tbnMatrix = mat3(tbnTangent, tbnBiTangent, vnormal);
65
65
  vec4 waterOverlayColor = vec4(overlayColor.w > 0.0 ? overlayColorOpaque.xyz/overlayColor.w : vec3(1.0), overlayColor.w);
66
66
  vec4 viewPosition = view*vec4(vpos, 1.0);
67
- vec4 waterColorLinear = getOverlayWaterColor(overlayWaterMask, waterOverlayColor, -normalize(vpos - camPos), shadow, vnormal, tbnMatrix, viewPosition.xyz, vpos + origin);
67
+ vec4 waterColorLinear = getOverlayWaterColor(overlayWaterMask, waterOverlayColor, -normalize(vpos - cameraPosition), shadow, vnormal, tbnMatrix, viewPosition.xyz, vpos + origin);
68
68
  vec4 waterColorNonLinear = delinearizeGamma(vec4(waterColorLinear.xyz, 1.0));
69
69
  // un-gamma the ground color to mix in linear space
70
70
  gl_FragColor = mix(groundColor, waterColorNonLinear, waterColorLinear.w);
@@ -90,36 +90,36 @@ return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
90
90
  gl_FragColor = mix(gl_FragColor, vec4(1.0, 0.0, 0.0, 1.0), edgeFactor);`:""}
91
91
  gl_FragColor = highlightSlice(gl_FragColor, vpos);
92
92
  }
93
- `)}return w.output!==e.Depth&&w.output!==e.Shadow||(f.include(o,{linearDepth:!0}),f.include(i,{output:w.output}),f.include(n,w),f.varyings.add("linearDepth","float"),f.vertex.uniforms.add("nearFar","vec2"),f.vertex.code.add(p`void main(void) {
93
+ `)}return w.output!==e.Depth&&w.output!==e.Shadow||(y.include(o,{linearDepth:!0}),y.include(i,{output:w.output}),y.include(n,w),y.varyings.add("linearDepth","float"),y.vertex.uniforms.add("nearFar","vec2"),y.vertex.code.add(p`void main(void) {
94
94
  vec3 normal = getLocalUp(position, origin);
95
95
  vec2 uv = uv0;
96
96
  vec3 vpos = applySkirts(uv, position, normal.xyz, skirtScale);
97
97
  gl_Position = transformPositionWithDepth(proj, view, vpos, nearFar, linearDepth);
98
- }`),f.fragment.code.add(p`void main() {
98
+ }`),y.fragment.code.add(p`void main() {
99
99
  outputDepth(linearDepth);
100
- }`)),w.output===e.Normal&&(f.include(o,{linearDepth:!1}),f.include(n,w),f.varyings.add("vnormal","vec3"),f.varyings.add("vpos","vec3"),f.vertex.uniforms.add("viewNormal","mat4"),f.vertex.code.add(p`void main(void) {
100
+ }`)),w.output===e.Normal&&(y.include(o,{linearDepth:!1}),y.include(n,w),y.varyings.add("vnormal","vec3"),y.varyings.add("vpos","vec3"),y.vertex.uniforms.add("viewNormal","mat4"),y.vertex.code.add(p`void main(void) {
101
101
  vec3 normal = getLocalUp(position, origin);
102
102
  vec2 uv = uv0;
103
103
  vpos = applySkirts(uv, position, normal, skirtScale);
104
104
  gl_Position = transformPosition(proj, view, vpos);
105
105
  vnormal = normalize((viewNormal * vec4(normal, 1.0)).xyz);
106
- }`),f.fragment.code.add(p`void main() {
106
+ }`),y.fragment.code.add(p`void main() {
107
107
  vec3 normal = normalize(vnormal);
108
108
  if (gl_FrontFacing == false) {
109
109
  normal = -normal;
110
110
  }
111
111
  gl_FragColor = vec4(vec3(0.5) + 0.5 * normal, 0.0);
112
- }`)),w.output===e.Highlight&&(f.include(o,{linearDepth:!1}),f.include(n,w),f.include(d,{pbrMode:s.Disabled}),f.vertex.code.add(p`void main() {
112
+ }`)),w.output===e.Highlight&&(y.include(o,{linearDepth:!1}),y.include(n,w),y.include(d,{pbrMode:s.Disabled}),y.vertex.code.add(p`void main() {
113
113
  vec3 vnormal = getLocalUp(position, origin);
114
114
  vec2 uv = uv0;
115
115
  vec3 vpos = applySkirts(uv, position, vnormal, skirtScale);
116
116
  setOverlayVTC(uv);
117
117
  gl_Position = transformPosition(proj, view, vpos);
118
- }`),f.include(l),f.fragment.code.add(p`void main() {
118
+ }`),y.include(l),y.fragment.code.add(p`void main() {
119
119
  vec4 overlayColor = getCombinedOverlayColor();
120
120
  if (overlayColor.a == 0.0) {
121
121
  gl_FragColor = vec4(0.0);
122
122
  return;
123
123
  }
124
124
  outputHighlight();
125
- }`)),f}const f=Object.freeze({__proto__:null,build:w});export{f as T,w as b};
125
+ }`)),y}const y=Object.freeze({__proto__:null,build:w});export{y as T,w as b};
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js";import{glsl as r}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as o}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";function n(){const n=new o;return n.include(e),n.fragment.uniforms.add("tex","sampler2D"),n.fragment.uniforms.add("color","vec4"),n.fragment.code.add(r`void main() {
5
+ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js";import{glsl as r}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as o}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";function n(){const n=new o;return n.include(e),n.fragment.uniforms.add("tex","sampler2D"),n.fragment.uniforms.add("uColor","vec4"),n.fragment.code.add(r`void main() {
6
6
  vec4 texColor = texture2D(tex, uv);
7
- gl_FragColor = texColor * color;
7
+ gl_FragColor = texColor * uColor;
8
8
  }`),n}const s=Object.freeze({__proto__:null,build:n});export{s as T,n as b};
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ForwardLinearDepth as e}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{ShaderOutput as r}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as a}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{OutputHighlight as o}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{ReadLinearDepth as t}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{EvaluateAmbientLighting as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientLighting.glsl.js";import{EvaluateMainLighting as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateMainLighting.glsl.js";import{multipassTerrainTest as d}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{NormalUtils as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{PBRMode as g}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{ReadShadowMap as v}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{Water as c}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Water.glsl.js";import{WaterDistortion as m}from"../views/3d/webgl-engine/core/shaderLibrary/shading/WaterDistortion.glsl.js";import{symbolAlphaCutoff as p}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{ColorConversion as u}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as h}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as w}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as f}from"../views/3d/webgl-engine/lib/basicInterfaces.js";function b(b){const y=new w;return y.include(a,{linearDepth:!1}),y.attributes.add(f.POSITION,"vec3"),y.attributes.add(f.UV0,"vec2"),y.vertex.uniforms.add("proj","mat4").add("view","mat4").add("localOrigin","vec3"),y.vertex.uniforms.add("waterColor","vec4"),b.output!==r.Color&&b.output!==r.Alpha||(y.include(s,b),y.include(e,b),y.varyings.add("vuv","vec2"),y.varyings.add("vpos","vec3"),y.varyings.add("vnormal","vec3"),y.varyings.add("vtbnMatrix","mat3"),y.fragment.uniforms.add("localOrigin","vec3"),b.multipassTerrainEnabled&&y.varyings.add("depth","float"),y.vertex.code.add(h`
5
+ import{ForwardLinearDepth as e}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{ShaderOutput as r}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as a}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{OutputHighlight as o}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{ReadLinearDepth as t}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{EvaluateAmbientLighting as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientLighting.glsl.js";import{EvaluateMainLighting as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateMainLighting.glsl.js";import{multipassTerrainTest as d}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{NormalUtils as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{PBRMode as g}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{ReadShadowMap as v}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{Water as m}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Water.glsl.js";import{WaterDistortion as c}from"../views/3d/webgl-engine/core/shaderLibrary/shading/WaterDistortion.glsl.js";import{symbolAlphaCutoff as p}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{ColorConversion as u}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as h}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as w}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as f}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function b(b){const y=new w;return y.include(a,{linearDepth:!1}),y.attributes.add(f.POSITION,"vec3"),y.attributes.add(f.UV0,"vec2"),y.vertex.uniforms.add("proj","mat4").add("view","mat4").add("localOrigin","vec3"),y.vertex.uniforms.add("waterColor","vec4"),b.output!==r.Color&&b.output!==r.Alpha||(y.include(s,b),y.include(e,b),y.varyings.add("vuv","vec2"),y.varyings.add("vpos","vec3"),y.varyings.add("vnormal","vec3"),y.varyings.add("vtbnMatrix","mat3"),y.fragment.uniforms.add("localOrigin","vec3"),b.multipassTerrainEnabled&&y.varyings.add("depth","float"),y.vertex.code.add(h`
6
6
  void main(void) {
7
7
  if (waterColor.a < ${h.float(p)}) {
8
8
  // Discard this vertex
@@ -28,7 +28,7 @@ import{ForwardLinearDepth as e}from"../views/3d/webgl-engine/core/shaderLibrary/
28
28
 
29
29
  gl_FragColor = vec4(waterColor.a);
30
30
  }
31
- `)),b.output===r.Color&&(y.include(l),y.include(n,{pbrMode:g.Disabled,lightingSphericalHarmonicsOrder:2}),y.include(m,b),y.include(i,b),b.receiveShadows&&y.include(v,b),y.include(c,b),y.fragment.uniforms.add("waterColor","vec4").add("lightingMainDirection","vec3").add("lightingMainIntensity","vec3").add("camPos","vec3").add("timeElapsed","float").add("view","mat4"),y.fragment.include(u),y.fragment.code.add(h`
31
+ `)),b.output===r.Color&&(y.include(l),y.include(n,{pbrMode:g.Disabled,lightingSphericalHarmonicsOrder:2}),y.include(c,b),y.include(i,b),b.receiveShadows&&y.include(v,b),y.include(m,b),y.fragment.uniforms.add("waterColor","vec4").add("lightingMainDirection","vec3").add("lightingMainIntensity","vec3").add("cameraPosition","vec3").add("timeElapsed","float").add("view","mat4"),y.fragment.include(u),y.fragment.code.add(h`
32
32
  void main() {
33
33
  discardBySlice(vpos);
34
34
  ${b.multipassTerrainEnabled?"terrainDepthTest(gl_FragCoord, depth);":""}
@@ -38,7 +38,7 @@ import{ForwardLinearDepth as e}from"../views/3d/webgl-engine/core/shaderLibrary/
38
38
 
39
39
  // we rotate the normal according to the tangent-bitangent-normal-Matrix
40
40
  vec3 n = normalize(vtbnMatrix * tangentNormalFoam.xyz);
41
- vec3 v = -normalize(vpos - camPos);
41
+ vec3 v = -normalize(vpos - cameraPosition);
42
42
  float shadow = ${b.receiveShadows?h`1.0 - readShadowMap(vpos, linearDepth)`:"1.0"};
43
43
  vec4 vPosView = view*vec4(vpos, 1.0);
44
44
  vec4 final = vec4(getSeaColor(n, v, lightingMainDirection, waterColor.rgb, lightingMainIntensity, localUp, shadow, tangentNormalFoam.w, vPosView.xyz, vpos + localOrigin), waterColor.w);
@@ -46,9 +46,9 @@ import{ForwardLinearDepth as e}from"../views/3d/webgl-engine/core/shaderLibrary/
46
46
  // gamma correction
47
47
  gl_FragColor = delinearizeGamma(final);
48
48
  gl_FragColor = highlightSlice(gl_FragColor, vpos);
49
- ${b.OITEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}
49
+ ${b.oitEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}
50
50
  }
51
- `)),b.output===r.Normal&&(y.include(s,b),y.include(m,b),y.include(i,b),y.varyings.add("vpos","vec3"),y.varyings.add("vuv","vec2"),y.vertex.code.add(h`
51
+ `)),b.output===r.Normal&&(y.include(s,b),y.include(c,b),y.include(i,b),y.varyings.add("vpos","vec3"),y.varyings.add("vuv","vec2"),y.vertex.code.add(h`
52
52
  void main(void) {
53
53
  if (waterColor.a < ${h.float(p)}) {
54
54
  // Discard this vertex
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import"../core/has.js";import s from"../core/Logger.js";import{acosClamped as i}from"../core/mathUtils.js";import{ObjectStack as n}from"../core/ObjectStack.js";import{a as t,t as o,d as r}from"./mat4.js";import{c as a}from"./mat4f64.js";import{g as e,a as c,b as u,s as g,i as b,l as f,r as p,d as l,f as m,k as d,m as h,n as j,p as I}from"./vec3.js";import{f as y,a as P,c as N}from"./vec3f64.js";import{Axis as v}from"../geometry/support/Axis.js";import{create as w,projectPointClamp as M,distance2 as A}from"../geometry/support/lineSegment.js";import{create as S,wrap as T,copy as x,fromVectorsAndPoint as V,normal as _,fromValues as k,intersectRay as E,intersectLineSegment as O,intersectLineSegmentClamp as U,isPointInside as Y,projectPoint as q,setOffsetFromPoint as B}from"../geometry/support/plane.js";import{distance2 as F}from"../geometry/support/ray.js";import{projectPointSignedLength as R}from"../geometry/support/vector.js";import{sv3d as C}from"../geometry/support/vectorStacks.js";const L=s.getLogger("esri.views.3d.support.geometryUtils.boundedPlane");class z{constructor(){this.plane=S(),this.origin=N(),this.basis1=N(),this.basis2=N()}}function G(s=Ns){return{plane:S(s.plane),origin:P(s.origin),basis1:P(s.basis1),basis2:P(s.basis2)}}function W(s,i,n){const t=As.get();return t.origin=s,t.basis1=i,t.basis2=n,t.plane=T(0,0,0,0),H(t),t}function X(s,i=G()){return D(s.origin,s.basis1,s.basis2,i)}function Z(s,i){e(i.origin,s.origin),e(i.basis1,s.basis1),e(i.basis2,s.basis2),x(s.plane,i.plane)}function D(s,i,n,t=G()){return e(t.origin,s),e(t.basis1,i),e(t.basis2,n),H(t),ys(t,"fromValues()"),t}function H(s){V(s.basis2,s.basis1,s.origin,s.plane)}function J(s,i,n){s!==n&&X(s,n);const t=c(C.get(),ms(s),i);return u(n.origin,n.origin,t),n.plane[3]-=i,n}function K(s,i,n){return Q(i,n),J(n,gs(s,s.origin),n),n}function Q(s,i=G()){const n=(s[2]-s[0])/2,t=(s[3]-s[1])/2;return g(i.origin,s[0]+n,s[1]+t,0),g(i.basis1,n,0,0),g(i.basis2,0,t,0),k(0,0,1,0,i.plane),i}function $(s,i,n){return!!E(s.plane,i,n)&&hs(s,n)}function ss(s,i,n){if($(s,i,n))return n;const t=is(s,i,C.get());return u(n,i.origin,c(C.get(),i.direction,b(i.origin,t)/f(i.direction))),n}function is(s,n,t){const o=vs.get();Ps(s,n,o,vs.get());let r=Number.POSITIVE_INFINITY;for(const a of Ss){const c=Is(s,a,ws.get()),u=C.get();if(O(o,c,u)){const s=p(C.get(),n.origin,u),o=Math.abs(i(l(n.direction,s)));o<r&&(r=o,e(t,u))}}return r===Number.POSITIVE_INFINITY?ns(s,n,t):t}function ns(s,i,n){if($(s,i,n))return n;const t=vs.get(),o=vs.get();Ps(s,i,t,o);let r=Number.POSITIVE_INFINITY;for(const a of Ss){const c=Is(s,a,ws.get()),u=C.get();if(U(t,c,u)){const s=F(i,u);if(!Y(o,u))continue;s<r&&(r=s,e(n,u))}}return rs(s,i.origin)<r&&ts(s,i.origin,n),n}function ts(s,i,n){const t=q(s.plane,i,C.get()),o=M(js(s,s.basis1),t,-1,1,C.get()),r=M(js(s,s.basis2),t,-1,1,C.get());return m(n,u(C.get(),o,r),s.origin),n}function os(s,i,n){const{origin:t,basis1:o,basis2:r}=s,a=m(C.get(),i,t),e=R(o,a),c=R(r,a),u=R(ms(s),a);return g(n,e,c,u)}function rs(s,i){const n=os(s,i,C.get()),{basis1:t,basis2:o}=s,r=f(t),a=f(o),e=Math.max(Math.abs(n[0])-r,0),c=Math.max(Math.abs(n[1])-a,0),u=n[2];return e*e+c*c+u*u}function as(s,i){return Math.sqrt(rs(s,i))}function es(s,i){let n=Number.NEGATIVE_INFINITY;for(const t of Ss){const o=Is(s,t,ws.get()),r=A(o,i);r>n&&(n=r)}return Math.sqrt(n)}function cs(s,i){return Y(s.plane,i)&&hs(s,i)}function us(s,i,n,t){return ds(s,n,t)}function gs(s,i){const n=-s.plane[3];return R(ms(s),i)-n}function bs(s,i,n,t){const o=gs(s,i),r=c(Ms,ms(s),n-o);return u(t,i,r),t}function fs(s,i){return d(s.basis1,i.basis1)&&d(s.basis2,i.basis2)&&d(s.origin,i.origin)}function ps(s,i,n){return s!==n&&X(s,n),t(Ts,i),o(Ts,Ts),h(n.basis1,s.basis1,Ts),h(n.basis2,s.basis2,Ts),h(_(n.plane),_(s.plane),Ts),h(n.origin,s.origin,i),B(n.plane,n.origin,n.plane),n}function ls(s,i,n,t){return s!==t&&X(s,t),r(xs,i,n),h(t.basis1,s.basis1,xs),h(t.basis2,s.basis2,xs),H(t),t}function ms(s){return _(s.plane)}function ds(s,i,n){switch(i){case v.X:e(n,s.basis1),j(n,n);break;case v.Y:e(n,s.basis2),j(n,n);break;case v.Z:e(n,ms(s))}return n}function hs(s,i){const n=m(C.get(),i,s.origin),t=I(s.basis1),o=I(s.basis2),r=l(s.basis1,n),a=l(s.basis2,n);return-r-t<0&&r-t<0&&-a-o<0&&a-o<0}function js(s,i){const n=ws.get();return e(n.origin,s.origin),e(n.vector,i),n}function Is(s,i,n){const{basis1:t,basis2:o,origin:r}=s,a=c(C.get(),t,i.origin[0]),e=c(C.get(),o,i.origin[1]);u(n.origin,a,e),u(n.origin,n.origin,r);const g=c(C.get(),t,i.direction[0]),b=c(C.get(),o,i.direction[1]);return c(n.vector,u(g,g,b),2),n}function ys(s,i){Math.abs(l(s.basis1,s.basis2)/(f(s.basis1)*f(s.basis2)))>1e-6&&L.warn(i,"Provided basis vectors are not perpendicular"),Math.abs(l(s.basis1,ms(s)))>1e-6&&L.warn(i,"Basis vectors and plane normal are not perpendicular"),Math.abs(-l(ms(s),s.origin)-s.plane[3])>1e-6&&L.warn(i,"Plane offset is not consistent with plane origin")}function Ps(s,i,n,t){const o=ms(s);V(o,i.direction,i.origin,n),V(_(n),o,i.origin,t)}const Ns={plane:S(),origin:y(0,0,0),basis1:y(1,0,0),basis2:y(0,1,0)},vs=new n(S),ws=new n(w),Ms=N(),As=new n((()=>({origin:null,basis1:null,basis2:null,plane:null}))),Ss=[{origin:[-1,-1],direction:[1,0]},{origin:[1,-1],direction:[0,1]},{origin:[1,1],direction:[-1,0]},{origin:[-1,1],direction:[0,-1]}],Ts=a(),xs=a(),Vs=Object.freeze({__proto__:null,BoundedPlaneClass:z,create:G,wrap:W,copy:X,copyWithoutVerify:Z,fromValues:D,updateUnboundedPlane:H,elevate:J,setExtent:K,fromAABoundingRect:Q,intersectRay:$,intersectRayClosestSilhouette:ss,closestPointOnSilhouette:is,closestPoint:ns,projectPoint:ts,projectPointLocal:os,distance2:rs,distance:as,distanceToSilhouette:es,extrusionContainsPoint:cs,axisAt:us,altitudeAt:gs,setAltitudeAt:bs,equals:fs,transform:ps,rotate:ls,normal:ms,UP:Ns});export{fs as A,z as B,Ns as U,X as a,Vs as b,G as c,Z as d,cs as e,D as f,as as g,Q as h,$ as i,J as j,ss as k,is as l,ns as m,ms as n,os as o,ts as p,rs as q,ls as r,K as s,ps as t,H as u,es as v,W as w,us as x,gs as y,bs as z};
5
+ import"../core/has.js";import s from"../core/Logger.js";import{acosClamped as i}from"../core/mathUtils.js";import{ObjectStack as n}from"../core/ObjectStack.js";import{a as t,t as o,d as r}from"./mat4.js";import{c as a}from"./mat4f64.js";import{g as e,a as c,b as u,s as g,i as b,l as f,r as p,d as l,f as m,k as d,m as h,n as j,p as I}from"./vec3.js";import{f as y,a as P,c as N}from"./vec3f64.js";import{Axis as v}from"../geometry/support/Axis.js";import{create as w,projectPointClamp as M,distance2 as A}from"../geometry/support/lineSegment.js";import{create as S,wrap as T,copy as x,fromVectorsAndPoint as V,normal as _,fromValues as k,intersectRay as E,intersectLineSegment as O,intersectLineSegmentClamp as U,isPointInside as Y,projectPoint as q,setOffsetFromPoint as B}from"../geometry/support/plane.js";import{distance2 as F}from"../geometry/support/ray.js";import{projectPointSignedLength as R}from"../geometry/support/vector.js";import{sv3d as C}from"../geometry/support/vectorStacks.js";const L=s.getLogger("esri.views.3d.support.geometryUtils.boundedPlane");class z{constructor(){this.plane=S(),this.origin=N(),this.basis1=N(),this.basis2=N()}}function G(s=Ns){return{plane:S(s.plane),origin:P(s.origin),basis1:P(s.basis1),basis2:P(s.basis2)}}function W(s,i,n){const t=As.get();return t.origin=s,t.basis1=i,t.basis2=n,t.plane=T(0,0,0,0),H(t),t}function X(s,i=G()){return D(s.origin,s.basis1,s.basis2,i)}function Z(s,i){e(i.origin,s.origin),e(i.basis1,s.basis1),e(i.basis2,s.basis2),x(i.plane,s.plane)}function D(s,i,n,t=G()){return e(t.origin,s),e(t.basis1,i),e(t.basis2,n),H(t),ys(t,"fromValues()"),t}function H(s){V(s.basis2,s.basis1,s.origin,s.plane)}function J(s,i,n){s!==n&&X(s,n);const t=c(C.get(),ms(s),i);return u(n.origin,n.origin,t),n.plane[3]-=i,n}function K(s,i,n){return Q(i,n),J(n,gs(s,s.origin),n),n}function Q(s,i=G()){const n=(s[2]-s[0])/2,t=(s[3]-s[1])/2;return g(i.origin,s[0]+n,s[1]+t,0),g(i.basis1,n,0,0),g(i.basis2,0,t,0),k(0,0,1,0,i.plane),i}function $(s,i,n){return!!E(s.plane,i,n)&&hs(s,n)}function ss(s,i,n){if($(s,i,n))return n;const t=is(s,i,C.get());return u(n,i.origin,c(C.get(),i.direction,b(i.origin,t)/f(i.direction))),n}function is(s,n,t){const o=vs.get();Ps(s,n,o,vs.get());let r=Number.POSITIVE_INFINITY;for(const a of Ss){const c=Is(s,a,ws.get()),u=C.get();if(O(o,c,u)){const s=p(C.get(),n.origin,u),o=Math.abs(i(l(n.direction,s)));o<r&&(r=o,e(t,u))}}return r===Number.POSITIVE_INFINITY?ns(s,n,t):t}function ns(s,i,n){if($(s,i,n))return n;const t=vs.get(),o=vs.get();Ps(s,i,t,o);let r=Number.POSITIVE_INFINITY;for(const a of Ss){const c=Is(s,a,ws.get()),u=C.get();if(U(t,c,u)){const s=F(i,u);if(!Y(o,u))continue;s<r&&(r=s,e(n,u))}}return rs(s,i.origin)<r&&ts(s,i.origin,n),n}function ts(s,i,n){const t=q(s.plane,i,C.get()),o=M(js(s,s.basis1),t,-1,1,C.get()),r=M(js(s,s.basis2),t,-1,1,C.get());return m(n,u(C.get(),o,r),s.origin),n}function os(s,i,n){const{origin:t,basis1:o,basis2:r}=s,a=m(C.get(),i,t),e=R(o,a),c=R(r,a),u=R(ms(s),a);return g(n,e,c,u)}function rs(s,i){const n=os(s,i,C.get()),{basis1:t,basis2:o}=s,r=f(t),a=f(o),e=Math.max(Math.abs(n[0])-r,0),c=Math.max(Math.abs(n[1])-a,0),u=n[2];return e*e+c*c+u*u}function as(s,i){return Math.sqrt(rs(s,i))}function es(s,i){let n=Number.NEGATIVE_INFINITY;for(const t of Ss){const o=Is(s,t,ws.get()),r=A(o,i);r>n&&(n=r)}return Math.sqrt(n)}function cs(s,i){return Y(s.plane,i)&&hs(s,i)}function us(s,i,n,t){return ds(s,n,t)}function gs(s,i){const n=-s.plane[3];return R(ms(s),i)-n}function bs(s,i,n,t){const o=gs(s,i),r=c(Ms,ms(s),n-o);return u(t,i,r),t}function fs(s,i){return d(s.basis1,i.basis1)&&d(s.basis2,i.basis2)&&d(s.origin,i.origin)}function ps(s,i,n){return s!==n&&X(s,n),t(Ts,i),o(Ts,Ts),h(n.basis1,s.basis1,Ts),h(n.basis2,s.basis2,Ts),h(_(n.plane),_(s.plane),Ts),h(n.origin,s.origin,i),B(n.plane,n.plane,n.origin),n}function ls(s,i,n,t){return s!==t&&X(s,t),r(xs,i,n),h(t.basis1,s.basis1,xs),h(t.basis2,s.basis2,xs),H(t),t}function ms(s){return _(s.plane)}function ds(s,i,n){switch(i){case v.X:e(n,s.basis1),j(n,n);break;case v.Y:e(n,s.basis2),j(n,n);break;case v.Z:e(n,ms(s))}return n}function hs(s,i){const n=m(C.get(),i,s.origin),t=I(s.basis1),o=I(s.basis2),r=l(s.basis1,n),a=l(s.basis2,n);return-r-t<0&&r-t<0&&-a-o<0&&a-o<0}function js(s,i){const n=ws.get();return e(n.origin,s.origin),e(n.vector,i),n}function Is(s,i,n){const{basis1:t,basis2:o,origin:r}=s,a=c(C.get(),t,i.origin[0]),e=c(C.get(),o,i.origin[1]);u(n.origin,a,e),u(n.origin,n.origin,r);const g=c(C.get(),t,i.direction[0]),b=c(C.get(),o,i.direction[1]);return c(n.vector,u(g,g,b),2),n}function ys(s,i){Math.abs(l(s.basis1,s.basis2)/(f(s.basis1)*f(s.basis2)))>1e-6&&L.warn(i,"Provided basis vectors are not perpendicular"),Math.abs(l(s.basis1,ms(s)))>1e-6&&L.warn(i,"Basis vectors and plane normal are not perpendicular"),Math.abs(-l(ms(s),s.origin)-s.plane[3])>1e-6&&L.warn(i,"Plane offset is not consistent with plane origin")}function Ps(s,i,n,t){const o=ms(s);V(o,i.direction,i.origin,n),V(_(n),o,i.origin,t)}const Ns={plane:S(),origin:y(0,0,0),basis1:y(1,0,0),basis2:y(0,1,0)},vs=new n(S),ws=new n(w),Ms=N(),As=new n((()=>({origin:null,basis1:null,basis2:null,plane:null}))),Ss=[{origin:[-1,-1],direction:[1,0]},{origin:[1,-1],direction:[0,1]},{origin:[1,1],direction:[-1,0]},{origin:[-1,1],direction:[0,-1]}],Ts=a(),xs=a(),Vs=Object.freeze({__proto__:null,BoundedPlaneClass:z,create:G,wrap:W,copy:X,copyWithoutVerify:Z,fromValues:D,updateUnboundedPlane:H,elevate:J,setExtent:K,fromAABoundingRect:Q,intersectRay:$,intersectRayClosestSilhouette:ss,closestPointOnSilhouette:is,closestPoint:ns,projectPoint:ts,projectPointLocal:os,distance2:rs,distance:as,distanceToSilhouette:es,extrusionContainsPoint:cs,axisAt:us,altitudeAt:gs,setAltitudeAt:bs,equals:fs,transform:ps,rotate:ls,normal:ms,UP:Ns});export{fs as A,z as B,Ns as U,X as a,Vs as b,G as c,Z as d,cs as e,D as f,as as g,Q as h,$ as i,J as j,ss as k,is as l,ns as m,ms as n,os as o,ts as p,rs as q,ls as r,K as s,ps as t,H as u,es as v,W as w,us as x,gs as y,bs as z};