deeptwins-cesium-engine 0.0.3

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 (2085) hide show
  1. package/Build/ThirdParty/Workers/zip-web-worker.js +640 -0
  2. package/Build/Workers/chunk-2363JE27.js +163 -0
  3. package/Build/Workers/chunk-23T2IPHV.js +55 -0
  4. package/Build/Workers/chunk-27SAH2Q2.js +55 -0
  5. package/Build/Workers/chunk-2AM4E2WD.js +101 -0
  6. package/Build/Workers/chunk-2H4D4HBM.js +101 -0
  7. package/Build/Workers/chunk-2KBLMCYQ.js +198 -0
  8. package/Build/Workers/chunk-2MWF4IES.js +398 -0
  9. package/Build/Workers/chunk-2O7PRNCW.js +288 -0
  10. package/Build/Workers/chunk-2RCIRXNI.js +75 -0
  11. package/Build/Workers/chunk-3JIEAYRM.js +940 -0
  12. package/Build/Workers/chunk-3VNQVXD6.js +837 -0
  13. package/Build/Workers/chunk-3XR54LVR.js +75 -0
  14. package/Build/Workers/chunk-3YTMGEXW.js +1443 -0
  15. package/Build/Workers/chunk-3ZP3VA4L.js +171 -0
  16. package/Build/Workers/chunk-4AKOLNCZ.js +139 -0
  17. package/Build/Workers/chunk-4BHWJWS3.js +171 -0
  18. package/Build/Workers/chunk-4QSCEADX.js +1800 -0
  19. package/Build/Workers/chunk-4ZKQXB7T.js +1460 -0
  20. package/Build/Workers/chunk-4ZX6BO6C.js +476 -0
  21. package/Build/Workers/chunk-55NHNEI7.js +163 -0
  22. package/Build/Workers/chunk-5F3SUA6W.js +8366 -0
  23. package/Build/Workers/chunk-5FBLADWD.js +692 -0
  24. package/Build/Workers/chunk-5H7FXJTE.js +2719 -0
  25. package/Build/Workers/chunk-5JKH4AMT.js +58 -0
  26. package/Build/Workers/chunk-5MTUN2SE.js +642 -0
  27. package/Build/Workers/chunk-5PWCXSID.js +256 -0
  28. package/Build/Workers/chunk-5RL7XAZS.js +256 -0
  29. package/Build/Workers/chunk-5TZVQOFD.js +305 -0
  30. package/Build/Workers/chunk-67FTKXPJ.js +352 -0
  31. package/Build/Workers/chunk-6AIBN5NQ.js +1054 -0
  32. package/Build/Workers/chunk-6D6BOTSA.js +414 -0
  33. package/Build/Workers/chunk-6FGAWC5J.js +44 -0
  34. package/Build/Workers/chunk-6HKAPCSO.js +280 -0
  35. package/Build/Workers/chunk-6UJDVUJ4.js +8366 -0
  36. package/Build/Workers/chunk-73Q77JO7.js +138 -0
  37. package/Build/Workers/chunk-7A6QUBKY.js +58 -0
  38. package/Build/Workers/chunk-7APZZMCL.js +73 -0
  39. package/Build/Workers/chunk-7BHC3VOI.js +511 -0
  40. package/Build/Workers/chunk-7GQHESFY.js +368 -0
  41. package/Build/Workers/chunk-7MVC3OLP.js +58 -0
  42. package/Build/Workers/chunk-7UNMLR74.js +1800 -0
  43. package/Build/Workers/chunk-A2QTGP5S.js +55 -0
  44. package/Build/Workers/chunk-A3FZIBXG.js +55 -0
  45. package/Build/Workers/chunk-A53R2F2L.js +305 -0
  46. package/Build/Workers/chunk-A6LIUE7X.js +692 -0
  47. package/Build/Workers/chunk-A6YFUGJO.js +139 -0
  48. package/Build/Workers/chunk-AJYWXC6I.js +97 -0
  49. package/Build/Workers/chunk-ALTIGQTT.js +288 -0
  50. package/Build/Workers/chunk-AOIO5VUS.js +8366 -0
  51. package/Build/Workers/chunk-AT2CG6PG.js +3514 -0
  52. package/Build/Workers/chunk-ATX74V7S.js +55 -0
  53. package/Build/Workers/chunk-AZPXT6RB.js +1067 -0
  54. package/Build/Workers/chunk-B7JRBTT6.js +682 -0
  55. package/Build/Workers/chunk-BALMTCKJ.js +138 -0
  56. package/Build/Workers/chunk-BBYRID6W.js +352 -0
  57. package/Build/Workers/chunk-BDX4AYXL.js +162 -0
  58. package/Build/Workers/chunk-BG2DK4Q5.js +101 -0
  59. package/Build/Workers/chunk-BSNC3NBZ.js +139 -0
  60. package/Build/Workers/chunk-BZLYQCIC.js +958 -0
  61. package/Build/Workers/chunk-C4NX77B5.js +57 -0
  62. package/Build/Workers/chunk-CHNDJRYA.js +1054 -0
  63. package/Build/Workers/chunk-CJOV55CW.js +1067 -0
  64. package/Build/Workers/chunk-COGPE5Z2.js +241 -0
  65. package/Build/Workers/chunk-CRCK5VX6.js +497 -0
  66. package/Build/Workers/chunk-CTLQNSVP.js +455 -0
  67. package/Build/Workers/chunk-CW7W27IZ.js +299 -0
  68. package/Build/Workers/chunk-DICY26ID.js +2719 -0
  69. package/Build/Workers/chunk-DLAVWLZW.js +682 -0
  70. package/Build/Workers/chunk-DMEFNTUV.js +1317 -0
  71. package/Build/Workers/chunk-DQSJEOZY.js +55 -0
  72. package/Build/Workers/chunk-F6UXXCPK.js +3514 -0
  73. package/Build/Workers/chunk-FKIR6F3B.js +97 -0
  74. package/Build/Workers/chunk-FRBZJJVU.js +2719 -0
  75. package/Build/Workers/chunk-FRLH26PM.js +940 -0
  76. package/Build/Workers/chunk-FT6HYEKU.js +3514 -0
  77. package/Build/Workers/chunk-FYDCQ2VN.js +73 -0
  78. package/Build/Workers/chunk-G5OKIL5P.js +55 -0
  79. package/Build/Workers/chunk-G6VHLVWG.js +101 -0
  80. package/Build/Workers/chunk-GBGV4U6Z.js +219 -0
  81. package/Build/Workers/chunk-GDU4RZSZ.js +940 -0
  82. package/Build/Workers/chunk-GJRVCSXV.js +37 -0
  83. package/Build/Workers/chunk-GKWOUMYA.js +37 -0
  84. package/Build/Workers/chunk-GNDFFW5Z.js +1443 -0
  85. package/Build/Workers/chunk-GNQ5BH75.js +352 -0
  86. package/Build/Workers/chunk-GNQUZV4R.js +171 -0
  87. package/Build/Workers/chunk-GOCJHCLA.js +352 -0
  88. package/Build/Workers/chunk-GTY4K4IA.js +219 -0
  89. package/Build/Workers/chunk-GXBTJBHN.js +102 -0
  90. package/Build/Workers/chunk-H6Q7E4BQ.js +114 -0
  91. package/Build/Workers/chunk-HEGESGGY.js +219 -0
  92. package/Build/Workers/chunk-HG3HIMYL.js +241 -0
  93. package/Build/Workers/chunk-HGEYVFMI.js +1800 -0
  94. package/Build/Workers/chunk-HHGOFZVQ.js +124 -0
  95. package/Build/Workers/chunk-HXEVICMT.js +37 -0
  96. package/Build/Workers/chunk-HXKUEOOD.js +352 -0
  97. package/Build/Workers/chunk-I4REFVXB.js +256 -0
  98. package/Build/Workers/chunk-IL5F6WEE.js +497 -0
  99. package/Build/Workers/chunk-IOODZNYE.js +629 -0
  100. package/Build/Workers/chunk-IVLDVV5R.js +788 -0
  101. package/Build/Workers/chunk-IWP4XCPO.js +778 -0
  102. package/Build/Workers/chunk-JBTUZNI2.js +398 -0
  103. package/Build/Workers/chunk-JMSXZ6AI.js +414 -0
  104. package/Build/Workers/chunk-JTGVXCP2.js +2058 -0
  105. package/Build/Workers/chunk-JUK2ZSWT.js +198 -0
  106. package/Build/Workers/chunk-K6HQ5W6R.js +171 -0
  107. package/Build/Workers/chunk-KC3G7WHZ.js +57 -0
  108. package/Build/Workers/chunk-KGPKBCGY.js +97 -0
  109. package/Build/Workers/chunk-KKGD7HAW.js +414 -0
  110. package/Build/Workers/chunk-KQSN3QZM.js +368 -0
  111. package/Build/Workers/chunk-KROSQJUA.js +44 -0
  112. package/Build/Workers/chunk-L4JLDVCM.js +57 -0
  113. package/Build/Workers/chunk-LAOFDSKL.js +642 -0
  114. package/Build/Workers/chunk-LIYMRHGR.js +387 -0
  115. package/Build/Workers/chunk-LKCCQ3AW.js +198 -0
  116. package/Build/Workers/chunk-LLQFSX7U.js +139 -0
  117. package/Build/Workers/chunk-LSDXP6EX.js +75 -0
  118. package/Build/Workers/chunk-LTYK7VYQ.js +138 -0
  119. package/Build/Workers/chunk-LYMP3LWI.js +387 -0
  120. package/Build/Workers/chunk-M2WCZSU6.js +241 -0
  121. package/Build/Workers/chunk-M35VLUHY.js +352 -0
  122. package/Build/Workers/chunk-MAPGTIYK.js +2058 -0
  123. package/Build/Workers/chunk-MG6SYM3V.js +455 -0
  124. package/Build/Workers/chunk-MKMZHRB3.js +788 -0
  125. package/Build/Workers/chunk-MNR7L6SQ.js +1483 -0
  126. package/Build/Workers/chunk-MO25ZQ2I.js +958 -0
  127. package/Build/Workers/chunk-MOCL5YUJ.js +8366 -0
  128. package/Build/Workers/chunk-MRYY6ETH.js +280 -0
  129. package/Build/Workers/chunk-NAIA5L2S.js +682 -0
  130. package/Build/Workers/chunk-NMDV3OGH.js +958 -0
  131. package/Build/Workers/chunk-NYE77VTA.js +1054 -0
  132. package/Build/Workers/chunk-O6RZEKHZ.js +778 -0
  133. package/Build/Workers/chunk-OFOJ5HD6.js +1460 -0
  134. package/Build/Workers/chunk-OJNNQSZI.js +788 -0
  135. package/Build/Workers/chunk-OJXQBSG4.js +692 -0
  136. package/Build/Workers/chunk-OOCGX2OD.js +102 -0
  137. package/Build/Workers/chunk-OOY3DP7Z.js +788 -0
  138. package/Build/Workers/chunk-OSDDHXLU.js +1483 -0
  139. package/Build/Workers/chunk-OVZNLF46.js +241 -0
  140. package/Build/Workers/chunk-OXFU5HNU.js +162 -0
  141. package/Build/Workers/chunk-P5CGIJUY.js +73 -0
  142. package/Build/Workers/chunk-POLLOX2O.js +352 -0
  143. package/Build/Workers/chunk-POUR54ZW.js +37 -0
  144. package/Build/Workers/chunk-PR6F33M6.js +682 -0
  145. package/Build/Workers/chunk-Q6GCDF2J.js +44 -0
  146. package/Build/Workers/chunk-Q7HIBRGE.js +97 -0
  147. package/Build/Workers/chunk-QCJPQ5CQ.js +57 -0
  148. package/Build/Workers/chunk-QDKQNKG3.js +256 -0
  149. package/Build/Workers/chunk-QDTDTLQY.js +1067 -0
  150. package/Build/Workers/chunk-QEANVUGT.js +163 -0
  151. package/Build/Workers/chunk-QFBCIX7J.js +455 -0
  152. package/Build/Workers/chunk-QIKGPNLN.js +299 -0
  153. package/Build/Workers/chunk-QTKDUHWH.js +497 -0
  154. package/Build/Workers/chunk-QUAH3XOT.js +138 -0
  155. package/Build/Workers/chunk-R4MI537H.js +1443 -0
  156. package/Build/Workers/chunk-R5GL5C3T.js +1483 -0
  157. package/Build/Workers/chunk-RBAGNNPN.js +219 -0
  158. package/Build/Workers/chunk-RH6GMTSG.js +497 -0
  159. package/Build/Workers/chunk-RHJJWKSH.js +73 -0
  160. package/Build/Workers/chunk-RHV6AHJW.js +305 -0
  161. package/Build/Workers/chunk-RUZPDKUX.js +114 -0
  162. package/Build/Workers/chunk-RXZDTDIY.js +439 -0
  163. package/Build/Workers/chunk-SCSEVBY4.js +102 -0
  164. package/Build/Workers/chunk-SKMYTWWS.js +299 -0
  165. package/Build/Workers/chunk-SKVAQOZZ.js +1443 -0
  166. package/Build/Workers/chunk-SPA2KPH3.js +368 -0
  167. package/Build/Workers/chunk-STDNU6SV.js +1460 -0
  168. package/Build/Workers/chunk-SXOBEELD.js +55 -0
  169. package/Build/Workers/chunk-SYDXDJY5.js +2058 -0
  170. package/Build/Workers/chunk-SZ4ALZDU.js +305 -0
  171. package/Build/Workers/chunk-T2AGEECA.js +387 -0
  172. package/Build/Workers/chunk-T5ZG4SFF.js +1067 -0
  173. package/Build/Workers/chunk-TDSVSW5A.js +1460 -0
  174. package/Build/Workers/chunk-TJF36YYN.js +837 -0
  175. package/Build/Workers/chunk-TNZHNGKK.js +439 -0
  176. package/Build/Workers/chunk-TTWIV2BN.js +102 -0
  177. package/Build/Workers/chunk-TX3TQPIA.js +44 -0
  178. package/Build/Workers/chunk-TYPTCQPI.js +1317 -0
  179. package/Build/Workers/chunk-TZA4ZWFC.js +75 -0
  180. package/Build/Workers/chunk-UFDTAQBE.js +476 -0
  181. package/Build/Workers/chunk-UG2DPFOL.js +352 -0
  182. package/Build/Workers/chunk-UG3AH5C3.js +629 -0
  183. package/Build/Workers/chunk-UPPGWBJU.js +511 -0
  184. package/Build/Workers/chunk-URGEDZBS.js +476 -0
  185. package/Build/Workers/chunk-V35NQOJC.js +642 -0
  186. package/Build/Workers/chunk-VDNDTTCD.js +958 -0
  187. package/Build/Workers/chunk-VQIKTYAO.js +368 -0
  188. package/Build/Workers/chunk-VRXHACYU.js +476 -0
  189. package/Build/Workers/chunk-VTYZVS6I.js +455 -0
  190. package/Build/Workers/chunk-VVNCCJGH.js +398 -0
  191. package/Build/Workers/chunk-W4V3BNFU.js +114 -0
  192. package/Build/Workers/chunk-W4XUEDU5.js +2058 -0
  193. package/Build/Workers/chunk-W7UYJE5O.js +2719 -0
  194. package/Build/Workers/chunk-WB4TSSBQ.js +3514 -0
  195. package/Build/Workers/chunk-WGZVYW2C.js +124 -0
  196. package/Build/Workers/chunk-WNFIOIKE.js +414 -0
  197. package/Build/Workers/chunk-WNHOCO2K.js +280 -0
  198. package/Build/Workers/chunk-WQG2W2WD.js +837 -0
  199. package/Build/Workers/chunk-WTLYD4FE.js +1483 -0
  200. package/Build/Workers/chunk-WV2G6UNC.js +940 -0
  201. package/Build/Workers/chunk-WVC3OW5V.js +629 -0
  202. package/Build/Workers/chunk-WWQFFOV6.js +299 -0
  203. package/Build/Workers/chunk-XD7QHRAY.js +288 -0
  204. package/Build/Workers/chunk-XH6GW5M4.js +58 -0
  205. package/Build/Workers/chunk-XIX2VR7Z.js +778 -0
  206. package/Build/Workers/chunk-XJYSONL4.js +1054 -0
  207. package/Build/Workers/chunk-XP6ASNFM.js +1317 -0
  208. package/Build/Workers/chunk-XRDMBCX3.js +439 -0
  209. package/Build/Workers/chunk-XUA6BCV5.js +642 -0
  210. package/Build/Workers/chunk-XVBMYEYQ.js +124 -0
  211. package/Build/Workers/chunk-XWOAVRWZ.js +124 -0
  212. package/Build/Workers/chunk-Y4ALZ4SS.js +198 -0
  213. package/Build/Workers/chunk-Y4GOZA56.js +163 -0
  214. package/Build/Workers/chunk-YF2NVO5B.js +837 -0
  215. package/Build/Workers/chunk-YGVXG7IR.js +114 -0
  216. package/Build/Workers/chunk-YI7RTZGC.js +280 -0
  217. package/Build/Workers/chunk-YM4UTBTX.js +1800 -0
  218. package/Build/Workers/chunk-YP5ZF2MJ.js +162 -0
  219. package/Build/Workers/chunk-YSSL4KKM.js +387 -0
  220. package/Build/Workers/chunk-YSYSXSHF.js +629 -0
  221. package/Build/Workers/chunk-YX562XOB.js +692 -0
  222. package/Build/Workers/chunk-YZWA5B4R.js +511 -0
  223. package/Build/Workers/chunk-Z6DFT4D3.js +288 -0
  224. package/Build/Workers/chunk-Z6PVZUIE.js +398 -0
  225. package/Build/Workers/chunk-ZAI6LCSI.js +511 -0
  226. package/Build/Workers/chunk-ZBIINVUF.js +778 -0
  227. package/Build/Workers/chunk-ZG3TBDRX.js +1317 -0
  228. package/Build/Workers/chunk-ZGXHZJ75.js +439 -0
  229. package/Build/Workers/chunk-ZWDOE2JF.js +162 -0
  230. package/Build/Workers/combineGeometry.js +66 -0
  231. package/Build/Workers/createBoxGeometry.js +58 -0
  232. package/Build/Workers/createBoxOutlineGeometry.js +231 -0
  233. package/Build/Workers/createCircleGeometry.js +201 -0
  234. package/Build/Workers/createCircleOutlineGeometry.js +147 -0
  235. package/Build/Workers/createCoplanarPolygonGeometry.js +505 -0
  236. package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +225 -0
  237. package/Build/Workers/createCorridorGeometry.js +1258 -0
  238. package/Build/Workers/createCorridorOutlineGeometry.js +563 -0
  239. package/Build/Workers/createCylinderGeometry.js +60 -0
  240. package/Build/Workers/createCylinderOutlineGeometry.js +231 -0
  241. package/Build/Workers/createEllipseGeometry.js +72 -0
  242. package/Build/Workers/createEllipseOutlineGeometry.js +65 -0
  243. package/Build/Workers/createEllipsoidGeometry.js +59 -0
  244. package/Build/Workers/createEllipsoidOutlineGeometry.js +61 -0
  245. package/Build/Workers/createFrustumGeometry.js +58 -0
  246. package/Build/Workers/createFrustumOutlineGeometry.js +234 -0
  247. package/Build/Workers/createGeometry.js +173 -0
  248. package/Build/Workers/createGroundPolylineGeometry.js +1602 -0
  249. package/Build/Workers/createPlaneGeometry.js +223 -0
  250. package/Build/Workers/createPlaneOutlineGeometry.js +124 -0
  251. package/Build/Workers/createPolygonGeometry.js +1404 -0
  252. package/Build/Workers/createPolygonOutlineGeometry.js +532 -0
  253. package/Build/Workers/createPolylineGeometry.js +491 -0
  254. package/Build/Workers/createPolylineVolumeGeometry.js +374 -0
  255. package/Build/Workers/createPolylineVolumeOutlineGeometry.js +272 -0
  256. package/Build/Workers/createRectangleGeometry.js +1264 -0
  257. package/Build/Workers/createRectangleOutlineGeometry.js +476 -0
  258. package/Build/Workers/createSimplePolylineGeometry.js +397 -0
  259. package/Build/Workers/createSphereGeometry.js +116 -0
  260. package/Build/Workers/createSphereOutlineGeometry.js +116 -0
  261. package/Build/Workers/createTaskProcessorWorker.js +32 -0
  262. package/Build/Workers/createVectorTileClampedPolylines.js +492 -0
  263. package/Build/Workers/createVectorTileGeometries.js +387 -0
  264. package/Build/Workers/createVectorTilePoints.js +114 -0
  265. package/Build/Workers/createVectorTilePolygons.js +386 -0
  266. package/Build/Workers/createVectorTilePolylines.js +262 -0
  267. package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +91 -0
  268. package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +565 -0
  269. package/Build/Workers/createVerticesFromHeightmap.js +2254 -0
  270. package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +499 -0
  271. package/Build/Workers/createWallGeometry.js +487 -0
  272. package/Build/Workers/createWallOutlineGeometry.js +335 -0
  273. package/Build/Workers/decodeDraco.js +369 -0
  274. package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +2666 -0
  275. package/Build/Workers/decodeI3S.js +1339 -0
  276. package/Build/Workers/gaussianSplatSorter.js +62 -0
  277. package/Build/Workers/gaussianSplatTextureGenerator.js +68 -0
  278. package/Build/Workers/incrementallyBuildTerrainPicker.js +121 -0
  279. package/Build/Workers/transcodeKTX2.js +3463 -0
  280. package/Build/Workers/transferTypedArrayTest.js +41 -0
  281. package/Build/Workers/upsampleQuantizedTerrainMesh.js +820 -0
  282. package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +95 -0
  283. package/LICENSE.md +928 -0
  284. package/README.md +3 -0
  285. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_0.json +1 -0
  286. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_1.json +1 -0
  287. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_10.json +1 -0
  288. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_11.json +1 -0
  289. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_12.json +1 -0
  290. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_13.json +1 -0
  291. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_14.json +1 -0
  292. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_15.json +1 -0
  293. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_16.json +1 -0
  294. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_17.json +1 -0
  295. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_18.json +1 -0
  296. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_19.json +1 -0
  297. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_2.json +1 -0
  298. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_20.json +1 -0
  299. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_21.json +1 -0
  300. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_22.json +1 -0
  301. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_23.json +1 -0
  302. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_24.json +1 -0
  303. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_25.json +1 -0
  304. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_26.json +1 -0
  305. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_27.json +1 -0
  306. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_3.json +1 -0
  307. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_4.json +1 -0
  308. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_5.json +1 -0
  309. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_6.json +1 -0
  310. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_7.json +1 -0
  311. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_8.json +1 -0
  312. package/Source/Assets/IAU2006_XYS/IAU2006_XYS_9.json +1 -0
  313. package/Source/Assets/Images/bing_maps_credit.png +0 -0
  314. package/Source/Assets/Images/cesium_credit.png +0 -0
  315. package/Source/Assets/Images/google_earth_credit.png +0 -0
  316. package/Source/Assets/Images/ion-credit.png +0 -0
  317. package/Source/Assets/Textures/LensFlare/DirtMask.jpg +0 -0
  318. package/Source/Assets/Textures/LensFlare/StarBurst.jpg +0 -0
  319. package/Source/Assets/Textures/NaturalEarthII/0/0/0.jpg +0 -0
  320. package/Source/Assets/Textures/NaturalEarthII/0/1/0.jpg +0 -0
  321. package/Source/Assets/Textures/NaturalEarthII/1/0/0.jpg +0 -0
  322. package/Source/Assets/Textures/NaturalEarthII/1/0/1.jpg +0 -0
  323. package/Source/Assets/Textures/NaturalEarthII/1/1/0.jpg +0 -0
  324. package/Source/Assets/Textures/NaturalEarthII/1/1/1.jpg +0 -0
  325. package/Source/Assets/Textures/NaturalEarthII/1/2/0.jpg +0 -0
  326. package/Source/Assets/Textures/NaturalEarthII/1/2/1.jpg +0 -0
  327. package/Source/Assets/Textures/NaturalEarthII/1/3/0.jpg +0 -0
  328. package/Source/Assets/Textures/NaturalEarthII/1/3/1.jpg +0 -0
  329. package/Source/Assets/Textures/NaturalEarthII/2/0/0.jpg +0 -0
  330. package/Source/Assets/Textures/NaturalEarthII/2/0/1.jpg +0 -0
  331. package/Source/Assets/Textures/NaturalEarthII/2/0/2.jpg +0 -0
  332. package/Source/Assets/Textures/NaturalEarthII/2/0/3.jpg +0 -0
  333. package/Source/Assets/Textures/NaturalEarthII/2/1/0.jpg +0 -0
  334. package/Source/Assets/Textures/NaturalEarthII/2/1/1.jpg +0 -0
  335. package/Source/Assets/Textures/NaturalEarthII/2/1/2.jpg +0 -0
  336. package/Source/Assets/Textures/NaturalEarthII/2/1/3.jpg +0 -0
  337. package/Source/Assets/Textures/NaturalEarthII/2/2/0.jpg +0 -0
  338. package/Source/Assets/Textures/NaturalEarthII/2/2/1.jpg +0 -0
  339. package/Source/Assets/Textures/NaturalEarthII/2/2/2.jpg +0 -0
  340. package/Source/Assets/Textures/NaturalEarthII/2/2/3.jpg +0 -0
  341. package/Source/Assets/Textures/NaturalEarthII/2/3/0.jpg +0 -0
  342. package/Source/Assets/Textures/NaturalEarthII/2/3/1.jpg +0 -0
  343. package/Source/Assets/Textures/NaturalEarthII/2/3/2.jpg +0 -0
  344. package/Source/Assets/Textures/NaturalEarthII/2/3/3.jpg +0 -0
  345. package/Source/Assets/Textures/NaturalEarthII/2/4/0.jpg +0 -0
  346. package/Source/Assets/Textures/NaturalEarthII/2/4/1.jpg +0 -0
  347. package/Source/Assets/Textures/NaturalEarthII/2/4/2.jpg +0 -0
  348. package/Source/Assets/Textures/NaturalEarthII/2/4/3.jpg +0 -0
  349. package/Source/Assets/Textures/NaturalEarthII/2/5/0.jpg +0 -0
  350. package/Source/Assets/Textures/NaturalEarthII/2/5/1.jpg +0 -0
  351. package/Source/Assets/Textures/NaturalEarthII/2/5/2.jpg +0 -0
  352. package/Source/Assets/Textures/NaturalEarthII/2/5/3.jpg +0 -0
  353. package/Source/Assets/Textures/NaturalEarthII/2/6/0.jpg +0 -0
  354. package/Source/Assets/Textures/NaturalEarthII/2/6/1.jpg +0 -0
  355. package/Source/Assets/Textures/NaturalEarthII/2/6/2.jpg +0 -0
  356. package/Source/Assets/Textures/NaturalEarthII/2/6/3.jpg +0 -0
  357. package/Source/Assets/Textures/NaturalEarthII/2/7/0.jpg +0 -0
  358. package/Source/Assets/Textures/NaturalEarthII/2/7/1.jpg +0 -0
  359. package/Source/Assets/Textures/NaturalEarthII/2/7/2.jpg +0 -0
  360. package/Source/Assets/Textures/NaturalEarthII/2/7/3.jpg +0 -0
  361. package/Source/Assets/Textures/NaturalEarthII/tilemapresource.xml +14 -0
  362. package/Source/Assets/Textures/SkyBox/tycho2t3_80_mx.jpg +0 -0
  363. package/Source/Assets/Textures/SkyBox/tycho2t3_80_my.jpg +0 -0
  364. package/Source/Assets/Textures/SkyBox/tycho2t3_80_mz.jpg +0 -0
  365. package/Source/Assets/Textures/SkyBox/tycho2t3_80_px.jpg +0 -0
  366. package/Source/Assets/Textures/SkyBox/tycho2t3_80_py.jpg +0 -0
  367. package/Source/Assets/Textures/SkyBox/tycho2t3_80_pz.jpg +0 -0
  368. package/Source/Assets/Textures/maki/airfield.png +0 -0
  369. package/Source/Assets/Textures/maki/airport.png +0 -0
  370. package/Source/Assets/Textures/maki/alcohol-shop.png +0 -0
  371. package/Source/Assets/Textures/maki/america-football.png +0 -0
  372. package/Source/Assets/Textures/maki/art-gallery.png +0 -0
  373. package/Source/Assets/Textures/maki/bakery.png +0 -0
  374. package/Source/Assets/Textures/maki/bank.png +0 -0
  375. package/Source/Assets/Textures/maki/bar.png +0 -0
  376. package/Source/Assets/Textures/maki/baseball.png +0 -0
  377. package/Source/Assets/Textures/maki/basketball.png +0 -0
  378. package/Source/Assets/Textures/maki/beer.png +0 -0
  379. package/Source/Assets/Textures/maki/bicycle.png +0 -0
  380. package/Source/Assets/Textures/maki/building.png +0 -0
  381. package/Source/Assets/Textures/maki/bus.png +0 -0
  382. package/Source/Assets/Textures/maki/cafe.png +0 -0
  383. package/Source/Assets/Textures/maki/camera.png +0 -0
  384. package/Source/Assets/Textures/maki/campsite.png +0 -0
  385. package/Source/Assets/Textures/maki/car.png +0 -0
  386. package/Source/Assets/Textures/maki/cemetery.png +0 -0
  387. package/Source/Assets/Textures/maki/cesium.png +0 -0
  388. package/Source/Assets/Textures/maki/chemist.png +0 -0
  389. package/Source/Assets/Textures/maki/cinema.png +0 -0
  390. package/Source/Assets/Textures/maki/circle-stroked.png +0 -0
  391. package/Source/Assets/Textures/maki/circle.png +0 -0
  392. package/Source/Assets/Textures/maki/city.png +0 -0
  393. package/Source/Assets/Textures/maki/clothing-store.png +0 -0
  394. package/Source/Assets/Textures/maki/college.png +0 -0
  395. package/Source/Assets/Textures/maki/commercial.png +0 -0
  396. package/Source/Assets/Textures/maki/cricket.png +0 -0
  397. package/Source/Assets/Textures/maki/cross.png +0 -0
  398. package/Source/Assets/Textures/maki/dam.png +0 -0
  399. package/Source/Assets/Textures/maki/danger.png +0 -0
  400. package/Source/Assets/Textures/maki/disability.png +0 -0
  401. package/Source/Assets/Textures/maki/dog-park.png +0 -0
  402. package/Source/Assets/Textures/maki/embassy.png +0 -0
  403. package/Source/Assets/Textures/maki/emergency-telephone.png +0 -0
  404. package/Source/Assets/Textures/maki/entrance.png +0 -0
  405. package/Source/Assets/Textures/maki/farm.png +0 -0
  406. package/Source/Assets/Textures/maki/fast-food.png +0 -0
  407. package/Source/Assets/Textures/maki/ferry.png +0 -0
  408. package/Source/Assets/Textures/maki/fire-station.png +0 -0
  409. package/Source/Assets/Textures/maki/fuel.png +0 -0
  410. package/Source/Assets/Textures/maki/garden.png +0 -0
  411. package/Source/Assets/Textures/maki/gift.png +0 -0
  412. package/Source/Assets/Textures/maki/golf.png +0 -0
  413. package/Source/Assets/Textures/maki/grocery.png +0 -0
  414. package/Source/Assets/Textures/maki/hairdresser.png +0 -0
  415. package/Source/Assets/Textures/maki/harbor.png +0 -0
  416. package/Source/Assets/Textures/maki/heart.png +0 -0
  417. package/Source/Assets/Textures/maki/heliport.png +0 -0
  418. package/Source/Assets/Textures/maki/hospital.png +0 -0
  419. package/Source/Assets/Textures/maki/ice-cream.png +0 -0
  420. package/Source/Assets/Textures/maki/industrial.png +0 -0
  421. package/Source/Assets/Textures/maki/land-use.png +0 -0
  422. package/Source/Assets/Textures/maki/laundry.png +0 -0
  423. package/Source/Assets/Textures/maki/library.png +0 -0
  424. package/Source/Assets/Textures/maki/lighthouse.png +0 -0
  425. package/Source/Assets/Textures/maki/lodging.png +0 -0
  426. package/Source/Assets/Textures/maki/logging.png +0 -0
  427. package/Source/Assets/Textures/maki/london-underground.png +0 -0
  428. package/Source/Assets/Textures/maki/marker-stroked.png +0 -0
  429. package/Source/Assets/Textures/maki/marker.png +0 -0
  430. package/Source/Assets/Textures/maki/minefield.png +0 -0
  431. package/Source/Assets/Textures/maki/mobilephone.png +0 -0
  432. package/Source/Assets/Textures/maki/monument.png +0 -0
  433. package/Source/Assets/Textures/maki/museum.png +0 -0
  434. package/Source/Assets/Textures/maki/music.png +0 -0
  435. package/Source/Assets/Textures/maki/oil-well.png +0 -0
  436. package/Source/Assets/Textures/maki/park.png +0 -0
  437. package/Source/Assets/Textures/maki/park2.png +0 -0
  438. package/Source/Assets/Textures/maki/parking-garage.png +0 -0
  439. package/Source/Assets/Textures/maki/parking.png +0 -0
  440. package/Source/Assets/Textures/maki/pharmacy.png +0 -0
  441. package/Source/Assets/Textures/maki/pitch.png +0 -0
  442. package/Source/Assets/Textures/maki/place-of-worship.png +0 -0
  443. package/Source/Assets/Textures/maki/playground.png +0 -0
  444. package/Source/Assets/Textures/maki/police.png +0 -0
  445. package/Source/Assets/Textures/maki/polling-place.png +0 -0
  446. package/Source/Assets/Textures/maki/post.png +0 -0
  447. package/Source/Assets/Textures/maki/prison.png +0 -0
  448. package/Source/Assets/Textures/maki/rail-above.png +0 -0
  449. package/Source/Assets/Textures/maki/rail-light.png +0 -0
  450. package/Source/Assets/Textures/maki/rail-metro.png +0 -0
  451. package/Source/Assets/Textures/maki/rail-underground.png +0 -0
  452. package/Source/Assets/Textures/maki/rail.png +0 -0
  453. package/Source/Assets/Textures/maki/religious-christian.png +0 -0
  454. package/Source/Assets/Textures/maki/religious-jewish.png +0 -0
  455. package/Source/Assets/Textures/maki/religious-muslim.png +0 -0
  456. package/Source/Assets/Textures/maki/restaurant.png +0 -0
  457. package/Source/Assets/Textures/maki/roadblock.png +0 -0
  458. package/Source/Assets/Textures/maki/rocket.png +0 -0
  459. package/Source/Assets/Textures/maki/school.png +0 -0
  460. package/Source/Assets/Textures/maki/scooter.png +0 -0
  461. package/Source/Assets/Textures/maki/shop.png +0 -0
  462. package/Source/Assets/Textures/maki/skiing.png +0 -0
  463. package/Source/Assets/Textures/maki/slaughterhouse.png +0 -0
  464. package/Source/Assets/Textures/maki/soccer.png +0 -0
  465. package/Source/Assets/Textures/maki/square-stroked.png +0 -0
  466. package/Source/Assets/Textures/maki/square.png +0 -0
  467. package/Source/Assets/Textures/maki/star-stroked.png +0 -0
  468. package/Source/Assets/Textures/maki/star.png +0 -0
  469. package/Source/Assets/Textures/maki/suitcase.png +0 -0
  470. package/Source/Assets/Textures/maki/swimming.png +0 -0
  471. package/Source/Assets/Textures/maki/telephone.png +0 -0
  472. package/Source/Assets/Textures/maki/tennis.png +0 -0
  473. package/Source/Assets/Textures/maki/theatre.png +0 -0
  474. package/Source/Assets/Textures/maki/toilets.png +0 -0
  475. package/Source/Assets/Textures/maki/town-hall.png +0 -0
  476. package/Source/Assets/Textures/maki/town.png +0 -0
  477. package/Source/Assets/Textures/maki/triangle-stroked.png +0 -0
  478. package/Source/Assets/Textures/maki/triangle.png +0 -0
  479. package/Source/Assets/Textures/maki/village.png +0 -0
  480. package/Source/Assets/Textures/maki/warehouse.png +0 -0
  481. package/Source/Assets/Textures/maki/waste-basket.png +0 -0
  482. package/Source/Assets/Textures/maki/water.png +0 -0
  483. package/Source/Assets/Textures/maki/wetland.png +0 -0
  484. package/Source/Assets/Textures/maki/zoo.png +0 -0
  485. package/Source/Assets/Textures/moonSmall.jpg +0 -0
  486. package/Source/Assets/Textures/pin.svg +1 -0
  487. package/Source/Assets/Textures/waterNormals.jpg +0 -0
  488. package/Source/Assets/Textures/waterNormalsSmall.jpg +0 -0
  489. package/Source/Assets/approximateTerrainHeights.json +1 -0
  490. package/Source/Core/ApproximateTerrainHeights.js +255 -0
  491. package/Source/Core/ArcGISTiledElevationTerrainProvider.js +755 -0
  492. package/Source/Core/ArcType.js +31 -0
  493. package/Source/Core/ArticulationStageType.js +23 -0
  494. package/Source/Core/AssociativeArray.js +127 -0
  495. package/Source/Core/AttributeCompression.js +527 -0
  496. package/Source/Core/AxisAlignedBoundingBox.js +294 -0
  497. package/Source/Core/BingMapsGeocoderService.js +127 -0
  498. package/Source/Core/BoundingRectangle.js +374 -0
  499. package/Source/Core/BoundingSphere.js +1506 -0
  500. package/Source/Core/BoxGeometry.js +893 -0
  501. package/Source/Core/BoxOutlineGeometry.js +312 -0
  502. package/Source/Core/Cartesian2.js +823 -0
  503. package/Source/Core/Cartesian3.js +1220 -0
  504. package/Source/Core/Cartesian4.js +979 -0
  505. package/Source/Core/Cartographic.js +304 -0
  506. package/Source/Core/CartographicGeocoderService.js +73 -0
  507. package/Source/Core/CatmullRomSpline.js +324 -0
  508. package/Source/Core/Cesium3DTilesTerrainData.js +932 -0
  509. package/Source/Core/Cesium3DTilesTerrainGeometryProcessor.js +1868 -0
  510. package/Source/Core/Cesium3DTilesTerrainProvider.js +1052 -0
  511. package/Source/Core/CesiumTerrainProvider.js +1408 -0
  512. package/Source/Core/Check.d.ts +131 -0
  513. package/Source/Core/Check.js +212 -0
  514. package/Source/Core/CircleGeometry.js +207 -0
  515. package/Source/Core/CircleOutlineGeometry.js +149 -0
  516. package/Source/Core/Clock.js +316 -0
  517. package/Source/Core/ClockRange.js +39 -0
  518. package/Source/Core/ClockStep.js +38 -0
  519. package/Source/Core/Color.js +2283 -0
  520. package/Source/Core/ColorGeometryInstanceAttribute.js +181 -0
  521. package/Source/Core/ComponentDatatype.js +338 -0
  522. package/Source/Core/CompressedTextureBuffer.js +125 -0
  523. package/Source/Core/ConstantSpline.js +119 -0
  524. package/Source/Core/CoplanarPolygonGeometry.js +600 -0
  525. package/Source/Core/CoplanarPolygonGeometryLibrary.js +132 -0
  526. package/Source/Core/CoplanarPolygonOutlineGeometry.js +237 -0
  527. package/Source/Core/CornerType.js +37 -0
  528. package/Source/Core/CorridorGeometry.js +1411 -0
  529. package/Source/Core/CorridorGeometryLibrary.js +501 -0
  530. package/Source/Core/CorridorOutlineGeometry.js +599 -0
  531. package/Source/Core/Credit.js +172 -0
  532. package/Source/Core/CubicRealPolynomial.js +238 -0
  533. package/Source/Core/CullingVolume.js +216 -0
  534. package/Source/Core/CustomHeightmapTerrainProvider.js +287 -0
  535. package/Source/Core/CylinderGeometry.js +479 -0
  536. package/Source/Core/CylinderGeometryLibrary.js +59 -0
  537. package/Source/Core/CylinderOutlineGeometry.js +269 -0
  538. package/Source/Core/DefaultProxy.js +26 -0
  539. package/Source/Core/DeveloperError.js +75 -0
  540. package/Source/Core/DistanceDisplayCondition.js +171 -0
  541. package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +179 -0
  542. package/Source/Core/DoubleEndedPriorityQueue.js +405 -0
  543. package/Source/Core/DoublyLinkedList.js +112 -0
  544. package/Source/Core/EarthOrientationParameters.js +431 -0
  545. package/Source/Core/EarthOrientationParametersSample.js +52 -0
  546. package/Source/Core/EasingFunction.js +257 -0
  547. package/Source/Core/EllipseGeometry.js +1318 -0
  548. package/Source/Core/EllipseGeometryLibrary.js +365 -0
  549. package/Source/Core/EllipseOutlineGeometry.js +451 -0
  550. package/Source/Core/Ellipsoid.js +889 -0
  551. package/Source/Core/EllipsoidGeodesic.js +523 -0
  552. package/Source/Core/EllipsoidGeometry.js +650 -0
  553. package/Source/Core/EllipsoidOutlineGeometry.js +464 -0
  554. package/Source/Core/EllipsoidRhumbLine.js +751 -0
  555. package/Source/Core/EllipsoidTangentPlane.js +382 -0
  556. package/Source/Core/EllipsoidTerrainProvider.js +201 -0
  557. package/Source/Core/EllipsoidalOccluder.js +538 -0
  558. package/Source/Core/EncodedCartesian3.js +170 -0
  559. package/Source/Core/Event.js +205 -0
  560. package/Source/Core/EventHelper.js +74 -0
  561. package/Source/Core/ExtrapolationType.js +34 -0
  562. package/Source/Core/FeatureDetection.js +435 -0
  563. package/Source/Core/Frozen.js +24 -0
  564. package/Source/Core/FrustumGeometry.js +583 -0
  565. package/Source/Core/FrustumOutlineGeometry.js +253 -0
  566. package/Source/Core/Fullscreen.js +249 -0
  567. package/Source/Core/GeocodeType.js +24 -0
  568. package/Source/Core/GeocoderService.js +60 -0
  569. package/Source/Core/GeographicProjection.js +105 -0
  570. package/Source/Core/GeographicTilingScheme.js +245 -0
  571. package/Source/Core/Geometry.js +371 -0
  572. package/Source/Core/GeometryAttribute.js +133 -0
  573. package/Source/Core/GeometryAttributes.js +88 -0
  574. package/Source/Core/GeometryFactory.js +25 -0
  575. package/Source/Core/GeometryInstance.js +118 -0
  576. package/Source/Core/GeometryInstanceAttribute.js +133 -0
  577. package/Source/Core/GeometryOffsetAttribute.js +10 -0
  578. package/Source/Core/GeometryPipeline.js +3291 -0
  579. package/Source/Core/GeometryType.js +10 -0
  580. package/Source/Core/GoogleEarthEnterpriseMetadata.js +584 -0
  581. package/Source/Core/GoogleEarthEnterpriseTerrainData.js +606 -0
  582. package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +574 -0
  583. package/Source/Core/GoogleEarthEnterpriseTileInformation.js +136 -0
  584. package/Source/Core/GoogleGeocoderService.js +110 -0
  585. package/Source/Core/GoogleMaps.js +40 -0
  586. package/Source/Core/GregorianDate.js +153 -0
  587. package/Source/Core/GroundPolylineGeometry.js +1659 -0
  588. package/Source/Core/HeadingPitchRange.js +59 -0
  589. package/Source/Core/HeadingPitchRoll.js +235 -0
  590. package/Source/Core/Heap.js +233 -0
  591. package/Source/Core/HeightmapEncoding.js +25 -0
  592. package/Source/Core/HeightmapTerrainData.js +903 -0
  593. package/Source/Core/HeightmapTessellator.js +518 -0
  594. package/Source/Core/HermitePolynomialApproximation.js +341 -0
  595. package/Source/Core/HermiteSpline.js +620 -0
  596. package/Source/Core/HilbertOrder.js +112 -0
  597. package/Source/Core/ITwinPlatform.js +388 -0
  598. package/Source/Core/Iau2000Orientation.js +167 -0
  599. package/Source/Core/Iau2006XysData.js +275 -0
  600. package/Source/Core/Iau2006XysSample.js +32 -0
  601. package/Source/Core/IauOrientationAxes.js +105 -0
  602. package/Source/Core/IauOrientationParameters.js +54 -0
  603. package/Source/Core/IndexDatatype.js +199 -0
  604. package/Source/Core/InterpolationAlgorithm.js +65 -0
  605. package/Source/Core/InterpolationType.js +14 -0
  606. package/Source/Core/Intersect.js +34 -0
  607. package/Source/Core/IntersectionTests.js +1087 -0
  608. package/Source/Core/Intersections2D.js +358 -0
  609. package/Source/Core/Interval.js +23 -0
  610. package/Source/Core/Ion.js +56 -0
  611. package/Source/Core/IonGeocodeProviderType.js +33 -0
  612. package/Source/Core/IonGeocoderService.js +147 -0
  613. package/Source/Core/IonResource.js +321 -0
  614. package/Source/Core/Iso8601.js +54 -0
  615. package/Source/Core/JulianDate.js +1229 -0
  616. package/Source/Core/KTX2Transcoder.js +92 -0
  617. package/Source/Core/KeyboardEventModifier.js +32 -0
  618. package/Source/Core/LagrangePolynomialApproximation.js +71 -0
  619. package/Source/Core/LeapSecond.js +24 -0
  620. package/Source/Core/LinearApproximation.js +83 -0
  621. package/Source/Core/LinearSpline.js +166 -0
  622. package/Source/Core/ManagedArray.js +162 -0
  623. package/Source/Core/MapProjection.js +62 -0
  624. package/Source/Core/Math.js +1125 -0
  625. package/Source/Core/Matrix2.js +1092 -0
  626. package/Source/Core/Matrix3.js +1838 -0
  627. package/Source/Core/Matrix4.js +3233 -0
  628. package/Source/Core/MorphWeightSpline.js +161 -0
  629. package/Source/Core/MortonOrder.js +214 -0
  630. package/Source/Core/NearFarScalar.js +173 -0
  631. package/Source/Core/Occluder.js +727 -0
  632. package/Source/Core/OffsetGeometryInstanceAttribute.js +125 -0
  633. package/Source/Core/OpenCageGeocoderService.js +134 -0
  634. package/Source/Core/OrientedBoundingBox.js +1272 -0
  635. package/Source/Core/OrthographicFrustum.js +351 -0
  636. package/Source/Core/OrthographicOffCenterFrustum.js +463 -0
  637. package/Source/Core/Packable.js +40 -0
  638. package/Source/Core/PackableForInterpolation.js +43 -0
  639. package/Source/Core/PeliasGeocoderService.js +106 -0
  640. package/Source/Core/PerspectiveFrustum.js +459 -0
  641. package/Source/Core/PerspectiveOffCenterFrustum.js +522 -0
  642. package/Source/Core/PinBuilder.js +234 -0
  643. package/Source/Core/PixelFormat.js +603 -0
  644. package/Source/Core/Plane.js +312 -0
  645. package/Source/Core/PlaneGeometry.js +250 -0
  646. package/Source/Core/PlaneOutlineGeometry.js +113 -0
  647. package/Source/Core/PolygonGeometry.js +1580 -0
  648. package/Source/Core/PolygonGeometryLibrary.js +1301 -0
  649. package/Source/Core/PolygonHierarchy.js +25 -0
  650. package/Source/Core/PolygonOutlineGeometry.js +687 -0
  651. package/Source/Core/PolygonPipeline.js +632 -0
  652. package/Source/Core/PolylineGeometry.js +573 -0
  653. package/Source/Core/PolylinePipeline.js +573 -0
  654. package/Source/Core/PolylineVolumeGeometry.js +412 -0
  655. package/Source/Core/PolylineVolumeGeometryLibrary.js +701 -0
  656. package/Source/Core/PolylineVolumeOutlineGeometry.js +294 -0
  657. package/Source/Core/PrimitiveType.js +107 -0
  658. package/Source/Core/Proxy.js +24 -0
  659. package/Source/Core/QuadraticRealPolynomial.js +147 -0
  660. package/Source/Core/QuantizedMeshTerrainData.js +735 -0
  661. package/Source/Core/QuarticRealPolynomial.js +342 -0
  662. package/Source/Core/Quaternion.js +1145 -0
  663. package/Source/Core/QuaternionSpline.js +155 -0
  664. package/Source/Core/Queue.js +126 -0
  665. package/Source/Core/Ray.js +79 -0
  666. package/Source/Core/Rectangle.js +1071 -0
  667. package/Source/Core/RectangleCollisionChecker.js +95 -0
  668. package/Source/Core/RectangleGeometry.js +1480 -0
  669. package/Source/Core/RectangleGeometryLibrary.js +286 -0
  670. package/Source/Core/RectangleOutlineGeometry.js +532 -0
  671. package/Source/Core/ReferenceFrame.js +23 -0
  672. package/Source/Core/Request.js +193 -0
  673. package/Source/Core/RequestErrorEvent.js +58 -0
  674. package/Source/Core/RequestScheduler.js +519 -0
  675. package/Source/Core/RequestState.js +55 -0
  676. package/Source/Core/RequestType.js +39 -0
  677. package/Source/Core/Resource.js +2280 -0
  678. package/Source/Core/RuntimeError.js +65 -0
  679. package/Source/Core/S2Cell.js +734 -0
  680. package/Source/Core/ScreenSpaceEventHandler.js +1140 -0
  681. package/Source/Core/ScreenSpaceEventType.js +127 -0
  682. package/Source/Core/ShowGeometryInstanceAttribute.js +122 -0
  683. package/Source/Core/Simon1994PlanetaryPositions.js +684 -0
  684. package/Source/Core/SimplePolylineGeometry.js +454 -0
  685. package/Source/Core/SphereGeometry.js +117 -0
  686. package/Source/Core/SphereOutlineGeometry.js +119 -0
  687. package/Source/Core/Spherical.js +183 -0
  688. package/Source/Core/Spline.js +188 -0
  689. package/Source/Core/SteppedSpline.js +160 -0
  690. package/Source/Core/Stereographic.js +247 -0
  691. package/Source/Core/TaskProcessor.js +403 -0
  692. package/Source/Core/TerrainData.js +126 -0
  693. package/Source/Core/TerrainEncoding.js +772 -0
  694. package/Source/Core/TerrainMesh.js +361 -0
  695. package/Source/Core/TerrainPicker.js +607 -0
  696. package/Source/Core/TerrainProvider.js +585 -0
  697. package/Source/Core/TerrainQuantization.js +25 -0
  698. package/Source/Core/TexturePacker.js +181 -0
  699. package/Source/Core/TileAvailability.js +564 -0
  700. package/Source/Core/TileEdge.js +14 -0
  701. package/Source/Core/TileProviderError.js +170 -0
  702. package/Source/Core/TilingScheme.js +132 -0
  703. package/Source/Core/TimeConstants.js +83 -0
  704. package/Source/Core/TimeInterval.js +438 -0
  705. package/Source/Core/TimeIntervalCollection.js +1137 -0
  706. package/Source/Core/TimeStandard.js +30 -0
  707. package/Source/Core/Tipsify.js +314 -0
  708. package/Source/Core/TrackingReferenceFrame.js +45 -0
  709. package/Source/Core/Transforms.js +1277 -0
  710. package/Source/Core/TranslationRotationScale.js +57 -0
  711. package/Source/Core/TridiagonalSystemSolver.js +113 -0
  712. package/Source/Core/TrustedServers.js +146 -0
  713. package/Source/Core/VRTheWorldTerrainProvider.js +462 -0
  714. package/Source/Core/VertexFormat.js +311 -0
  715. package/Source/Core/VerticalExaggeration.js +70 -0
  716. package/Source/Core/VideoSynchronizer.js +222 -0
  717. package/Source/Core/Visibility.js +34 -0
  718. package/Source/Core/VulkanConstants.js +286 -0
  719. package/Source/Core/WallGeometry.js +623 -0
  720. package/Source/Core/WallGeometryLibrary.js +212 -0
  721. package/Source/Core/WallOutlineGeometry.js +431 -0
  722. package/Source/Core/WebGLConstants.js +614 -0
  723. package/Source/Core/WebMercatorProjection.js +152 -0
  724. package/Source/Core/WebMercatorTilingScheme.js +291 -0
  725. package/Source/Core/WindingOrder.js +36 -0
  726. package/Source/Core/WireframeIndexGenerator.js +238 -0
  727. package/Source/Core/addAllToArray.js +40 -0
  728. package/Source/Core/appendForwardSlash.js +10 -0
  729. package/Source/Core/arrayRemoveDuplicates.js +129 -0
  730. package/Source/Core/barycentricCoordinates.js +109 -0
  731. package/Source/Core/binarySearch.js +67 -0
  732. package/Source/Core/buildModuleUrl.js +153 -0
  733. package/Source/Core/clone.js +30 -0
  734. package/Source/Core/combine.js +79 -0
  735. package/Source/Core/createGuid.js +22 -0
  736. package/Source/Core/createWorldBathymetryAsync.js +45 -0
  737. package/Source/Core/createWorldTerrainAsync.js +50 -0
  738. package/Source/Core/decodeGoogleEarthEnterpriseData.js +93 -0
  739. package/Source/Core/decodeVectorPolylinePositions.js +51 -0
  740. package/Source/Core/defaultValue.js +29 -0
  741. package/Source/Core/defer.js +44 -0
  742. package/Source/Core/defined.d.ts +11 -0
  743. package/Source/Core/defined.js +17 -0
  744. package/Source/Core/deprecationWarning.js +53 -0
  745. package/Source/Core/destroyObject.js +53 -0
  746. package/Source/Core/formatError.js +30 -0
  747. package/Source/Core/getAbsoluteUri.js +46 -0
  748. package/Source/Core/getBaseUri.js +47 -0
  749. package/Source/Core/getExtensionFromUri.js +38 -0
  750. package/Source/Core/getFilenameFromUri.js +32 -0
  751. package/Source/Core/getImageFromTypedArray.js +24 -0
  752. package/Source/Core/getImagePixels.js +44 -0
  753. package/Source/Core/getJsonFromTypedArray.js +21 -0
  754. package/Source/Core/getMagic.js +14 -0
  755. package/Source/Core/getStringFromTypedArray.js +165 -0
  756. package/Source/Core/getTimestamp.js +26 -0
  757. package/Source/Core/isBitSet.js +7 -0
  758. package/Source/Core/isBlobUri.js +22 -0
  759. package/Source/Core/isCrossOriginUrl.js +30 -0
  760. package/Source/Core/isDataUri.js +22 -0
  761. package/Source/Core/isLeapYear.js +23 -0
  762. package/Source/Core/loadAndExecuteScript.js +27 -0
  763. package/Source/Core/loadImageFromTypedArray.js +66 -0
  764. package/Source/Core/loadKTX2.js +104 -0
  765. package/Source/Core/mergeSort.js +111 -0
  766. package/Source/Core/objectToQuery.js +57 -0
  767. package/Source/Core/oneTimeWarning.js +51 -0
  768. package/Source/Core/parseResponseHeaders.js +37 -0
  769. package/Source/Core/pointInsideTriangle.js +39 -0
  770. package/Source/Core/queryToObject.js +60 -0
  771. package/Source/Core/resizeImageToNextPowerOfTwo.js +31 -0
  772. package/Source/Core/sampleTerrain.js +291 -0
  773. package/Source/Core/sampleTerrainMostDetailed.js +132 -0
  774. package/Source/Core/scaleToGeodeticSurface.js +147 -0
  775. package/Source/Core/srgbToLinear.js +32 -0
  776. package/Source/Core/subdivideArray.js +35 -0
  777. package/Source/Core/webGLConstantToGlslType.js +25 -0
  778. package/Source/Core/wrapFunction.js +26 -0
  779. package/Source/Core/writeTextToCanvas.js +219 -0
  780. package/Source/DataSources/BillboardGraphics.js +419 -0
  781. package/Source/DataSources/BillboardVisualizer.js +351 -0
  782. package/Source/DataSources/BoundingSphereState.js +26 -0
  783. package/Source/DataSources/BoxGeometryUpdater.js +326 -0
  784. package/Source/DataSources/BoxGraphics.js +208 -0
  785. package/Source/DataSources/CallbackPositionProperty.js +172 -0
  786. package/Source/DataSources/CallbackProperty.js +117 -0
  787. package/Source/DataSources/Cesium3DTilesetGraphics.js +111 -0
  788. package/Source/DataSources/Cesium3DTilesetVisualizer.js +261 -0
  789. package/Source/DataSources/CheckerboardMaterialProperty.js +157 -0
  790. package/Source/DataSources/ColorMaterialProperty.js +112 -0
  791. package/Source/DataSources/CompositeEntityCollection.js +591 -0
  792. package/Source/DataSources/CompositeMaterialProperty.js +128 -0
  793. package/Source/DataSources/CompositePositionProperty.js +153 -0
  794. package/Source/DataSources/CompositeProperty.js +154 -0
  795. package/Source/DataSources/ConstantPositionProperty.js +151 -0
  796. package/Source/DataSources/ConstantProperty.js +116 -0
  797. package/Source/DataSources/CorridorGeometryUpdater.js +409 -0
  798. package/Source/DataSources/CorridorGraphics.js +316 -0
  799. package/Source/DataSources/CustomDataSource.js +173 -0
  800. package/Source/DataSources/CylinderGeometryUpdater.js +375 -0
  801. package/Source/DataSources/CylinderGraphics.js +258 -0
  802. package/Source/DataSources/CzmlDataSource.js +5142 -0
  803. package/Source/DataSources/DataSource.js +121 -0
  804. package/Source/DataSources/DataSourceClock.js +164 -0
  805. package/Source/DataSources/DataSourceCollection.js +335 -0
  806. package/Source/DataSources/DataSourceDisplay.js +543 -0
  807. package/Source/DataSources/DynamicGeometryBatch.js +56 -0
  808. package/Source/DataSources/DynamicGeometryUpdater.js +270 -0
  809. package/Source/DataSources/EllipseGeometryUpdater.js +434 -0
  810. package/Source/DataSources/EllipseGraphics.js +343 -0
  811. package/Source/DataSources/EllipsoidGeometryUpdater.js +710 -0
  812. package/Source/DataSources/EllipsoidGraphics.js +312 -0
  813. package/Source/DataSources/Entity.js +789 -0
  814. package/Source/DataSources/EntityCluster.js +1022 -0
  815. package/Source/DataSources/EntityCollection.js +439 -0
  816. package/Source/DataSources/EntityView.js +476 -0
  817. package/Source/DataSources/GeoJsonDataSource.js +1064 -0
  818. package/Source/DataSources/GeometryUpdater.js +538 -0
  819. package/Source/DataSources/GeometryUpdaterSet.js +114 -0
  820. package/Source/DataSources/GeometryVisualizer.js +549 -0
  821. package/Source/DataSources/GpxDataSource.js +1018 -0
  822. package/Source/DataSources/GridMaterialProperty.js +204 -0
  823. package/Source/DataSources/GroundGeometryUpdater.js +234 -0
  824. package/Source/DataSources/ImageMaterialProperty.js +173 -0
  825. package/Source/DataSources/KmlCamera.js +13 -0
  826. package/Source/DataSources/KmlDataSource.js +4249 -0
  827. package/Source/DataSources/KmlLookAt.js +12 -0
  828. package/Source/DataSources/KmlTour.js +165 -0
  829. package/Source/DataSources/KmlTourFlyTo.js +109 -0
  830. package/Source/DataSources/KmlTourWait.js +52 -0
  831. package/Source/DataSources/LabelGraphics.js +401 -0
  832. package/Source/DataSources/LabelVisualizer.js +359 -0
  833. package/Source/DataSources/MaterialProperty.js +111 -0
  834. package/Source/DataSources/ModelGraphics.js +456 -0
  835. package/Source/DataSources/ModelVisualizer.js +560 -0
  836. package/Source/DataSources/NodeTransformationProperty.js +150 -0
  837. package/Source/DataSources/PathGraphics.js +161 -0
  838. package/Source/DataSources/PathVisualizer.js +823 -0
  839. package/Source/DataSources/PlaneGeometryUpdater.js +385 -0
  840. package/Source/DataSources/PlaneGraphics.js +208 -0
  841. package/Source/DataSources/PointGraphics.js +223 -0
  842. package/Source/DataSources/PointVisualizer.js +438 -0
  843. package/Source/DataSources/PolygonGeometryUpdater.js +591 -0
  844. package/Source/DataSources/PolygonGraphics.js +383 -0
  845. package/Source/DataSources/PolylineArrowMaterialProperty.js +110 -0
  846. package/Source/DataSources/PolylineDashMaterialProperty.js +174 -0
  847. package/Source/DataSources/PolylineGeometryUpdater.js +878 -0
  848. package/Source/DataSources/PolylineGlowMaterialProperty.js +152 -0
  849. package/Source/DataSources/PolylineGraphics.js +241 -0
  850. package/Source/DataSources/PolylineOutlineMaterialProperty.js +158 -0
  851. package/Source/DataSources/PolylineVisualizer.js +409 -0
  852. package/Source/DataSources/PolylineVolumeGeometryUpdater.js +306 -0
  853. package/Source/DataSources/PolylineVolumeGraphics.js +235 -0
  854. package/Source/DataSources/PositionProperty.js +131 -0
  855. package/Source/DataSources/PositionPropertyArray.js +192 -0
  856. package/Source/DataSources/Property.js +137 -0
  857. package/Source/DataSources/PropertyArray.js +147 -0
  858. package/Source/DataSources/PropertyBag.js +275 -0
  859. package/Source/DataSources/RectangleGeometryUpdater.js +427 -0
  860. package/Source/DataSources/RectangleGraphics.js +317 -0
  861. package/Source/DataSources/ReferenceProperty.js +371 -0
  862. package/Source/DataSources/Rotation.js +155 -0
  863. package/Source/DataSources/SampledPositionProperty.js +330 -0
  864. package/Source/DataSources/SampledProperty.js +855 -0
  865. package/Source/DataSources/ScaledPositionProperty.js +103 -0
  866. package/Source/DataSources/StaticGeometryColorBatch.js +570 -0
  867. package/Source/DataSources/StaticGeometryPerMaterialBatch.js +488 -0
  868. package/Source/DataSources/StaticGroundGeometryColorBatch.js +394 -0
  869. package/Source/DataSources/StaticGroundGeometryPerMaterialBatch.js +456 -0
  870. package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +434 -0
  871. package/Source/DataSources/StaticOutlineGeometryBatch.js +465 -0
  872. package/Source/DataSources/StripeMaterialProperty.js +193 -0
  873. package/Source/DataSources/StripeOrientation.js +19 -0
  874. package/Source/DataSources/TerrainOffsetProperty.js +243 -0
  875. package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +155 -0
  876. package/Source/DataSources/TimeIntervalCollectionProperty.js +136 -0
  877. package/Source/DataSources/VelocityOrientationProperty.js +158 -0
  878. package/Source/DataSources/VelocityVectorProperty.js +213 -0
  879. package/Source/DataSources/Visualizer.js +61 -0
  880. package/Source/DataSources/WallGeometryUpdater.js +275 -0
  881. package/Source/DataSources/WallGraphics.js +236 -0
  882. package/Source/DataSources/createMaterialPropertyDescriptor.js +35 -0
  883. package/Source/DataSources/createPropertyDescriptor.js +71 -0
  884. package/Source/DataSources/createRawPropertyDescriptor.js +13 -0
  885. package/Source/DataSources/exportKml.js +1517 -0
  886. package/Source/DataSources/getElement.js +26 -0
  887. package/Source/DataSources/heightReferenceOnEntityPropertyChanged.js +47 -0
  888. package/Source/Renderer/AutomaticUniforms.js +1857 -0
  889. package/Source/Renderer/Buffer.js +452 -0
  890. package/Source/Renderer/BufferUsage.js +21 -0
  891. package/Source/Renderer/ClearCommand.js +102 -0
  892. package/Source/Renderer/ComputeCommand.js +119 -0
  893. package/Source/Renderer/ComputeEngine.js +135 -0
  894. package/Source/Renderer/Context.js +1752 -0
  895. package/Source/Renderer/ContextLimits.js +299 -0
  896. package/Source/Renderer/CubeMap.js +686 -0
  897. package/Source/Renderer/CubeMapFace.js +415 -0
  898. package/Source/Renderer/DrawCommand.js +644 -0
  899. package/Source/Renderer/Framebuffer.js +447 -0
  900. package/Source/Renderer/FramebufferManager.js +489 -0
  901. package/Source/Renderer/MipmapHint.js +19 -0
  902. package/Source/Renderer/MultisampleFramebuffer.js +136 -0
  903. package/Source/Renderer/Pass.js +29 -0
  904. package/Source/Renderer/PassState.js +57 -0
  905. package/Source/Renderer/PixelDatatype.js +121 -0
  906. package/Source/Renderer/RenderState.js +967 -0
  907. package/Source/Renderer/Renderbuffer.js +105 -0
  908. package/Source/Renderer/RenderbufferFormat.js +42 -0
  909. package/Source/Renderer/Sampler.js +116 -0
  910. package/Source/Renderer/ShaderBuilder.js +597 -0
  911. package/Source/Renderer/ShaderCache.js +287 -0
  912. package/Source/Renderer/ShaderDestination.js +51 -0
  913. package/Source/Renderer/ShaderFunction.js +66 -0
  914. package/Source/Renderer/ShaderProgram.js +619 -0
  915. package/Source/Renderer/ShaderSource.js +524 -0
  916. package/Source/Renderer/ShaderStruct.js +55 -0
  917. package/Source/Renderer/SharedContext.js +186 -0
  918. package/Source/Renderer/Sync.js +104 -0
  919. package/Source/Renderer/Texture.js +1126 -0
  920. package/Source/Renderer/Texture3D.js +578 -0
  921. package/Source/Renderer/TextureAtlas.js +833 -0
  922. package/Source/Renderer/TextureCache.js +81 -0
  923. package/Source/Renderer/TextureMagnificationFilter.js +41 -0
  924. package/Source/Renderer/TextureMinificationFilter.js +94 -0
  925. package/Source/Renderer/TextureWrap.js +19 -0
  926. package/Source/Renderer/UniformState.js +1948 -0
  927. package/Source/Renderer/VertexArray.js +869 -0
  928. package/Source/Renderer/VertexArrayFacade.js +509 -0
  929. package/Source/Renderer/createUniform.js +422 -0
  930. package/Source/Renderer/createUniformArray.js +638 -0
  931. package/Source/Renderer/demodernizeShader.js +84 -0
  932. package/Source/Renderer/freezeRenderState.js +30 -0
  933. package/Source/Renderer/loadCubeMap.js +88 -0
  934. package/Source/Scene/AlphaMode.js +33 -0
  935. package/Source/Scene/Appearance.js +204 -0
  936. package/Source/Scene/ArcGisBaseMapType.js +12 -0
  937. package/Source/Scene/ArcGisMapServerImageryProvider.js +875 -0
  938. package/Source/Scene/ArcGisMapService.js +80 -0
  939. package/Source/Scene/Atmosphere.js +149 -0
  940. package/Source/Scene/AttributeType.js +200 -0
  941. package/Source/Scene/AutoExposure.js +386 -0
  942. package/Source/Scene/Axis.js +116 -0
  943. package/Source/Scene/Azure2DImageryProvider.js +393 -0
  944. package/Source/Scene/B3dmParser.js +173 -0
  945. package/Source/Scene/BatchTable.js +636 -0
  946. package/Source/Scene/BatchTableHierarchy.js +504 -0
  947. package/Source/Scene/BatchTexture.js +574 -0
  948. package/Source/Scene/Billboard.js +1601 -0
  949. package/Source/Scene/BillboardCollection.js +2396 -0
  950. package/Source/Scene/BillboardLoadState.js +44 -0
  951. package/Source/Scene/BillboardTexture.js +397 -0
  952. package/Source/Scene/BingMapsImageryProvider.js +769 -0
  953. package/Source/Scene/BingMapsStyle.js +93 -0
  954. package/Source/Scene/BlendEquation.js +53 -0
  955. package/Source/Scene/BlendFunction.js +129 -0
  956. package/Source/Scene/BlendOption.js +28 -0
  957. package/Source/Scene/BlendingState.js +73 -0
  958. package/Source/Scene/BoundingVolumeSemantics.js +169 -0
  959. package/Source/Scene/BoxEmitter.js +74 -0
  960. package/Source/Scene/BrdfLutGenerator.js +75 -0
  961. package/Source/Scene/BufferLoader.js +141 -0
  962. package/Source/Scene/Camera.js +3978 -0
  963. package/Source/Scene/CameraEventAggregator.js +619 -0
  964. package/Source/Scene/CameraEventType.js +47 -0
  965. package/Source/Scene/CameraFlightPath.js +576 -0
  966. package/Source/Scene/Cesium3DContentGroup.js +44 -0
  967. package/Source/Scene/Cesium3DTile.js +2475 -0
  968. package/Source/Scene/Cesium3DTileBatchTable.js +1132 -0
  969. package/Source/Scene/Cesium3DTileColorBlendMode.js +52 -0
  970. package/Source/Scene/Cesium3DTileContent.js +411 -0
  971. package/Source/Scene/Cesium3DTileContentFactory.js +118 -0
  972. package/Source/Scene/Cesium3DTileContentState.js +12 -0
  973. package/Source/Scene/Cesium3DTileContentType.js +179 -0
  974. package/Source/Scene/Cesium3DTileFeature.js +444 -0
  975. package/Source/Scene/Cesium3DTileFeatureTable.js +131 -0
  976. package/Source/Scene/Cesium3DTileOptimizationHint.js +13 -0
  977. package/Source/Scene/Cesium3DTileOptimizations.js +115 -0
  978. package/Source/Scene/Cesium3DTilePass.js +79 -0
  979. package/Source/Scene/Cesium3DTilePassState.js +52 -0
  980. package/Source/Scene/Cesium3DTilePointFeature.js +856 -0
  981. package/Source/Scene/Cesium3DTileRefine.js +29 -0
  982. package/Source/Scene/Cesium3DTileStyle.js +1475 -0
  983. package/Source/Scene/Cesium3DTileStyleEngine.js +78 -0
  984. package/Source/Scene/Cesium3DTilesVoxelProvider.js +760 -0
  985. package/Source/Scene/Cesium3DTileset.js +3932 -0
  986. package/Source/Scene/Cesium3DTilesetBaseTraversal.js +291 -0
  987. package/Source/Scene/Cesium3DTilesetCache.js +80 -0
  988. package/Source/Scene/Cesium3DTilesetHeatmap.js +165 -0
  989. package/Source/Scene/Cesium3DTilesetMetadata.js +199 -0
  990. package/Source/Scene/Cesium3DTilesetMostDetailedTraversal.js +131 -0
  991. package/Source/Scene/Cesium3DTilesetSkipTraversal.js +420 -0
  992. package/Source/Scene/Cesium3DTilesetStatistics.js +195 -0
  993. package/Source/Scene/Cesium3DTilesetTraversal.js +323 -0
  994. package/Source/Scene/CircleEmitter.js +61 -0
  995. package/Source/Scene/ClassificationPrimitive.js +1387 -0
  996. package/Source/Scene/ClassificationType.js +35 -0
  997. package/Source/Scene/ClippingPlane.js +184 -0
  998. package/Source/Scene/ClippingPlaneCollection.js +764 -0
  999. package/Source/Scene/ClippingPolygon.js +300 -0
  1000. package/Source/Scene/ClippingPolygonCollection.js +965 -0
  1001. package/Source/Scene/CloudCollection.js +1041 -0
  1002. package/Source/Scene/CloudType.js +33 -0
  1003. package/Source/Scene/ColorBlendMode.js +33 -0
  1004. package/Source/Scene/Composite3DTileContent.js +403 -0
  1005. package/Source/Scene/ConditionsExpression.js +219 -0
  1006. package/Source/Scene/ConeEmitter.js +61 -0
  1007. package/Source/Scene/ContentMetadata.js +184 -0
  1008. package/Source/Scene/CreditDisplay.js +654 -0
  1009. package/Source/Scene/CullFace.js +33 -0
  1010. package/Source/Scene/CumulusCloud.js +347 -0
  1011. package/Source/Scene/DebugAppearance.js +266 -0
  1012. package/Source/Scene/DebugCameraPrimitive.js +257 -0
  1013. package/Source/Scene/DebugInspector.js +151 -0
  1014. package/Source/Scene/DebugModelMatrixPrimitive.js +220 -0
  1015. package/Source/Scene/DepthFunction.js +73 -0
  1016. package/Source/Scene/DepthPlane.js +238 -0
  1017. package/Source/Scene/DerivedCommand.js +708 -0
  1018. package/Source/Scene/DeviceOrientationCameraController.js +120 -0
  1019. package/Source/Scene/DirectionalLight.js +49 -0
  1020. package/Source/Scene/DiscardEmptyTileImagePolicy.js +54 -0
  1021. package/Source/Scene/DiscardMissingTileImagePolicy.js +148 -0
  1022. package/Source/Scene/DracoLoader.js +99 -0
  1023. package/Source/Scene/DynamicAtmosphereLightingType.js +56 -0
  1024. package/Source/Scene/DynamicEnvironmentMapManager.js +1022 -0
  1025. package/Source/Scene/EdgeFramebuffer.js +245 -0
  1026. package/Source/Scene/EllipsoidPrimitive.js +496 -0
  1027. package/Source/Scene/EllipsoidSurfaceAppearance.js +278 -0
  1028. package/Source/Scene/Empty3DTileContent.js +164 -0
  1029. package/Source/Scene/Expression.js +2233 -0
  1030. package/Source/Scene/ExpressionNodeType.js +25 -0
  1031. package/Source/Scene/Fog.js +166 -0
  1032. package/Source/Scene/FrameRateMonitor.js +375 -0
  1033. package/Source/Scene/FrameState.js +477 -0
  1034. package/Source/Scene/FrustumCommands.js +29 -0
  1035. package/Source/Scene/GaussianSplat3DTileContent.js +826 -0
  1036. package/Source/Scene/GaussianSplatPrimitive.js +1065 -0
  1037. package/Source/Scene/GaussianSplatRenderResources.js +81 -0
  1038. package/Source/Scene/GaussianSplatSorter.js +73 -0
  1039. package/Source/Scene/GaussianSplatTextureGenerator.js +64 -0
  1040. package/Source/Scene/Geometry3DTileContent.js +534 -0
  1041. package/Source/Scene/GetFeatureInfoFormat.js +396 -0
  1042. package/Source/Scene/Globe.js +1135 -0
  1043. package/Source/Scene/GlobeDepth.js +407 -0
  1044. package/Source/Scene/GlobeSurfaceShaderSet.js +485 -0
  1045. package/Source/Scene/GlobeSurfaceTile.js +967 -0
  1046. package/Source/Scene/GlobeSurfaceTileProvider.js +2910 -0
  1047. package/Source/Scene/GlobeTranslucency.js +239 -0
  1048. package/Source/Scene/GlobeTranslucencyFramebuffer.js +201 -0
  1049. package/Source/Scene/GlobeTranslucencyState.js +1102 -0
  1050. package/Source/Scene/GltfBufferViewLoader.js +242 -0
  1051. package/Source/Scene/GltfDracoLoader.js +293 -0
  1052. package/Source/Scene/GltfImageLoader.js +320 -0
  1053. package/Source/Scene/GltfIndexBufferLoader.js +421 -0
  1054. package/Source/Scene/GltfJsonLoader.js +314 -0
  1055. package/Source/Scene/GltfLoader.js +2989 -0
  1056. package/Source/Scene/GltfLoaderUtil.js +184 -0
  1057. package/Source/Scene/GltfPipeline/ForEach.js +424 -0
  1058. package/Source/Scene/GltfPipeline/addBuffer.js +30 -0
  1059. package/Source/Scene/GltfPipeline/addDefaults.js +208 -0
  1060. package/Source/Scene/GltfPipeline/addExtensionsRequired.js +24 -0
  1061. package/Source/Scene/GltfPipeline/addExtensionsUsed.js +22 -0
  1062. package/Source/Scene/GltfPipeline/addPipelineExtras.js +36 -0
  1063. package/Source/Scene/GltfPipeline/addToArray.js +25 -0
  1064. package/Source/Scene/GltfPipeline/findAccessorMinMax.js +71 -0
  1065. package/Source/Scene/GltfPipeline/forEachTextureInMaterial.js +155 -0
  1066. package/Source/Scene/GltfPipeline/getAccessorByteStride.js +29 -0
  1067. package/Source/Scene/GltfPipeline/getComponentReader.js +147 -0
  1068. package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +135 -0
  1069. package/Source/Scene/GltfPipeline/moveTechniquesToExtension.js +145 -0
  1070. package/Source/Scene/GltfPipeline/numberOfComponentsForType.js +29 -0
  1071. package/Source/Scene/GltfPipeline/parseGlb.js +118 -0
  1072. package/Source/Scene/GltfPipeline/readAccessorPacked.js +54 -0
  1073. package/Source/Scene/GltfPipeline/removeExtension.js +64 -0
  1074. package/Source/Scene/GltfPipeline/removeExtensionsRequired.js +24 -0
  1075. package/Source/Scene/GltfPipeline/removeExtensionsUsed.js +26 -0
  1076. package/Source/Scene/GltfPipeline/removePipelineExtras.js +42 -0
  1077. package/Source/Scene/GltfPipeline/removeUnusedElements.js +906 -0
  1078. package/Source/Scene/GltfPipeline/updateAccessorComponentTypes.js +53 -0
  1079. package/Source/Scene/GltfPipeline/updateVersion.js +1148 -0
  1080. package/Source/Scene/GltfPipeline/usesExtension.js +18 -0
  1081. package/Source/Scene/GltfSpzLoader.js +224 -0
  1082. package/Source/Scene/GltfStructuralMetadataLoader.js +505 -0
  1083. package/Source/Scene/GltfTextureLoader.js +399 -0
  1084. package/Source/Scene/GltfVertexBufferLoader.js +634 -0
  1085. package/Source/Scene/Google2DImageryProvider.js +621 -0
  1086. package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +548 -0
  1087. package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +589 -0
  1088. package/Source/Scene/GridImageryProvider.js +322 -0
  1089. package/Source/Scene/GroundPolylinePrimitive.js +890 -0
  1090. package/Source/Scene/GroundPrimitive.js +1000 -0
  1091. package/Source/Scene/GroupMetadata.js +203 -0
  1092. package/Source/Scene/HeightReference.js +85 -0
  1093. package/Source/Scene/HorizontalOrigin.js +41 -0
  1094. package/Source/Scene/I3SDataProvider.js +860 -0
  1095. package/Source/Scene/I3SDecoder.js +133 -0
  1096. package/Source/Scene/I3SFeature.js +61 -0
  1097. package/Source/Scene/I3SField.js +360 -0
  1098. package/Source/Scene/I3SGeometry.js +477 -0
  1099. package/Source/Scene/I3SLayer.js +460 -0
  1100. package/Source/Scene/I3SNode.js +927 -0
  1101. package/Source/Scene/I3SStatistics.js +94 -0
  1102. package/Source/Scene/I3SSublayer.js +175 -0
  1103. package/Source/Scene/I3SSymbology.js +336 -0
  1104. package/Source/Scene/I3dmParser.js +140 -0
  1105. package/Source/Scene/ITwinData.js +283 -0
  1106. package/Source/Scene/ImageBasedLighting.js +463 -0
  1107. package/Source/Scene/Imagery.js +120 -0
  1108. package/Source/Scene/ImageryLayer.js +1747 -0
  1109. package/Source/Scene/ImageryLayerCollection.js +645 -0
  1110. package/Source/Scene/ImageryLayerFeatureInfo.js +111 -0
  1111. package/Source/Scene/ImageryProvider.js +267 -0
  1112. package/Source/Scene/ImageryState.js +14 -0
  1113. package/Source/Scene/Implicit3DTileContent.js +1206 -0
  1114. package/Source/Scene/ImplicitAvailabilityBitstream.js +134 -0
  1115. package/Source/Scene/ImplicitMetadataView.js +178 -0
  1116. package/Source/Scene/ImplicitSubdivisionScheme.js +48 -0
  1117. package/Source/Scene/ImplicitSubtree.js +1161 -0
  1118. package/Source/Scene/ImplicitSubtreeCache.js +127 -0
  1119. package/Source/Scene/ImplicitSubtreeMetadata.js +191 -0
  1120. package/Source/Scene/ImplicitTileCoordinates.js +647 -0
  1121. package/Source/Scene/ImplicitTileset.js +269 -0
  1122. package/Source/Scene/InstanceAttributeSemantic.js +79 -0
  1123. package/Source/Scene/InvertClassification.js +381 -0
  1124. package/Source/Scene/IonImageryProvider.js +346 -0
  1125. package/Source/Scene/IonImageryProviderFactory.js +194 -0
  1126. package/Source/Scene/IonWorldImageryStyle.js +33 -0
  1127. package/Source/Scene/JobScheduler.js +199 -0
  1128. package/Source/Scene/JobType.js +10 -0
  1129. package/Source/Scene/JsonMetadataTable.js +114 -0
  1130. package/Source/Scene/KeyframeNode.js +61 -0
  1131. package/Source/Scene/Label.js +1618 -0
  1132. package/Source/Scene/LabelCollection.js +1032 -0
  1133. package/Source/Scene/LabelStyle.js +33 -0
  1134. package/Source/Scene/Light.js +34 -0
  1135. package/Source/Scene/MapMode2D.js +23 -0
  1136. package/Source/Scene/MapboxImageryProvider.js +332 -0
  1137. package/Source/Scene/MapboxStyleImageryProvider.js +342 -0
  1138. package/Source/Scene/Material.js +1929 -0
  1139. package/Source/Scene/MaterialAppearance.js +328 -0
  1140. package/Source/Scene/Megatexture.js +550 -0
  1141. package/Source/Scene/MetadataClass.js +202 -0
  1142. package/Source/Scene/MetadataClassProperty.js +1191 -0
  1143. package/Source/Scene/MetadataComponentType.js +469 -0
  1144. package/Source/Scene/MetadataEntity.js +425 -0
  1145. package/Source/Scene/MetadataEnum.js +219 -0
  1146. package/Source/Scene/MetadataEnumValue.js +131 -0
  1147. package/Source/Scene/MetadataPicking.js +396 -0
  1148. package/Source/Scene/MetadataSchema.js +202 -0
  1149. package/Source/Scene/MetadataSchemaLoader.js +135 -0
  1150. package/Source/Scene/MetadataSemantic.js +153 -0
  1151. package/Source/Scene/MetadataTable.js +357 -0
  1152. package/Source/Scene/MetadataTableProperty.js +840 -0
  1153. package/Source/Scene/MetadataType.js +220 -0
  1154. package/Source/Scene/Model/AlphaPipelineStage.js +51 -0
  1155. package/Source/Scene/Model/AtmospherePipelineStage.js +64 -0
  1156. package/Source/Scene/Model/B3dmLoader.js +368 -0
  1157. package/Source/Scene/Model/BatchTexturePipelineStage.js +71 -0
  1158. package/Source/Scene/Model/CPUStylingPipelineStage.js +77 -0
  1159. package/Source/Scene/Model/CartesianRectangle.js +108 -0
  1160. package/Source/Scene/Model/ClassificationModelDrawCommand.js +534 -0
  1161. package/Source/Scene/Model/ClassificationPipelineStage.js +132 -0
  1162. package/Source/Scene/Model/CustomShader.js +469 -0
  1163. package/Source/Scene/Model/CustomShaderMode.js +40 -0
  1164. package/Source/Scene/Model/CustomShaderPipelineStage.js +667 -0
  1165. package/Source/Scene/Model/CustomShaderTranslucencyMode.js +35 -0
  1166. package/Source/Scene/Model/DequantizationPipelineStage.js +178 -0
  1167. package/Source/Scene/Model/EdgeDetectionPipelineStage.js +42 -0
  1168. package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +800 -0
  1169. package/Source/Scene/Model/Extensions/Gpm/AnchorPointDirect.js +61 -0
  1170. package/Source/Scene/Model/Extensions/Gpm/AnchorPointIndirect.js +77 -0
  1171. package/Source/Scene/Model/Extensions/Gpm/CorrelationGroup.js +81 -0
  1172. package/Source/Scene/Model/Extensions/Gpm/GltfGpmLoader.js +248 -0
  1173. package/Source/Scene/Model/Extensions/Gpm/GltfGpmLocal.js +179 -0
  1174. package/Source/Scene/Model/Extensions/Gpm/GltfMeshPrimitiveGpmLoader.js +543 -0
  1175. package/Source/Scene/Model/Extensions/Gpm/MeshPrimitiveGpmLocal.js +28 -0
  1176. package/Source/Scene/Model/Extensions/Gpm/PpeMetadata.js +79 -0
  1177. package/Source/Scene/Model/Extensions/Gpm/PpeSource.js +75 -0
  1178. package/Source/Scene/Model/Extensions/Gpm/PpeTexture.js +127 -0
  1179. package/Source/Scene/Model/Extensions/Gpm/Spdcf.js +103 -0
  1180. package/Source/Scene/Model/Extensions/Gpm/StorageType.js +30 -0
  1181. package/Source/Scene/Model/FeatureIdPipelineStage.js +523 -0
  1182. package/Source/Scene/Model/GeoJsonLoader.js +697 -0
  1183. package/Source/Scene/Model/GeometryPipelineStage.js +529 -0
  1184. package/Source/Scene/Model/I3dmLoader.js +883 -0
  1185. package/Source/Scene/Model/ImageBasedLightingPipelineStage.js +168 -0
  1186. package/Source/Scene/Model/ImageryConfiguration.js +26 -0
  1187. package/Source/Scene/Model/ImageryCoverage.js +488 -0
  1188. package/Source/Scene/Model/ImageryFlags.js +31 -0
  1189. package/Source/Scene/Model/ImageryInput.js +60 -0
  1190. package/Source/Scene/Model/ImageryPipelineStage.js +1046 -0
  1191. package/Source/Scene/Model/InstancingPipelineStage.js +1056 -0
  1192. package/Source/Scene/Model/LightingModel.js +30 -0
  1193. package/Source/Scene/Model/LightingPipelineStage.js +73 -0
  1194. package/Source/Scene/Model/MappedPositions.js +84 -0
  1195. package/Source/Scene/Model/MaterialPipelineStage.js +869 -0
  1196. package/Source/Scene/Model/MetadataPickingPipelineStage.js +96 -0
  1197. package/Source/Scene/Model/MetadataPipelineStage.js +657 -0
  1198. package/Source/Scene/Model/Model.js +3340 -0
  1199. package/Source/Scene/Model/Model3DTileContent.js +551 -0
  1200. package/Source/Scene/Model/ModelAlphaOptions.js +26 -0
  1201. package/Source/Scene/Model/ModelAnimation.js +421 -0
  1202. package/Source/Scene/Model/ModelAnimationChannel.js +294 -0
  1203. package/Source/Scene/Model/ModelAnimationCollection.js +553 -0
  1204. package/Source/Scene/Model/ModelArticulation.js +214 -0
  1205. package/Source/Scene/Model/ModelArticulationStage.js +261 -0
  1206. package/Source/Scene/Model/ModelClippingPlanesPipelineStage.js +126 -0
  1207. package/Source/Scene/Model/ModelClippingPolygonsPipelineStage.js +98 -0
  1208. package/Source/Scene/Model/ModelColorPipelineStage.js +98 -0
  1209. package/Source/Scene/Model/ModelDrawCommand.js +922 -0
  1210. package/Source/Scene/Model/ModelDrawCommands.js +218 -0
  1211. package/Source/Scene/Model/ModelFeature.js +229 -0
  1212. package/Source/Scene/Model/ModelFeatureTable.js +316 -0
  1213. package/Source/Scene/Model/ModelImagery.js +410 -0
  1214. package/Source/Scene/Model/ModelImageryMapping.js +489 -0
  1215. package/Source/Scene/Model/ModelLightingOptions.js +29 -0
  1216. package/Source/Scene/Model/ModelMatrixUpdateStage.js +120 -0
  1217. package/Source/Scene/Model/ModelNode.js +125 -0
  1218. package/Source/Scene/Model/ModelPrimitiveImagery.js +972 -0
  1219. package/Source/Scene/Model/ModelReader.js +810 -0
  1220. package/Source/Scene/Model/ModelRenderResources.js +119 -0
  1221. package/Source/Scene/Model/ModelRuntimeNode.js +648 -0
  1222. package/Source/Scene/Model/ModelRuntimePrimitive.js +380 -0
  1223. package/Source/Scene/Model/ModelSceneGraph.js +1098 -0
  1224. package/Source/Scene/Model/ModelSilhouettePipelineStage.js +109 -0
  1225. package/Source/Scene/Model/ModelSkin.js +180 -0
  1226. package/Source/Scene/Model/ModelSplitterPipelineStage.js +65 -0
  1227. package/Source/Scene/Model/ModelStatistics.js +225 -0
  1228. package/Source/Scene/Model/ModelType.js +94 -0
  1229. package/Source/Scene/Model/ModelUtility.js +395 -0
  1230. package/Source/Scene/Model/MorphTargetsPipelineStage.js +249 -0
  1231. package/Source/Scene/Model/NodeRenderResources.js +170 -0
  1232. package/Source/Scene/Model/NodeStatisticsPipelineStage.js +75 -0
  1233. package/Source/Scene/Model/PickingPipelineStage.js +218 -0
  1234. package/Source/Scene/Model/PntsLoader.js +716 -0
  1235. package/Source/Scene/Model/PointCloudStylingPipelineStage.js +392 -0
  1236. package/Source/Scene/Model/PrimitiveOutlineGenerator.js +689 -0
  1237. package/Source/Scene/Model/PrimitiveOutlinePipelineStage.js +99 -0
  1238. package/Source/Scene/Model/PrimitiveRenderResources.js +297 -0
  1239. package/Source/Scene/Model/PrimitiveStatisticsPipelineStage.js +253 -0
  1240. package/Source/Scene/Model/SceneMode2DPipelineStage.js +301 -0
  1241. package/Source/Scene/Model/SelectedFeatureIdPipelineStage.js +180 -0
  1242. package/Source/Scene/Model/SkinningPipelineStage.js +118 -0
  1243. package/Source/Scene/Model/StyleCommandsNeeded.js +29 -0
  1244. package/Source/Scene/Model/TextureManager.js +244 -0
  1245. package/Source/Scene/Model/TextureUniform.js +71 -0
  1246. package/Source/Scene/Model/TilesetPipelineStage.js +73 -0
  1247. package/Source/Scene/Model/UniformType.js +124 -0
  1248. package/Source/Scene/Model/VaryingType.js +61 -0
  1249. package/Source/Scene/Model/VerticalExaggerationPipelineStage.js +58 -0
  1250. package/Source/Scene/Model/WireframePipelineStage.js +118 -0
  1251. package/Source/Scene/Model/pickModel.js +425 -0
  1252. package/Source/Scene/ModelAnimationLoop.js +33 -0
  1253. package/Source/Scene/ModelAnimationState.js +9 -0
  1254. package/Source/Scene/ModelComponents.js +1662 -0
  1255. package/Source/Scene/Moon.js +175 -0
  1256. package/Source/Scene/Multiple3DTileContent.js +722 -0
  1257. package/Source/Scene/NeverTileDiscardPolicy.js +28 -0
  1258. package/Source/Scene/OIT.js +946 -0
  1259. package/Source/Scene/OpenStreetMapImageryProvider.js +128 -0
  1260. package/Source/Scene/OrderedGroundPrimitiveCollection.js +218 -0
  1261. package/Source/Scene/Particle.js +149 -0
  1262. package/Source/Scene/ParticleBurst.js +51 -0
  1263. package/Source/Scene/ParticleEmitter.js +36 -0
  1264. package/Source/Scene/ParticleSystem.js +885 -0
  1265. package/Source/Scene/PerInstanceColorAppearance.js +296 -0
  1266. package/Source/Scene/PerformanceDisplay.js +120 -0
  1267. package/Source/Scene/PickDepth.js +125 -0
  1268. package/Source/Scene/PickDepthFramebuffer.js +79 -0
  1269. package/Source/Scene/PickFramebuffer.js +255 -0
  1270. package/Source/Scene/PickedMetadataInfo.js +57 -0
  1271. package/Source/Scene/Picking.js +1683 -0
  1272. package/Source/Scene/PntsParser.js +547 -0
  1273. package/Source/Scene/PointCloud.js +1412 -0
  1274. package/Source/Scene/PointCloudEyeDomeLighting.js +284 -0
  1275. package/Source/Scene/PointCloudShading.js +104 -0
  1276. package/Source/Scene/PointPrimitive.js +690 -0
  1277. package/Source/Scene/PointPrimitiveCollection.js +1223 -0
  1278. package/Source/Scene/Polyline.js +431 -0
  1279. package/Source/Scene/PolylineCollection.js +1950 -0
  1280. package/Source/Scene/PolylineColorAppearance.js +220 -0
  1281. package/Source/Scene/PolylineMaterialAppearance.js +231 -0
  1282. package/Source/Scene/PostProcessStage.js +1000 -0
  1283. package/Source/Scene/PostProcessStageCollection.js +900 -0
  1284. package/Source/Scene/PostProcessStageComposite.js +359 -0
  1285. package/Source/Scene/PostProcessStageLibrary.js +826 -0
  1286. package/Source/Scene/PostProcessStageSampleMode.js +22 -0
  1287. package/Source/Scene/PostProcessStageTextureCache.js +454 -0
  1288. package/Source/Scene/Primitive.js +2504 -0
  1289. package/Source/Scene/PrimitiveCollection.js +532 -0
  1290. package/Source/Scene/PrimitiveLoadPlan.js +303 -0
  1291. package/Source/Scene/PrimitivePipeline.js +854 -0
  1292. package/Source/Scene/PrimitiveState.js +136 -0
  1293. package/Source/Scene/PropertyAttribute.js +160 -0
  1294. package/Source/Scene/PropertyAttributeProperty.js +177 -0
  1295. package/Source/Scene/PropertyTable.js +536 -0
  1296. package/Source/Scene/PropertyTexture.js +162 -0
  1297. package/Source/Scene/PropertyTextureProperty.js +304 -0
  1298. package/Source/Scene/QuadtreeOccluders.js +30 -0
  1299. package/Source/Scene/QuadtreePrimitive.js +1575 -0
  1300. package/Source/Scene/QuadtreeTile.js +729 -0
  1301. package/Source/Scene/QuadtreeTileLoadState.js +39 -0
  1302. package/Source/Scene/QuadtreeTileProvider.js +212 -0
  1303. package/Source/Scene/ResourceCache.js +824 -0
  1304. package/Source/Scene/ResourceCacheKey.js +601 -0
  1305. package/Source/Scene/ResourceCacheStatistics.js +149 -0
  1306. package/Source/Scene/ResourceLoader.js +127 -0
  1307. package/Source/Scene/ResourceLoaderState.js +56 -0
  1308. package/Source/Scene/SDFSettings.js +39 -0
  1309. package/Source/Scene/Scene.js +5280 -0
  1310. package/Source/Scene/SceneFramebuffer.js +106 -0
  1311. package/Source/Scene/SceneMode.js +56 -0
  1312. package/Source/Scene/SceneTransforms.js +463 -0
  1313. package/Source/Scene/SceneTransitioner.js +1111 -0
  1314. package/Source/Scene/ScreenSpaceCameraController.js +3098 -0
  1315. package/Source/Scene/SensorVolumePortionToDisplay.js +69 -0
  1316. package/Source/Scene/ShadowMap.js +1957 -0
  1317. package/Source/Scene/ShadowMapShader.js +395 -0
  1318. package/Source/Scene/ShadowMode.js +78 -0
  1319. package/Source/Scene/ShadowVolumeAppearance.js +936 -0
  1320. package/Source/Scene/SingleTileImageryProvider.js +380 -0
  1321. package/Source/Scene/SkyAtmosphere.js +400 -0
  1322. package/Source/Scene/SkyBox.js +289 -0
  1323. package/Source/Scene/SpatialNode.js +377 -0
  1324. package/Source/Scene/SpecularEnvironmentCubeMap.js +240 -0
  1325. package/Source/Scene/SphereEmitter.js +65 -0
  1326. package/Source/Scene/SplitDirection.js +34 -0
  1327. package/Source/Scene/Splitter.js +49 -0
  1328. package/Source/Scene/StencilConstants.js +37 -0
  1329. package/Source/Scene/StencilFunction.js +73 -0
  1330. package/Source/Scene/StencilOperation.js +73 -0
  1331. package/Source/Scene/StructuralMetadata.js +243 -0
  1332. package/Source/Scene/StyleExpression.js +86 -0
  1333. package/Source/Scene/Sun.js +363 -0
  1334. package/Source/Scene/SunLight.js +31 -0
  1335. package/Source/Scene/SunPostProcess.js +288 -0
  1336. package/Source/Scene/SupportedImageFormats.js +18 -0
  1337. package/Source/Scene/Terrain.js +245 -0
  1338. package/Source/Scene/TerrainFillMesh.js +2222 -0
  1339. package/Source/Scene/TerrainState.js +13 -0
  1340. package/Source/Scene/TileBoundingRegion.js +489 -0
  1341. package/Source/Scene/TileBoundingS2Cell.js +699 -0
  1342. package/Source/Scene/TileBoundingSphere.js +167 -0
  1343. package/Source/Scene/TileBoundingVolume.js +68 -0
  1344. package/Source/Scene/TileCoordinatesImageryProvider.js +269 -0
  1345. package/Source/Scene/TileDiscardPolicy.js +34 -0
  1346. package/Source/Scene/TileImagery.js +126 -0
  1347. package/Source/Scene/TileMapServiceImageryProvider.js +442 -0
  1348. package/Source/Scene/TileMetadata.js +184 -0
  1349. package/Source/Scene/TileOrientedBoundingBox.js +219 -0
  1350. package/Source/Scene/TileReplacementQueue.js +119 -0
  1351. package/Source/Scene/TileSelectionResult.js +80 -0
  1352. package/Source/Scene/TileState.js +10 -0
  1353. package/Source/Scene/Tileset3DTileContent.js +182 -0
  1354. package/Source/Scene/TilesetMetadata.js +186 -0
  1355. package/Source/Scene/TimeDynamicImagery.js +308 -0
  1356. package/Source/Scene/TimeDynamicPointCloud.js +802 -0
  1357. package/Source/Scene/Tonemapper.js +64 -0
  1358. package/Source/Scene/TranslucentTileClassification.js +514 -0
  1359. package/Source/Scene/TweenCollection.js +585 -0
  1360. package/Source/Scene/UrlTemplateImageryProvider.js +989 -0
  1361. package/Source/Scene/Vector3DTileBatch.js +37 -0
  1362. package/Source/Scene/Vector3DTileClampedPolylines.js +783 -0
  1363. package/Source/Scene/Vector3DTileContent.js +770 -0
  1364. package/Source/Scene/Vector3DTileGeometry.js +497 -0
  1365. package/Source/Scene/Vector3DTilePoints.js +548 -0
  1366. package/Source/Scene/Vector3DTilePolygons.js +479 -0
  1367. package/Source/Scene/Vector3DTilePolylines.js +679 -0
  1368. package/Source/Scene/Vector3DTilePrimitive.js +1276 -0
  1369. package/Source/Scene/VertexAttributeSemantic.js +305 -0
  1370. package/Source/Scene/VerticalOrigin.js +49 -0
  1371. package/Source/Scene/View.js +465 -0
  1372. package/Source/Scene/ViewportQuad.js +182 -0
  1373. package/Source/Scene/ViewshedShadowMap.js +1953 -0
  1374. package/Source/Scene/VoxelBoundsCollection.js +494 -0
  1375. package/Source/Scene/VoxelBoxShape.js +595 -0
  1376. package/Source/Scene/VoxelCell.js +274 -0
  1377. package/Source/Scene/VoxelContent.js +231 -0
  1378. package/Source/Scene/VoxelCylinderShape.js +868 -0
  1379. package/Source/Scene/VoxelEllipsoidShape.js +1174 -0
  1380. package/Source/Scene/VoxelMetadataOrder.js +24 -0
  1381. package/Source/Scene/VoxelPrimitive.js +2169 -0
  1382. package/Source/Scene/VoxelProvider.js +234 -0
  1383. package/Source/Scene/VoxelRenderResources.js +259 -0
  1384. package/Source/Scene/VoxelShape.js +179 -0
  1385. package/Source/Scene/VoxelShapeType.js +105 -0
  1386. package/Source/Scene/VoxelTraversal.js +1264 -0
  1387. package/Source/Scene/WebMapServiceImageryProvider.js +649 -0
  1388. package/Source/Scene/WebMapTileServiceImageryProvider.js +575 -0
  1389. package/Source/Scene/buildVoxelDrawCommands.js +177 -0
  1390. package/Source/Scene/computeFlyToLocationForRectangle.js +74 -0
  1391. package/Source/Scene/createBillboardPointCallback.js +70 -0
  1392. package/Source/Scene/createElevationBandMaterial.js +580 -0
  1393. package/Source/Scene/createGooglePhotorealistic3DTileset.js +116 -0
  1394. package/Source/Scene/createOsmBuildingsAsync.js +79 -0
  1395. package/Source/Scene/createTangentSpaceDebugPrimitive.js +114 -0
  1396. package/Source/Scene/createWorldImageryAsync.js +39 -0
  1397. package/Source/Scene/findContentMetadata.js +51 -0
  1398. package/Source/Scene/findGroupMetadata.js +39 -0
  1399. package/Source/Scene/findTileMetadata.js +53 -0
  1400. package/Source/Scene/getBinaryAccessor.js +56 -0
  1401. package/Source/Scene/getClipAndStyleCode.js +34 -0
  1402. package/Source/Scene/getClippingFunction.js +154 -0
  1403. package/Source/Scene/getMeshPrimitives.js +72 -0
  1404. package/Source/Scene/getMetadataClassProperty.js +43 -0
  1405. package/Source/Scene/getMetadataProperty.js +48 -0
  1406. package/Source/Scene/hasExtension.js +19 -0
  1407. package/Source/Scene/parseBatchTable.js +448 -0
  1408. package/Source/Scene/parseFeatureMetadataLegacy.js +139 -0
  1409. package/Source/Scene/parseStructuralMetadata.js +102 -0
  1410. package/Source/Scene/preprocess3DTileContent.js +102 -0
  1411. package/Source/Scene/processVoxelProperties.js +398 -0
  1412. package/Source/Shaders/AdjustTranslucentFS.glsl +27 -0
  1413. package/Source/Shaders/AdjustTranslucentFS.js +29 -0
  1414. package/Source/Shaders/Appearances/AllMaterialAppearanceFS.glsl +29 -0
  1415. package/Source/Shaders/Appearances/AllMaterialAppearanceFS.js +31 -0
  1416. package/Source/Shaders/Appearances/AllMaterialAppearanceVS.glsl +26 -0
  1417. package/Source/Shaders/Appearances/AllMaterialAppearanceVS.js +28 -0
  1418. package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.glsl +23 -0
  1419. package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.js +25 -0
  1420. package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.glsl +17 -0
  1421. package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.js +19 -0
  1422. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.glsl +33 -0
  1423. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.js +35 -0
  1424. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.glsl +19 -0
  1425. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.js +21 -0
  1426. package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.glsl +24 -0
  1427. package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.js +26 -0
  1428. package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.glsl +20 -0
  1429. package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.js +22 -0
  1430. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.glsl +6 -0
  1431. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.js +8 -0
  1432. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.glsl +15 -0
  1433. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.js +17 -0
  1434. package/Source/Shaders/Appearances/PolylineColorAppearanceVS.glsl +28 -0
  1435. package/Source/Shaders/Appearances/PolylineColorAppearanceVS.js +30 -0
  1436. package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.glsl +33 -0
  1437. package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.js +35 -0
  1438. package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.glsl +25 -0
  1439. package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.js +27 -0
  1440. package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.glsl +20 -0
  1441. package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.js +22 -0
  1442. package/Source/Shaders/AtmosphereCommon.glsl +187 -0
  1443. package/Source/Shaders/AtmosphereCommon.js +189 -0
  1444. package/Source/Shaders/BillboardCollectionFS.glsl +261 -0
  1445. package/Source/Shaders/BillboardCollectionFS.js +262 -0
  1446. package/Source/Shaders/BillboardCollectionVS.glsl +445 -0
  1447. package/Source/Shaders/BillboardCollectionVS.js +447 -0
  1448. package/Source/Shaders/BrdfLutGeneratorFS.glsl +100 -0
  1449. package/Source/Shaders/BrdfLutGeneratorFS.js +102 -0
  1450. package/Source/Shaders/Builtin/Constants/degreesPerRadian.glsl +16 -0
  1451. package/Source/Shaders/Builtin/Constants/degreesPerRadian.js +18 -0
  1452. package/Source/Shaders/Builtin/Constants/depthRange.glsl +14 -0
  1453. package/Source/Shaders/Builtin/Constants/depthRange.js +16 -0
  1454. package/Source/Shaders/Builtin/Constants/epsilon1.glsl +7 -0
  1455. package/Source/Shaders/Builtin/Constants/epsilon1.js +9 -0
  1456. package/Source/Shaders/Builtin/Constants/epsilon2.glsl +7 -0
  1457. package/Source/Shaders/Builtin/Constants/epsilon2.js +9 -0
  1458. package/Source/Shaders/Builtin/Constants/epsilon3.glsl +7 -0
  1459. package/Source/Shaders/Builtin/Constants/epsilon3.js +9 -0
  1460. package/Source/Shaders/Builtin/Constants/epsilon4.glsl +7 -0
  1461. package/Source/Shaders/Builtin/Constants/epsilon4.js +9 -0
  1462. package/Source/Shaders/Builtin/Constants/epsilon5.glsl +7 -0
  1463. package/Source/Shaders/Builtin/Constants/epsilon5.js +9 -0
  1464. package/Source/Shaders/Builtin/Constants/epsilon6.glsl +7 -0
  1465. package/Source/Shaders/Builtin/Constants/epsilon6.js +9 -0
  1466. package/Source/Shaders/Builtin/Constants/epsilon7.glsl +7 -0
  1467. package/Source/Shaders/Builtin/Constants/epsilon7.js +9 -0
  1468. package/Source/Shaders/Builtin/Constants/infinity.glsl +7 -0
  1469. package/Source/Shaders/Builtin/Constants/infinity.js +9 -0
  1470. package/Source/Shaders/Builtin/Constants/oneOverPi.glsl +16 -0
  1471. package/Source/Shaders/Builtin/Constants/oneOverPi.js +18 -0
  1472. package/Source/Shaders/Builtin/Constants/oneOverTwoPi.glsl +16 -0
  1473. package/Source/Shaders/Builtin/Constants/oneOverTwoPi.js +18 -0
  1474. package/Source/Shaders/Builtin/Constants/passCesium3DTile.glsl +9 -0
  1475. package/Source/Shaders/Builtin/Constants/passCesium3DTile.js +11 -0
  1476. package/Source/Shaders/Builtin/Constants/passCesium3DTileClassification.glsl +9 -0
  1477. package/Source/Shaders/Builtin/Constants/passCesium3DTileClassification.js +11 -0
  1478. package/Source/Shaders/Builtin/Constants/passCesium3DTileClassificationIgnoreShow.glsl +9 -0
  1479. package/Source/Shaders/Builtin/Constants/passCesium3DTileClassificationIgnoreShow.js +11 -0
  1480. package/Source/Shaders/Builtin/Constants/passCesium3DTileEdges.glsl +10 -0
  1481. package/Source/Shaders/Builtin/Constants/passCesium3DTileEdges.js +12 -0
  1482. package/Source/Shaders/Builtin/Constants/passClassification.glsl +9 -0
  1483. package/Source/Shaders/Builtin/Constants/passClassification.js +11 -0
  1484. package/Source/Shaders/Builtin/Constants/passCompute.glsl +9 -0
  1485. package/Source/Shaders/Builtin/Constants/passCompute.js +11 -0
  1486. package/Source/Shaders/Builtin/Constants/passEnvironment.glsl +9 -0
  1487. package/Source/Shaders/Builtin/Constants/passEnvironment.js +11 -0
  1488. package/Source/Shaders/Builtin/Constants/passGaussianSplats.glsl +9 -0
  1489. package/Source/Shaders/Builtin/Constants/passGaussianSplats.js +11 -0
  1490. package/Source/Shaders/Builtin/Constants/passGlobe.glsl +9 -0
  1491. package/Source/Shaders/Builtin/Constants/passGlobe.js +11 -0
  1492. package/Source/Shaders/Builtin/Constants/passOpaque.glsl +9 -0
  1493. package/Source/Shaders/Builtin/Constants/passOpaque.js +11 -0
  1494. package/Source/Shaders/Builtin/Constants/passOverlay.glsl +9 -0
  1495. package/Source/Shaders/Builtin/Constants/passOverlay.js +11 -0
  1496. package/Source/Shaders/Builtin/Constants/passTerrainClassification.glsl +9 -0
  1497. package/Source/Shaders/Builtin/Constants/passTerrainClassification.js +11 -0
  1498. package/Source/Shaders/Builtin/Constants/passTranslucent.glsl +9 -0
  1499. package/Source/Shaders/Builtin/Constants/passTranslucent.js +11 -0
  1500. package/Source/Shaders/Builtin/Constants/passVoxels.glsl +9 -0
  1501. package/Source/Shaders/Builtin/Constants/passVoxels.js +11 -0
  1502. package/Source/Shaders/Builtin/Constants/pi.glsl +16 -0
  1503. package/Source/Shaders/Builtin/Constants/pi.js +18 -0
  1504. package/Source/Shaders/Builtin/Constants/piOverFour.glsl +16 -0
  1505. package/Source/Shaders/Builtin/Constants/piOverFour.js +18 -0
  1506. package/Source/Shaders/Builtin/Constants/piOverSix.glsl +16 -0
  1507. package/Source/Shaders/Builtin/Constants/piOverSix.js +18 -0
  1508. package/Source/Shaders/Builtin/Constants/piOverThree.glsl +16 -0
  1509. package/Source/Shaders/Builtin/Constants/piOverThree.js +18 -0
  1510. package/Source/Shaders/Builtin/Constants/piOverTwo.glsl +16 -0
  1511. package/Source/Shaders/Builtin/Constants/piOverTwo.js +18 -0
  1512. package/Source/Shaders/Builtin/Constants/radiansPerDegree.glsl +16 -0
  1513. package/Source/Shaders/Builtin/Constants/radiansPerDegree.js +18 -0
  1514. package/Source/Shaders/Builtin/Constants/sceneMode2D.glsl +11 -0
  1515. package/Source/Shaders/Builtin/Constants/sceneMode2D.js +13 -0
  1516. package/Source/Shaders/Builtin/Constants/sceneMode3D.glsl +11 -0
  1517. package/Source/Shaders/Builtin/Constants/sceneMode3D.js +13 -0
  1518. package/Source/Shaders/Builtin/Constants/sceneModeColumbusView.glsl +11 -0
  1519. package/Source/Shaders/Builtin/Constants/sceneModeColumbusView.js +13 -0
  1520. package/Source/Shaders/Builtin/Constants/sceneModeMorphing.glsl +11 -0
  1521. package/Source/Shaders/Builtin/Constants/sceneModeMorphing.js +13 -0
  1522. package/Source/Shaders/Builtin/Constants/solarRadius.glsl +13 -0
  1523. package/Source/Shaders/Builtin/Constants/solarRadius.js +15 -0
  1524. package/Source/Shaders/Builtin/Constants/threePiOver2.glsl +16 -0
  1525. package/Source/Shaders/Builtin/Constants/threePiOver2.js +18 -0
  1526. package/Source/Shaders/Builtin/Constants/twoPi.glsl +16 -0
  1527. package/Source/Shaders/Builtin/Constants/twoPi.js +18 -0
  1528. package/Source/Shaders/Builtin/Constants/webMercatorMaxLatitude.glsl +16 -0
  1529. package/Source/Shaders/Builtin/Constants/webMercatorMaxLatitude.js +18 -0
  1530. package/Source/Shaders/Builtin/CzmBuiltins.js +280 -0
  1531. package/Source/Shaders/Builtin/Functions/HSBToRGB.glsl +24 -0
  1532. package/Source/Shaders/Builtin/Functions/HSBToRGB.js +26 -0
  1533. package/Source/Shaders/Builtin/Functions/HSLToRGB.glsl +31 -0
  1534. package/Source/Shaders/Builtin/Functions/HSLToRGB.js +33 -0
  1535. package/Source/Shaders/Builtin/Functions/RGBToHSB.glsl +27 -0
  1536. package/Source/Shaders/Builtin/Functions/RGBToHSB.js +29 -0
  1537. package/Source/Shaders/Builtin/Functions/RGBToHSL.glsl +34 -0
  1538. package/Source/Shaders/Builtin/Functions/RGBToHSL.js +36 -0
  1539. package/Source/Shaders/Builtin/Functions/RGBToXYZ.glsl +30 -0
  1540. package/Source/Shaders/Builtin/Functions/RGBToXYZ.js +32 -0
  1541. package/Source/Shaders/Builtin/Functions/XYZToRGB.glsl +30 -0
  1542. package/Source/Shaders/Builtin/Functions/XYZToRGB.js +32 -0
  1543. package/Source/Shaders/Builtin/Functions/acesTonemapping.glsl +16 -0
  1544. package/Source/Shaders/Builtin/Functions/acesTonemapping.js +18 -0
  1545. package/Source/Shaders/Builtin/Functions/alphaWeight.glsl +11 -0
  1546. package/Source/Shaders/Builtin/Functions/alphaWeight.js +13 -0
  1547. package/Source/Shaders/Builtin/Functions/antialias.glsl +39 -0
  1548. package/Source/Shaders/Builtin/Functions/antialias.js +41 -0
  1549. package/Source/Shaders/Builtin/Functions/applyHSBShift.glsl +32 -0
  1550. package/Source/Shaders/Builtin/Functions/applyHSBShift.js +34 -0
  1551. package/Source/Shaders/Builtin/Functions/approximateSphericalCoordinates.glsl +18 -0
  1552. package/Source/Shaders/Builtin/Functions/approximateSphericalCoordinates.js +20 -0
  1553. package/Source/Shaders/Builtin/Functions/approximateTanh.glsl +10 -0
  1554. package/Source/Shaders/Builtin/Functions/approximateTanh.js +12 -0
  1555. package/Source/Shaders/Builtin/Functions/backFacing.glsl +13 -0
  1556. package/Source/Shaders/Builtin/Functions/backFacing.js +15 -0
  1557. package/Source/Shaders/Builtin/Functions/branchFreeTernary.glsl +71 -0
  1558. package/Source/Shaders/Builtin/Functions/branchFreeTernary.js +73 -0
  1559. package/Source/Shaders/Builtin/Functions/cascadeColor.glsl +8 -0
  1560. package/Source/Shaders/Builtin/Functions/cascadeColor.js +10 -0
  1561. package/Source/Shaders/Builtin/Functions/cascadeDistance.glsl +7 -0
  1562. package/Source/Shaders/Builtin/Functions/cascadeDistance.js +9 -0
  1563. package/Source/Shaders/Builtin/Functions/cascadeMatrix.glsl +10 -0
  1564. package/Source/Shaders/Builtin/Functions/cascadeMatrix.js +12 -0
  1565. package/Source/Shaders/Builtin/Functions/cascadeWeights.glsl +10 -0
  1566. package/Source/Shaders/Builtin/Functions/cascadeWeights.js +12 -0
  1567. package/Source/Shaders/Builtin/Functions/clipPolygons.glsl +37 -0
  1568. package/Source/Shaders/Builtin/Functions/clipPolygons.js +39 -0
  1569. package/Source/Shaders/Builtin/Functions/columbusViewMorph.glsl +12 -0
  1570. package/Source/Shaders/Builtin/Functions/columbusViewMorph.js +14 -0
  1571. package/Source/Shaders/Builtin/Functions/computeAtmosphereColor.glsl +88 -0
  1572. package/Source/Shaders/Builtin/Functions/computeAtmosphereColor.js +90 -0
  1573. package/Source/Shaders/Builtin/Functions/computeGroundAtmosphereScattering.glsl +30 -0
  1574. package/Source/Shaders/Builtin/Functions/computeGroundAtmosphereScattering.js +32 -0
  1575. package/Source/Shaders/Builtin/Functions/computePosition.glsl +22 -0
  1576. package/Source/Shaders/Builtin/Functions/computePosition.js +24 -0
  1577. package/Source/Shaders/Builtin/Functions/computeScattering.glsl +149 -0
  1578. package/Source/Shaders/Builtin/Functions/computeScattering.js +151 -0
  1579. package/Source/Shaders/Builtin/Functions/cosineAndSine.glsl +211 -0
  1580. package/Source/Shaders/Builtin/Functions/cosineAndSine.js +213 -0
  1581. package/Source/Shaders/Builtin/Functions/decompressTextureCoordinates.glsl +17 -0
  1582. package/Source/Shaders/Builtin/Functions/decompressTextureCoordinates.js +19 -0
  1583. package/Source/Shaders/Builtin/Functions/depthClamp.glsl +47 -0
  1584. package/Source/Shaders/Builtin/Functions/depthClamp.js +49 -0
  1585. package/Source/Shaders/Builtin/Functions/eastNorthUpToEyeCoordinates.glsl +33 -0
  1586. package/Source/Shaders/Builtin/Functions/eastNorthUpToEyeCoordinates.js +35 -0
  1587. package/Source/Shaders/Builtin/Functions/ellipsoidContainsPoint.glsl +12 -0
  1588. package/Source/Shaders/Builtin/Functions/ellipsoidContainsPoint.js +14 -0
  1589. package/Source/Shaders/Builtin/Functions/ellipsoidTextureCoordinates.glsl +10 -0
  1590. package/Source/Shaders/Builtin/Functions/ellipsoidTextureCoordinates.js +12 -0
  1591. package/Source/Shaders/Builtin/Functions/equalsEpsilon.glsl +36 -0
  1592. package/Source/Shaders/Builtin/Functions/equalsEpsilon.js +38 -0
  1593. package/Source/Shaders/Builtin/Functions/eyeOffset.glsl +20 -0
  1594. package/Source/Shaders/Builtin/Functions/eyeOffset.js +22 -0
  1595. package/Source/Shaders/Builtin/Functions/eyeToWindowCoordinates.glsl +32 -0
  1596. package/Source/Shaders/Builtin/Functions/eyeToWindowCoordinates.js +34 -0
  1597. package/Source/Shaders/Builtin/Functions/fastApproximateAtan.glsl +55 -0
  1598. package/Source/Shaders/Builtin/Functions/fastApproximateAtan.js +57 -0
  1599. package/Source/Shaders/Builtin/Functions/fog.glsl +38 -0
  1600. package/Source/Shaders/Builtin/Functions/fog.js +40 -0
  1601. package/Source/Shaders/Builtin/Functions/gammaCorrect.glsl +22 -0
  1602. package/Source/Shaders/Builtin/Functions/gammaCorrect.js +24 -0
  1603. package/Source/Shaders/Builtin/Functions/geodeticSurfaceNormal.glsl +16 -0
  1604. package/Source/Shaders/Builtin/Functions/geodeticSurfaceNormal.js +18 -0
  1605. package/Source/Shaders/Builtin/Functions/getDefaultMaterial.glsl +27 -0
  1606. package/Source/Shaders/Builtin/Functions/getDefaultMaterial.js +29 -0
  1607. package/Source/Shaders/Builtin/Functions/getDynamicAtmosphereLightDirection.glsl +22 -0
  1608. package/Source/Shaders/Builtin/Functions/getDynamicAtmosphereLightDirection.js +24 -0
  1609. package/Source/Shaders/Builtin/Functions/getLambertDiffuse.glsl +22 -0
  1610. package/Source/Shaders/Builtin/Functions/getLambertDiffuse.js +24 -0
  1611. package/Source/Shaders/Builtin/Functions/getSpecular.glsl +29 -0
  1612. package/Source/Shaders/Builtin/Functions/getSpecular.js +31 -0
  1613. package/Source/Shaders/Builtin/Functions/getWaterNoise.glsl +37 -0
  1614. package/Source/Shaders/Builtin/Functions/getWaterNoise.js +39 -0
  1615. package/Source/Shaders/Builtin/Functions/hue.glsl +30 -0
  1616. package/Source/Shaders/Builtin/Functions/hue.js +32 -0
  1617. package/Source/Shaders/Builtin/Functions/inverseGamma.glsl +12 -0
  1618. package/Source/Shaders/Builtin/Functions/inverseGamma.js +14 -0
  1619. package/Source/Shaders/Builtin/Functions/isEmpty.glsl +19 -0
  1620. package/Source/Shaders/Builtin/Functions/isEmpty.js +21 -0
  1621. package/Source/Shaders/Builtin/Functions/isFull.glsl +19 -0
  1622. package/Source/Shaders/Builtin/Functions/isFull.js +21 -0
  1623. package/Source/Shaders/Builtin/Functions/latitudeToWebMercatorFraction.glsl +21 -0
  1624. package/Source/Shaders/Builtin/Functions/latitudeToWebMercatorFraction.js +23 -0
  1625. package/Source/Shaders/Builtin/Functions/lineDistance.glsl +14 -0
  1626. package/Source/Shaders/Builtin/Functions/lineDistance.js +16 -0
  1627. package/Source/Shaders/Builtin/Functions/linearToSrgb.glsl +16 -0
  1628. package/Source/Shaders/Builtin/Functions/linearToSrgb.js +18 -0
  1629. package/Source/Shaders/Builtin/Functions/luminance.glsl +20 -0
  1630. package/Source/Shaders/Builtin/Functions/luminance.js +22 -0
  1631. package/Source/Shaders/Builtin/Functions/maximumComponent.glsl +21 -0
  1632. package/Source/Shaders/Builtin/Functions/maximumComponent.js +23 -0
  1633. package/Source/Shaders/Builtin/Functions/metersPerPixel.glsl +61 -0
  1634. package/Source/Shaders/Builtin/Functions/metersPerPixel.js +63 -0
  1635. package/Source/Shaders/Builtin/Functions/modelToWindowCoordinates.glsl +38 -0
  1636. package/Source/Shaders/Builtin/Functions/modelToWindowCoordinates.js +40 -0
  1637. package/Source/Shaders/Builtin/Functions/multiplyWithColorBalance.glsl +18 -0
  1638. package/Source/Shaders/Builtin/Functions/multiplyWithColorBalance.js +20 -0
  1639. package/Source/Shaders/Builtin/Functions/nearFarScalar.glsl +26 -0
  1640. package/Source/Shaders/Builtin/Functions/nearFarScalar.js +28 -0
  1641. package/Source/Shaders/Builtin/Functions/octDecode.glsl +83 -0
  1642. package/Source/Shaders/Builtin/Functions/octDecode.js +85 -0
  1643. package/Source/Shaders/Builtin/Functions/packDepth.glsl +18 -0
  1644. package/Source/Shaders/Builtin/Functions/packDepth.js +20 -0
  1645. package/Source/Shaders/Builtin/Functions/pbrLighting.glsl +164 -0
  1646. package/Source/Shaders/Builtin/Functions/pbrLighting.js +166 -0
  1647. package/Source/Shaders/Builtin/Functions/pbrNeutralTonemapping.glsl +23 -0
  1648. package/Source/Shaders/Builtin/Functions/pbrNeutralTonemapping.js +25 -0
  1649. package/Source/Shaders/Builtin/Functions/phong.glsl +63 -0
  1650. package/Source/Shaders/Builtin/Functions/phong.js +65 -0
  1651. package/Source/Shaders/Builtin/Functions/planeDistance.glsl +28 -0
  1652. package/Source/Shaders/Builtin/Functions/planeDistance.js +30 -0
  1653. package/Source/Shaders/Builtin/Functions/pointAlongRay.glsl +19 -0
  1654. package/Source/Shaders/Builtin/Functions/pointAlongRay.js +21 -0
  1655. package/Source/Shaders/Builtin/Functions/rayEllipsoidIntersectionInterval.glsl +83 -0
  1656. package/Source/Shaders/Builtin/Functions/rayEllipsoidIntersectionInterval.js +85 -0
  1657. package/Source/Shaders/Builtin/Functions/raySphereIntersectionInterval.glsl +36 -0
  1658. package/Source/Shaders/Builtin/Functions/raySphereIntersectionInterval.js +38 -0
  1659. package/Source/Shaders/Builtin/Functions/readDepth.glsl +4 -0
  1660. package/Source/Shaders/Builtin/Functions/readDepth.js +6 -0
  1661. package/Source/Shaders/Builtin/Functions/readNonPerspective.glsl +31 -0
  1662. package/Source/Shaders/Builtin/Functions/readNonPerspective.js +33 -0
  1663. package/Source/Shaders/Builtin/Functions/reverseLogDepth.glsl +11 -0
  1664. package/Source/Shaders/Builtin/Functions/reverseLogDepth.js +13 -0
  1665. package/Source/Shaders/Builtin/Functions/round.glsl +22 -0
  1666. package/Source/Shaders/Builtin/Functions/round.js +24 -0
  1667. package/Source/Shaders/Builtin/Functions/saturation.glsl +22 -0
  1668. package/Source/Shaders/Builtin/Functions/saturation.js +24 -0
  1669. package/Source/Shaders/Builtin/Functions/shadowDepthCompare.glsl +24 -0
  1670. package/Source/Shaders/Builtin/Functions/shadowDepthCompare.js +26 -0
  1671. package/Source/Shaders/Builtin/Functions/shadowVisibility.glsl +66 -0
  1672. package/Source/Shaders/Builtin/Functions/shadowVisibility.js +68 -0
  1673. package/Source/Shaders/Builtin/Functions/signNotZero.glsl +29 -0
  1674. package/Source/Shaders/Builtin/Functions/signNotZero.js +31 -0
  1675. package/Source/Shaders/Builtin/Functions/sphericalHarmonics.glsl +44 -0
  1676. package/Source/Shaders/Builtin/Functions/sphericalHarmonics.js +46 -0
  1677. package/Source/Shaders/Builtin/Functions/srgbToLinear.glsl +16 -0
  1678. package/Source/Shaders/Builtin/Functions/srgbToLinear.js +18 -0
  1679. package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.glsl +25 -0
  1680. package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.js +27 -0
  1681. package/Source/Shaders/Builtin/Functions/textureCube.glsl +36 -0
  1682. package/Source/Shaders/Builtin/Functions/textureCube.js +37 -0
  1683. package/Source/Shaders/Builtin/Functions/transformPlane.glsl +15 -0
  1684. package/Source/Shaders/Builtin/Functions/transformPlane.js +17 -0
  1685. package/Source/Shaders/Builtin/Functions/translateRelativeToEye.glsl +45 -0
  1686. package/Source/Shaders/Builtin/Functions/translateRelativeToEye.js +47 -0
  1687. package/Source/Shaders/Builtin/Functions/translucentPhong.glsl +27 -0
  1688. package/Source/Shaders/Builtin/Functions/translucentPhong.js +29 -0
  1689. package/Source/Shaders/Builtin/Functions/transpose.glsl +45 -0
  1690. package/Source/Shaders/Builtin/Functions/transpose.js +47 -0
  1691. package/Source/Shaders/Builtin/Functions/unpackClippingExtents.glsl +14 -0
  1692. package/Source/Shaders/Builtin/Functions/unpackClippingExtents.js +15 -0
  1693. package/Source/Shaders/Builtin/Functions/unpackDepth.glsl +16 -0
  1694. package/Source/Shaders/Builtin/Functions/unpackDepth.js +18 -0
  1695. package/Source/Shaders/Builtin/Functions/unpackFloat.glsl +24 -0
  1696. package/Source/Shaders/Builtin/Functions/unpackFloat.js +26 -0
  1697. package/Source/Shaders/Builtin/Functions/unpackUint.glsl +31 -0
  1698. package/Source/Shaders/Builtin/Functions/unpackUint.js +33 -0
  1699. package/Source/Shaders/Builtin/Functions/valueTransform.glsl +38 -0
  1700. package/Source/Shaders/Builtin/Functions/valueTransform.js +40 -0
  1701. package/Source/Shaders/Builtin/Functions/vertexLogDepth.glsl +64 -0
  1702. package/Source/Shaders/Builtin/Functions/vertexLogDepth.js +66 -0
  1703. package/Source/Shaders/Builtin/Functions/windowToEyeCoordinates.glsl +110 -0
  1704. package/Source/Shaders/Builtin/Functions/windowToEyeCoordinates.js +112 -0
  1705. package/Source/Shaders/Builtin/Functions/writeDepthClamp.glsl +24 -0
  1706. package/Source/Shaders/Builtin/Functions/writeDepthClamp.js +26 -0
  1707. package/Source/Shaders/Builtin/Functions/writeLogDepth.glsl +79 -0
  1708. package/Source/Shaders/Builtin/Functions/writeLogDepth.js +81 -0
  1709. package/Source/Shaders/Builtin/Functions/writeNonPerspective.glsl +32 -0
  1710. package/Source/Shaders/Builtin/Functions/writeNonPerspective.js +34 -0
  1711. package/Source/Shaders/Builtin/Structs/depthRangeStruct.glsl +9 -0
  1712. package/Source/Shaders/Builtin/Structs/depthRangeStruct.js +11 -0
  1713. package/Source/Shaders/Builtin/Structs/material.glsl +22 -0
  1714. package/Source/Shaders/Builtin/Structs/material.js +24 -0
  1715. package/Source/Shaders/Builtin/Structs/materialInput.glsl +30 -0
  1716. package/Source/Shaders/Builtin/Structs/materialInput.js +32 -0
  1717. package/Source/Shaders/Builtin/Structs/modelMaterial.glsl +45 -0
  1718. package/Source/Shaders/Builtin/Structs/modelMaterial.js +47 -0
  1719. package/Source/Shaders/Builtin/Structs/modelVertexOutput.glsl +16 -0
  1720. package/Source/Shaders/Builtin/Structs/modelVertexOutput.js +18 -0
  1721. package/Source/Shaders/Builtin/Structs/ray.glsl +11 -0
  1722. package/Source/Shaders/Builtin/Structs/ray.js +13 -0
  1723. package/Source/Shaders/Builtin/Structs/raySegment.glsl +27 -0
  1724. package/Source/Shaders/Builtin/Structs/raySegment.js +29 -0
  1725. package/Source/Shaders/Builtin/Structs/shadowParameters.glsl +15 -0
  1726. package/Source/Shaders/Builtin/Structs/shadowParameters.js +17 -0
  1727. package/Source/Shaders/CloudCollectionFS.glsl +263 -0
  1728. package/Source/Shaders/CloudCollectionFS.js +265 -0
  1729. package/Source/Shaders/CloudCollectionVS.glsl +48 -0
  1730. package/Source/Shaders/CloudCollectionVS.js +50 -0
  1731. package/Source/Shaders/CloudNoiseFS.glsl +92 -0
  1732. package/Source/Shaders/CloudNoiseFS.js +94 -0
  1733. package/Source/Shaders/CloudNoiseVS.glsl +18 -0
  1734. package/Source/Shaders/CloudNoiseVS.js +20 -0
  1735. package/Source/Shaders/CompareAndPackTranslucentDepth.glsl +12 -0
  1736. package/Source/Shaders/CompareAndPackTranslucentDepth.js +14 -0
  1737. package/Source/Shaders/CompositeOITFS.glsl +31 -0
  1738. package/Source/Shaders/CompositeOITFS.js +33 -0
  1739. package/Source/Shaders/ComputeIrradianceFS.glsl +103 -0
  1740. package/Source/Shaders/ComputeIrradianceFS.js +105 -0
  1741. package/Source/Shaders/ComputeRadianceMapFS.glsl +107 -0
  1742. package/Source/Shaders/ComputeRadianceMapFS.js +109 -0
  1743. package/Source/Shaders/ConvolveSpecularMapFS.glsl +70 -0
  1744. package/Source/Shaders/ConvolveSpecularMapFS.js +72 -0
  1745. package/Source/Shaders/ConvolveSpecularMapVS.glsl +24 -0
  1746. package/Source/Shaders/ConvolveSpecularMapVS.js +26 -0
  1747. package/Source/Shaders/DepthPlaneFS.glsl +36 -0
  1748. package/Source/Shaders/DepthPlaneFS.js +38 -0
  1749. package/Source/Shaders/DepthPlaneVS.glsl +11 -0
  1750. package/Source/Shaders/DepthPlaneVS.js +13 -0
  1751. package/Source/Shaders/EllipsoidFS.glsl +104 -0
  1752. package/Source/Shaders/EllipsoidFS.js +106 -0
  1753. package/Source/Shaders/EllipsoidVS.glsl +28 -0
  1754. package/Source/Shaders/EllipsoidVS.js +30 -0
  1755. package/Source/Shaders/FXAA3_11.glsl +650 -0
  1756. package/Source/Shaders/FXAA3_11.js +680 -0
  1757. package/Source/Shaders/GlobeFS.glsl +692 -0
  1758. package/Source/Shaders/GlobeFS.js +694 -0
  1759. package/Source/Shaders/GlobeVS.glsl +286 -0
  1760. package/Source/Shaders/GlobeVS.js +288 -0
  1761. package/Source/Shaders/GroundAtmosphere.glsl +18 -0
  1762. package/Source/Shaders/GroundAtmosphere.js +20 -0
  1763. package/Source/Shaders/Materials/AspectRampMaterial.glsl +11 -0
  1764. package/Source/Shaders/Materials/AspectRampMaterial.js +13 -0
  1765. package/Source/Shaders/Materials/BumpMapMaterial.glsl +29 -0
  1766. package/Source/Shaders/Materials/BumpMapMaterial.js +31 -0
  1767. package/Source/Shaders/Materials/CheckerboardMaterial.glsl +29 -0
  1768. package/Source/Shaders/Materials/CheckerboardMaterial.js +31 -0
  1769. package/Source/Shaders/Materials/DotMaterial.glsl +18 -0
  1770. package/Source/Shaders/Materials/DotMaterial.js +20 -0
  1771. package/Source/Shaders/Materials/ElevationBandMaterial.glsl +74 -0
  1772. package/Source/Shaders/Materials/ElevationBandMaterial.js +76 -0
  1773. package/Source/Shaders/Materials/ElevationContourMaterial.glsl +26 -0
  1774. package/Source/Shaders/Materials/ElevationContourMaterial.js +28 -0
  1775. package/Source/Shaders/Materials/ElevationRampMaterial.glsl +14 -0
  1776. package/Source/Shaders/Materials/ElevationRampMaterial.js +16 -0
  1777. package/Source/Shaders/Materials/FadeMaterial.glsl +37 -0
  1778. package/Source/Shaders/Materials/FadeMaterial.js +39 -0
  1779. package/Source/Shaders/Materials/GridMaterial.glsl +57 -0
  1780. package/Source/Shaders/Materials/GridMaterial.js +59 -0
  1781. package/Source/Shaders/Materials/NormalMapMaterial.glsl +19 -0
  1782. package/Source/Shaders/Materials/NormalMapMaterial.js +21 -0
  1783. package/Source/Shaders/Materials/PolylineArrowMaterial.glsl +63 -0
  1784. package/Source/Shaders/Materials/PolylineArrowMaterial.js +65 -0
  1785. package/Source/Shaders/Materials/PolylineDashMaterial.glsl +39 -0
  1786. package/Source/Shaders/Materials/PolylineDashMaterial.js +41 -0
  1787. package/Source/Shaders/Materials/PolylineGlowMaterial.glsl +25 -0
  1788. package/Source/Shaders/Materials/PolylineGlowMaterial.js +27 -0
  1789. package/Source/Shaders/Materials/PolylineOutlineMaterial.glsl +29 -0
  1790. package/Source/Shaders/Materials/PolylineOutlineMaterial.js +31 -0
  1791. package/Source/Shaders/Materials/RimLightingMaterial.glsl +21 -0
  1792. package/Source/Shaders/Materials/RimLightingMaterial.js +23 -0
  1793. package/Source/Shaders/Materials/SlopeRampMaterial.glsl +11 -0
  1794. package/Source/Shaders/Materials/SlopeRampMaterial.js +13 -0
  1795. package/Source/Shaders/Materials/StripeMaterial.glsl +24 -0
  1796. package/Source/Shaders/Materials/StripeMaterial.js +26 -0
  1797. package/Source/Shaders/Materials/Water.glsl +58 -0
  1798. package/Source/Shaders/Materials/Water.js +60 -0
  1799. package/Source/Shaders/Materials/WaterMaskMaterial.glsl +15 -0
  1800. package/Source/Shaders/Materials/WaterMaskMaterial.js +17 -0
  1801. package/Source/Shaders/Model/AtmosphereStageFS.glsl +108 -0
  1802. package/Source/Shaders/Model/AtmosphereStageFS.js +110 -0
  1803. package/Source/Shaders/Model/AtmosphereStageVS.glsl +12 -0
  1804. package/Source/Shaders/Model/AtmosphereStageVS.js +14 -0
  1805. package/Source/Shaders/Model/CPUStylingStageFS.glsl +49 -0
  1806. package/Source/Shaders/Model/CPUStylingStageFS.js +51 -0
  1807. package/Source/Shaders/Model/CPUStylingStageVS.glsl +30 -0
  1808. package/Source/Shaders/Model/CPUStylingStageVS.js +32 -0
  1809. package/Source/Shaders/Model/CustomShaderStageFS.glsl +18 -0
  1810. package/Source/Shaders/Model/CustomShaderStageFS.js +20 -0
  1811. package/Source/Shaders/Model/CustomShaderStageVS.glsl +19 -0
  1812. package/Source/Shaders/Model/CustomShaderStageVS.js +21 -0
  1813. package/Source/Shaders/Model/EdgeDetectionStageFS.glsl +58 -0
  1814. package/Source/Shaders/Model/EdgeDetectionStageFS.js +60 -0
  1815. package/Source/Shaders/Model/EdgeVisibilityStageFS.glsl +83 -0
  1816. package/Source/Shaders/Model/EdgeVisibilityStageFS.js +85 -0
  1817. package/Source/Shaders/Model/FeatureIdStageFS.glsl +4 -0
  1818. package/Source/Shaders/Model/FeatureIdStageFS.js +6 -0
  1819. package/Source/Shaders/Model/FeatureIdStageVS.glsl +6 -0
  1820. package/Source/Shaders/Model/FeatureIdStageVS.js +8 -0
  1821. package/Source/Shaders/Model/GeometryStageFS.glsl +25 -0
  1822. package/Source/Shaders/Model/GeometryStageFS.js +27 -0
  1823. package/Source/Shaders/Model/GeometryStageVS.glsl +42 -0
  1824. package/Source/Shaders/Model/GeometryStageVS.js +44 -0
  1825. package/Source/Shaders/Model/ImageBasedLightingStageFS.glsl +101 -0
  1826. package/Source/Shaders/Model/ImageBasedLightingStageFS.js +103 -0
  1827. package/Source/Shaders/Model/InstancingStageCommon.glsl +67 -0
  1828. package/Source/Shaders/Model/InstancingStageCommon.js +69 -0
  1829. package/Source/Shaders/Model/InstancingStageVS.glsl +18 -0
  1830. package/Source/Shaders/Model/InstancingStageVS.js +20 -0
  1831. package/Source/Shaders/Model/LegacyInstancingStageVS.glsl +20 -0
  1832. package/Source/Shaders/Model/LegacyInstancingStageVS.js +22 -0
  1833. package/Source/Shaders/Model/LightingStageFS.glsl +120 -0
  1834. package/Source/Shaders/Model/LightingStageFS.js +122 -0
  1835. package/Source/Shaders/Model/MaterialStageFS.glsl +497 -0
  1836. package/Source/Shaders/Model/MaterialStageFS.js +499 -0
  1837. package/Source/Shaders/Model/MetadataStageFS.glsl +9 -0
  1838. package/Source/Shaders/Model/MetadataStageFS.js +11 -0
  1839. package/Source/Shaders/Model/MetadataStageVS.glsl +10 -0
  1840. package/Source/Shaders/Model/MetadataStageVS.js +12 -0
  1841. package/Source/Shaders/Model/ModelClippingPlanesStageFS.glsl +88 -0
  1842. package/Source/Shaders/Model/ModelClippingPlanesStageFS.js +90 -0
  1843. package/Source/Shaders/Model/ModelClippingPolygonsStageFS.glsl +6 -0
  1844. package/Source/Shaders/Model/ModelClippingPolygonsStageFS.js +8 -0
  1845. package/Source/Shaders/Model/ModelClippingPolygonsStageVS.glsl +27 -0
  1846. package/Source/Shaders/Model/ModelClippingPolygonsStageVS.js +29 -0
  1847. package/Source/Shaders/Model/ModelColorStageFS.glsl +7 -0
  1848. package/Source/Shaders/Model/ModelColorStageFS.js +9 -0
  1849. package/Source/Shaders/Model/ModelFS.glsl +133 -0
  1850. package/Source/Shaders/Model/ModelFS.js +135 -0
  1851. package/Source/Shaders/Model/ModelSilhouetteStageFS.glsl +5 -0
  1852. package/Source/Shaders/Model/ModelSilhouetteStageFS.js +6 -0
  1853. package/Source/Shaders/Model/ModelSilhouetteStageVS.glsl +10 -0
  1854. package/Source/Shaders/Model/ModelSilhouetteStageVS.js +12 -0
  1855. package/Source/Shaders/Model/ModelSplitterStageFS.glsl +9 -0
  1856. package/Source/Shaders/Model/ModelSplitterStageFS.js +11 -0
  1857. package/Source/Shaders/Model/ModelVS.glsl +161 -0
  1858. package/Source/Shaders/Model/ModelVS.js +163 -0
  1859. package/Source/Shaders/Model/MorphTargetsStageVS.glsl +15 -0
  1860. package/Source/Shaders/Model/MorphTargetsStageVS.js +16 -0
  1861. package/Source/Shaders/Model/PointCloudStylingStageVS.glsl +45 -0
  1862. package/Source/Shaders/Model/PointCloudStylingStageVS.js +47 -0
  1863. package/Source/Shaders/Model/PrimitiveOutlineStageFS.glsl +15 -0
  1864. package/Source/Shaders/Model/PrimitiveOutlineStageFS.js +17 -0
  1865. package/Source/Shaders/Model/PrimitiveOutlineStageVS.glsl +3 -0
  1866. package/Source/Shaders/Model/PrimitiveOutlineStageVS.js +5 -0
  1867. package/Source/Shaders/Model/SelectedFeatureIdStageCommon.glsl +51 -0
  1868. package/Source/Shaders/Model/SelectedFeatureIdStageCommon.js +53 -0
  1869. package/Source/Shaders/Model/SkinningStageVS.glsl +18 -0
  1870. package/Source/Shaders/Model/SkinningStageVS.js +19 -0
  1871. package/Source/Shaders/Model/VerticalExaggerationStageVS.glsl +39 -0
  1872. package/Source/Shaders/Model/VerticalExaggerationStageVS.js +41 -0
  1873. package/Source/Shaders/PointPrimitiveCollectionFS.glsl +47 -0
  1874. package/Source/Shaders/PointPrimitiveCollectionFS.js +49 -0
  1875. package/Source/Shaders/PointPrimitiveCollectionVS.glsl +185 -0
  1876. package/Source/Shaders/PointPrimitiveCollectionVS.js +187 -0
  1877. package/Source/Shaders/PolygonSignedDistanceFS.glsl +100 -0
  1878. package/Source/Shaders/PolygonSignedDistanceFS.js +101 -0
  1879. package/Source/Shaders/PolylineCommon.glsl +176 -0
  1880. package/Source/Shaders/PolylineCommon.js +178 -0
  1881. package/Source/Shaders/PolylineFS.glsl +25 -0
  1882. package/Source/Shaders/PolylineFS.js +27 -0
  1883. package/Source/Shaders/PolylineShadowVolumeFS.glsl +86 -0
  1884. package/Source/Shaders/PolylineShadowVolumeFS.js +88 -0
  1885. package/Source/Shaders/PolylineShadowVolumeMorphFS.glsl +45 -0
  1886. package/Source/Shaders/PolylineShadowVolumeMorphFS.js +47 -0
  1887. package/Source/Shaders/PolylineShadowVolumeMorphVS.glsl +177 -0
  1888. package/Source/Shaders/PolylineShadowVolumeMorphVS.js +179 -0
  1889. package/Source/Shaders/PolylineShadowVolumeVS.glsl +168 -0
  1890. package/Source/Shaders/PolylineShadowVolumeVS.js +170 -0
  1891. package/Source/Shaders/PolylineVS.glsl +103 -0
  1892. package/Source/Shaders/PolylineVS.js +105 -0
  1893. package/Source/Shaders/PostProcessStages/AcesTonemappingStage.glsl +25 -0
  1894. package/Source/Shaders/PostProcessStages/AcesTonemappingStage.js +27 -0
  1895. package/Source/Shaders/PostProcessStages/AdditiveBlend.glsl +17 -0
  1896. package/Source/Shaders/PostProcessStages/AdditiveBlend.js +19 -0
  1897. package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.glsl +144 -0
  1898. package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.js +146 -0
  1899. package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.glsl +11 -0
  1900. package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.js +13 -0
  1901. package/Source/Shaders/PostProcessStages/BlackAndWhite.glsl +19 -0
  1902. package/Source/Shaders/PostProcessStages/BlackAndWhite.js +21 -0
  1903. package/Source/Shaders/PostProcessStages/BloomComposite.glsl +20 -0
  1904. package/Source/Shaders/PostProcessStages/BloomComposite.js +22 -0
  1905. package/Source/Shaders/PostProcessStages/BrightPass.glsl +30 -0
  1906. package/Source/Shaders/PostProcessStages/BrightPass.js +32 -0
  1907. package/Source/Shaders/PostProcessStages/Brightness.glsl +11 -0
  1908. package/Source/Shaders/PostProcessStages/Brightness.js +13 -0
  1909. package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.glsl +31 -0
  1910. package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.js +33 -0
  1911. package/Source/Shaders/PostProcessStages/ContrastBias.glsl +17 -0
  1912. package/Source/Shaders/PostProcessStages/ContrastBias.js +19 -0
  1913. package/Source/Shaders/PostProcessStages/DepthOfField.glsl +39 -0
  1914. package/Source/Shaders/PostProcessStages/DepthOfField.js +41 -0
  1915. package/Source/Shaders/PostProcessStages/DepthView.glsl +9 -0
  1916. package/Source/Shaders/PostProcessStages/DepthView.js +11 -0
  1917. package/Source/Shaders/PostProcessStages/DepthViewPacked.glsl +14 -0
  1918. package/Source/Shaders/PostProcessStages/DepthViewPacked.js +16 -0
  1919. package/Source/Shaders/PostProcessStages/EdgeDetection.glsl +60 -0
  1920. package/Source/Shaders/PostProcessStages/EdgeDetection.js +62 -0
  1921. package/Source/Shaders/PostProcessStages/FXAA.glsl +21 -0
  1922. package/Source/Shaders/PostProcessStages/FXAA.js +23 -0
  1923. package/Source/Shaders/PostProcessStages/FilmicTonemapping.glsl +40 -0
  1924. package/Source/Shaders/PostProcessStages/FilmicTonemapping.js +42 -0
  1925. package/Source/Shaders/PostProcessStages/GaussianBlur1D.glsl +47 -0
  1926. package/Source/Shaders/PostProcessStages/GaussianBlur1D.js +49 -0
  1927. package/Source/Shaders/PostProcessStages/LensFlare.glsl +153 -0
  1928. package/Source/Shaders/PostProcessStages/LensFlare.js +155 -0
  1929. package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.glsl +28 -0
  1930. package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.js +30 -0
  1931. package/Source/Shaders/PostProcessStages/NightVision.glsl +16 -0
  1932. package/Source/Shaders/PostProcessStages/NightVision.js +18 -0
  1933. package/Source/Shaders/PostProcessStages/PassThrough.glsl +8 -0
  1934. package/Source/Shaders/PostProcessStages/PassThrough.js +10 -0
  1935. package/Source/Shaders/PostProcessStages/PassThroughDepth.glsl +8 -0
  1936. package/Source/Shaders/PostProcessStages/PassThroughDepth.js +10 -0
  1937. package/Source/Shaders/PostProcessStages/PbrNeutralTonemapping.glsl +25 -0
  1938. package/Source/Shaders/PostProcessStages/PbrNeutralTonemapping.js +27 -0
  1939. package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.glsl +61 -0
  1940. package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.js +63 -0
  1941. package/Source/Shaders/PostProcessStages/ReinhardTonemapping.glsl +27 -0
  1942. package/Source/Shaders/PostProcessStages/ReinhardTonemapping.js +29 -0
  1943. package/Source/Shaders/PostProcessStages/Silhouette.glsl +11 -0
  1944. package/Source/Shaders/PostProcessStages/Silhouette.js +13 -0
  1945. package/Source/Shaders/PrimitiveGaussianSplatFS.glsl +18 -0
  1946. package/Source/Shaders/PrimitiveGaussianSplatFS.js +20 -0
  1947. package/Source/Shaders/PrimitiveGaussianSplatVS.glsl +189 -0
  1948. package/Source/Shaders/PrimitiveGaussianSplatVS.js +190 -0
  1949. package/Source/Shaders/ReprojectWebMercatorFS.glsl +8 -0
  1950. package/Source/Shaders/ReprojectWebMercatorFS.js +10 -0
  1951. package/Source/Shaders/ReprojectWebMercatorVS.glsl +12 -0
  1952. package/Source/Shaders/ReprojectWebMercatorVS.js +14 -0
  1953. package/Source/Shaders/ShadowVolumeAppearanceFS.glsl +153 -0
  1954. package/Source/Shaders/ShadowVolumeAppearanceFS.js +155 -0
  1955. package/Source/Shaders/ShadowVolumeAppearanceVS.glsl +101 -0
  1956. package/Source/Shaders/ShadowVolumeAppearanceVS.js +103 -0
  1957. package/Source/Shaders/ShadowVolumeFS.glsl +13 -0
  1958. package/Source/Shaders/ShadowVolumeFS.js +15 -0
  1959. package/Source/Shaders/SkyAtmosphereCommon.glsl +81 -0
  1960. package/Source/Shaders/SkyAtmosphereCommon.js +83 -0
  1961. package/Source/Shaders/SkyAtmosphereFS.glsl +59 -0
  1962. package/Source/Shaders/SkyAtmosphereFS.js +61 -0
  1963. package/Source/Shaders/SkyAtmosphereVS.glsl +32 -0
  1964. package/Source/Shaders/SkyAtmosphereVS.js +34 -0
  1965. package/Source/Shaders/SkyBoxFS.glsl +9 -0
  1966. package/Source/Shaders/SkyBoxFS.js +11 -0
  1967. package/Source/Shaders/SkyBoxVS.glsl +9 -0
  1968. package/Source/Shaders/SkyBoxVS.js +11 -0
  1969. package/Source/Shaders/SunFS.glsl +9 -0
  1970. package/Source/Shaders/SunFS.js +11 -0
  1971. package/Source/Shaders/SunTextureFS.glsl +55 -0
  1972. package/Source/Shaders/SunTextureFS.js +57 -0
  1973. package/Source/Shaders/SunVS.glsl +28 -0
  1974. package/Source/Shaders/SunVS.js +30 -0
  1975. package/Source/Shaders/Vector3DTileClampedPolylinesFS.glsl +48 -0
  1976. package/Source/Shaders/Vector3DTileClampedPolylinesFS.js +50 -0
  1977. package/Source/Shaders/Vector3DTileClampedPolylinesVS.glsl +85 -0
  1978. package/Source/Shaders/Vector3DTileClampedPolylinesVS.js +87 -0
  1979. package/Source/Shaders/Vector3DTilePolylinesVS.glsl +22 -0
  1980. package/Source/Shaders/Vector3DTilePolylinesVS.js +24 -0
  1981. package/Source/Shaders/VectorTileVS.glsl +9 -0
  1982. package/Source/Shaders/VectorTileVS.js +11 -0
  1983. package/Source/Shaders/ViewportQuadFS.glsl +16 -0
  1984. package/Source/Shaders/ViewportQuadFS.js +18 -0
  1985. package/Source/Shaders/ViewportQuadVS.glsl +10 -0
  1986. package/Source/Shaders/ViewportQuadVS.js +12 -0
  1987. package/Source/Shaders/Voxels/IntersectBox.glsl +34 -0
  1988. package/Source/Shaders/Voxels/IntersectBox.js +36 -0
  1989. package/Source/Shaders/Voxels/IntersectCylinder.glsl +142 -0
  1990. package/Source/Shaders/Voxels/IntersectCylinder.js +144 -0
  1991. package/Source/Shaders/Voxels/IntersectDepth.glsl +27 -0
  1992. package/Source/Shaders/Voxels/IntersectDepth.js +29 -0
  1993. package/Source/Shaders/Voxels/IntersectEllipsoid.glsl +330 -0
  1994. package/Source/Shaders/Voxels/IntersectEllipsoid.js +332 -0
  1995. package/Source/Shaders/Voxels/IntersectLongitude.glsl +114 -0
  1996. package/Source/Shaders/Voxels/IntersectLongitude.js +116 -0
  1997. package/Source/Shaders/Voxels/IntersectPlane.glsl +80 -0
  1998. package/Source/Shaders/Voxels/IntersectPlane.js +82 -0
  1999. package/Source/Shaders/Voxels/Intersection.glsl +50 -0
  2000. package/Source/Shaders/Voxels/Intersection.js +52 -0
  2001. package/Source/Shaders/Voxels/IntersectionUtils.glsl +167 -0
  2002. package/Source/Shaders/Voxels/IntersectionUtils.js +169 -0
  2003. package/Source/Shaders/Voxels/Megatexture.glsl +123 -0
  2004. package/Source/Shaders/Voxels/Megatexture.js +125 -0
  2005. package/Source/Shaders/Voxels/Octree.glsl +257 -0
  2006. package/Source/Shaders/Voxels/Octree.js +259 -0
  2007. package/Source/Shaders/Voxels/VoxelFS.glsl +267 -0
  2008. package/Source/Shaders/Voxels/VoxelFS.js +269 -0
  2009. package/Source/Shaders/Voxels/VoxelUtils.glsl +12 -0
  2010. package/Source/Shaders/Voxels/VoxelUtils.js +14 -0
  2011. package/Source/Shaders/Voxels/VoxelVS.glsl +11 -0
  2012. package/Source/Shaders/Voxels/VoxelVS.js +13 -0
  2013. package/Source/Shaders/Voxels/convertLocalToBoxUv.glsl +30 -0
  2014. package/Source/Shaders/Voxels/convertLocalToBoxUv.js +32 -0
  2015. package/Source/Shaders/Voxels/convertLocalToCylinderUv.glsl +97 -0
  2016. package/Source/Shaders/Voxels/convertLocalToCylinderUv.js +99 -0
  2017. package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.glsl +193 -0
  2018. package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.js +195 -0
  2019. package/Source/ThirdParty/Workers/basis_transcoder.js +21 -0
  2020. package/Source/ThirdParty/Workers/package.json +1 -0
  2021. package/Source/ThirdParty/Workers/zip-web-worker.js +1 -0
  2022. package/Source/ThirdParty/basis_transcoder.wasm +0 -0
  2023. package/Source/ThirdParty/draco_decoder.wasm +0 -0
  2024. package/Source/ThirdParty/google-earth-dbroot-parser.js +8337 -0
  2025. package/Source/ThirdParty/wasm_splats_bg.wasm +0 -0
  2026. package/Source/ThirdParty/zip-module.wasm +0 -0
  2027. package/Source/Widget/CesiumWidget.css +119 -0
  2028. package/Source/Widget/CesiumWidget.js +1606 -0
  2029. package/Source/Widget/lighter.css +14 -0
  2030. package/Source/Workers/combineGeometry.js +13 -0
  2031. package/Source/Workers/createBoxGeometry.js +10 -0
  2032. package/Source/Workers/createBoxOutlineGeometry.js +10 -0
  2033. package/Source/Workers/createCircleGeometry.js +18 -0
  2034. package/Source/Workers/createCircleOutlineGeometry.js +18 -0
  2035. package/Source/Workers/createCoplanarPolygonGeometry.js +10 -0
  2036. package/Source/Workers/createCoplanarPolygonOutlineGeometry.js +15 -0
  2037. package/Source/Workers/createCorridorGeometry.js +12 -0
  2038. package/Source/Workers/createCorridorOutlineGeometry.js +17 -0
  2039. package/Source/Workers/createCylinderGeometry.js +10 -0
  2040. package/Source/Workers/createCylinderOutlineGeometry.js +10 -0
  2041. package/Source/Workers/createEllipseGeometry.js +14 -0
  2042. package/Source/Workers/createEllipseOutlineGeometry.js +14 -0
  2043. package/Source/Workers/createEllipsoidGeometry.js +10 -0
  2044. package/Source/Workers/createEllipsoidOutlineGeometry.js +13 -0
  2045. package/Source/Workers/createFrustumGeometry.js +10 -0
  2046. package/Source/Workers/createFrustumOutlineGeometry.js +10 -0
  2047. package/Source/Workers/createGeometry.js +78 -0
  2048. package/Source/Workers/createGroundPolylineGeometry.js +16 -0
  2049. package/Source/Workers/createPlaneGeometry.js +10 -0
  2050. package/Source/Workers/createPlaneOutlineGeometry.js +10 -0
  2051. package/Source/Workers/createPolygonGeometry.js +12 -0
  2052. package/Source/Workers/createPolygonOutlineGeometry.js +12 -0
  2053. package/Source/Workers/createPolylineGeometry.js +12 -0
  2054. package/Source/Workers/createPolylineVolumeGeometry.js +17 -0
  2055. package/Source/Workers/createPolylineVolumeOutlineGeometry.js +22 -0
  2056. package/Source/Workers/createRectangleGeometry.js +14 -0
  2057. package/Source/Workers/createRectangleOutlineGeometry.js +17 -0
  2058. package/Source/Workers/createSimplePolylineGeometry.js +17 -0
  2059. package/Source/Workers/createSphereGeometry.js +10 -0
  2060. package/Source/Workers/createSphereOutlineGeometry.js +10 -0
  2061. package/Source/Workers/createTaskProcessorWorker.js +113 -0
  2062. package/Source/Workers/createVectorTileClampedPolylines.js +541 -0
  2063. package/Source/Workers/createVectorTileGeometries.js +414 -0
  2064. package/Source/Workers/createVectorTilePoints.js +81 -0
  2065. package/Source/Workers/createVectorTilePolygons.js +412 -0
  2066. package/Source/Workers/createVectorTilePolylines.js +210 -0
  2067. package/Source/Workers/createVerticesFromCesium3DTilesTerrain.js +46 -0
  2068. package/Source/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +651 -0
  2069. package/Source/Workers/createVerticesFromHeightmap.js +53 -0
  2070. package/Source/Workers/createVerticesFromQuantizedTerrainMesh.js +549 -0
  2071. package/Source/Workers/createWallGeometry.js +12 -0
  2072. package/Source/Workers/createWallOutlineGeometry.js +12 -0
  2073. package/Source/Workers/decodeDraco.js +383 -0
  2074. package/Source/Workers/decodeGoogleEarthEnterprisePacket.js +268 -0
  2075. package/Source/Workers/decodeI3S.js +1652 -0
  2076. package/Source/Workers/gaussianSplatSorter.js +34 -0
  2077. package/Source/Workers/gaussianSplatTextureGenerator.js +39 -0
  2078. package/Source/Workers/incrementallyBuildTerrainPicker.js +108 -0
  2079. package/Source/Workers/transcodeKTX2.js +308 -0
  2080. package/Source/Workers/transferTypedArrayTest.js +16 -0
  2081. package/Source/Workers/upsampleQuantizedTerrainMesh.js +681 -0
  2082. package/Source/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +55 -0
  2083. package/index.d.ts +46026 -0
  2084. package/index.js +1227 -0
  2085. package/package.json +79 -0
@@ -0,0 +1,2169 @@
1
+ import buildVoxelDrawCommands from "./buildVoxelDrawCommands.js";
2
+ import Cartesian2 from "../Core/Cartesian2.js";
3
+ import Cartesian3 from "../Core/Cartesian3.js";
4
+ import Cartesian4 from "../Core/Cartesian4.js";
5
+ import Cartographic from "../Core/Cartographic.js";
6
+ import Cesium3DTilesetStatistics from "./Cesium3DTilesetStatistics.js";
7
+ import CesiumMath from "../Core/Math.js";
8
+ import Check from "../Core/Check.js";
9
+ import Color from "../Core/Color.js";
10
+ import ClippingPlaneCollection from "./ClippingPlaneCollection.js";
11
+ import clone from "../Core/clone.js";
12
+ import CustomShader from "./Model/CustomShader.js";
13
+ import Frozen from "../Core/Frozen.js";
14
+ import defined from "../Core/defined.js";
15
+ import destroyObject from "../Core/destroyObject.js";
16
+ import Ellipsoid from "../Core/Ellipsoid.js";
17
+ import Event from "../Core/Event.js";
18
+ import JulianDate from "../Core/JulianDate.js";
19
+ import Material from "./Material.js";
20
+ import Matrix3 from "../Core/Matrix3.js";
21
+ import Matrix4 from "../Core/Matrix4.js";
22
+ import MetadataComponentType from "./MetadataComponentType.js";
23
+ import MetadataType from "./MetadataType.js";
24
+ import oneTimeWarning from "../Core/oneTimeWarning.js";
25
+ import PolylineCollection from "./PolylineCollection.js";
26
+ import VerticalExaggeration from "../Core/VerticalExaggeration.js";
27
+ import VoxelContent from "./VoxelContent.js";
28
+ import VoxelShapeType from "./VoxelShapeType.js";
29
+ import VoxelTraversal from "./VoxelTraversal.js";
30
+ import VoxelMetadataOrder from "./VoxelMetadataOrder.js";
31
+
32
+ /**
33
+ * A primitive that renders voxel data from a {@link VoxelProvider}.
34
+ *
35
+ * @alias VoxelPrimitive
36
+ * @constructor
37
+ *
38
+ * @param {object} [options] Object with the following properties:
39
+ * @param {VoxelProvider} [options.provider] The voxel provider that supplies the primitive with tile data.
40
+ * @param {Matrix4} [options.modelMatrix=Matrix4.IDENTITY] The model matrix used to transform the primitive.
41
+ * @param {CustomShader} [options.customShader] The custom shader used to style the primitive.
42
+ * @param {Clock} [options.clock] The clock used to control time dynamic behavior.
43
+ * @param {boolean} [options.calculateStatistics] Generate statistics for performance profile.
44
+ *
45
+ * @see VoxelProvider
46
+ * @see Cesium3DTilesVoxelProvider
47
+ * @see VoxelShapeType
48
+ * @see {@link https://github.com/CesiumGS/cesium/tree/main/Documentation/CustomShaderGuide|Custom Shader Guide}
49
+ *
50
+ * @experimental This feature is not final and is subject to change without Cesium's standard deprecation policy.
51
+ */
52
+ function VoxelPrimitive(options) {
53
+ options = options ?? Frozen.EMPTY_OBJECT;
54
+
55
+ /**
56
+ * @type {boolean}
57
+ * @private
58
+ */
59
+ this._ready = false;
60
+
61
+ /**
62
+ * @type {VoxelProvider}
63
+ * @private
64
+ */
65
+ this._provider = options.provider ?? VoxelPrimitive.DefaultProvider;
66
+
67
+ /**
68
+ * This member is not created until the provider and shape are ready.
69
+ *
70
+ * @type {VoxelTraversal}
71
+ * @private
72
+ */
73
+ this._traversal = undefined;
74
+
75
+ /**
76
+ * @type {Cesium3DTilesetStatistics}
77
+ * @private
78
+ */
79
+ this._statistics = new Cesium3DTilesetStatistics();
80
+
81
+ /**
82
+ * @type {boolean}
83
+ * @private
84
+ */
85
+ this._calculateStatistics = options.calculateStatistics ?? false;
86
+
87
+ /**
88
+ * This member is not created until the provider is ready.
89
+ *
90
+ * @type {VoxelShape}
91
+ * @private
92
+ */
93
+ this._shape = undefined;
94
+
95
+ /**
96
+ * @type {boolean}
97
+ * @private
98
+ */
99
+ this._shapeVisible = false;
100
+
101
+ /**
102
+ * This member is not created until the provider is ready.
103
+ *
104
+ * @type {Cartesian3}
105
+ * @private
106
+ */
107
+ this._dimensions = new Cartesian3();
108
+
109
+ /**
110
+ * This member is not created until the provider is ready.
111
+ *
112
+ * @type {Cartesian3}
113
+ * @private
114
+ */
115
+ this._inputDimensions = new Cartesian3();
116
+
117
+ /**
118
+ * This member is not created until the provider is ready.
119
+ *
120
+ * @type {Cartesian3}
121
+ * @private
122
+ */
123
+ this._paddingBefore = new Cartesian3();
124
+
125
+ /**
126
+ * This member is not created until the provider is ready.
127
+ *
128
+ * @type {Cartesian3}
129
+ * @private
130
+ */
131
+ this._paddingAfter = new Cartesian3();
132
+
133
+ /**
134
+ * This member is not known until the provider is ready.
135
+ *
136
+ * @type {number}
137
+ * @private
138
+ */
139
+ this._availableLevels = 1;
140
+
141
+ /**
142
+ * This member is not known until the provider is ready.
143
+ *
144
+ * @type {Cartesian3}
145
+ * @private
146
+ */
147
+ this._minBounds = new Cartesian3();
148
+
149
+ /**
150
+ * Used to detect if the shape is dirty.
151
+ * This member is not known until the provider is ready.
152
+ *
153
+ * @type {Cartesian3}
154
+ * @private
155
+ */
156
+ this._minBoundsOld = new Cartesian3();
157
+
158
+ /**
159
+ * This member is not known until the provider is ready.
160
+ *
161
+ * @type {Cartesian3}
162
+ * @private
163
+ */
164
+ this._maxBounds = new Cartesian3();
165
+
166
+ /**
167
+ * Used to detect if the shape is dirty.
168
+ * This member is not known until the provider is ready.
169
+ *
170
+ * @type {Cartesian3}
171
+ * @private
172
+ */
173
+ this._maxBoundsOld = new Cartesian3();
174
+
175
+ /**
176
+ * This member is not known until the provider is ready.
177
+ *
178
+ * @type {Cartesian3}
179
+ * @private
180
+ */
181
+ this._minClippingBounds = new Cartesian3();
182
+
183
+ /**
184
+ * Used to detect if the clipping is dirty.
185
+ * This member is not known until the provider is ready.
186
+ *
187
+ * @type {Cartesian3}
188
+ * @private
189
+ */
190
+ this._minClippingBoundsOld = new Cartesian3();
191
+
192
+ /**
193
+ * This member is not known until the provider is ready.
194
+ *
195
+ * @type {Cartesian3}
196
+ * @private
197
+ */
198
+ this._maxClippingBounds = new Cartesian3();
199
+
200
+ /**
201
+ * Used to detect if the clipping is dirty.
202
+ * This member is not known until the provider is ready.
203
+ *
204
+ * @type {Cartesian3}
205
+ * @private
206
+ */
207
+ this._maxClippingBoundsOld = new Cartesian3();
208
+
209
+ /**
210
+ * Vertical exaggeration applied to the voxel shape
211
+ *
212
+ * @type {number}
213
+ * @private
214
+ */
215
+ this._verticalExaggeration = 1.0;
216
+
217
+ /**
218
+ * The height relative to which the shape is exaggerated.
219
+ *
220
+ * @type {number}
221
+ * @private
222
+ */
223
+ this._verticalExaggerationRelativeHeight = 0.0;
224
+
225
+ /**
226
+ * Clipping planes on the primitive
227
+ *
228
+ * @type {ClippingPlaneCollection}
229
+ * @private
230
+ */
231
+ this._clippingPlanes = undefined;
232
+
233
+ /**
234
+ * Keeps track of when the clipping planes change
235
+ *
236
+ * @type {number}
237
+ * @private
238
+ */
239
+ this._clippingPlanesState = 0;
240
+
241
+ /**
242
+ * Keeps track of when the clipping planes are enabled / disabled
243
+ *
244
+ * @type {boolean}
245
+ * @private
246
+ */
247
+ this._clippingPlanesEnabled = false;
248
+
249
+ /**
250
+ * The primitive's model matrix.
251
+ *
252
+ * @type {Matrix4}
253
+ * @private
254
+ */
255
+ this._modelMatrix = Matrix4.clone(options.modelMatrix ?? Matrix4.IDENTITY);
256
+
257
+ /**
258
+ * Used to detect if the model matrix is dirty.
259
+ *
260
+ * @type {Matrix4}
261
+ * @private
262
+ */
263
+ this._modelMatrixOld = Matrix4.clone(this._modelMatrix);
264
+
265
+ /**
266
+ * @type {CustomShader}
267
+ * @private
268
+ */
269
+ this._customShader =
270
+ options.customShader ?? VoxelPrimitive.DefaultCustomShader;
271
+
272
+ /**
273
+ * @type {Event}
274
+ * @private
275
+ */
276
+ this._customShaderCompilationEvent = new Event();
277
+
278
+ /**
279
+ * @type {boolean}
280
+ * @private
281
+ */
282
+ this._shaderDirty = true;
283
+
284
+ /**
285
+ * @type {DrawCommand}
286
+ * @private
287
+ */
288
+ this._drawCommand = undefined;
289
+
290
+ /**
291
+ * @type {DrawCommand}
292
+ * @private
293
+ */
294
+ this._drawCommandPick = undefined;
295
+
296
+ /**
297
+ * @type {object}
298
+ * @private
299
+ */
300
+ this._pickId = undefined;
301
+
302
+ /**
303
+ * @type {Clock}
304
+ * @private
305
+ */
306
+ this._clock = options.clock;
307
+
308
+ // Transforms and other values that are computed when the shape changes
309
+ /**
310
+ * @type {Matrix4}
311
+ * @private
312
+ */
313
+ this._transformPositionLocalToWorld = new Matrix4();
314
+
315
+ /**
316
+ * @type {Matrix4}
317
+ * @private
318
+ */
319
+ this._transformPositionWorldToLocal = new Matrix4();
320
+
321
+ /**
322
+ * Transforms a plane in Hessian normal form from local space to view space.
323
+ * @type {Matrix4}
324
+ * @private
325
+ */
326
+ this._transformPlaneLocalToView = new Matrix4();
327
+
328
+ /**
329
+ * @type {Matrix3}
330
+ * @private
331
+ */
332
+ this._transformDirectionWorldToLocal = new Matrix3();
333
+
334
+ // Rendering
335
+ /**
336
+ * @type {boolean}
337
+ * @private
338
+ */
339
+ this._nearestSampling = false;
340
+
341
+ /**
342
+ * @type {number}
343
+ * @private
344
+ */
345
+ this._levelBlendFactor = 0.0;
346
+
347
+ /**
348
+ * @type {number}
349
+ * @private
350
+ */
351
+ this._stepSizeMultiplier = 1.0;
352
+
353
+ /**
354
+ * @type {boolean}
355
+ * @private
356
+ */
357
+ this._depthTest = true;
358
+
359
+ /**
360
+ * @type {boolean}
361
+ * @private
362
+ */
363
+ this._useLogDepth = undefined;
364
+
365
+ /**
366
+ * @type {number}
367
+ * @private
368
+ */
369
+ this._screenSpaceError = 4.0; // in pixels
370
+
371
+ // Debug / statistics
372
+ /**
373
+ * @type {PolylineCollection}
374
+ * @private
375
+ */
376
+ this._debugPolylines = new PolylineCollection();
377
+
378
+ /**
379
+ * @type {boolean}
380
+ * @private
381
+ */
382
+ this._debugDraw = false;
383
+
384
+ /**
385
+ * @type {boolean}
386
+ * @private
387
+ */
388
+ this._disableRender = false;
389
+
390
+ /**
391
+ * @type {boolean}
392
+ * @private
393
+ */
394
+ this._disableUpdate = false;
395
+
396
+ /**
397
+ * @type {Object<string, any>}
398
+ * @private
399
+ */
400
+ this._uniforms = {
401
+ octreeInternalNodeTexture: undefined,
402
+ octreeInternalNodeTilesPerRow: 0,
403
+ octreeInternalNodeTexelSizeUv: new Cartesian2(),
404
+ octreeLeafNodeTexture: undefined,
405
+ octreeLeafNodeTilesPerRow: 0,
406
+ octreeLeafNodeTexelSizeUv: new Cartesian2(),
407
+ megatextureTextures: [],
408
+ megatextureSliceDimensions: new Cartesian2(),
409
+ megatextureTileDimensions: new Cartesian2(),
410
+ megatextureVoxelSizeUv: new Cartesian2(),
411
+ megatextureSliceSizeUv: new Cartesian2(),
412
+ megatextureTileSizeUv: new Cartesian2(),
413
+ dimensions: new Cartesian3(),
414
+ inputDimensions: new Cartesian3(),
415
+ paddingBefore: new Cartesian3(),
416
+ paddingAfter: new Cartesian3(),
417
+ transformPositionViewToLocal: new Matrix4(),
418
+ transformDirectionViewToLocal: new Matrix3(),
419
+ cameraPositionLocal: new Cartesian3(),
420
+ cameraDirectionLocal: new Cartesian3(),
421
+ cameraTileCoordinates: new Cartesian4(),
422
+ cameraTileUv: new Cartesian3(),
423
+ ndcSpaceAxisAlignedBoundingBox: new Cartesian4(),
424
+ clippingPlanesTexture: undefined,
425
+ clippingPlanesMatrix: new Matrix4(),
426
+ renderBoundPlanesTexture: undefined,
427
+ stepSize: 0,
428
+ pickColor: new Color(),
429
+ };
430
+
431
+ /**
432
+ * Shape specific shader defines from the previous shape update. Used to detect if the shader needs to be rebuilt.
433
+ * @type {Object<string, any>}
434
+ * @private
435
+ */
436
+ this._shapeDefinesOld = {};
437
+
438
+ /**
439
+ * Map uniform names to functions that return the uniform values.
440
+ * @type {Object<string, function():any>}
441
+ * @private
442
+ */
443
+ this._uniformMap = {};
444
+
445
+ const uniforms = this._uniforms;
446
+ const uniformMap = this._uniformMap;
447
+ for (const key in uniforms) {
448
+ if (uniforms.hasOwnProperty(key)) {
449
+ const name = `u_${key}`;
450
+ uniformMap[name] = function () {
451
+ return uniforms[key];
452
+ };
453
+ }
454
+ }
455
+
456
+ /**
457
+ * The event fired to indicate that a tile's content was loaded.
458
+ * <p>
459
+ * This event is fired during the tileset traversal while the frame is being rendered
460
+ * so that updates to the tile take effect in the same frame. Do not create or modify
461
+ * Cesium entities or primitives during the event listener.
462
+ * </p>
463
+ *
464
+ * @type {Event}
465
+ *
466
+ * @example
467
+ * voxelPrimitive.tileLoad.addEventListener(function() {
468
+ * console.log('A tile was loaded.');
469
+ * });
470
+ */
471
+ this.tileLoad = new Event();
472
+
473
+ /**
474
+ * This event fires once for each visible tile in a frame.
475
+ * <p>
476
+ * This event is fired during the traversal while the frame is being rendered.
477
+ *
478
+ * @type {Event}
479
+ *
480
+ * @example
481
+ * voxelPrimitive.tileVisible.addEventListener(function() {
482
+ * console.log('A tile is visible.');
483
+ * });
484
+ *
485
+ */
486
+ this.tileVisible = new Event();
487
+
488
+ /**
489
+ * The event fired to indicate that a tile's content failed to load.
490
+ *
491
+ * @type {Event}
492
+ *
493
+ * @example
494
+ * voxelPrimitive.tileFailed.addEventListener(function() {
495
+ * console.log('An error occurred loading tile.');
496
+ * });
497
+ */
498
+ this.tileFailed = new Event();
499
+
500
+ /**
501
+ * The event fired to indicate that a tile's content was unloaded.
502
+ *
503
+ * @type {Event}
504
+ *
505
+ * @example
506
+ * voxelPrimitive.tileUnload.addEventListener(function() {
507
+ * console.log('A tile was unloaded from the cache.');
508
+ * });
509
+ *
510
+ */
511
+ this.tileUnload = new Event();
512
+
513
+ /**
514
+ * The event fired to indicate progress of loading new tiles. This event is fired when a new tile
515
+ * is requested, when a requested tile is finished downloading, and when a downloaded tile has been
516
+ * processed and is ready to render.
517
+ * <p>
518
+ * The number of pending tile requests, <code>numberOfPendingRequests</code>, and number of tiles
519
+ * processing, <code>numberOfTilesProcessing</code> are passed to the event listener.
520
+ * </p>
521
+ * <p>
522
+ * This event is fired at the end of the frame after the scene is rendered.
523
+ * </p>
524
+ *
525
+ * @type {Event}
526
+ *
527
+ * @example
528
+ * voxelPrimitive.loadProgress.addEventListener(function(numberOfPendingRequests, numberOfTilesProcessing) {
529
+ * if ((numberOfPendingRequests === 0) && (numberOfTilesProcessing === 0)) {
530
+ * console.log('Finished loading');
531
+ * return;
532
+ * }
533
+ *
534
+ * console.log(`Loading: requests: ${numberOfPendingRequests}, processing: ${numberOfTilesProcessing}`);
535
+ * });
536
+ */
537
+ this.loadProgress = new Event();
538
+
539
+ /**
540
+ * The event fired to indicate that all tiles that meet the screen space error this frame are loaded. The voxel
541
+ * primitive is completely loaded for this view.
542
+ * <p>
543
+ * This event is fired at the end of the frame after the scene is rendered.
544
+ * </p>
545
+ *
546
+ * @type {Event}
547
+ *
548
+ * @example
549
+ * voxelPrimitive.allTilesLoaded.addEventListener(function() {
550
+ * console.log('All tiles are loaded');
551
+ * });
552
+ */
553
+ this.allTilesLoaded = new Event();
554
+
555
+ /**
556
+ * The event fired to indicate that all tiles that meet the screen space error this frame are loaded. This event
557
+ * is fired once when all tiles in the initial view are loaded.
558
+ * <p>
559
+ * This event is fired at the end of the frame after the scene is rendered.
560
+ * </p>
561
+ *
562
+ * @type {Event}
563
+ *
564
+ * @example
565
+ * voxelPrimitive.initialTilesLoaded.addEventListener(function() {
566
+ * console.log('Initial tiles are loaded');
567
+ * });
568
+ *
569
+ * @see Cesium3DTileset#allTilesLoaded
570
+ */
571
+ this.initialTilesLoaded = new Event();
572
+
573
+ // If the provider fails to initialize the primitive will fail too.
574
+ const provider = this._provider;
575
+ initialize(this, provider);
576
+ }
577
+
578
+ function initialize(primitive, provider) {
579
+ // Set the bounds
580
+ const {
581
+ shape: shapeType,
582
+ minBounds = VoxelShapeType.getMinBounds(shapeType),
583
+ maxBounds = VoxelShapeType.getMaxBounds(shapeType),
584
+ } = provider;
585
+
586
+ primitive.minBounds = minBounds;
587
+ primitive.maxBounds = maxBounds;
588
+ primitive.minClippingBounds = minBounds.clone();
589
+ primitive.maxClippingBounds = maxBounds.clone();
590
+
591
+ checkTransformAndBounds(primitive);
592
+
593
+ // Create the shape object, and update it so it is valid for VoxelTraversal
594
+ const ShapeConstructor = VoxelShapeType.getShapeConstructor(shapeType);
595
+ primitive._shape = new ShapeConstructor();
596
+ primitive._shapeVisible = updateShapeAndTransforms(primitive);
597
+ }
598
+
599
+ Object.defineProperties(VoxelPrimitive.prototype, {
600
+ /**
601
+ * Gets a value indicating whether or not the primitive is ready for use.
602
+ *
603
+ * @memberof VoxelPrimitive.prototype
604
+ * @type {boolean}
605
+ * @readonly
606
+ */
607
+ ready: {
608
+ get: function () {
609
+ return this._ready;
610
+ },
611
+ },
612
+
613
+ /**
614
+ * Gets the {@link VoxelProvider} associated with this primitive.
615
+ *
616
+ * @memberof VoxelPrimitive.prototype
617
+ * @type {VoxelProvider}
618
+ * @readonly
619
+ */
620
+ provider: {
621
+ get: function () {
622
+ return this._provider;
623
+ },
624
+ },
625
+
626
+ /**
627
+ * Gets the bounding sphere.
628
+ *
629
+ * @memberof VoxelPrimitive.prototype
630
+ * @type {BoundingSphere}
631
+ * @readonly
632
+ */
633
+ boundingSphere: {
634
+ get: function () {
635
+ return this._shape.boundingSphere;
636
+ },
637
+ },
638
+
639
+ /**
640
+ * Gets the oriented bounding box.
641
+ *
642
+ * @memberof VoxelPrimitive.prototype
643
+ * @type {OrientedBoundingBox}
644
+ * @readonly
645
+ */
646
+ orientedBoundingBox: {
647
+ get: function () {
648
+ return this._shape.orientedBoundingBox;
649
+ },
650
+ },
651
+
652
+ /**
653
+ * Gets the model matrix.
654
+ *
655
+ * @memberof VoxelPrimitive.prototype
656
+ * @type {Matrix4}
657
+ * @readonly
658
+ */
659
+ modelMatrix: {
660
+ get: function () {
661
+ return this._modelMatrix;
662
+ },
663
+ set: function (modelMatrix) {
664
+ //>>includeStart('debug', pragmas.debug);
665
+ Check.typeOf.object("modelMatrix", modelMatrix);
666
+ //>>includeEnd('debug');
667
+
668
+ this._modelMatrix = Matrix4.clone(modelMatrix, this._modelMatrix);
669
+ },
670
+ },
671
+
672
+ /**
673
+ * Gets the shape type.
674
+ *
675
+ * @memberof VoxelPrimitive.prototype
676
+ * @type {VoxelShapeType}
677
+ * @readonly
678
+ */
679
+ shape: {
680
+ get: function () {
681
+ return this._provider.shape;
682
+ },
683
+ },
684
+
685
+ /**
686
+ * Gets the dimensions of each voxel tile, in z-up orientation.
687
+ * Does not include padding.
688
+ *
689
+ * @memberof VoxelPrimitive.prototype
690
+ * @type {Cartesian3}
691
+ * @readonly
692
+ */
693
+ dimensions: {
694
+ get: function () {
695
+ return this._dimensions;
696
+ },
697
+ },
698
+
699
+ /**
700
+ * Gets the dimensions of one tile of the input voxel data, in the input orientation.
701
+ * Includes padding.
702
+ * @memberof VoxelPrimitive.prototype
703
+ * @type {Cartesian3}
704
+ * @readonly
705
+ */
706
+ inputDimensions: {
707
+ get: function () {
708
+ return this._inputDimensions;
709
+ },
710
+ },
711
+
712
+ /**
713
+ * Gets the padding before the voxel data.
714
+ *
715
+ * @memberof VoxelPrimitive.prototype
716
+ * @type {Cartesian3}
717
+ * @readonly
718
+ */
719
+ paddingBefore: {
720
+ get: function () {
721
+ return this._paddingBefore;
722
+ },
723
+ },
724
+
725
+ /**
726
+ * Gets the padding after the voxel data.
727
+ *
728
+ * @memberof VoxelPrimitive.prototype
729
+ * @type {Cartesian3}
730
+ * @readonly
731
+ */
732
+ paddingAfter: {
733
+ get: function () {
734
+ return this._paddingAfter;
735
+ },
736
+ },
737
+
738
+ /**
739
+ * Gets the minimum value per channel of the voxel data.
740
+ *
741
+ * @memberof VoxelPrimitive.prototype
742
+ * @type {number[][]}
743
+ * @readonly
744
+ */
745
+ minimumValues: {
746
+ get: function () {
747
+ return this._provider.minimumValues;
748
+ },
749
+ },
750
+
751
+ /**
752
+ * Gets the maximum value per channel of the voxel data.
753
+ *
754
+ * @memberof VoxelPrimitive.prototype
755
+ * @type {number[][]}
756
+ * @readonly
757
+ */
758
+ maximumValues: {
759
+ get: function () {
760
+ return this._provider.maximumValues;
761
+ },
762
+ },
763
+
764
+ /**
765
+ * Gets or sets whether or not this primitive should be displayed.
766
+ *
767
+ * @memberof VoxelPrimitive.prototype
768
+ * @type {boolean}
769
+ */
770
+ show: {
771
+ get: function () {
772
+ return !this._disableRender;
773
+ },
774
+ set: function (show) {
775
+ //>>includeStart('debug', pragmas.debug);
776
+ Check.typeOf.bool("show", show);
777
+ //>>includeEnd('debug');
778
+
779
+ this._disableRender = !show;
780
+ },
781
+ },
782
+
783
+ /**
784
+ * Gets or sets whether or not the primitive should update when the view changes.
785
+ *
786
+ * @memberof VoxelPrimitive.prototype
787
+ * @type {boolean}
788
+ */
789
+ disableUpdate: {
790
+ get: function () {
791
+ return this._disableUpdate;
792
+ },
793
+ set: function (disableUpdate) {
794
+ //>>includeStart('debug', pragmas.debug);
795
+ Check.typeOf.bool("disableUpdate", disableUpdate);
796
+ //>>includeEnd('debug');
797
+
798
+ this._disableUpdate = disableUpdate;
799
+ },
800
+ },
801
+
802
+ /**
803
+ * Gets or sets whether or not to render debug visualizations.
804
+ *
805
+ * @memberof VoxelPrimitive.prototype
806
+ * @type {boolean}
807
+ */
808
+ debugDraw: {
809
+ get: function () {
810
+ return this._debugDraw;
811
+ },
812
+ set: function (debugDraw) {
813
+ //>>includeStart('debug', pragmas.debug);
814
+ Check.typeOf.bool("debugDraw", debugDraw);
815
+ //>>includeEnd('debug');
816
+
817
+ this._debugDraw = debugDraw;
818
+ },
819
+ },
820
+
821
+ /**
822
+ * Gets or sets whether or not to test against depth when rendering.
823
+ *
824
+ * @memberof VoxelPrimitive.prototype
825
+ * @type {boolean}
826
+ */
827
+ depthTest: {
828
+ get: function () {
829
+ return this._depthTest;
830
+ },
831
+ set: function (depthTest) {
832
+ //>>includeStart('debug', pragmas.debug);
833
+ Check.typeOf.bool("depthTest", depthTest);
834
+ //>>includeEnd('debug');
835
+
836
+ if (this._depthTest !== depthTest) {
837
+ this._depthTest = depthTest;
838
+ this._shaderDirty = true;
839
+ }
840
+ },
841
+ },
842
+
843
+ /**
844
+ * Gets or sets the nearest sampling.
845
+ *
846
+ * @memberof VoxelPrimitive.prototype
847
+ * @type {boolean}
848
+ */
849
+ nearestSampling: {
850
+ get: function () {
851
+ return this._nearestSampling;
852
+ },
853
+ set: function (nearestSampling) {
854
+ //>>includeStart('debug', pragmas.debug);
855
+ Check.typeOf.bool("nearestSampling", nearestSampling);
856
+ //>>includeEnd('debug');
857
+
858
+ if (this._nearestSampling !== nearestSampling) {
859
+ this._nearestSampling = nearestSampling;
860
+ this._shaderDirty = true;
861
+ }
862
+ },
863
+ },
864
+
865
+ /**
866
+ * Controls how quickly to blend between different levels of the tree.
867
+ * 0.0 means an instantaneous pop.
868
+ * 1.0 means a full linear blend.
869
+ *
870
+ * @memberof VoxelPrimitive.prototype
871
+ * @type {number}
872
+ * @private
873
+ */
874
+ levelBlendFactor: {
875
+ get: function () {
876
+ return this._levelBlendFactor;
877
+ },
878
+ set: function (levelBlendFactor) {
879
+ //>>includeStart('debug', pragmas.debug);
880
+ Check.typeOf.number("levelBlendFactor", levelBlendFactor);
881
+ //>>includeEnd('debug');
882
+
883
+ this._levelBlendFactor = CesiumMath.clamp(levelBlendFactor, 0.0, 1.0);
884
+ },
885
+ },
886
+
887
+ /**
888
+ * Gets or sets the screen space error in pixels. If the screen space size
889
+ * of a voxel is greater than the screen space error, the tile is subdivided.
890
+ * Lower screen space error corresponds with higher detail rendering, but could
891
+ * result in worse performance and higher memory consumption.
892
+ *
893
+ * @memberof VoxelPrimitive.prototype
894
+ * @type {number}
895
+ */
896
+ screenSpaceError: {
897
+ get: function () {
898
+ return this._screenSpaceError;
899
+ },
900
+ set: function (screenSpaceError) {
901
+ //>>includeStart('debug', pragmas.debug);
902
+ Check.typeOf.number("screenSpaceError", screenSpaceError);
903
+ //>>includeEnd('debug');
904
+
905
+ this._screenSpaceError = screenSpaceError;
906
+ },
907
+ },
908
+
909
+ /**
910
+ * Gets or sets the step size multiplier used during raymarching.
911
+ * The lower the value, the higher the rendering quality, but
912
+ * also the worse the performance.
913
+ *
914
+ * @memberof VoxelPrimitive.prototype
915
+ * @type {number}
916
+ */
917
+ stepSize: {
918
+ get: function () {
919
+ return this._stepSizeMultiplier;
920
+ },
921
+ set: function (stepSize) {
922
+ //>>includeStart('debug', pragmas.debug);
923
+ Check.typeOf.number("stepSize", stepSize);
924
+ //>>includeEnd('debug');
925
+
926
+ this._stepSizeMultiplier = stepSize;
927
+ },
928
+ },
929
+
930
+ /**
931
+ * Gets or sets the minimum bounds in the shape's local coordinate system.
932
+ * Voxel data is stretched or squashed to fit the bounds.
933
+ *
934
+ * @memberof VoxelPrimitive.prototype
935
+ * @type {Cartesian3}
936
+ */
937
+ minBounds: {
938
+ get: function () {
939
+ return this._minBounds;
940
+ },
941
+ set: function (minBounds) {
942
+ //>>includeStart('debug', pragmas.debug);
943
+ Check.defined("minBounds", minBounds);
944
+ //>>includeEnd('debug');
945
+
946
+ this._minBounds = Cartesian3.clone(minBounds, this._minBounds);
947
+ },
948
+ },
949
+
950
+ /**
951
+ * Gets or sets the maximum bounds in the shape's local coordinate system.
952
+ * Voxel data is stretched or squashed to fit the bounds.
953
+ *
954
+ * @memberof VoxelPrimitive.prototype
955
+ * @type {Cartesian3}
956
+ */
957
+ maxBounds: {
958
+ get: function () {
959
+ return this._maxBounds;
960
+ },
961
+ set: function (maxBounds) {
962
+ //>>includeStart('debug', pragmas.debug);
963
+ Check.defined("maxBounds", maxBounds);
964
+ //>>includeEnd('debug');
965
+
966
+ this._maxBounds = Cartesian3.clone(maxBounds, this._maxBounds);
967
+ },
968
+ },
969
+
970
+ /**
971
+ * Gets or sets the minimum clipping location in the shape's local coordinate system.
972
+ * Any voxel content outside the range is clipped.
973
+ *
974
+ * @memberof VoxelPrimitive.prototype
975
+ * @type {Cartesian3}
976
+ */
977
+ minClippingBounds: {
978
+ get: function () {
979
+ return this._minClippingBounds;
980
+ },
981
+ set: function (minClippingBounds) {
982
+ //>>includeStart('debug', pragmas.debug);
983
+ Check.defined("minClippingBounds", minClippingBounds);
984
+ //>>includeEnd('debug');
985
+
986
+ this._minClippingBounds = Cartesian3.clone(
987
+ minClippingBounds,
988
+ this._minClippingBounds,
989
+ );
990
+ },
991
+ },
992
+
993
+ /**
994
+ * Gets or sets the maximum clipping location in the shape's local coordinate system.
995
+ * Any voxel content outside the range is clipped.
996
+ *
997
+ * @memberof VoxelPrimitive.prototype
998
+ * @type {Cartesian3}
999
+ */
1000
+ maxClippingBounds: {
1001
+ get: function () {
1002
+ return this._maxClippingBounds;
1003
+ },
1004
+ set: function (maxClippingBounds) {
1005
+ //>>includeStart('debug', pragmas.debug);
1006
+ Check.defined("maxClippingBounds", maxClippingBounds);
1007
+ //>>includeEnd('debug');
1008
+
1009
+ this._maxClippingBounds = Cartesian3.clone(
1010
+ maxClippingBounds,
1011
+ this._maxClippingBounds,
1012
+ );
1013
+ },
1014
+ },
1015
+
1016
+ /**
1017
+ * The {@link ClippingPlaneCollection} used to selectively disable rendering the primitive.
1018
+ *
1019
+ * @memberof VoxelPrimitive.prototype
1020
+ * @type {ClippingPlaneCollection}
1021
+ */
1022
+ clippingPlanes: {
1023
+ get: function () {
1024
+ return this._clippingPlanes;
1025
+ },
1026
+ set: function (clippingPlanes) {
1027
+ // Don't need to check if undefined, it's handled in the setOwner function
1028
+ ClippingPlaneCollection.setOwner(clippingPlanes, this, "_clippingPlanes");
1029
+ },
1030
+ },
1031
+
1032
+ /**
1033
+ * Gets or sets the custom shader. If undefined, {@link VoxelPrimitive.DefaultCustomShader} is set.
1034
+ *
1035
+ * @memberof VoxelPrimitive.prototype
1036
+ * @type {CustomShader}
1037
+ * @see {@link https://github.com/CesiumGS/cesium/tree/main/Documentation/CustomShaderGuide|Custom Shader Guide}
1038
+ */
1039
+ customShader: {
1040
+ get: function () {
1041
+ return this._customShader;
1042
+ },
1043
+ set: function (customShader) {
1044
+ if (this._customShader !== customShader) {
1045
+ // Delete old custom shader entries from the uniform map
1046
+ const uniformMap = this._uniformMap;
1047
+ const oldCustomShader = this._customShader;
1048
+ const oldCustomShaderUniformMap = oldCustomShader.uniformMap;
1049
+ for (const uniformName in oldCustomShaderUniformMap) {
1050
+ if (oldCustomShaderUniformMap.hasOwnProperty(uniformName)) {
1051
+ // If the custom shader was set but the voxel shader was never
1052
+ // built, the custom shader uniforms wouldn't have been added to
1053
+ // the uniform map. But it doesn't matter because the delete
1054
+ // operator ignores if the key doesn't exist.
1055
+ delete uniformMap[uniformName];
1056
+ }
1057
+ }
1058
+
1059
+ if (!defined(customShader)) {
1060
+ this._customShader = VoxelPrimitive.DefaultCustomShader;
1061
+ } else {
1062
+ this._customShader = customShader;
1063
+ }
1064
+ this._shaderDirty = true;
1065
+ }
1066
+ },
1067
+ },
1068
+
1069
+ /**
1070
+ * Gets an event that is raised whenever a custom shader is compiled.
1071
+ *
1072
+ * @memberof VoxelPrimitive.prototype
1073
+ * @type {Event}
1074
+ * @readonly
1075
+ */
1076
+ customShaderCompilationEvent: {
1077
+ get: function () {
1078
+ return this._customShaderCompilationEvent;
1079
+ },
1080
+ },
1081
+
1082
+ /**
1083
+ * Loading and rendering information for requested content
1084
+ * To use `visited` and `numberOfTilesWithContentReady` statistics, set options._calculateStatistics` to `true` in the constructor.
1085
+ * @type {Cesium3DTilesetStatistics}
1086
+ * @readonly
1087
+ * @private
1088
+ */
1089
+ statistics: {
1090
+ get: function () {
1091
+ return this._statistics;
1092
+ },
1093
+ },
1094
+ });
1095
+
1096
+ const scratchIntersect = new Cartesian4();
1097
+ const scratchNdcAabb = new Cartesian4();
1098
+ const scratchTransformPositionLocalToWorld = new Matrix4();
1099
+ const scratchTransformPositionLocalToProjection = new Matrix4();
1100
+ const scratchCameraPositionShapeUv = new Cartesian3();
1101
+ const scratchCameraTileCoordinates = new Cartesian4();
1102
+
1103
+ /**
1104
+ * Updates the voxel primitive.
1105
+ *
1106
+ * @param {FrameState} frameState
1107
+ * @private
1108
+ */
1109
+ VoxelPrimitive.prototype.update = function (frameState) {
1110
+ const provider = this._provider;
1111
+ const uniforms = this._uniforms;
1112
+
1113
+ // Update the custom shader in case it has texture uniforms.
1114
+ this._customShader.update(frameState);
1115
+
1116
+ // Initialize from the ready provider. This only happens once.
1117
+ const context = frameState.context;
1118
+ if (!this._ready) {
1119
+ initFromProvider(this, provider, context);
1120
+ // Set the primitive as ready after the first frame render since the user might set up events subscribed to
1121
+ // the post render event, and the primitive may not be ready for those past the first frame.
1122
+ frameState.afterRender.push(() => {
1123
+ this._ready = true;
1124
+ return true;
1125
+ });
1126
+
1127
+ // Don't render until the next frame after ready is set to true
1128
+ return;
1129
+ }
1130
+
1131
+ // Check if the shape is dirty before updating it. This needs to happen every
1132
+ // frame because the member variables can be modified externally via the
1133
+ // getters.
1134
+ const shapeDirty = checkTransformAndBounds(this);
1135
+ const exaggerationChanged = updateVerticalExaggeration(this, frameState);
1136
+ if (shapeDirty || exaggerationChanged) {
1137
+ this._shapeVisible = updateShapeAndTransforms(this);
1138
+ if (checkShapeDefines(this)) {
1139
+ this._shaderDirty = true;
1140
+ }
1141
+ }
1142
+ if (!this._shapeVisible) {
1143
+ return;
1144
+ }
1145
+
1146
+ this._shape.updateViewTransforms(frameState);
1147
+
1148
+ // Update the traversal and prepare for rendering.
1149
+ const keyframeLocation = getKeyframeLocation(
1150
+ provider.timeIntervalCollection,
1151
+ this._clock,
1152
+ );
1153
+
1154
+ const traversal = this._traversal;
1155
+ const sampleCountOld = traversal._sampleCount;
1156
+
1157
+ traversal.update(
1158
+ frameState,
1159
+ keyframeLocation,
1160
+ shapeDirty, // recomputeBoundingVolumes
1161
+ this._disableUpdate, // pauseUpdate
1162
+ );
1163
+
1164
+ if (sampleCountOld !== traversal._sampleCount) {
1165
+ this._shaderDirty = true;
1166
+ }
1167
+
1168
+ if (!traversal.isRenderable(traversal.rootNode)) {
1169
+ return;
1170
+ }
1171
+
1172
+ if (this._debugDraw) {
1173
+ // Debug draw bounding boxes and other things. Must go after traversal update
1174
+ // because that's what updates the tile bounding boxes.
1175
+ debugDraw(this, frameState);
1176
+ }
1177
+
1178
+ if (this._disableRender) {
1179
+ return;
1180
+ }
1181
+
1182
+ // Check if log depth changed
1183
+ if (this._useLogDepth !== frameState.useLogDepth) {
1184
+ this._useLogDepth = frameState.useLogDepth;
1185
+ this._shaderDirty = true;
1186
+ }
1187
+
1188
+ // Check if clipping planes changed
1189
+ const clippingPlanesChanged = updateClippingPlanes(this, frameState);
1190
+ if (clippingPlanesChanged) {
1191
+ this._shaderDirty = true;
1192
+ }
1193
+
1194
+ const leafNodeTexture = traversal.leafNodeTexture;
1195
+ if (defined(leafNodeTexture)) {
1196
+ uniforms.octreeLeafNodeTexture = traversal.leafNodeTexture;
1197
+ uniforms.octreeLeafNodeTexelSizeUv = Cartesian2.clone(
1198
+ traversal.leafNodeTexelSizeUv,
1199
+ uniforms.octreeLeafNodeTexelSizeUv,
1200
+ );
1201
+ uniforms.octreeLeafNodeTilesPerRow = traversal.leafNodeTilesPerRow;
1202
+ }
1203
+
1204
+ // Rebuild shaders
1205
+ if (this._shaderDirty) {
1206
+ buildVoxelDrawCommands(this, context);
1207
+ this._shaderDirty = false;
1208
+ }
1209
+
1210
+ // Calculate the NDC-space AABB to "scissor" the fullscreen quad
1211
+ const transformPositionWorldToProjection =
1212
+ context.uniformState.viewProjection;
1213
+ const { orientedBoundingBox } = this._shape;
1214
+ const ndcAabb = orientedBoundingBoxToNdcAabb(
1215
+ orientedBoundingBox,
1216
+ transformPositionWorldToProjection,
1217
+ scratchNdcAabb,
1218
+ );
1219
+
1220
+ // If the object is offscreen, don't render it.
1221
+ const offscreen =
1222
+ ndcAabb.x === +1.0 ||
1223
+ ndcAabb.y === +1.0 ||
1224
+ ndcAabb.z === -1.0 ||
1225
+ ndcAabb.w === -1.0;
1226
+ if (offscreen) {
1227
+ return;
1228
+ }
1229
+
1230
+ // Prepare to render: update uniforms that can change every frame
1231
+ // Using a uniform instead of going through RenderState's scissor because the viewport is not accessible here, and the scissor command needs pixel coordinates.
1232
+ uniforms.ndcSpaceAxisAlignedBoundingBox = Cartesian4.clone(
1233
+ ndcAabb,
1234
+ uniforms.ndcSpaceAxisAlignedBoundingBox,
1235
+ );
1236
+ const transformPositionViewToWorld = context.uniformState.inverseView;
1237
+ const transformPositionViewToLocal = Matrix4.multiplyTransformation(
1238
+ this._transformPositionWorldToLocal,
1239
+ transformPositionViewToWorld,
1240
+ uniforms.transformPositionViewToLocal,
1241
+ );
1242
+
1243
+ this._transformPlaneLocalToView = Matrix4.transpose(
1244
+ transformPositionViewToLocal,
1245
+ this._transformPlaneLocalToView,
1246
+ );
1247
+
1248
+ const transformDirectionViewToWorld =
1249
+ context.uniformState.inverseViewRotation;
1250
+ uniforms.transformDirectionViewToLocal = Matrix3.multiply(
1251
+ this._transformDirectionWorldToLocal,
1252
+ transformDirectionViewToWorld,
1253
+ uniforms.transformDirectionViewToLocal,
1254
+ );
1255
+ uniforms.cameraPositionLocal = Matrix4.multiplyByPoint(
1256
+ this._transformPositionWorldToLocal,
1257
+ frameState.camera.positionWC,
1258
+ uniforms.cameraPositionLocal,
1259
+ );
1260
+ uniforms.cameraDirectionLocal = Matrix3.multiplyByVector(
1261
+ this._transformDirectionWorldToLocal,
1262
+ frameState.camera.directionWC,
1263
+ uniforms.cameraDirectionLocal,
1264
+ );
1265
+ const cameraTileCoordinates = getTileCoordinates(
1266
+ this,
1267
+ uniforms.cameraPositionLocal,
1268
+ scratchCameraTileCoordinates,
1269
+ );
1270
+ uniforms.cameraTileCoordinates = Cartesian4.fromElements(
1271
+ Math.floor(cameraTileCoordinates.x),
1272
+ Math.floor(cameraTileCoordinates.y),
1273
+ Math.floor(cameraTileCoordinates.z),
1274
+ cameraTileCoordinates.w,
1275
+ uniforms.cameraTileCoordinates,
1276
+ );
1277
+ uniforms.cameraTileUv = Cartesian3.fromElements(
1278
+ cameraTileCoordinates.x - Math.floor(cameraTileCoordinates.x),
1279
+ cameraTileCoordinates.y - Math.floor(cameraTileCoordinates.y),
1280
+ cameraTileCoordinates.z - Math.floor(cameraTileCoordinates.z),
1281
+ uniforms.cameraTileUv,
1282
+ );
1283
+ uniforms.stepSize = this._stepSizeMultiplier;
1284
+
1285
+ updateRenderBoundPlanes(this, frameState);
1286
+
1287
+ // Render the primitive
1288
+ const command = frameState.passes.pick
1289
+ ? this._drawCommandPick
1290
+ : frameState.passes.pickVoxel
1291
+ ? this._drawCommandPickVoxel
1292
+ : this._drawCommand;
1293
+ command.boundingVolume = this._shape.boundingSphere;
1294
+ frameState.commandList.push(command);
1295
+ };
1296
+
1297
+ function updateRenderBoundPlanes(primitive, frameState) {
1298
+ const uniforms = primitive._uniforms;
1299
+ const { renderBoundPlanes } = primitive._shape;
1300
+ if (!defined(renderBoundPlanes)) {
1301
+ return;
1302
+ }
1303
+ renderBoundPlanes.update(frameState, primitive._transformPlaneLocalToView);
1304
+ uniforms.renderBoundPlanesTexture = renderBoundPlanes.texture;
1305
+ }
1306
+
1307
+ /**
1308
+ * Converts a position in local space to tile coordinates.
1309
+ *
1310
+ * @param {VoxelPrimitive} primitive The primitive to get the tile coordinates for.
1311
+ * @param {Cartesian3} positionLocal The position in local space to convert to tile coordinates.
1312
+ * @param {Cartesian4} result The result object to store the tile coordinates.
1313
+ * @returns {Cartesian4} The tile coordinates of the supplied position.
1314
+ * @private
1315
+ */
1316
+ function getTileCoordinates(primitive, positionLocal, result) {
1317
+ const shapeUv = primitive._shape.convertLocalToShapeUvSpace(
1318
+ positionLocal,
1319
+ scratchCameraPositionShapeUv,
1320
+ );
1321
+
1322
+ const availableLevels = primitive._availableLevels;
1323
+ const numTiles = 2 ** (availableLevels - 1);
1324
+
1325
+ return Cartesian4.fromElements(
1326
+ shapeUv.x * numTiles,
1327
+ shapeUv.y * numTiles,
1328
+ shapeUv.z * numTiles,
1329
+ availableLevels - 1,
1330
+ result,
1331
+ );
1332
+ }
1333
+
1334
+ const scratchExaggerationScale = new Cartesian3();
1335
+ const scratchExaggerationCenter = new Cartesian3();
1336
+ const scratchCartographicCenter = new Cartographic();
1337
+
1338
+ /**
1339
+ * Check for changes in the vertical exaggeration of the primitive
1340
+ * @param {VoxelPrimitive} primitive The primitive to update
1341
+ * @param {FrameState} frameState The current frame state
1342
+ * @returns {boolean} <code>true</code> if the exaggeration was changed
1343
+ * @private
1344
+ */
1345
+ function updateVerticalExaggeration(primitive, frameState) {
1346
+ const { verticalExaggeration, verticalExaggerationRelativeHeight } =
1347
+ frameState;
1348
+
1349
+ if (
1350
+ primitive._verticalExaggeration === verticalExaggeration &&
1351
+ primitive._verticalExaggerationRelativeHeight ===
1352
+ verticalExaggerationRelativeHeight
1353
+ ) {
1354
+ return false;
1355
+ }
1356
+
1357
+ primitive._verticalExaggeration = verticalExaggeration;
1358
+ primitive._verticalExaggerationRelativeHeight =
1359
+ verticalExaggerationRelativeHeight;
1360
+ return true;
1361
+ }
1362
+
1363
+ /**
1364
+ * Initialize primitive properties that are derived from the voxel provider
1365
+ * @param {VoxelPrimitive} primitive
1366
+ * @param {VoxelProvider} provider
1367
+ * @param {Context} context
1368
+ * @private
1369
+ */
1370
+ function initFromProvider(primitive, provider, context) {
1371
+ const uniforms = primitive._uniforms;
1372
+
1373
+ primitive._pickId = context.createPickId({ primitive });
1374
+ uniforms.pickColor = Color.clone(primitive._pickId.color, uniforms.pickColor);
1375
+
1376
+ const { shaderDefines, shaderUniforms: shapeUniforms } = primitive._shape;
1377
+ primitive._shapeDefinesOld = clone(shaderDefines, true);
1378
+
1379
+ // Add shape uniforms to the uniform map
1380
+ const uniformMap = primitive._uniformMap;
1381
+ for (const key in shapeUniforms) {
1382
+ if (shapeUniforms.hasOwnProperty(key)) {
1383
+ const name = `u_${key}`;
1384
+
1385
+ //>>includeStart('debug', pragmas.debug);
1386
+ if (defined(uniformMap[name])) {
1387
+ oneTimeWarning(
1388
+ `VoxelPrimitive: Uniform name "${name}" is already defined`,
1389
+ );
1390
+ }
1391
+ //>>includeEnd('debug');
1392
+
1393
+ uniformMap[name] = function () {
1394
+ return shapeUniforms[key];
1395
+ };
1396
+ }
1397
+ }
1398
+
1399
+ // Set uniforms that come from the provider.
1400
+ // Note that minBounds and maxBounds can be set dynamically, so their uniforms aren't set here.
1401
+ primitive._dimensions = Cartesian3.clone(
1402
+ provider.dimensions,
1403
+ primitive._dimensions,
1404
+ );
1405
+ uniforms.dimensions = Cartesian3.clone(
1406
+ primitive._dimensions,
1407
+ uniforms.dimensions,
1408
+ );
1409
+ primitive._paddingBefore = Cartesian3.clone(
1410
+ provider.paddingBefore ?? Cartesian3.ZERO,
1411
+ primitive._paddingBefore,
1412
+ );
1413
+ uniforms.paddingBefore = Cartesian3.clone(
1414
+ primitive._paddingBefore,
1415
+ uniforms.paddingBefore,
1416
+ );
1417
+ primitive._paddingAfter = Cartesian3.clone(
1418
+ provider.paddingAfter ?? Cartesian3.ZERO,
1419
+ primitive._paddingAfter,
1420
+ );
1421
+ uniforms.paddingAfter = Cartesian3.clone(
1422
+ primitive._paddingAfter,
1423
+ uniforms.paddingAfter,
1424
+ );
1425
+ primitive._inputDimensions = Cartesian3.add(
1426
+ primitive._dimensions,
1427
+ primitive._paddingBefore,
1428
+ primitive._inputDimensions,
1429
+ );
1430
+ primitive._inputDimensions = Cartesian3.add(
1431
+ primitive._inputDimensions,
1432
+ primitive._paddingAfter,
1433
+ primitive._inputDimensions,
1434
+ );
1435
+ if (provider.metadataOrder === VoxelMetadataOrder.Y_UP) {
1436
+ const inputDimensionsY = primitive._inputDimensions.y;
1437
+ primitive._inputDimensions.y = primitive._inputDimensions.z;
1438
+ primitive._inputDimensions.z = inputDimensionsY;
1439
+ }
1440
+ uniforms.inputDimensions = Cartesian3.clone(
1441
+ primitive._inputDimensions,
1442
+ uniforms.inputDimensions,
1443
+ );
1444
+ primitive._availableLevels = provider.availableLevels ?? 1;
1445
+
1446
+ // Create the VoxelTraversal, and set related uniforms
1447
+ const keyframeCount = provider.keyframeCount ?? 1;
1448
+ primitive._traversal = new VoxelTraversal(primitive, context, keyframeCount);
1449
+ primitive.statistics.texturesByteLength =
1450
+ primitive._traversal.textureMemoryByteLength;
1451
+ setTraversalUniforms(primitive._traversal, uniforms);
1452
+ }
1453
+
1454
+ /**
1455
+ * Track changes in provider transform and primitive bounds
1456
+ * @param {VoxelPrimitive} primitive
1457
+ * @returns {boolean} Whether any of the transform or bounds changed
1458
+ * @private
1459
+ */
1460
+ function checkTransformAndBounds(primitive) {
1461
+ const numChanges =
1462
+ updateBound(primitive, "_modelMatrix", "_modelMatrixOld") +
1463
+ updateBound(primitive, "_minBounds", "_minBoundsOld") +
1464
+ updateBound(primitive, "_maxBounds", "_maxBoundsOld") +
1465
+ updateBound(primitive, "_minClippingBounds", "_minClippingBoundsOld") +
1466
+ updateBound(primitive, "_maxClippingBounds", "_maxClippingBoundsOld");
1467
+ return numChanges > 0;
1468
+ }
1469
+
1470
+ /**
1471
+ * Compare old and new values of a bound and update the old if it is different.
1472
+ * @param {VoxelPrimitive} primitive The primitive with bounds properties
1473
+ * @param {string} newBoundKey A key pointing to a bounds property of type Cartesian3 or Matrix4
1474
+ * @param {string} oldBoundKey A key pointing to a bounds property of the same type as the property at newBoundKey
1475
+ * @returns {number} 1 if the bound value changed, 0 otherwise
1476
+ *
1477
+ * @private
1478
+ */
1479
+ function updateBound(primitive, newBoundKey, oldBoundKey) {
1480
+ const newBound = primitive[newBoundKey];
1481
+ const oldBound = primitive[oldBoundKey];
1482
+
1483
+ const changed = !newBound.equals(oldBound);
1484
+ if (changed) {
1485
+ newBound.clone(oldBound);
1486
+ }
1487
+ return changed ? 1 : 0;
1488
+ }
1489
+
1490
+ const scratchExaggeratedMinBounds = new Cartesian3();
1491
+ const scratchExaggeratedMaxBounds = new Cartesian3();
1492
+ const scratchExaggeratedMinClippingBounds = new Cartesian3();
1493
+ const scratchExaggeratedMaxClippingBounds = new Cartesian3();
1494
+ const scratchExaggeratedModelMatrix = new Matrix4();
1495
+ const scratchCompoundModelMatrix = new Matrix4();
1496
+
1497
+ /**
1498
+ * Update the shape and related transforms
1499
+ * @param {VoxelPrimitive} primitive
1500
+ * @returns {boolean} True if the shape is visible
1501
+ * @private
1502
+ */
1503
+ function updateShapeAndTransforms(primitive) {
1504
+ const verticalExaggeration = primitive._verticalExaggeration;
1505
+ const verticalExaggerationRelativeHeight =
1506
+ primitive._verticalExaggerationRelativeHeight;
1507
+ const exaggeratedMinBounds = Cartesian3.clone(
1508
+ primitive._minBounds,
1509
+ scratchExaggeratedMinBounds,
1510
+ );
1511
+ const exaggeratedMaxBounds = Cartesian3.clone(
1512
+ primitive._maxBounds,
1513
+ scratchExaggeratedMaxBounds,
1514
+ );
1515
+ const exaggeratedMinClippingBounds = Cartesian3.clone(
1516
+ primitive._minClippingBounds,
1517
+ scratchExaggeratedMinClippingBounds,
1518
+ );
1519
+ const exaggeratedMaxClippingBounds = Cartesian3.clone(
1520
+ primitive._maxClippingBounds,
1521
+ scratchExaggeratedMaxClippingBounds,
1522
+ );
1523
+ const exaggeratedModelMatrix = Matrix4.clone(
1524
+ primitive._modelMatrix,
1525
+ scratchExaggeratedModelMatrix,
1526
+ );
1527
+
1528
+ if (primitive.shape === VoxelShapeType.ELLIPSOID) {
1529
+ // Apply the exaggeration by stretching the height bounds
1530
+ exaggeratedMinBounds.z = VerticalExaggeration.getHeight(
1531
+ primitive._minBounds.z,
1532
+ verticalExaggeration,
1533
+ verticalExaggerationRelativeHeight,
1534
+ );
1535
+ exaggeratedMaxBounds.z = VerticalExaggeration.getHeight(
1536
+ primitive._maxBounds.z,
1537
+ verticalExaggeration,
1538
+ verticalExaggerationRelativeHeight,
1539
+ );
1540
+ exaggeratedMinClippingBounds.z = VerticalExaggeration.getHeight(
1541
+ primitive._minClippingBounds.z,
1542
+ verticalExaggeration,
1543
+ verticalExaggerationRelativeHeight,
1544
+ );
1545
+ exaggeratedMaxClippingBounds.z = VerticalExaggeration.getHeight(
1546
+ primitive._maxClippingBounds.z,
1547
+ verticalExaggeration,
1548
+ verticalExaggerationRelativeHeight,
1549
+ );
1550
+ } else {
1551
+ // Apply the exaggeration via the model matrix
1552
+ const exaggerationScale = Cartesian3.fromElements(
1553
+ 1.0,
1554
+ 1.0,
1555
+ verticalExaggeration,
1556
+ scratchExaggerationScale,
1557
+ );
1558
+ Matrix4.multiplyByScale(
1559
+ exaggeratedModelMatrix,
1560
+ exaggerationScale,
1561
+ exaggeratedModelMatrix,
1562
+ );
1563
+ Matrix4.multiplyByTranslation(
1564
+ exaggeratedModelMatrix,
1565
+ computeBoxExaggerationTranslation(primitive),
1566
+ exaggeratedModelMatrix,
1567
+ );
1568
+ }
1569
+
1570
+ const provider = primitive._provider;
1571
+ const shapeTransform = provider.shapeTransform ?? Matrix4.IDENTITY;
1572
+ const globalTransform = provider.globalTransform ?? Matrix4.IDENTITY;
1573
+
1574
+ // Compound model matrix = global transform * model matrix * shape transform
1575
+ const compoundModelMatrix = Matrix4.multiplyTransformation(
1576
+ globalTransform,
1577
+ exaggeratedModelMatrix,
1578
+ scratchCompoundModelMatrix,
1579
+ );
1580
+ Matrix4.multiplyTransformation(
1581
+ compoundModelMatrix,
1582
+ shapeTransform,
1583
+ compoundModelMatrix,
1584
+ );
1585
+
1586
+ const shape = primitive._shape;
1587
+ const visible = shape.update(
1588
+ compoundModelMatrix,
1589
+ exaggeratedMinBounds,
1590
+ exaggeratedMaxBounds,
1591
+ exaggeratedMinClippingBounds,
1592
+ exaggeratedMaxClippingBounds,
1593
+ );
1594
+ if (!visible) {
1595
+ return false;
1596
+ }
1597
+
1598
+ primitive._transformPositionLocalToWorld = Matrix4.clone(
1599
+ shape.shapeTransform,
1600
+ primitive._transformPositionLocalToWorld,
1601
+ );
1602
+ primitive._transformPositionWorldToLocal = Matrix4.inverse(
1603
+ primitive._transformPositionLocalToWorld,
1604
+ primitive._transformPositionWorldToLocal,
1605
+ );
1606
+ primitive._transformDirectionWorldToLocal = Matrix4.getMatrix3(
1607
+ primitive._transformPositionWorldToLocal,
1608
+ primitive._transformDirectionWorldToLocal,
1609
+ );
1610
+
1611
+ return true;
1612
+ }
1613
+
1614
+ const scratchExaggerationTranslation = new Cartesian3();
1615
+
1616
+ /**
1617
+ * Compute the translation to apply to box shapes to account for vertical exaggeration
1618
+ *
1619
+ * @param {VoxelPrimitive} primitive
1620
+ * @returns {Cartesian3} The translation to apply to the box to account for vertical exaggeration
1621
+ * @private
1622
+ */
1623
+ function computeBoxExaggerationTranslation(primitive) {
1624
+ const verticalExaggeration = primitive._verticalExaggeration;
1625
+ const verticalExaggerationRelativeHeight =
1626
+ primitive._verticalExaggerationRelativeHeight;
1627
+
1628
+ // Compute translation based on box center, relative height, and exaggeration
1629
+ const {
1630
+ shapeTransform = Matrix4.IDENTITY,
1631
+ globalTransform = Matrix4.IDENTITY,
1632
+ } = primitive._provider;
1633
+
1634
+ // Find the Cartesian position of the center of the OBB
1635
+ const initialCenter = Matrix4.getTranslation(
1636
+ shapeTransform,
1637
+ scratchExaggerationCenter,
1638
+ );
1639
+ const intermediateCenter = Matrix4.multiplyByPoint(
1640
+ primitive._modelMatrix,
1641
+ initialCenter,
1642
+ scratchExaggerationCenter,
1643
+ );
1644
+ const transformedCenter = Matrix4.multiplyByPoint(
1645
+ globalTransform,
1646
+ intermediateCenter,
1647
+ scratchExaggerationCenter,
1648
+ );
1649
+
1650
+ // Find the cartographic height
1651
+ const ellipsoid = Ellipsoid.WGS84;
1652
+ const centerCartographic = ellipsoid.cartesianToCartographic(
1653
+ transformedCenter,
1654
+ scratchCartographicCenter,
1655
+ );
1656
+
1657
+ let centerHeight = 0.0;
1658
+ if (defined(centerCartographic)) {
1659
+ centerHeight = centerCartographic.height;
1660
+ }
1661
+
1662
+ // Find the shift that will put the center in the right position relative
1663
+ // to relativeHeight, after it is scaled by verticalExaggeration
1664
+ const exaggeratedHeight = VerticalExaggeration.getHeight(
1665
+ centerHeight,
1666
+ verticalExaggeration,
1667
+ verticalExaggerationRelativeHeight,
1668
+ );
1669
+
1670
+ return Cartesian3.fromElements(
1671
+ 0.0,
1672
+ 0.0,
1673
+ (exaggeratedHeight - centerHeight) / verticalExaggeration,
1674
+ scratchExaggerationTranslation,
1675
+ );
1676
+ }
1677
+
1678
+ /**
1679
+ * Set uniforms that come from the traversal.
1680
+ * @param {VoxelTraversal} traversal
1681
+ * @param {object} uniforms
1682
+ * @private
1683
+ */
1684
+ function setTraversalUniforms(traversal, uniforms) {
1685
+ uniforms.octreeInternalNodeTexture = traversal.internalNodeTexture;
1686
+ uniforms.octreeInternalNodeTexelSizeUv = Cartesian2.clone(
1687
+ traversal.internalNodeTexelSizeUv,
1688
+ uniforms.octreeInternalNodeTexelSizeUv,
1689
+ );
1690
+ uniforms.octreeInternalNodeTilesPerRow = traversal.internalNodeTilesPerRow;
1691
+
1692
+ const megatextures = traversal.megatextures;
1693
+ const megatexture = megatextures[0];
1694
+ const megatextureLength = megatextures.length;
1695
+ uniforms.megatextureTextures = new Array(megatextureLength);
1696
+ for (let i = 0; i < megatextureLength; i++) {
1697
+ uniforms.megatextureTextures[i] = megatextures[i].texture;
1698
+ }
1699
+
1700
+ uniforms.megatextureSliceDimensions = Cartesian2.clone(
1701
+ megatexture.sliceCountPerRegion,
1702
+ uniforms.megatextureSliceDimensions,
1703
+ );
1704
+ uniforms.megatextureTileDimensions = Cartesian2.clone(
1705
+ megatexture.regionCountPerMegatexture,
1706
+ uniforms.megatextureTileDimensions,
1707
+ );
1708
+ uniforms.megatextureVoxelSizeUv = Cartesian2.clone(
1709
+ megatexture.voxelSizeUv,
1710
+ uniforms.megatextureVoxelSizeUv,
1711
+ );
1712
+ uniforms.megatextureSliceSizeUv = Cartesian2.clone(
1713
+ megatexture.sliceSizeUv,
1714
+ uniforms.megatextureSliceSizeUv,
1715
+ );
1716
+ uniforms.megatextureTileSizeUv = Cartesian2.clone(
1717
+ megatexture.regionSizeUv,
1718
+ uniforms.megatextureTileSizeUv,
1719
+ );
1720
+ }
1721
+
1722
+ /**
1723
+ * Track changes in shape-related shader defines
1724
+ * @param {VoxelPrimitive} primitive
1725
+ * @returns {boolean} True if any of the shape defines changed, requiring a shader rebuild
1726
+ * @private
1727
+ */
1728
+ function checkShapeDefines(primitive) {
1729
+ const { shaderDefines } = primitive._shape;
1730
+ const shapeDefinesChanged = Object.keys(shaderDefines).some(
1731
+ (key) => shaderDefines[key] !== primitive._shapeDefinesOld[key],
1732
+ );
1733
+ if (shapeDefinesChanged) {
1734
+ primitive._shapeDefinesOld = clone(shaderDefines, true);
1735
+ }
1736
+ return shapeDefinesChanged;
1737
+ }
1738
+
1739
+ /**
1740
+ * Find the keyframe location to render at. Doesn't need to be a whole number.
1741
+ * @param {TimeIntervalCollection} timeIntervalCollection
1742
+ * @param {Clock} clock
1743
+ * @returns {number}
1744
+ *
1745
+ * @private
1746
+ */
1747
+ function getKeyframeLocation(timeIntervalCollection, clock) {
1748
+ if (!defined(timeIntervalCollection) || !defined(clock)) {
1749
+ return 0.0;
1750
+ }
1751
+ let date = clock.currentTime;
1752
+ let timeInterval;
1753
+ let timeIntervalIndex = timeIntervalCollection.indexOf(date);
1754
+ if (timeIntervalIndex >= 0) {
1755
+ timeInterval = timeIntervalCollection.get(timeIntervalIndex);
1756
+ } else {
1757
+ // Date fell outside the range
1758
+ timeIntervalIndex = ~timeIntervalIndex;
1759
+ if (timeIntervalIndex === timeIntervalCollection.length) {
1760
+ // Date past range
1761
+ timeIntervalIndex = timeIntervalCollection.length - 1;
1762
+ timeInterval = timeIntervalCollection.get(timeIntervalIndex);
1763
+ date = timeInterval.stop;
1764
+ } else {
1765
+ // Date before range
1766
+ timeInterval = timeIntervalCollection.get(timeIntervalIndex);
1767
+ date = timeInterval.start;
1768
+ }
1769
+ }
1770
+ // De-lerp between the start and end of the interval
1771
+ const totalSeconds = JulianDate.secondsDifference(
1772
+ timeInterval.stop,
1773
+ timeInterval.start,
1774
+ );
1775
+ const secondsDifferenceStart = JulianDate.secondsDifference(
1776
+ date,
1777
+ timeInterval.start,
1778
+ );
1779
+ const t = secondsDifferenceStart / totalSeconds;
1780
+
1781
+ return timeIntervalIndex + t;
1782
+ }
1783
+
1784
+ /**
1785
+ * Update the clipping planes state and associated uniforms
1786
+ *
1787
+ * @param {VoxelPrimitive} primitive
1788
+ * @param {FrameState} frameState
1789
+ * @returns {boolean} Whether the clipping planes changed, requiring a shader rebuild
1790
+ * @private
1791
+ */
1792
+ function updateClippingPlanes(primitive, frameState) {
1793
+ const clippingPlanes = primitive.clippingPlanes;
1794
+ if (!defined(clippingPlanes)) {
1795
+ return false;
1796
+ }
1797
+
1798
+ clippingPlanes.update(frameState);
1799
+
1800
+ const { clippingPlanesState, enabled } = clippingPlanes;
1801
+
1802
+ if (enabled) {
1803
+ const uniforms = primitive._uniforms;
1804
+ uniforms.clippingPlanesTexture = clippingPlanes.texture;
1805
+
1806
+ // Compute the clipping plane's transformation to local space and then take the inverse
1807
+ // transpose to properly transform the hessian normal form of the plane.
1808
+
1809
+ // transpose(inverse(worldToLocal * clippingPlaneLocalToWorld))
1810
+ // transpose(inverse(clippingPlaneLocalToWorld) * inverse(worldToLocal))
1811
+ // transpose(inverse(clippingPlaneLocalToWorld) * localToWorld)
1812
+
1813
+ uniforms.clippingPlanesMatrix = Matrix4.transpose(
1814
+ Matrix4.multiplyTransformation(
1815
+ Matrix4.inverse(
1816
+ clippingPlanes.modelMatrix,
1817
+ uniforms.clippingPlanesMatrix,
1818
+ ),
1819
+ primitive._transformPositionLocalToWorld,
1820
+ uniforms.clippingPlanesMatrix,
1821
+ ),
1822
+ uniforms.clippingPlanesMatrix,
1823
+ );
1824
+ }
1825
+
1826
+ if (
1827
+ primitive._clippingPlanesState === clippingPlanesState &&
1828
+ primitive._clippingPlanesEnabled === enabled
1829
+ ) {
1830
+ return false;
1831
+ }
1832
+ primitive._clippingPlanesState = clippingPlanesState;
1833
+ primitive._clippingPlanesEnabled = enabled;
1834
+
1835
+ return true;
1836
+ }
1837
+
1838
+ /**
1839
+ * Returns true if this object was destroyed; otherwise, false.
1840
+ * <br /><br />
1841
+ * If this object was destroyed, it should not be used; calling any function other than
1842
+ * <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
1843
+ *
1844
+ * @returns {boolean} <code>true</code> if this object was destroyed; otherwise, <code>false</code>.
1845
+ *
1846
+ * @see VoxelPrimitive#destroy
1847
+ */
1848
+ VoxelPrimitive.prototype.isDestroyed = function () {
1849
+ return false;
1850
+ };
1851
+
1852
+ /**
1853
+ * Destroys the WebGL resources held by this object. Destroying an object allows for deterministic
1854
+ * release of WebGL resources, instead of relying on the garbage collector to destroy this object.
1855
+ * <br /><br />
1856
+ * Once an object is destroyed, it should not be used; calling any function other than
1857
+ * <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
1858
+ * assign the return value (<code>undefined</code>) to the object as done in the example.
1859
+ *
1860
+ * @exception {DeveloperError} This object was destroyed, i.e., destroy() was called.
1861
+ *
1862
+ * @see VoxelPrimitive#isDestroyed
1863
+ *
1864
+ * @example
1865
+ * voxelPrimitive = voxelPrimitive && voxelPrimitive.destroy();
1866
+ */
1867
+ VoxelPrimitive.prototype.destroy = function () {
1868
+ const drawCommand = this._drawCommand;
1869
+ if (defined(drawCommand)) {
1870
+ drawCommand.shaderProgram =
1871
+ drawCommand.shaderProgram && drawCommand.shaderProgram.destroy();
1872
+ }
1873
+ const drawCommandPick = this._drawCommandPick;
1874
+ if (defined(drawCommandPick)) {
1875
+ drawCommandPick.shaderProgram =
1876
+ drawCommandPick.shaderProgram && drawCommandPick.shaderProgram.destroy();
1877
+ }
1878
+
1879
+ this._pickId = this._pickId && this._pickId.destroy();
1880
+ this._traversal = this._traversal && this._traversal.destroy();
1881
+ this.statistics.texturesByteLength = 0;
1882
+ this._clippingPlanes = this._clippingPlanes && this._clippingPlanes.destroy();
1883
+
1884
+ return destroyObject(this);
1885
+ };
1886
+
1887
+ const corners = new Array(
1888
+ new Cartesian4(-1.0, -1.0, -1.0, 1.0),
1889
+ new Cartesian4(+1.0, -1.0, -1.0, 1.0),
1890
+ new Cartesian4(-1.0, +1.0, -1.0, 1.0),
1891
+ new Cartesian4(+1.0, +1.0, -1.0, 1.0),
1892
+ new Cartesian4(-1.0, -1.0, +1.0, 1.0),
1893
+ new Cartesian4(+1.0, -1.0, +1.0, 1.0),
1894
+ new Cartesian4(-1.0, +1.0, +1.0, 1.0),
1895
+ new Cartesian4(+1.0, +1.0, +1.0, 1.0),
1896
+ );
1897
+ const vertexNeighborIndices = new Array(
1898
+ 1,
1899
+ 2,
1900
+ 4,
1901
+ 0,
1902
+ 3,
1903
+ 5,
1904
+ 0,
1905
+ 3,
1906
+ 6,
1907
+ 1,
1908
+ 2,
1909
+ 7,
1910
+ 0,
1911
+ 5,
1912
+ 6,
1913
+ 1,
1914
+ 4,
1915
+ 7,
1916
+ 2,
1917
+ 4,
1918
+ 7,
1919
+ 3,
1920
+ 5,
1921
+ 6,
1922
+ );
1923
+
1924
+ const scratchCornersClipSpace = new Array(
1925
+ new Cartesian4(),
1926
+ new Cartesian4(),
1927
+ new Cartesian4(),
1928
+ new Cartesian4(),
1929
+ new Cartesian4(),
1930
+ new Cartesian4(),
1931
+ new Cartesian4(),
1932
+ new Cartesian4(),
1933
+ );
1934
+
1935
+ /**
1936
+ * Projects all 8 corners of the oriented bounding box to NDC space and finds the
1937
+ * resulting NDC axis aligned bounding box. To avoid projecting a vertex that is
1938
+ * behind the near plane, it uses the intersection point of each of the vertex's
1939
+ * edges against the near plane as part of the AABB calculation. This is done in
1940
+ * clip space prior to perspective division.
1941
+ *
1942
+ * @function
1943
+ *
1944
+ * @param {OrientedBoundingBox} orientedBoundingBox
1945
+ * @param {Matrix4} worldToProjection
1946
+ * @param {Cartesian4} result
1947
+ * @returns {Cartesian4}
1948
+ *
1949
+ * @private
1950
+ */
1951
+ function orientedBoundingBoxToNdcAabb(
1952
+ orientedBoundingBox,
1953
+ worldToProjection,
1954
+ result,
1955
+ ) {
1956
+ const transformPositionLocalToWorld = Matrix4.fromRotationTranslation(
1957
+ orientedBoundingBox.halfAxes,
1958
+ orientedBoundingBox.center,
1959
+ scratchTransformPositionLocalToWorld,
1960
+ );
1961
+ const transformPositionLocalToProjection = Matrix4.multiply(
1962
+ worldToProjection,
1963
+ transformPositionLocalToWorld,
1964
+ scratchTransformPositionLocalToProjection,
1965
+ );
1966
+
1967
+ let ndcMinX = +Number.MAX_VALUE;
1968
+ let ndcMaxX = -Number.MAX_VALUE;
1969
+ let ndcMinY = +Number.MAX_VALUE;
1970
+ let ndcMaxY = -Number.MAX_VALUE;
1971
+ let cornerIndex;
1972
+
1973
+ // Convert all points to clip space
1974
+ const cornersClipSpace = scratchCornersClipSpace;
1975
+ const cornersLength = corners.length;
1976
+ for (cornerIndex = 0; cornerIndex < cornersLength; cornerIndex++) {
1977
+ Matrix4.multiplyByVector(
1978
+ transformPositionLocalToProjection,
1979
+ corners[cornerIndex],
1980
+ cornersClipSpace[cornerIndex],
1981
+ );
1982
+ }
1983
+
1984
+ for (cornerIndex = 0; cornerIndex < cornersLength; cornerIndex++) {
1985
+ const position = cornersClipSpace[cornerIndex];
1986
+ if (position.z >= -position.w) {
1987
+ // Position is past near plane, so there's no need to clip.
1988
+ const ndcX = position.x / position.w;
1989
+ const ndcY = position.y / position.w;
1990
+ ndcMinX = Math.min(ndcMinX, ndcX);
1991
+ ndcMaxX = Math.max(ndcMaxX, ndcX);
1992
+ ndcMinY = Math.min(ndcMinY, ndcY);
1993
+ ndcMaxY = Math.max(ndcMaxY, ndcY);
1994
+ } else {
1995
+ for (let neighborIndex = 0; neighborIndex < 3; neighborIndex++) {
1996
+ const neighborVertexIndex =
1997
+ vertexNeighborIndices[cornerIndex * 3 + neighborIndex];
1998
+ const neighborPosition = cornersClipSpace[neighborVertexIndex];
1999
+ if (neighborPosition.z >= -neighborPosition.w) {
2000
+ // Position is behind the near plane and neighbor is after, so get intersection point on the near plane.
2001
+ const distanceToPlaneFromPosition = position.z + position.w;
2002
+ const distanceToPlaneFromNeighbor =
2003
+ neighborPosition.z + neighborPosition.w;
2004
+ const t =
2005
+ distanceToPlaneFromPosition /
2006
+ (distanceToPlaneFromPosition - distanceToPlaneFromNeighbor);
2007
+
2008
+ const intersect = Cartesian4.lerp(
2009
+ position,
2010
+ neighborPosition,
2011
+ t,
2012
+ scratchIntersect,
2013
+ );
2014
+ const intersectNdcX = intersect.x / intersect.w;
2015
+ const intersectNdcY = intersect.y / intersect.w;
2016
+ ndcMinX = Math.min(ndcMinX, intersectNdcX);
2017
+ ndcMaxX = Math.max(ndcMaxX, intersectNdcX);
2018
+ ndcMinY = Math.min(ndcMinY, intersectNdcY);
2019
+ ndcMaxY = Math.max(ndcMaxY, intersectNdcY);
2020
+ }
2021
+ }
2022
+ }
2023
+ }
2024
+
2025
+ // Clamp the NDC values to -1 to +1 range even if they extend much further.
2026
+ ndcMinX = CesiumMath.clamp(ndcMinX, -1.0, +1.0);
2027
+ ndcMinY = CesiumMath.clamp(ndcMinY, -1.0, +1.0);
2028
+ ndcMaxX = CesiumMath.clamp(ndcMaxX, -1.0, +1.0);
2029
+ ndcMaxY = CesiumMath.clamp(ndcMaxY, -1.0, +1.0);
2030
+ result = Cartesian4.fromElements(ndcMinX, ndcMinY, ndcMaxX, ndcMaxY, result);
2031
+
2032
+ return result;
2033
+ }
2034
+
2035
+ const polylineAxisDistance = 30000000.0;
2036
+ const polylineXAxis = new Cartesian3(polylineAxisDistance, 0.0, 0.0);
2037
+ const polylineYAxis = new Cartesian3(0.0, polylineAxisDistance, 0.0);
2038
+ const polylineZAxis = new Cartesian3(0.0, 0.0, polylineAxisDistance);
2039
+
2040
+ /**
2041
+ * Draws the tile bounding boxes and axes.
2042
+ *
2043
+ * @function
2044
+ *
2045
+ * @param {VoxelPrimitive} that
2046
+ * @param {FrameState} frameState
2047
+ *
2048
+ * @private
2049
+ */
2050
+ function debugDraw(that, frameState) {
2051
+ const traversal = that._traversal;
2052
+ const polylines = that._debugPolylines;
2053
+ polylines.removeAll();
2054
+
2055
+ function makePolylineLineSegment(startPos, endPos, color, thickness) {
2056
+ polylines.add({
2057
+ positions: [startPos, endPos],
2058
+ width: thickness,
2059
+ material: Material.fromType("Color", {
2060
+ color: color,
2061
+ }),
2062
+ });
2063
+ }
2064
+
2065
+ function makePolylineBox(orientedBoundingBox, color, thickness) {
2066
+ // Normally would want to use a scratch variable to store the corners, but
2067
+ // polylines don't clone the positions.
2068
+ const corners = orientedBoundingBox.computeCorners();
2069
+ makePolylineLineSegment(corners[0], corners[1], color, thickness);
2070
+ makePolylineLineSegment(corners[2], corners[3], color, thickness);
2071
+ makePolylineLineSegment(corners[4], corners[5], color, thickness);
2072
+ makePolylineLineSegment(corners[6], corners[7], color, thickness);
2073
+ makePolylineLineSegment(corners[0], corners[2], color, thickness);
2074
+ makePolylineLineSegment(corners[4], corners[6], color, thickness);
2075
+ makePolylineLineSegment(corners[1], corners[3], color, thickness);
2076
+ makePolylineLineSegment(corners[5], corners[7], color, thickness);
2077
+ makePolylineLineSegment(corners[0], corners[4], color, thickness);
2078
+ makePolylineLineSegment(corners[2], corners[6], color, thickness);
2079
+ makePolylineLineSegment(corners[1], corners[5], color, thickness);
2080
+ makePolylineLineSegment(corners[3], corners[7], color, thickness);
2081
+ }
2082
+
2083
+ function drawTile(tile) {
2084
+ if (!traversal.isRenderable(tile)) {
2085
+ return;
2086
+ }
2087
+
2088
+ const level = tile.level;
2089
+ const startThickness = 5.0;
2090
+ const thickness = Math.max(1.0, startThickness / Math.pow(2.0, level));
2091
+ const colors = [Color.RED, Color.LIME, Color.BLUE];
2092
+ const color = colors[level % 3];
2093
+
2094
+ makePolylineBox(tile.orientedBoundingBox, color, thickness);
2095
+
2096
+ if (defined(tile.children)) {
2097
+ for (let i = 0; i < 8; i++) {
2098
+ drawTile(tile.children[i]);
2099
+ }
2100
+ }
2101
+ }
2102
+
2103
+ makePolylineBox(that._shape.orientedBoundingBox, Color.WHITE, 5.0);
2104
+
2105
+ drawTile(traversal.rootNode);
2106
+
2107
+ const axisThickness = 10.0;
2108
+ makePolylineLineSegment(
2109
+ Cartesian3.ZERO,
2110
+ polylineXAxis,
2111
+ Color.RED,
2112
+ axisThickness,
2113
+ );
2114
+ makePolylineLineSegment(
2115
+ Cartesian3.ZERO,
2116
+ polylineYAxis,
2117
+ Color.LIME,
2118
+ axisThickness,
2119
+ );
2120
+ makePolylineLineSegment(
2121
+ Cartesian3.ZERO,
2122
+ polylineZAxis,
2123
+ Color.BLUE,
2124
+ axisThickness,
2125
+ );
2126
+
2127
+ polylines.update(frameState);
2128
+ }
2129
+
2130
+ /**
2131
+ * The default custom shader used by the primitive.
2132
+ *
2133
+ * @type {CustomShader}
2134
+ * @constant
2135
+ * @readonly
2136
+ *
2137
+ * @private
2138
+ */
2139
+ VoxelPrimitive.DefaultCustomShader = new CustomShader({
2140
+ fragmentShaderText: `void fragmentMain(FragmentInput fsInput, inout czm_modelMaterial material)
2141
+ {
2142
+ material.diffuse = vec3(1.0);
2143
+ material.alpha = 1.0;
2144
+ }`,
2145
+ });
2146
+
2147
+ function DefaultVoxelProvider() {
2148
+ this.ready = true;
2149
+ this.shape = VoxelShapeType.BOX;
2150
+ this.dimensions = new Cartesian3(1, 1, 1);
2151
+ this.names = ["data"];
2152
+ this.types = [MetadataType.SCALAR];
2153
+ this.componentTypes = [MetadataComponentType.FLOAT32];
2154
+ this.maximumTileCount = 1;
2155
+ }
2156
+
2157
+ DefaultVoxelProvider.prototype.requestData = function (options) {
2158
+ const tileLevel = defined(options) ? (options.tileLevel ?? 0) : 0;
2159
+ if (tileLevel >= 1) {
2160
+ return undefined;
2161
+ }
2162
+
2163
+ const content = new VoxelContent({ metadata: [new Float32Array(1)] });
2164
+ return Promise.resolve(content);
2165
+ };
2166
+
2167
+ VoxelPrimitive.DefaultProvider = new DefaultVoxelProvider();
2168
+
2169
+ export default VoxelPrimitive;