@hztxi/cesium-engine 25.0.7 → 26.2.1

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 (412) hide show
  1. package/Build/Workers/chunk-2NCNUVAT.js +56 -0
  2. package/Build/Workers/chunk-2ZYRUVVU.js +301 -0
  3. package/Build/Workers/chunk-36IU7N4V.js +1284 -0
  4. package/Build/Workers/chunk-3BDLET5S.js +198 -0
  5. package/Build/Workers/chunk-3PRHI4KX.js +241 -0
  6. package/Build/Workers/chunk-3R6E2SH4.js +672 -0
  7. package/Build/Workers/chunk-3ZKKXEXL.js +415 -0
  8. package/Build/Workers/chunk-47KVKPTO.js +415 -0
  9. package/Build/Workers/chunk-4N227IPR.js +973 -0
  10. package/Build/Workers/chunk-4P6OAPBM.js +97 -0
  11. package/Build/Workers/chunk-4ZOLEPZK.js +519 -0
  12. package/Build/Workers/chunk-5EF3WWQG.js +352 -0
  13. package/Build/Workers/chunk-5I76476T.js +288 -0
  14. package/Build/Workers/chunk-5PBZKBAP.js +511 -0
  15. package/Build/Workers/chunk-5RVAAW26.js +82 -0
  16. package/Build/Workers/chunk-5VWK76PO.js +511 -0
  17. package/Build/Workers/chunk-77DBX23X.js +455 -0
  18. package/Build/Workers/chunk-7GQOWCSN.js +959 -0
  19. package/Build/Workers/chunk-7J2ONMKC.js +198 -0
  20. package/Build/Workers/chunk-7MHUHXZZ.js +219 -0
  21. package/Build/Workers/chunk-7MQPHOAS.js +455 -0
  22. package/Build/Workers/chunk-7NJ5O7TP.js +387 -0
  23. package/Build/Workers/chunk-7Y642MCO.js +352 -0
  24. package/Build/Workers/chunk-7ZFKBLUE.js +1054 -0
  25. package/Build/Workers/chunk-A7LGY5XS.js +140 -0
  26. package/Build/Workers/chunk-AN2NVYL6.js +1483 -0
  27. package/Build/Workers/chunk-B7PT2VL5.js +630 -0
  28. package/Build/Workers/chunk-C6XQGBPV.js +476 -0
  29. package/Build/Workers/chunk-CAEC5DA2.js +57 -0
  30. package/Build/Workers/chunk-CBCOHH5O.js +837 -0
  31. package/Build/Workers/chunk-CEMXKBQO.js +1800 -0
  32. package/Build/Workers/chunk-CKW3STKA.js +1067 -0
  33. package/Build/Workers/chunk-CV5RICKT.js +1992 -0
  34. package/Build/Workers/chunk-DBWSISJT.js +56 -0
  35. package/Build/Workers/chunk-DSBSPPPJ.js +1344 -0
  36. package/Build/Workers/chunk-DSGLDRTI.js +278 -0
  37. package/Build/Workers/chunk-DXD7OPSP.js +1992 -0
  38. package/Build/Workers/chunk-DXECZBSA.js +368 -0
  39. package/Build/Workers/chunk-DZIRO6ZK.js +682 -0
  40. package/Build/Workers/chunk-E4CRPGX5.js +140 -0
  41. package/Build/Workers/chunk-E4IVMEBH.js +52 -0
  42. package/Build/Workers/chunk-ECN3VUMA.js +73 -0
  43. package/Build/Workers/chunk-ECSKVHUB.js +476 -0
  44. package/Build/Workers/chunk-EL4B5CSQ.js +162 -0
  45. package/Build/Workers/chunk-FAYBQGKO.js +219 -0
  46. package/Build/Workers/chunk-FGCXPEZM.js +3201 -0
  47. package/Build/Workers/chunk-FHCRXPA6.js +44 -0
  48. package/Build/Workers/chunk-FQ42MT7M.js +58 -0
  49. package/Build/Workers/chunk-FQDYQG4P.js +1284 -0
  50. package/Build/Workers/chunk-FTCBY5HH.js +138 -0
  51. package/Build/Workers/chunk-GI5RWJAY.js +101 -0
  52. package/Build/Workers/chunk-GNLMSDRO.js +945 -0
  53. package/Build/Workers/chunk-GVUJ6O3R.js +73 -0
  54. package/Build/Workers/chunk-HCGU7OCG.js +97 -0
  55. package/Build/Workers/chunk-HRIPVWSC.js +58 -0
  56. package/Build/Workers/chunk-IC3BR6SC.js +102 -0
  57. package/Build/Workers/chunk-IU3YAYPT.js +1344 -0
  58. package/Build/Workers/chunk-J7MZR7B2.js +1483 -0
  59. package/Build/Workers/chunk-KSIEJYNL.js +3822 -0
  60. package/Build/Workers/chunk-KT3GG7AW.js +754 -0
  61. package/Build/Workers/chunk-KYCEM22I.js +1800 -0
  62. package/Build/Workers/chunk-LJTQW46H.js +57 -0
  63. package/Build/Workers/chunk-LMQGYJME.js +672 -0
  64. package/Build/Workers/chunk-LOBYJQA4.js +76 -0
  65. package/Build/Workers/chunk-LOF32O7F.js +163 -0
  66. package/Build/Workers/chunk-LOTIJA7D.js +124 -0
  67. package/Build/Workers/chunk-M7Z3MPAX.js +973 -0
  68. package/Build/Workers/chunk-MHNLTQHO.js +3201 -0
  69. package/Build/Workers/chunk-ML7OMD72.js +2342 -0
  70. package/Build/Workers/chunk-NBTGXEMT.js +945 -0
  71. package/Build/Workers/chunk-NQZC37F7.js +38 -0
  72. package/Build/Workers/chunk-O3X3D2Z3.js +352 -0
  73. package/Build/Workers/chunk-OBUIHPKF.js +352 -0
  74. package/Build/Workers/chunk-PAEWNYIV.js +138 -0
  75. package/Build/Workers/chunk-PANJ7YH6.js +102 -0
  76. package/Build/Workers/chunk-PCL3Y7H5.js +82 -0
  77. package/Build/Workers/chunk-PIIUGRQD.js +387 -0
  78. package/Build/Workers/chunk-POKD22OT.js +2719 -0
  79. package/Build/Workers/chunk-PQMA7MFS.js +9237 -0
  80. package/Build/Workers/chunk-PURIPUSY.js +682 -0
  81. package/Build/Workers/chunk-QQZPPXY4.js +3822 -0
  82. package/Build/Workers/chunk-QXLQLGL2.js +1067 -0
  83. package/Build/Workers/chunk-RC4YC3VU.js +278 -0
  84. package/Build/Workers/chunk-RGNNWVR6.js +171 -0
  85. package/Build/Workers/chunk-SBBIEHYT.js +44 -0
  86. package/Build/Workers/chunk-SWVZTU6X.js +305 -0
  87. package/Build/Workers/chunk-T3EUPM5A.js +454 -0
  88. package/Build/Workers/chunk-TA6IU2XL.js +171 -0
  89. package/Build/Workers/chunk-TLSGD5TR.js +280 -0
  90. package/Build/Workers/chunk-TOXDLWKZ.js +368 -0
  91. package/Build/Workers/chunk-TZBM6TAB.js +124 -0
  92. package/Build/Workers/chunk-U2OY6MX6.js +398 -0
  93. package/Build/Workers/chunk-UCY4B5EV.js +288 -0
  94. package/Build/Workers/chunk-V52FEPCV.js +754 -0
  95. package/Build/Workers/chunk-VBEXZBG5.js +147 -0
  96. package/Build/Workers/chunk-VC76B6GM.js +959 -0
  97. package/Build/Workers/chunk-VCUOYHWC.js +519 -0
  98. package/Build/Workers/chunk-VJIL5H6K.js +2719 -0
  99. package/Build/Workers/chunk-VMF7KOGY.js +162 -0
  100. package/Build/Workers/chunk-W5OCKMPJ.js +101 -0
  101. package/Build/Workers/chunk-XHT5SVP4.js +52 -0
  102. package/Build/Workers/chunk-XITBARMZ.js +2342 -0
  103. package/Build/Workers/chunk-XLQZNQ4Z.js +163 -0
  104. package/Build/Workers/chunk-XZ6HDXKM.js +76 -0
  105. package/Build/Workers/chunk-Y7NDFEQ3.js +398 -0
  106. package/Build/Workers/chunk-YBBQDYX2.js +301 -0
  107. package/Build/Workers/chunk-YHPYPVAB.js +837 -0
  108. package/Build/Workers/chunk-YNKK6BXY.js +454 -0
  109. package/Build/Workers/chunk-YRAJ74HR.js +305 -0
  110. package/Build/Workers/chunk-YULTZK5O.js +147 -0
  111. package/Build/Workers/chunk-YUNQYP3Z.js +9237 -0
  112. package/Build/Workers/chunk-Z7BONRW2.js +241 -0
  113. package/Build/Workers/chunk-ZK2R3DEJ.js +1054 -0
  114. package/Build/Workers/combineGeometry.js +24 -24
  115. package/Build/Workers/createBoxGeometry.js +18 -18
  116. package/Build/Workers/createBoxOutlineGeometry.js +18 -18
  117. package/Build/Workers/createCircleGeometry.js +26 -26
  118. package/Build/Workers/createCircleOutlineGeometry.js +19 -19
  119. package/Build/Workers/createCoplanarPolygonGeometry.js +39 -39
  120. package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +33 -33
  121. package/Build/Workers/createCorridorGeometry.js +36 -37
  122. package/Build/Workers/createCorridorOutlineGeometry.js +34 -35
  123. package/Build/Workers/createCylinderGeometry.js +20 -20
  124. package/Build/Workers/createCylinderOutlineGeometry.js +20 -20
  125. package/Build/Workers/createEllipseGeometry.js +26 -26
  126. package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
  127. package/Build/Workers/createEllipsoidGeometry.js +19 -19
  128. package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
  129. package/Build/Workers/createFrustumGeometry.js +18 -18
  130. package/Build/Workers/createFrustumOutlineGeometry.js +20 -20
  131. package/Build/Workers/createGeometry.js +25 -24
  132. package/Build/Workers/createGroundPolylineGeometry.js +26 -26
  133. package/Build/Workers/createMvtTile.js +111 -19
  134. package/Build/Workers/createPlaneGeometry.js +18 -18
  135. package/Build/Workers/createPlaneOutlineGeometry.js +17 -17
  136. package/Build/Workers/createPolygonGeometry.js +36 -36
  137. package/Build/Workers/createPolygonOutlineGeometry.js +33 -33
  138. package/Build/Workers/createPolylineGeometry.js +28 -28
  139. package/Build/Workers/createPolylineVolumeGeometry.js +38 -36
  140. package/Build/Workers/createPolylineVolumeOutlineGeometry.js +32 -31
  141. package/Build/Workers/createRectangleGeometry.js +29 -29
  142. package/Build/Workers/createRectangleOutlineGeometry.js +23 -23
  143. package/Build/Workers/createSimplePolylineGeometry.js +26 -26
  144. package/Build/Workers/createSphereGeometry.js +19 -19
  145. package/Build/Workers/createSphereOutlineGeometry.js +18 -18
  146. package/Build/Workers/createTaskProcessorWorker.js +3 -3
  147. package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
  148. package/Build/Workers/createVectorTileGeometries.js +24 -24
  149. package/Build/Workers/createVectorTilePoints.js +13 -13
  150. package/Build/Workers/createVectorTilePolygons.js +22 -22
  151. package/Build/Workers/createVectorTilePolylines.js +14 -14
  152. package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +26 -26
  153. package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +23 -23
  154. package/Build/Workers/createVerticesFromHeightmap.js +23 -23
  155. package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +21 -21
  156. package/Build/Workers/createWallGeometry.js +26 -26
  157. package/Build/Workers/createWallOutlineGeometry.js +26 -26
  158. package/Build/Workers/decodeDraco.js +10 -10
  159. package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +993 -2334
  160. package/Build/Workers/decodeI3S.js +10 -10
  161. package/Build/Workers/gaussianSplatSorter.js +4 -4
  162. package/Build/Workers/gaussianSplatTextureGenerator.js +4 -4
  163. package/Build/Workers/incrementallyBuildTerrainPicker.js +10 -10
  164. package/Build/Workers/transcodeKTX2.js +6 -6
  165. package/Build/Workers/transferTypedArrayTest.js +1 -1
  166. package/Build/Workers/upsampleQuantizedTerrainMesh.js +23 -23
  167. package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +26 -26
  168. package/Source/Core/ArcGISTiledElevationTerrainProvider.js +1 -5
  169. package/Source/Core/BoundingRectangle.js +6 -8
  170. package/Source/Core/BoundingSphere.js +0 -3
  171. package/Source/Core/Cartesian2.js +1 -1
  172. package/Source/Core/Cartesian3.js +1 -1
  173. package/Source/Core/Cartesian4.js +1 -1
  174. package/Source/Core/Cesium3DTilesTerrainGeometryProcessor.js +3 -4
  175. package/Source/Core/Color.js +1 -0
  176. package/Source/Core/ComponentDatatype.js +35 -0
  177. package/Source/Core/CoplanarPolygonGeometry.js +2 -2
  178. package/Source/Core/CorridorGeometry.js +2 -4
  179. package/Source/Core/CorridorOutlineGeometry.js +1 -3
  180. package/Source/Core/EarthOrientationParameters.js +2 -2
  181. package/Source/Core/EllipseGeometryLibrary.js +2 -2
  182. package/Source/Core/EllipsoidGeodesic.js +3 -3
  183. package/Source/Core/EllipsoidRhumbLine.js +1 -1
  184. package/Source/Core/Heap.js +1 -1
  185. package/Source/Core/HermitePolynomialApproximation.js +215 -179
  186. package/Source/Core/InterpolationAlgorithm.js +58 -50
  187. package/Source/Core/Ion.js +1 -1
  188. package/Source/Core/JulianDate.js +1 -1
  189. package/Source/Core/LagrangePolynomialApproximation.js +55 -52
  190. package/Source/Core/LinearApproximation.js +69 -66
  191. package/Source/Core/MapProjection.js +1 -0
  192. package/Source/Core/Math.js +59 -0
  193. package/Source/Core/Matrix2.js +3 -3
  194. package/Source/Core/Matrix3.js +3 -3
  195. package/Source/Core/Matrix4.js +1 -1
  196. package/Source/Core/OrthographicFrustum.js +1 -1
  197. package/Source/Core/PerspectiveFrustum.js +1 -1
  198. package/Source/Core/PolygonGeometry.js +2 -2
  199. package/Source/Core/PolygonGeometryLibrary.js +1 -1
  200. package/Source/Core/PolygonOutlineGeometry.js +1 -1
  201. package/Source/Core/PolylineGeometry.js +1 -1
  202. package/Source/Core/PolylineVolumeGeometryLibrary.js +1 -1
  203. package/Source/Core/Rectangle.js +7 -1
  204. package/Source/Core/RectangleOutlineGeometry.js +1 -1
  205. package/Source/Core/Resource.js +1 -1
  206. package/Source/Core/ScreenSpaceEventHandler.js +51 -41
  207. package/Source/Core/SimplePolylineGeometry.js +1 -1
  208. package/Source/Core/TerrainEncoding.js +2 -2
  209. package/Source/Core/TerrainMesh.js +3 -3
  210. package/Source/Core/TerrainPicker.js +180 -168
  211. package/Source/Core/TimeIntervalCollection.js +1 -3
  212. package/Source/Core/Tipsify.js +1 -1
  213. package/Source/Core/Transforms.js +5 -1
  214. package/Source/Core/VectorPipeline.js +1117 -0
  215. package/Source/Core/VectorProvider.js +429 -0
  216. package/Source/Core/WallOutlineGeometry.js +1 -1
  217. package/Source/Core/createColorRamp.js +37 -0
  218. package/Source/Core/getTimestamp.js +4 -2
  219. package/Source/Core/globalTypes.js +25 -0
  220. package/Source/Core/writeTextToCanvas.js +1 -0
  221. package/Source/DataSources/CompositeEntityCollection.js +0 -1
  222. package/Source/DataSources/CzmlDataSource.js +14 -0
  223. package/Source/DataSources/DataSourceDisplay.js +1 -1
  224. package/Source/DataSources/GeoJsonDataSource.js +0 -1
  225. package/Source/DataSources/GeometryVisualizer.js +1 -1
  226. package/Source/DataSources/KmlDataSource.js +529 -557
  227. package/Source/DataSources/PathGraphics.js +8 -1
  228. package/Source/DataSources/PathMode.js +27 -0
  229. package/Source/DataSources/PathVisualizer.js +298 -1
  230. package/Source/DataSources/PolylineVisualizer.js +1 -1
  231. package/Source/DataSources/StaticOutlineGeometryBatch.js +1 -1
  232. package/Source/Renderer/AutomaticUniforms.js +23 -0
  233. package/Source/Renderer/Context.js +9 -3
  234. package/Source/Renderer/DrawCommand.js +22 -0
  235. package/Source/Renderer/Framebuffer.js +4 -0
  236. package/Source/Renderer/Pass.js +11 -9
  237. package/Source/Renderer/Texture.js +12 -1
  238. package/Source/Renderer/UniformState.js +7 -0
  239. package/Source/Renderer/VertexArray.js +1 -1
  240. package/Source/Renderer/createUniform.js +346 -239
  241. package/Source/Renderer/createUniformArray.js +494 -381
  242. package/Source/Scene/ArcGisMapServerImageryProvider.js +0 -5
  243. package/Source/Scene/ArcGisMapService.js +1 -1
  244. package/Source/Scene/Billboard.js +2 -1
  245. package/Source/Scene/BillboardCollection.js +15 -5
  246. package/Source/Scene/BillboardTexture.js +5 -3
  247. package/Source/Scene/BufferPointCollection.js +11 -1
  248. package/Source/Scene/BufferPolygonCollection.js +26 -0
  249. package/Source/Scene/BufferPolylineCollection.js +2 -0
  250. package/Source/Scene/BufferPrimitiveCollection.js +105 -32
  251. package/Source/Scene/Camera.js +85 -9
  252. package/Source/Scene/CameraEventAggregator.js +30 -18
  253. package/Source/Scene/CameraFlightPath.js +7 -4
  254. package/Source/Scene/Cesium3DTile.js +102 -4
  255. package/Source/Scene/Cesium3DTileContent.js +195 -254
  256. package/Source/Scene/Cesium3DTileContentFactory.js +10 -2
  257. package/Source/Scene/Cesium3DTileOptimizations.js +4 -6
  258. package/Source/Scene/Cesium3DTileStyle.js +40 -0
  259. package/Source/Scene/Cesium3DTileset.js +213 -8
  260. package/Source/Scene/Cesium3DTilesetTraversal.js +14 -0
  261. package/Source/Scene/ClippingPlaneCollection.js +4 -4
  262. package/Source/Scene/ClippingPolygon.js +2 -0
  263. package/Source/Scene/ClippingPolygonCollection.js +2 -2
  264. package/Source/Scene/Composite3DTileContent.js +254 -292
  265. package/Source/Scene/Controllers/Controller.js +63 -0
  266. package/Source/Scene/Controllers/ControllerHost.js +78 -0
  267. package/Source/Scene/Controllers/HybridScreenSpacePanCameraController.js +106 -0
  268. package/Source/Scene/Controllers/MouseButton.js +32 -0
  269. package/Source/Scene/Controllers/ScreenSpaceElevatorCameraController.js +295 -0
  270. package/Source/Scene/Controllers/ScreenSpaceInputBindings.js +154 -0
  271. package/Source/Scene/Controllers/ScreenSpaceMapCameraController.js +310 -0
  272. package/Source/Scene/Controllers/ScreenSpaceTiltOrbitCameraController.js +642 -0
  273. package/Source/Scene/Controllers/ScreenSpaceZoomCameraController.js +431 -0
  274. package/Source/Scene/Controllers/defaultPickWorldPosition.js +84 -0
  275. package/Source/Scene/DerivedCommand.js +98 -0
  276. package/Source/Scene/EdgeDisplayMode.js +50 -0
  277. package/Source/Scene/EdgeFramebuffer.js +1 -5
  278. package/Source/Scene/Empty3DTileContent.js +100 -132
  279. package/Source/Scene/Expression.js +6 -8
  280. package/Source/Scene/FrameState.js +17 -0
  281. package/Source/Scene/GaussianSplat3DTileContent.js +436 -478
  282. package/Source/Scene/GeoJsonPrimitive.js +874 -0
  283. package/Source/Scene/Geometry3DTileContent.js +151 -185
  284. package/Source/Scene/Globe.js +22 -1
  285. package/Source/Scene/GlobeDepth.js +27 -1
  286. package/Source/Scene/GlobeSurfaceShaderSet.js +637 -540
  287. package/Source/Scene/GlobeSurfaceTile.js +575 -398
  288. package/Source/Scene/GlobeSurfaceTileProvider.js +1412 -1184
  289. package/Source/Scene/GltfBufferViewLoader.js +3 -3
  290. package/Source/Scene/GltfLoader.js +146 -3
  291. package/Source/Scene/GltfLoaderUtil.js +20 -4
  292. package/Source/Scene/GltfPipeline/forEachTextureInMaterial.js +10 -0
  293. package/Source/Scene/GltfPipeline/removeUnusedElements.js +21 -11
  294. package/Source/Scene/GltfSpzLoader.js +1 -1
  295. package/Source/Scene/GltfVertexBufferLoader.js +6 -3
  296. package/Source/Scene/I3SDataProvider.js +1 -1
  297. package/Source/Scene/I3SLayer.js +1 -1
  298. package/Source/Scene/I3SNode.js +2 -2
  299. package/Source/Scene/ImageryLayer.js +2 -2
  300. package/Source/Scene/ImageryLayerCollection.js +190 -6
  301. package/Source/Scene/Implicit3DTileContent.js +192 -216
  302. package/Source/Scene/ImplicitTileCoordinates.js +17 -0
  303. package/Source/Scene/IonImageryProvider.js +1 -5
  304. package/Source/Scene/Label.js +4 -4
  305. package/Source/Scene/LabelCollection.js +4 -1
  306. package/Source/Scene/MVTDataProvider.js +555 -0
  307. package/Source/Scene/Material.js +1 -0
  308. package/Source/Scene/Model/B3dmLoader.js +1 -2
  309. package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +82 -312
  310. package/Source/Scene/Model/Extensions/Gpm/GltfGpmLoader.js +4 -0
  311. package/Source/Scene/Model/I3dmLoader.js +1 -1
  312. package/Source/Scene/Model/InstancingPipelineStage.js +4 -7
  313. package/Source/Scene/Model/MaterialPipelineStage.js +124 -1
  314. package/Source/Scene/Model/Model.js +45 -10
  315. package/Source/Scene/Model/Model3DTileContent.js +424 -458
  316. package/Source/Scene/Model/ModelClippingPlanesPipelineStage.js +28 -1
  317. package/Source/Scene/Model/ModelDrawCommand.js +180 -8
  318. package/Source/Scene/Model/ModelDrawCommands.js +4 -0
  319. package/Source/Scene/Model/ModelSceneGraph.js +21 -0
  320. package/Source/Scene/Model/ModelUtility.js +5 -0
  321. package/Source/Scene/Model/PickingPipelineStage.js +29 -0
  322. package/Source/Scene/Model/PrimitiveRenderResources.js +24 -0
  323. package/Source/Scene/Model/createVectorTileBuffersFromModelComponents.js +645 -153
  324. package/Source/Scene/ModelComponents.js +112 -0
  325. package/Source/Scene/Multiple3DTileContent.js +291 -334
  326. package/Source/Scene/MvtLabelCandidates.js +295 -0
  327. package/Source/Scene/MvtLabelManager.js +1069 -0
  328. package/Source/Scene/Picking.js +19 -3
  329. package/Source/Scene/PlanarFillIdFramebuffer.js +172 -0
  330. package/Source/Scene/PntsParser.js +1 -1
  331. package/Source/Scene/PolylineCollection.js +5 -3
  332. package/Source/Scene/PostProcessStage.js +4 -2
  333. package/Source/Scene/QuadtreePrimitive.js +3 -2
  334. package/Source/Scene/ResourceCache.js +7 -4
  335. package/Source/Scene/ResourceCacheKey.js +21 -18
  336. package/Source/Scene/Scene.js +237 -11
  337. package/Source/Scene/SceneTransforms.js +6 -5
  338. package/Source/Scene/ShadowMap.js +9 -3
  339. package/Source/Scene/ShadowMapShader.js +50 -2
  340. package/Source/Scene/SnapFramebuffer.js +121 -0
  341. package/Source/Scene/Snapping.js +184 -0
  342. package/Source/Scene/TerrainFillMesh.js +3 -2
  343. package/Source/Scene/Tileset3DTileContent.js +113 -146
  344. package/Source/Scene/UrlTemplate3DTilesDataProvider.js +543 -0
  345. package/Source/Scene/Vector3DTileContent.js +207 -237
  346. package/Source/Scene/VectorGltf3DTileContent.js +185 -45
  347. package/Source/Scene/View.js +10 -8
  348. package/Source/Scene/VoxelPrimitive.js +159 -175
  349. package/Source/Scene/VoxelProvider.js +64 -91
  350. package/Source/Scene/VoxelTraversal.js +1 -1
  351. package/Source/Scene/buildVectorGltfFromMVT.js +1208 -0
  352. package/Source/Scene/buildVoxelCustomShader.js +199 -0
  353. package/Source/Scene/createElevationBandMaterial.js +1 -1
  354. package/Source/Scene/decodeMVT.js +877 -0
  355. package/Source/Scene/findMeshoptExtension.js +23 -0
  356. package/Source/Scene/renderBufferPointCollection.js +114 -64
  357. package/Source/Scene/renderBufferPolygonCollection.js +245 -53
  358. package/Source/Scene/renderBufferPolylineCollection.js +271 -145
  359. package/Source/Shaders/BillboardCollectionVS.glsl +23 -25
  360. package/Source/Shaders/BillboardCollectionVS.js +23 -25
  361. package/Source/Shaders/BufferPointMaterialFS.glsl +1 -0
  362. package/Source/Shaders/BufferPointMaterialFS.js +1 -0
  363. package/Source/Shaders/BufferPointMaterialVS.glsl +19 -9
  364. package/Source/Shaders/BufferPointMaterialVS.js +20 -10
  365. package/Source/Shaders/BufferPolygonMaterialFS.glsl +13 -0
  366. package/Source/Shaders/BufferPolygonMaterialFS.js +13 -0
  367. package/Source/Shaders/BufferPolygonMaterialVS.glsl +22 -4
  368. package/Source/Shaders/BufferPolygonMaterialVS.js +23 -5
  369. package/Source/Shaders/BufferPolylineMaterialVS.glsl +16 -2
  370. package/Source/Shaders/BufferPolylineMaterialVS.js +17 -3
  371. package/Source/Shaders/Builtin/Constants/passCesium3DTile.glsl +1 -1
  372. package/Source/Shaders/Builtin/Constants/passCesium3DTile.js +1 -1
  373. package/Source/Shaders/Builtin/Constants/passCesium3DTileClassification.glsl +1 -1
  374. package/Source/Shaders/Builtin/Constants/passCesium3DTileClassification.js +1 -1
  375. package/Source/Shaders/Builtin/Constants/passCesium3DTileClassificationIgnoreShow.glsl +1 -1
  376. package/Source/Shaders/Builtin/Constants/passCesium3DTileClassificationIgnoreShow.js +1 -1
  377. package/Source/Shaders/Builtin/Constants/passCesium3DTileEdgesDirect.glsl +9 -0
  378. package/Source/Shaders/Builtin/Constants/passCesium3DTileEdgesDirect.js +11 -0
  379. package/Source/Shaders/Builtin/Constants/passCesium3DTilePlanarFillId.glsl +9 -0
  380. package/Source/Shaders/Builtin/Constants/passCesium3DTilePlanarFillId.js +11 -0
  381. package/Source/Shaders/Builtin/Constants/passClassification.glsl +1 -1
  382. package/Source/Shaders/Builtin/Constants/passClassification.js +1 -1
  383. package/Source/Shaders/Builtin/Constants/passGaussianSplats.glsl +1 -1
  384. package/Source/Shaders/Builtin/Constants/passGaussianSplats.js +1 -1
  385. package/Source/Shaders/Builtin/Constants/passOpaque.glsl +1 -1
  386. package/Source/Shaders/Builtin/Constants/passOpaque.js +1 -1
  387. package/Source/Shaders/Builtin/Constants/passOverlay.glsl +1 -1
  388. package/Source/Shaders/Builtin/Constants/passOverlay.js +1 -1
  389. package/Source/Shaders/Builtin/Constants/passTranslucent.glsl +1 -1
  390. package/Source/Shaders/Builtin/Constants/passTranslucent.js +1 -1
  391. package/Source/Shaders/Builtin/Constants/passVoxels.glsl +1 -1
  392. package/Source/Shaders/Builtin/Constants/passVoxels.js +1 -1
  393. package/Source/Shaders/Builtin/CzmBuiltins.js +4 -0
  394. package/Source/Shaders/GlobeFS.glsl +10 -6
  395. package/Source/Shaders/GlobeFS.js +10 -6
  396. package/Source/Shaders/Materials/PolylineGlowMaterial.glsl +1 -1
  397. package/Source/Shaders/Materials/PolylineGlowMaterial.js +1 -1
  398. package/Source/Shaders/Model/EdgeVisibilityStageVS.glsl +0 -1
  399. package/Source/Shaders/Model/EdgeVisibilityStageVS.js +0 -1
  400. package/Source/Shaders/Model/MaterialStageFS.glsl +8 -2
  401. package/Source/Shaders/Model/MaterialStageFS.js +8 -2
  402. package/Source/Shaders/Model/ModelFS.glsl +105 -0
  403. package/Source/Shaders/Model/ModelFS.js +105 -0
  404. package/Source/Shaders/VectorCommon.glsl +178 -0
  405. package/Source/Shaders/VectorCommon.js +180 -0
  406. package/Source/ThirdParty/zip-module.wasm +0 -0
  407. package/Source/Widget/CesiumWidget.js +30 -0
  408. package/Source/Workers/createMvtTile.js +39 -0
  409. package/Source/Workers/decodeGoogleEarthEnterprisePacket.js +2 -2
  410. package/Source/Workers/incrementallyBuildTerrainPicker.js +2 -0
  411. package/index.js +113 -83
  412. package/package.json +13 -13
@@ -25,158 +25,229 @@ import decodeVectorPolylinePositions from "../Core/decodeVectorPolylinePositions
25
25
  * Implements the {@link Cesium3DTileContent} interface.
26
26
  * </p>
27
27
  *
28
- * @alias Vector3DTileContent
29
- * @constructor
30
- *
28
+ * @implements Cesium3DTileContent
31
29
  * @private
32
30
  */
33
- function Vector3DTileContent(tileset, tile, resource, arrayBuffer, byteOffset) {
34
- this._tileset = tileset;
35
- this._tile = tile;
36
- this._resource = resource;
31
+ class Vector3DTileContent {
32
+ constructor(tileset, tile, resource, arrayBuffer, byteOffset) {
33
+ this._tileset = tileset;
34
+ this._tile = tile;
35
+ this._resource = resource;
37
36
 
38
- this._polygons = undefined;
39
- this._polylines = undefined;
40
- this._points = undefined;
37
+ this._polygons = undefined;
38
+ this._polylines = undefined;
39
+ this._points = undefined;
41
40
 
42
- this._metadata = undefined;
41
+ this._metadata = undefined;
43
42
 
44
- this._batchTable = undefined;
45
- this._features = undefined;
43
+ this._batchTable = undefined;
44
+ this._features = undefined;
46
45
 
47
- /**
48
- * Part of the {@link Cesium3DTileContent} interface.
49
- */
50
- this.featurePropertiesDirty = false;
51
- this._group = undefined;
46
+ /**
47
+ * Part of the {@link Cesium3DTileContent} interface.
48
+ */
49
+ this.featurePropertiesDirty = false;
50
+ this._group = undefined;
52
51
 
53
- this._ready = false;
52
+ this._ready = false;
54
53
 
55
- initialize(this, arrayBuffer, byteOffset);
56
- }
54
+ initialize(this, arrayBuffer, byteOffset);
55
+ }
57
56
 
58
- Object.defineProperties(Vector3DTileContent.prototype, {
59
- featuresLength: {
60
- get: function () {
61
- return defined(this._batchTable) ? this._batchTable.featuresLength : 0;
62
- },
63
- },
64
-
65
- pointsLength: {
66
- get: function () {
67
- if (defined(this._points)) {
68
- return this._points.pointsLength;
69
- }
70
- return 0;
71
- },
72
- },
73
-
74
- trianglesLength: {
75
- get: function () {
76
- let trianglesLength = 0;
77
- if (defined(this._polygons)) {
78
- trianglesLength += this._polygons.trianglesLength;
79
- }
80
- if (defined(this._polylines)) {
81
- trianglesLength += this._polylines.trianglesLength;
82
- }
83
- return trianglesLength;
84
- },
85
- },
86
-
87
- geometryByteLength: {
88
- get: function () {
89
- let geometryByteLength = 0;
90
- if (defined(this._polygons)) {
91
- geometryByteLength += this._polygons.geometryByteLength;
92
- }
93
- if (defined(this._polylines)) {
94
- geometryByteLength += this._polylines.geometryByteLength;
95
- }
96
- return geometryByteLength;
97
- },
98
- },
99
-
100
- texturesByteLength: {
101
- get: function () {
102
- if (defined(this._points)) {
103
- return this._points.texturesByteLength;
104
- }
105
- return 0;
106
- },
107
- },
108
-
109
- batchTableByteLength: {
110
- get: function () {
111
- return defined(this._batchTable)
112
- ? this._batchTable.batchTableByteLength
113
- : 0;
114
- },
115
- },
116
-
117
- innerContents: {
118
- get: function () {
119
- return undefined;
120
- },
121
- },
57
+ get featuresLength() {
58
+ return defined(this._batchTable) ? this._batchTable.featuresLength : 0;
59
+ }
60
+
61
+ get pointsLength() {
62
+ if (defined(this._points)) {
63
+ return this._points.pointsLength;
64
+ }
65
+ return 0;
66
+ }
67
+
68
+ get trianglesLength() {
69
+ let trianglesLength = 0;
70
+ if (defined(this._polygons)) {
71
+ trianglesLength += this._polygons.trianglesLength;
72
+ }
73
+ if (defined(this._polylines)) {
74
+ trianglesLength += this._polylines.trianglesLength;
75
+ }
76
+ return trianglesLength;
77
+ }
78
+
79
+ get geometryByteLength() {
80
+ let geometryByteLength = 0;
81
+ if (defined(this._polygons)) {
82
+ geometryByteLength += this._polygons.geometryByteLength;
83
+ }
84
+ if (defined(this._polylines)) {
85
+ geometryByteLength += this._polylines.geometryByteLength;
86
+ }
87
+ return geometryByteLength;
88
+ }
89
+
90
+ get texturesByteLength() {
91
+ if (defined(this._points)) {
92
+ return this._points.texturesByteLength;
93
+ }
94
+ return 0;
95
+ }
96
+
97
+ get batchTableByteLength() {
98
+ return defined(this._batchTable)
99
+ ? this._batchTable.batchTableByteLength
100
+ : 0;
101
+ }
102
+
103
+ get innerContents() {
104
+ return undefined;
105
+ }
122
106
 
123
107
  /**
124
108
  * Returns true when the tile's content is ready to render; otherwise false
125
109
  *
126
- * @memberof Vector3DTileContent.prototype
127
110
  *
128
111
  * @type {boolean}
129
112
  * @readonly
130
113
  * @private
131
114
  */
132
- ready: {
133
- get: function () {
134
- return this._ready;
135
- },
136
- },
137
-
138
- tileset: {
139
- get: function () {
140
- return this._tileset;
141
- },
142
- },
143
-
144
- tile: {
145
- get: function () {
146
- return this._tile;
147
- },
148
- },
149
-
150
- url: {
151
- get: function () {
152
- return this._resource.getUrlComponent(true);
153
- },
154
- },
155
-
156
- metadata: {
157
- get: function () {
158
- return this._metadata;
159
- },
160
- set: function (value) {
161
- this._metadata = value;
162
- },
163
- },
164
-
165
- batchTable: {
166
- get: function () {
167
- return this._batchTable;
168
- },
169
- },
170
-
171
- group: {
172
- get: function () {
173
- return this._group;
174
- },
175
- set: function (value) {
176
- this._group = value;
177
- },
178
- },
179
- });
115
+ get ready() {
116
+ return this._ready;
117
+ }
118
+
119
+ get tileset() {
120
+ return this._tileset;
121
+ }
122
+
123
+ get tile() {
124
+ return this._tile;
125
+ }
126
+
127
+ get url() {
128
+ return this._resource.getUrlComponent(true);
129
+ }
130
+
131
+ get metadata() {
132
+ return this._metadata;
133
+ }
134
+
135
+ set metadata(value) {
136
+ this._metadata = value;
137
+ }
138
+
139
+ get batchTable() {
140
+ return this._batchTable;
141
+ }
142
+
143
+ get group() {
144
+ return this._group;
145
+ }
146
+
147
+ set group(value) {
148
+ this._group = value;
149
+ }
150
+
151
+ hasProperty(batchId, name) {
152
+ return this._batchTable.hasProperty(batchId, name);
153
+ }
154
+
155
+ getFeature(batchId) {
156
+ //>>includeStart('debug', pragmas.debug);
157
+ const featuresLength = this.featuresLength;
158
+ if (!defined(batchId) || batchId < 0 || batchId >= featuresLength) {
159
+ throw new DeveloperError(
160
+ `batchId is required and between zero and featuresLength - 1 (${
161
+ featuresLength - 1
162
+ }).`,
163
+ );
164
+ }
165
+ //>>includeEnd('debug');
166
+
167
+ if (!defined(this._features)) {
168
+ createFeatures(this);
169
+ }
170
+
171
+ return this._features[batchId];
172
+ }
173
+
174
+ applyDebugSettings(enabled, color) {
175
+ if (defined(this._polygons)) {
176
+ this._polygons.applyDebugSettings(enabled, color);
177
+ }
178
+ if (defined(this._polylines)) {
179
+ this._polylines.applyDebugSettings(enabled, color);
180
+ }
181
+ if (defined(this._points)) {
182
+ this._points.applyDebugSettings(enabled, color);
183
+ }
184
+ }
185
+
186
+ applyStyle(style) {
187
+ if (!defined(this._features)) {
188
+ createFeatures(this);
189
+ }
190
+ if (defined(this._polygons)) {
191
+ this._polygons.applyStyle(style, this._features);
192
+ }
193
+ if (defined(this._polylines)) {
194
+ this._polylines.applyStyle(style, this._features);
195
+ }
196
+ if (defined(this._points)) {
197
+ this._points.applyStyle(style, this._features);
198
+ }
199
+ }
200
+
201
+ update(tileset, frameState) {
202
+ let ready = true;
203
+ if (defined(this._polygons)) {
204
+ this._polygons.classificationType = this._tileset.classificationType;
205
+ this._polygons.debugWireframe = this._tileset.debugWireframe;
206
+ this._polygons.update(frameState);
207
+ ready = ready && this._polygons.ready;
208
+ }
209
+ if (defined(this._polylines)) {
210
+ this._polylines.update(frameState);
211
+ ready = ready && this._polylines.ready;
212
+ }
213
+ if (defined(this._points)) {
214
+ this._points.update(frameState);
215
+ ready = ready && this._points.ready;
216
+ }
217
+ if (defined(this._batchTable) && ready) {
218
+ if (!defined(this._features)) {
219
+ createFeatures(this);
220
+ }
221
+ this._batchTable.update(tileset, frameState);
222
+ this._ready = true;
223
+ }
224
+ }
225
+
226
+ pick(ray, frameState, result) {
227
+ return undefined;
228
+ }
229
+
230
+ getPolylinePositions(batchId) {
231
+ const polylines = this._polylines;
232
+ if (!defined(polylines)) {
233
+ return undefined;
234
+ }
235
+
236
+ return polylines.getPositions(batchId);
237
+ }
238
+
239
+ isDestroyed() {
240
+ return false;
241
+ }
242
+
243
+ destroy() {
244
+ this._polygons = this._polygons && this._polygons.destroy();
245
+ this._polylines = this._polylines && this._polylines.destroy();
246
+ this._points = this._points && this._points.destroy();
247
+ this._batchTable = this._batchTable && this._batchTable.destroy();
248
+ return destroyObject(this);
249
+ }
250
+ }
180
251
 
181
252
  function createColorChangedCallback(content) {
182
253
  return function (batchId, color) {
@@ -331,8 +402,8 @@ function initialize(content, arrayBuffer, byteOffset) {
331
402
  byteOffset += sizeOfUint32;
332
403
  const polylinePositionByteLength = view.getUint32(byteOffset, true);
333
404
  byteOffset += sizeOfUint32;
334
- const pointsPositionByteLength = view.getUint32(byteOffset, true);
335
- byteOffset += sizeOfUint32;
405
+ // Ignore pointsPositionByteLength
406
+ byteOffset += sizeOfUint32; // For pointsPositionByteLength
336
407
 
337
408
  const featureTableJson = getJsonFromTypedArray(
338
409
  uint8Array,
@@ -616,7 +687,6 @@ function initialize(content, arrayBuffer, byteOffset) {
616
687
  byteOffset,
617
688
  numberOfPoints * 3,
618
689
  );
619
- byteOffset += pointsPositionByteLength;
620
690
  content._points = new Vector3DTilePoints({
621
691
  positions: pointPositions,
622
692
  batchIds: batchIds.points,
@@ -648,106 +718,6 @@ function createFeatures(content) {
648
718
  }
649
719
  }
650
720
 
651
- Vector3DTileContent.prototype.hasProperty = function (batchId, name) {
652
- return this._batchTable.hasProperty(batchId, name);
653
- };
654
-
655
- Vector3DTileContent.prototype.getFeature = function (batchId) {
656
- //>>includeStart('debug', pragmas.debug);
657
- const featuresLength = this.featuresLength;
658
- if (!defined(batchId) || batchId < 0 || batchId >= featuresLength) {
659
- throw new DeveloperError(
660
- `batchId is required and between zero and featuresLength - 1 (${
661
- featuresLength - 1
662
- }).`,
663
- );
664
- }
665
- //>>includeEnd('debug');
666
-
667
- if (!defined(this._features)) {
668
- createFeatures(this);
669
- }
670
-
671
- return this._features[batchId];
672
- };
673
-
674
- Vector3DTileContent.prototype.applyDebugSettings = function (enabled, color) {
675
- if (defined(this._polygons)) {
676
- this._polygons.applyDebugSettings(enabled, color);
677
- }
678
- if (defined(this._polylines)) {
679
- this._polylines.applyDebugSettings(enabled, color);
680
- }
681
- if (defined(this._points)) {
682
- this._points.applyDebugSettings(enabled, color);
683
- }
684
- };
685
-
686
- Vector3DTileContent.prototype.applyStyle = function (style) {
687
- if (!defined(this._features)) {
688
- createFeatures(this);
689
- }
690
- if (defined(this._polygons)) {
691
- this._polygons.applyStyle(style, this._features);
692
- }
693
- if (defined(this._polylines)) {
694
- this._polylines.applyStyle(style, this._features);
695
- }
696
- if (defined(this._points)) {
697
- this._points.applyStyle(style, this._features);
698
- }
699
- };
700
-
701
- Vector3DTileContent.prototype.update = function (tileset, frameState) {
702
- let ready = true;
703
- if (defined(this._polygons)) {
704
- this._polygons.classificationType = this._tileset.classificationType;
705
- this._polygons.debugWireframe = this._tileset.debugWireframe;
706
- this._polygons.update(frameState);
707
- ready = ready && this._polygons.ready;
708
- }
709
- if (defined(this._polylines)) {
710
- this._polylines.update(frameState);
711
- ready = ready && this._polylines.ready;
712
- }
713
- if (defined(this._points)) {
714
- this._points.update(frameState);
715
- ready = ready && this._points.ready;
716
- }
717
- if (defined(this._batchTable) && ready) {
718
- if (!defined(this._features)) {
719
- createFeatures(this);
720
- }
721
- this._batchTable.update(tileset, frameState);
722
- this._ready = true;
723
- }
724
- };
725
-
726
- Vector3DTileContent.prototype.pick = function (ray, frameState, result) {
727
- return undefined;
728
- };
729
-
730
- Vector3DTileContent.prototype.getPolylinePositions = function (batchId) {
731
- const polylines = this._polylines;
732
- if (!defined(polylines)) {
733
- return undefined;
734
- }
735
-
736
- return polylines.getPositions(batchId);
737
- };
738
-
739
- Vector3DTileContent.prototype.isDestroyed = function () {
740
- return false;
741
- };
742
-
743
- Vector3DTileContent.prototype.destroy = function () {
744
- this._polygons = this._polygons && this._polygons.destroy();
745
- this._polylines = this._polylines && this._polylines.destroy();
746
- this._points = this._points && this._points.destroy();
747
- this._batchTable = this._batchTable && this._batchTable.destroy();
748
- return destroyObject(this);
749
- };
750
-
751
721
  function examineVectorLines(
752
722
  positions,
753
723
  counts,