@cesium/engine 14.0.0 → 16.0.0

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 (578) hide show
  1. package/Build/Workers/{chunk-WVNLSTOF.js → chunk-2TQ64T4I.js} +2 -2
  2. package/Build/Workers/{chunk-ED6GLQTK.js → chunk-34EWMUFG.js} +1 -1
  3. package/Build/Workers/{chunk-HEZHXDYB.js → chunk-4LHK6E47.js} +1 -1
  4. package/Build/Workers/{chunk-7EO56M5R.js → chunk-5TN3LG2T.js} +2 -2
  5. package/Build/Workers/{chunk-7ZB2RVIQ.js → chunk-6B7KGA5P.js} +16 -19
  6. package/Build/Workers/{chunk-3QLSKXKF.js → chunk-B75OO2DU.js} +7 -10
  7. package/Build/Workers/{chunk-Q4ZVWJXX.js → chunk-COOLDICB.js} +9 -11
  8. package/Build/Workers/{chunk-3PIZQT3I.js → chunk-CQNYYX3N.js} +4 -4
  9. package/Build/Workers/{chunk-JPDKYBLF.js → chunk-CUJH7PS5.js} +27 -29
  10. package/Build/Workers/{chunk-CI2HEJFC.js → chunk-EAWYQ44R.js} +39 -41
  11. package/Build/Workers/{chunk-SDIDRZDG.js → chunk-EJJDBH5W.js} +7 -7
  12. package/Build/Workers/{chunk-5KWRW7YL.js → chunk-EO44CO62.js} +2 -2
  13. package/Build/Workers/{chunk-N2XAJBC6.js → chunk-EOIUWEAK.js} +26 -28
  14. package/Build/Workers/{chunk-YJX7X577.js → chunk-ERKJ7IWJ.js} +21 -23
  15. package/Build/Workers/{chunk-J7IH4EYI.js → chunk-ESED7XBA.js} +13 -16
  16. package/Build/Workers/{chunk-F4CUH4MR.js → chunk-FW2OX42E.js} +18 -21
  17. package/Build/Workers/{chunk-FX4R4MTH.js → chunk-GH6I7PBY.js} +6 -9
  18. package/Build/Workers/{chunk-FYGLNDKG.js → chunk-GQVSADCI.js} +19 -22
  19. package/Build/Workers/{chunk-TY4DKOWR.js → chunk-ICU72UPR.js} +4 -4
  20. package/Build/Workers/{chunk-DT5NFR5C.js → chunk-ILVAXLMC.js} +7 -7
  21. package/Build/Workers/{chunk-ZGFIT57T.js → chunk-KKV6XBF5.js} +27 -23
  22. package/Build/Workers/{chunk-HKHQ3EDR.js → chunk-KV6TEHXY.js} +4 -4
  23. package/Build/Workers/{chunk-B4GSRXE3.js → chunk-LCSH4ZOB.js} +7 -10
  24. package/Build/Workers/{chunk-LNSWJ43X.js → chunk-M5J3S3HY.js} +17 -26
  25. package/Build/Workers/{chunk-LJBJM6VI.js → chunk-NB6D74SQ.js} +6 -6
  26. package/Build/Workers/{chunk-4CHMVQTQ.js → chunk-NREPBWCX.js} +14 -14
  27. package/Build/Workers/{chunk-PWF4EY5P.js → chunk-OD4Q7HE5.js} +4 -4
  28. package/Build/Workers/{chunk-77XPS7ZA.js → chunk-OMFZ4IN6.js} +15 -24
  29. package/Build/Workers/{chunk-HUFQVUMY.js → chunk-OMZGZVHI.js} +12 -17
  30. package/Build/Workers/{chunk-LOZ4NKY3.js → chunk-ORIMMEHO.js} +18 -20
  31. package/Build/Workers/{chunk-5S5OOA6U.js → chunk-OWLBD6BL.js} +1 -1
  32. package/Build/Workers/{chunk-VCNOFQYH.js → chunk-PB6SE3SZ.js} +9 -12
  33. package/Build/Workers/{chunk-3JBEPBPL.js → chunk-PT6U7UNY.js} +25 -30
  34. package/Build/Workers/{chunk-G3BVMPWG.js → chunk-RWAFHSX3.js} +2 -2
  35. package/Build/Workers/{chunk-KHWLAQVA.js → chunk-S2NKKWYE.js} +1 -1
  36. package/Build/Workers/{chunk-FFBJDW4A.js → chunk-S3IQBSIB.js} +6 -6
  37. package/Build/Workers/{chunk-3LYROPON.js → chunk-SCUQTTCN.js} +16 -19
  38. package/Build/Workers/{chunk-ZMNLEL6W.js → chunk-TBSA4MNF.js} +5 -8
  39. package/Build/Workers/{chunk-EWDGNOJE.js → chunk-TEUGW455.js} +9 -12
  40. package/Build/Workers/{chunk-XK4OP6VA.js → chunk-TL5YKZJF.js} +33 -41
  41. package/Build/Workers/{chunk-KM6MITPF.js → chunk-V4Y7C25O.js} +46 -42
  42. package/Build/Workers/{chunk-OMXHEJTK.js → chunk-VNDECE6N.js} +2 -2
  43. package/Build/Workers/{chunk-LS3KVHYY.js → chunk-VVTAI2TN.js} +6 -9
  44. package/Build/Workers/{chunk-WEHZP4SE.js → chunk-VXAAIRJ7.js} +129 -146
  45. package/Build/Workers/{chunk-MVM4JV5U.js → chunk-WGIOUM2S.js} +9 -12
  46. package/Build/Workers/{chunk-JHBPC4LK.js → chunk-XF6EBVKV.js} +7 -7
  47. package/Build/Workers/{chunk-D7ZBZPHV.js → chunk-XMKE4XB2.js} +5 -5
  48. package/Build/Workers/{chunk-7UHKH6M3.js → chunk-YA4XALD5.js} +34 -36
  49. package/Build/Workers/{chunk-KSYBJA4M.js → chunk-YFXXUW6U.js} +6 -12
  50. package/Build/Workers/{chunk-Z3QWTHI7.js → chunk-YL26OJCG.js} +21 -23
  51. package/Build/Workers/{chunk-K4AH3TDT.js → chunk-ZLJDDRGB.js} +14 -17
  52. package/Build/Workers/combineGeometry.js +21 -22
  53. package/Build/Workers/createBoxGeometry.js +15 -16
  54. package/Build/Workers/createBoxOutlineGeometry.js +20 -25
  55. package/Build/Workers/createCircleGeometry.js +26 -28
  56. package/Build/Workers/createCircleOutlineGeometry.js +19 -21
  57. package/Build/Workers/createCoplanarPolygonGeometry.js +38 -42
  58. package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +34 -36
  59. package/Build/Workers/createCorridorGeometry.js +42 -49
  60. package/Build/Workers/createCorridorOutlineGeometry.js +36 -43
  61. package/Build/Workers/createCylinderGeometry.js +17 -18
  62. package/Build/Workers/createCylinderOutlineGeometry.js +23 -25
  63. package/Build/Workers/createEllipseGeometry.js +23 -24
  64. package/Build/Workers/createEllipseOutlineGeometry.js +16 -17
  65. package/Build/Workers/createEllipsoidGeometry.js +16 -17
  66. package/Build/Workers/createEllipsoidOutlineGeometry.js +15 -16
  67. package/Build/Workers/createFrustumGeometry.js +15 -16
  68. package/Build/Workers/createFrustumOutlineGeometry.js +18 -21
  69. package/Build/Workers/createGeometry.js +22 -25
  70. package/Build/Workers/createGroundPolylineGeometry.js +34 -42
  71. package/Build/Workers/createPlaneGeometry.js +19 -21
  72. package/Build/Workers/createPlaneOutlineGeometry.js +12 -13
  73. package/Build/Workers/createPolygonGeometry.js +45 -50
  74. package/Build/Workers/createPolygonOutlineGeometry.js +39 -44
  75. package/Build/Workers/createPolylineGeometry.js +33 -40
  76. package/Build/Workers/createPolylineVolumeGeometry.js +37 -44
  77. package/Build/Workers/createPolylineVolumeOutlineGeometry.js +32 -39
  78. package/Build/Workers/createRectangleGeometry.js +41 -51
  79. package/Build/Workers/createRectangleOutlineGeometry.js +28 -33
  80. package/Build/Workers/createSimplePolylineGeometry.js +29 -34
  81. package/Build/Workers/createSphereGeometry.js +17 -20
  82. package/Build/Workers/createSphereOutlineGeometry.js +16 -19
  83. package/Build/Workers/createTaskProcessorWorker.js +3 -3
  84. package/Build/Workers/createVectorTileClampedPolylines.js +12 -13
  85. package/Build/Workers/createVectorTileGeometries.js +21 -22
  86. package/Build/Workers/createVectorTilePoints.js +11 -12
  87. package/Build/Workers/createVectorTilePolygons.js +19 -20
  88. package/Build/Workers/createVectorTilePolylines.js +12 -13
  89. package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +20 -23
  90. package/Build/Workers/createVerticesFromHeightmap.js +31 -58
  91. package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +17 -18
  92. package/Build/Workers/createWallGeometry.js +30 -35
  93. package/Build/Workers/createWallOutlineGeometry.js +28 -33
  94. package/Build/Workers/decodeDraco.js +10 -11
  95. package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
  96. package/Build/Workers/decodeI3S.js +10 -16
  97. package/Build/Workers/transcodeKTX2.js +50 -46
  98. package/Build/Workers/transferTypedArrayTest.js +1 -1
  99. package/Build/Workers/upsampleQuantizedTerrainMesh.js +19 -20
  100. package/Source/Core/ApproximateTerrainHeights.js +2 -3
  101. package/Source/Core/ArcGISTiledElevationTerrainProvider.js +6 -6
  102. package/Source/Core/AxisAlignedBoundingBox.js +2 -3
  103. package/Source/Core/BingMapsGeocoderService.js +2 -2
  104. package/Source/Core/BoundingRectangle.js +7 -8
  105. package/Source/Core/BoundingSphere.js +10 -11
  106. package/Source/Core/BoxGeometry.js +7 -7
  107. package/Source/Core/BoxOutlineGeometry.js +7 -9
  108. package/Source/Core/Cartesian2.js +4 -5
  109. package/Source/Core/Cartesian3.js +7 -8
  110. package/Source/Core/Cartesian4.js +6 -7
  111. package/Source/Core/Cartographic.js +5 -6
  112. package/Source/Core/CatmullRomSpline.js +2 -2
  113. package/Source/Core/CesiumTerrainProvider.js +11 -14
  114. package/Source/Core/CircleGeometry.js +2 -2
  115. package/Source/Core/CircleOutlineGeometry.js +2 -2
  116. package/Source/Core/Clock.js +7 -10
  117. package/Source/Core/Color.js +28 -28
  118. package/Source/Core/ColorGeometryInstanceAttribute.js +4 -5
  119. package/Source/Core/ComponentDatatype.js +4 -6
  120. package/Source/Core/CoplanarPolygonGeometry.js +8 -10
  121. package/Source/Core/CoplanarPolygonOutlineGeometry.js +5 -5
  122. package/Source/Core/CorridorGeometry.js +15 -20
  123. package/Source/Core/CorridorOutlineGeometry.js +10 -15
  124. package/Source/Core/Credit.js +1 -2
  125. package/Source/Core/CullingVolume.js +1 -2
  126. package/Source/Core/CustomHeightmapTerrainProvider.js +3 -3
  127. package/Source/Core/CylinderGeometry.js +7 -7
  128. package/Source/Core/CylinderOutlineGeometry.js +7 -7
  129. package/Source/Core/DistanceDisplayCondition.js +4 -5
  130. package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +2 -3
  131. package/Source/Core/EarthOrientationParameters.js +4 -4
  132. package/Source/Core/EllipseGeometry.js +17 -23
  133. package/Source/Core/EllipseOutlineGeometry.js +12 -15
  134. package/Source/Core/Ellipsoid.js +7 -8
  135. package/Source/Core/EllipsoidGeodesic.js +1 -2
  136. package/Source/Core/EllipsoidGeometry.js +15 -15
  137. package/Source/Core/EllipsoidOutlineGeometry.js +15 -15
  138. package/Source/Core/EllipsoidRhumbLine.js +3 -4
  139. package/Source/Core/EllipsoidTangentPlane.js +1 -2
  140. package/Source/Core/EllipsoidTerrainProvider.js +4 -4
  141. package/Source/Core/EllipsoidalOccluder.js +2 -3
  142. package/Source/Core/FeatureDetection.js +1 -2
  143. package/Source/Core/Frozen.js +24 -0
  144. package/Source/Core/FrustumGeometry.js +7 -8
  145. package/Source/Core/FrustumOutlineGeometry.js +3 -4
  146. package/Source/Core/GeographicProjection.js +1 -2
  147. package/Source/Core/GeographicTilingScheme.js +6 -12
  148. package/Source/Core/Geometry.js +4 -7
  149. package/Source/Core/GeometryAttribute.js +3 -3
  150. package/Source/Core/GeometryAttributes.js +2 -2
  151. package/Source/Core/GeometryInstance.js +4 -6
  152. package/Source/Core/GeometryInstanceAttribute.js +3 -3
  153. package/Source/Core/GeometryPipeline.js +3 -4
  154. package/Source/Core/GoogleEarthEnterpriseMetadata.js +13 -24
  155. package/Source/Core/GoogleEarthEnterpriseTerrainData.js +9 -12
  156. package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +3 -3
  157. package/Source/Core/GoogleGeocoderService.js +2 -2
  158. package/Source/Core/GregorianDate.js +8 -9
  159. package/Source/Core/GroundPolylineGeometry.js +8 -8
  160. package/Source/Core/HeadingPitchRange.js +3 -4
  161. package/Source/Core/HeadingPitchRoll.js +3 -4
  162. package/Source/Core/Heap.js +3 -4
  163. package/Source/Core/HeightmapTerrainData.js +22 -38
  164. package/Source/Core/HeightmapTessellator.js +21 -37
  165. package/Source/Core/HermitePolynomialApproximation.js +1 -2
  166. package/Source/Core/HermiteSpline.js +5 -5
  167. package/Source/Core/ITwinPlatform.js +66 -12
  168. package/Source/Core/Iau2006XysData.js +8 -10
  169. package/Source/Core/IntersectionTests.js +1 -2
  170. package/Source/Core/Interval.js +2 -4
  171. package/Source/Core/Ion.js +1 -1
  172. package/Source/Core/IonGeocoderService.js +6 -10
  173. package/Source/Core/IonResource.js +6 -6
  174. package/Source/Core/JulianDate.js +11 -12
  175. package/Source/Core/LinearSpline.js +2 -2
  176. package/Source/Core/ManagedArray.js +2 -3
  177. package/Source/Core/Math.js +36 -27
  178. package/Source/Core/Matrix2.js +7 -8
  179. package/Source/Core/Matrix3.js +12 -13
  180. package/Source/Core/Matrix4.js +28 -28
  181. package/Source/Core/MorphWeightSpline.js +2 -2
  182. package/Source/Core/NearFarScalar.js +6 -7
  183. package/Source/Core/Occluder.js +1 -2
  184. package/Source/Core/OffsetGeometryInstanceAttribute.js +3 -4
  185. package/Source/Core/OpenCageGeocoderService.js +1 -2
  186. package/Source/Core/OrientedBoundingBox.js +7 -8
  187. package/Source/Core/OrthographicFrustum.js +6 -6
  188. package/Source/Core/OrthographicOffCenterFrustum.js +4 -4
  189. package/Source/Core/PerspectiveFrustum.js +8 -8
  190. package/Source/Core/PerspectiveOffCenterFrustum.js +4 -4
  191. package/Source/Core/PlaneGeometry.js +5 -5
  192. package/Source/Core/PolygonGeometry.js +16 -19
  193. package/Source/Core/PolygonGeometryLibrary.js +27 -6
  194. package/Source/Core/PolygonOutlineGeometry.js +11 -14
  195. package/Source/Core/PolygonPipeline.js +5 -6
  196. package/Source/Core/PolylineGeometry.js +10 -15
  197. package/Source/Core/PolylinePipeline.js +7 -14
  198. package/Source/Core/PolylineVolumeGeometry.js +8 -13
  199. package/Source/Core/PolylineVolumeOutlineGeometry.js +7 -12
  200. package/Source/Core/QuantizedMeshTerrainData.js +12 -16
  201. package/Source/Core/Quaternion.js +7 -8
  202. package/Source/Core/QuaternionSpline.js +2 -2
  203. package/Source/Core/Ray.js +2 -3
  204. package/Source/Core/Rectangle.js +18 -19
  205. package/Source/Core/RectangleGeometry.js +17 -25
  206. package/Source/Core/RectangleGeometryLibrary.js +1 -1
  207. package/Source/Core/RectangleOutlineGeometry.js +10 -13
  208. package/Source/Core/Request.js +6 -6
  209. package/Source/Core/RequestScheduler.js +4 -6
  210. package/Source/Core/Resource.js +13 -16
  211. package/Source/Core/S2Cell.js +2 -3
  212. package/Source/Core/ScreenSpaceEventHandler.js +1 -2
  213. package/Source/Core/ShowGeometryInstanceAttribute.js +1 -2
  214. package/Source/Core/Simon1994PlanetaryPositions.js +9 -9
  215. package/Source/Core/SimplePolylineGeometry.js +8 -11
  216. package/Source/Core/SphereGeometry.js +1 -2
  217. package/Source/Core/SphereOutlineGeometry.js +1 -2
  218. package/Source/Core/Spherical.js +4 -5
  219. package/Source/Core/Spline.js +1 -2
  220. package/Source/Core/SteppedSpline.js +2 -2
  221. package/Source/Core/TaskProcessor.js +2 -9
  222. package/Source/Core/TerrainData.js +1 -1
  223. package/Source/Core/TerrainEncoding.js +4 -11
  224. package/Source/Core/TerrainMesh.js +1 -3
  225. package/Source/Core/TerrainProvider.js +1 -1
  226. package/Source/Core/TexturePacker.js +166 -0
  227. package/Source/Core/TileProviderError.js +1 -2
  228. package/Source/Core/TimeInterval.js +7 -7
  229. package/Source/Core/TimeIntervalCollection.js +7 -7
  230. package/Source/Core/Tipsify.js +5 -5
  231. package/Source/Core/Transforms.js +10 -15
  232. package/Source/Core/TranslationRotationScale.js +3 -6
  233. package/Source/Core/VRTheWorldTerrainProvider.js +5 -5
  234. package/Source/Core/VertexFormat.js +10 -10
  235. package/Source/Core/VerticalExaggeration.js +1 -1
  236. package/Source/Core/VideoSynchronizer.js +6 -6
  237. package/Source/Core/WallGeometry.js +8 -11
  238. package/Source/Core/WallOutlineGeometry.js +7 -10
  239. package/Source/Core/WebMercatorProjection.js +1 -2
  240. package/Source/Core/WebMercatorTilingScheme.js +5 -11
  241. package/Source/Core/arrayRemoveDuplicates.js +1 -2
  242. package/Source/Core/clone.js +1 -3
  243. package/Source/Core/combine.js +1 -2
  244. package/Source/Core/createWorldBathymetryAsync.js +3 -3
  245. package/Source/Core/createWorldTerrainAsync.js +4 -4
  246. package/Source/Core/defaultValue.js +20 -1
  247. package/Source/Core/destroyObject.js +1 -5
  248. package/Source/Core/getAbsoluteUri.js +1 -2
  249. package/Source/Core/getMagic.js +1 -2
  250. package/Source/Core/getStringFromTypedArray.js +2 -3
  251. package/Source/Core/loadImageFromTypedArray.js +2 -6
  252. package/Source/Core/oneTimeWarning.js +1 -2
  253. package/Source/Core/writeTextToCanvas.js +10 -13
  254. package/Source/DataSources/BillboardGraphics.js +27 -53
  255. package/Source/DataSources/BillboardVisualizer.js +3 -3
  256. package/Source/DataSources/BoxGraphics.js +13 -18
  257. package/Source/DataSources/CallbackPositionProperty.js +1 -2
  258. package/Source/DataSources/Cesium3DTilesetGraphics.js +6 -8
  259. package/Source/DataSources/CheckerboardMaterialProperty.js +2 -2
  260. package/Source/DataSources/CompositePositionProperty.js +1 -2
  261. package/Source/DataSources/ConstantPositionProperty.js +1 -2
  262. package/Source/DataSources/CorridorGraphics.js +23 -35
  263. package/Source/DataSources/CylinderGraphics.js +18 -25
  264. package/Source/DataSources/CzmlDataSource.js +34 -60
  265. package/Source/DataSources/DataSourceClock.js +12 -13
  266. package/Source/DataSources/DataSourceCollection.js +2 -3
  267. package/Source/DataSources/DataSourceDisplay.js +2 -5
  268. package/Source/DataSources/EllipseGraphics.js +26 -40
  269. package/Source/DataSources/EllipsoidGeometryUpdater.js +1 -2
  270. package/Source/DataSources/EllipsoidGraphics.js +21 -32
  271. package/Source/DataSources/Entity.js +7 -9
  272. package/Source/DataSources/EntityCluster.js +53 -28
  273. package/Source/DataSources/EntityView.js +1 -2
  274. package/Source/DataSources/GeoJsonDataSource.js +12 -12
  275. package/Source/DataSources/GeometryUpdater.js +12 -17
  276. package/Source/DataSources/GeometryVisualizer.js +2 -3
  277. package/Source/DataSources/GpxDataSource.js +4 -7
  278. package/Source/DataSources/GridMaterialProperty.js +2 -2
  279. package/Source/DataSources/GroundGeometryUpdater.js +1 -2
  280. package/Source/DataSources/ImageMaterialProperty.js +2 -2
  281. package/Source/DataSources/KmlDataSource.js +84 -158
  282. package/Source/DataSources/LabelGraphics.js +27 -56
  283. package/Source/DataSources/LabelVisualizer.js +1 -2
  284. package/Source/DataSources/ModelGraphics.js +29 -63
  285. package/Source/DataSources/ModelVisualizer.js +1 -2
  286. package/Source/DataSources/NodeTransformationProperty.js +2 -2
  287. package/Source/DataSources/PathGraphics.js +10 -12
  288. package/Source/DataSources/PlaneGraphics.js +13 -15
  289. package/Source/DataSources/PointGraphics.js +17 -32
  290. package/Source/DataSources/PolygonGraphics.js +28 -45
  291. package/Source/DataSources/PolylineDashMaterialProperty.js +2 -2
  292. package/Source/DataSources/PolylineGeometryUpdater.js +9 -14
  293. package/Source/DataSources/PolylineGlowMaterialProperty.js +2 -2
  294. package/Source/DataSources/PolylineGraphics.js +16 -23
  295. package/Source/DataSources/PolylineOutlineMaterialProperty.js +2 -2
  296. package/Source/DataSources/PolylineVisualizer.js +2 -3
  297. package/Source/DataSources/PolylineVolumeGraphics.js +15 -17
  298. package/Source/DataSources/PositionPropertyArray.js +1 -2
  299. package/Source/DataSources/Property.js +1 -2
  300. package/Source/DataSources/PropertyBag.js +1 -2
  301. package/Source/DataSources/RectangleGraphics.js +23 -35
  302. package/Source/DataSources/Rotation.js +4 -5
  303. package/Source/DataSources/SampledPositionProperty.js +2 -3
  304. package/Source/DataSources/SampledProperty.js +6 -11
  305. package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +1 -2
  306. package/Source/DataSources/StripeMaterialProperty.js +2 -2
  307. package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +1 -2
  308. package/Source/DataSources/VelocityOrientationProperty.js +1 -2
  309. package/Source/DataSources/VelocityVectorProperty.js +1 -2
  310. package/Source/DataSources/WallGraphics.js +15 -23
  311. package/Source/DataSources/createPropertyDescriptor.js +2 -3
  312. package/Source/DataSources/exportKml.js +11 -14
  313. package/Source/Renderer/Buffer.js +5 -5
  314. package/Source/Renderer/ClearCommand.js +2 -2
  315. package/Source/Renderer/ComputeCommand.js +3 -3
  316. package/Source/Renderer/Context.js +22 -37
  317. package/Source/Renderer/CubeMap.js +6 -6
  318. package/Source/Renderer/CubeMapFace.js +11 -12
  319. package/Source/Renderer/DrawCommand.js +14 -25
  320. package/Source/Renderer/Framebuffer.js +3 -3
  321. package/Source/Renderer/FramebufferManager.js +25 -39
  322. package/Source/Renderer/MultisampleFramebuffer.js +2 -2
  323. package/Source/Renderer/RenderState.js +63 -92
  324. package/Source/Renderer/Renderbuffer.js +4 -4
  325. package/Source/Renderer/Sampler.js +2 -2
  326. package/Source/Renderer/ShaderBuilder.js +2 -3
  327. package/Source/Renderer/ShaderProgram.js +3 -3
  328. package/Source/Renderer/ShaderSource.js +3 -3
  329. package/Source/Renderer/Texture.js +16 -15
  330. package/Source/Renderer/TextureAtlas.js +802 -0
  331. package/Source/Renderer/UniformState.js +6 -11
  332. package/Source/Renderer/VertexArray.js +14 -23
  333. package/Source/Renderer/VertexArrayFacade.js +7 -11
  334. package/Source/Scene/Appearance.js +4 -4
  335. package/Source/Scene/ArcGisMapServerImageryProvider.js +23 -37
  336. package/Source/Scene/ArcGisMapService.js +1 -1
  337. package/Source/Scene/B3dmParser.js +2 -3
  338. package/Source/Scene/BatchTableHierarchy.js +6 -13
  339. package/Source/Scene/Billboard.js +105 -182
  340. package/Source/Scene/BillboardCollection.js +140 -224
  341. package/Source/Scene/BillboardLoadState.js +44 -0
  342. package/Source/Scene/BillboardTexture.js +348 -0
  343. package/Source/Scene/BingMapsImageryProvider.js +6 -6
  344. package/Source/Scene/BoxEmitter.js +1 -2
  345. package/Source/Scene/BufferLoader.js +2 -2
  346. package/Source/Scene/Camera.js +45 -64
  347. package/Source/Scene/CameraFlightPath.js +6 -6
  348. package/Source/Scene/Cesium3DContentGroup.js +2 -2
  349. package/Source/Scene/Cesium3DTile.js +3 -4
  350. package/Source/Scene/Cesium3DTileBatchTable.js +6 -49
  351. package/Source/Scene/Cesium3DTileFeatureTable.js +2 -3
  352. package/Source/Scene/Cesium3DTilePointFeature.js +10 -18
  353. package/Source/Scene/Cesium3DTileStyle.js +4 -7
  354. package/Source/Scene/Cesium3DTilesVoxelProvider.js +419 -137
  355. package/Source/Scene/Cesium3DTileset.js +77 -143
  356. package/Source/Scene/Cesium3DTilesetMetadata.js +3 -3
  357. package/Source/Scene/Cesium3DTilesetStatistics.js +0 -1
  358. package/Source/Scene/CircleEmitter.js +2 -3
  359. package/Source/Scene/ClassificationPrimitive.js +15 -26
  360. package/Source/Scene/ClippingPlaneCollection.js +7 -12
  361. package/Source/Scene/ClippingPolygon.js +1 -2
  362. package/Source/Scene/ClippingPolygonCollection.js +4 -4
  363. package/Source/Scene/CloudCollection.js +9 -11
  364. package/Source/Scene/Composite3DTileContent.js +1 -2
  365. package/Source/Scene/ConeEmitter.js +1 -2
  366. package/Source/Scene/ContentMetadata.js +2 -2
  367. package/Source/Scene/CreditDisplay.js +5 -9
  368. package/Source/Scene/CumulusCloud.js +9 -15
  369. package/Source/Scene/DebugAppearance.js +7 -7
  370. package/Source/Scene/DebugCameraPrimitive.js +5 -5
  371. package/Source/Scene/DebugModelMatrixPrimitive.js +6 -8
  372. package/Source/Scene/DepthPlane.js +1 -2
  373. package/Source/Scene/DirectionalLight.js +2 -3
  374. package/Source/Scene/DiscardMissingTileImagePolicy.js +2 -2
  375. package/Source/Scene/DynamicEnvironmentMapManager.js +15 -24
  376. package/Source/Scene/EllipsoidPrimitive.js +11 -19
  377. package/Source/Scene/EllipsoidSurfaceAppearance.js +11 -15
  378. package/Source/Scene/Expression.js +1 -0
  379. package/Source/Scene/FrameRateMonitor.js +12 -21
  380. package/Source/Scene/FrustumCommands.js +2 -3
  381. package/Source/Scene/Geometry3DTileContent.js +9 -16
  382. package/Source/Scene/Globe.js +3 -4
  383. package/Source/Scene/GlobeSurfaceTileProvider.js +9 -18
  384. package/Source/Scene/GlobeTranslucencyState.js +12 -25
  385. package/Source/Scene/GltfBufferViewLoader.js +4 -4
  386. package/Source/Scene/GltfDracoLoader.js +2 -2
  387. package/Source/Scene/GltfImageLoader.js +2 -2
  388. package/Source/Scene/GltfIndexBufferLoader.js +5 -5
  389. package/Source/Scene/GltfJsonLoader.js +2 -2
  390. package/Source/Scene/GltfLoader.js +22 -37
  391. package/Source/Scene/GltfLoaderUtil.js +11 -11
  392. package/Source/Scene/GltfPipeline/addDefaults.js +37 -64
  393. package/Source/Scene/GltfPipeline/addToArray.js +1 -3
  394. package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +2 -5
  395. package/Source/Scene/GltfPipeline/parseGlb.js +1 -5
  396. package/Source/Scene/GltfPipeline/removeUnusedElements.js +1 -2
  397. package/Source/Scene/GltfPipeline/updateVersion.js +28 -49
  398. package/Source/Scene/GltfStructuralMetadataLoader.js +5 -6
  399. package/Source/Scene/GltfTextureLoader.js +3 -3
  400. package/Source/Scene/GltfVertexBufferLoader.js +5 -5
  401. package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +2 -2
  402. package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +3 -4
  403. package/Source/Scene/GridImageryProvider.js +10 -13
  404. package/Source/Scene/GroundPolylinePrimitive.js +11 -22
  405. package/Source/Scene/GroundPrimitive.js +13 -24
  406. package/Source/Scene/GroupMetadata.js +2 -2
  407. package/Source/Scene/I3SDataProvider.js +10 -15
  408. package/Source/Scene/I3SNode.js +1 -6
  409. package/Source/Scene/I3SSublayer.js +1 -2
  410. package/Source/Scene/I3SSymbology.js +2 -3
  411. package/Source/Scene/I3dmParser.js +1 -2
  412. package/Source/Scene/ITwinData.js +11 -6
  413. package/Source/Scene/ImageBasedLighting.js +2 -2
  414. package/Source/Scene/ImageryLayer.js +42 -71
  415. package/Source/Scene/ImageryLayerCollection.js +2 -3
  416. package/Source/Scene/Implicit3DTileContent.js +3 -4
  417. package/Source/Scene/ImplicitAvailabilityBitstream.js +2 -5
  418. package/Source/Scene/ImplicitMetadataView.js +2 -2
  419. package/Source/Scene/ImplicitSubtree.js +10 -15
  420. package/Source/Scene/ImplicitSubtreeCache.js +3 -3
  421. package/Source/Scene/ImplicitSubtreeMetadata.js +2 -2
  422. package/Source/Scene/InstanceAttributeSemantic.js +1 -1
  423. package/Source/Scene/IonImageryProvider.js +3 -3
  424. package/Source/Scene/KeyframeNode.js +16 -2
  425. package/Source/Scene/Label.js +19 -36
  426. package/Source/Scene/LabelCollection.js +218 -196
  427. package/Source/Scene/MapboxImageryProvider.js +4 -4
  428. package/Source/Scene/MapboxStyleImageryProvider.js +5 -5
  429. package/Source/Scene/Material.js +14 -20
  430. package/Source/Scene/MaterialAppearance.js +12 -18
  431. package/Source/Scene/Megatexture.js +145 -82
  432. package/Source/Scene/MetadataClass.js +4 -4
  433. package/Source/Scene/MetadataClassProperty.js +11 -14
  434. package/Source/Scene/MetadataEnum.js +4 -7
  435. package/Source/Scene/MetadataEnumValue.js +2 -2
  436. package/Source/Scene/MetadataSchema.js +4 -4
  437. package/Source/Scene/MetadataSchemaLoader.js +2 -2
  438. package/Source/Scene/MetadataTable.js +2 -2
  439. package/Source/Scene/MetadataTableProperty.js +17 -31
  440. package/Source/Scene/Model/AlphaPipelineStage.js +1 -2
  441. package/Source/Scene/Model/B3dmLoader.js +15 -26
  442. package/Source/Scene/Model/BatchTexturePipelineStage.js +1 -2
  443. package/Source/Scene/Model/ClassificationModelDrawCommand.js +2 -2
  444. package/Source/Scene/Model/CustomShader.js +10 -14
  445. package/Source/Scene/Model/Extensions/Gpm/GltfMeshPrimitiveGpmLoader.js +3 -3
  446. package/Source/Scene/Model/FeatureIdPipelineStage.js +1 -5
  447. package/Source/Scene/Model/GeoJsonLoader.js +5 -8
  448. package/Source/Scene/Model/I3dmLoader.js +13 -21
  449. package/Source/Scene/Model/MaterialPipelineStage.js +1 -2
  450. package/Source/Scene/Model/Model.js +41 -63
  451. package/Source/Scene/Model/ModelAnimation.js +5 -6
  452. package/Source/Scene/Model/ModelAnimationChannel.js +2 -2
  453. package/Source/Scene/Model/ModelAnimationCollection.js +4 -4
  454. package/Source/Scene/Model/ModelArticulation.js +2 -2
  455. package/Source/Scene/Model/ModelArticulationStage.js +2 -2
  456. package/Source/Scene/Model/ModelDrawCommand.js +3 -3
  457. package/Source/Scene/Model/ModelFeatureTable.js +3 -9
  458. package/Source/Scene/Model/ModelLightingOptions.js +3 -3
  459. package/Source/Scene/Model/ModelNode.js +1 -1
  460. package/Source/Scene/Model/ModelRuntimeNode.js +2 -2
  461. package/Source/Scene/Model/ModelRuntimePrimitive.js +2 -2
  462. package/Source/Scene/Model/ModelSceneGraph.js +2 -2
  463. package/Source/Scene/Model/ModelSkin.js +2 -2
  464. package/Source/Scene/Model/ModelUtility.js +5 -1
  465. package/Source/Scene/Model/PickingPipelineStage.js +1 -2
  466. package/Source/Scene/Model/PntsLoader.js +6 -6
  467. package/Source/Scene/Model/PointCloudStylingPipelineStage.js +1 -5
  468. package/Source/Scene/Model/PrimitiveOutlineGenerator.js +2 -2
  469. package/Source/Scene/Model/SelectedFeatureIdPipelineStage.js +2 -3
  470. package/Source/Scene/Model/TextureUniform.js +5 -8
  471. package/Source/Scene/Model/VaryingType.js +2 -2
  472. package/Source/Scene/Model/pickModel.js +4 -5
  473. package/Source/Scene/Moon.js +5 -5
  474. package/Source/Scene/OpenStreetMapImageryProvider.js +7 -7
  475. package/Source/Scene/OrderedGroundPrimitiveCollection.js +1 -2
  476. package/Source/Scene/Particle.js +11 -17
  477. package/Source/Scene/ParticleBurst.js +5 -5
  478. package/Source/Scene/ParticleSystem.js +24 -54
  479. package/Source/Scene/PerInstanceColorAppearance.js +8 -8
  480. package/Source/Scene/PerformanceDisplay.js +3 -3
  481. package/Source/Scene/PickFramebuffer.js +4 -5
  482. package/Source/Scene/Picking.js +3 -4
  483. package/Source/Scene/PntsParser.js +1 -2
  484. package/Source/Scene/PointCloud.js +6 -12
  485. package/Source/Scene/PointCloudShading.js +9 -18
  486. package/Source/Scene/PointPrimitive.js +11 -21
  487. package/Source/Scene/PointPrimitiveCollection.js +6 -14
  488. package/Source/Scene/Polyline.js +5 -5
  489. package/Source/Scene/PolylineCollection.js +5 -10
  490. package/Source/Scene/PolylineColorAppearance.js +7 -11
  491. package/Source/Scene/PolylineMaterialAppearance.js +7 -11
  492. package/Source/Scene/PostProcessStage.js +2 -2
  493. package/Source/Scene/PostProcessStageComposite.js +3 -6
  494. package/Source/Scene/Primitive.js +21 -42
  495. package/Source/Scene/PrimitiveCollection.js +4 -4
  496. package/Source/Scene/PrimitivePipeline.js +1 -2
  497. package/Source/Scene/PropertyAttribute.js +2 -2
  498. package/Source/Scene/PropertyAttributeProperty.js +4 -4
  499. package/Source/Scene/PropertyTable.js +2 -2
  500. package/Source/Scene/PropertyTexture.js +2 -2
  501. package/Source/Scene/PropertyTextureProperty.js +4 -4
  502. package/Source/Scene/QuadtreePrimitive.js +84 -66
  503. package/Source/Scene/QuadtreeTile.js +170 -0
  504. package/Source/Scene/ResourceCache.js +11 -11
  505. package/Source/Scene/ResourceCacheKey.js +11 -11
  506. package/Source/Scene/Scene.js +66 -40
  507. package/Source/Scene/ScreenSpaceCameraController.js +10 -20
  508. package/Source/Scene/ShadowMap.js +15 -15
  509. package/Source/Scene/ShadowVolumeAppearance.js +1 -2
  510. package/Source/Scene/SingleTileImageryProvider.js +4 -4
  511. package/Source/Scene/SkyAtmosphere.js +1 -2
  512. package/Source/Scene/SkyBox.js +1 -2
  513. package/Source/Scene/SpatialNode.js +4 -11
  514. package/Source/Scene/SphereEmitter.js +2 -3
  515. package/Source/Scene/StructuralMetadata.js +2 -2
  516. package/Source/Scene/SunLight.js +4 -4
  517. package/Source/Scene/SupportedImageFormats.js +4 -4
  518. package/Source/Scene/TileBoundingRegion.js +4 -5
  519. package/Source/Scene/TileBoundingS2Cell.js +3 -4
  520. package/Source/Scene/TileCoordinatesImageryProvider.js +5 -5
  521. package/Source/Scene/TileMapServiceImageryProvider.js +18 -27
  522. package/Source/Scene/TileMetadata.js +2 -2
  523. package/Source/Scene/TilesetMetadata.js +2 -2
  524. package/Source/Scene/TimeDynamicImagery.js +2 -2
  525. package/Source/Scene/TimeDynamicPointCloud.js +8 -10
  526. package/Source/Scene/TweenCollection.js +13 -16
  527. package/Source/Scene/UrlTemplateImageryProvider.js +11 -15
  528. package/Source/Scene/Vector3DTileClampedPolylines.js +1 -2
  529. package/Source/Scene/Vector3DTileContent.js +16 -20
  530. package/Source/Scene/Vector3DTileGeometry.js +1 -2
  531. package/Source/Scene/Vector3DTilePoints.js +2 -5
  532. package/Source/Scene/Vector3DTilePolygons.js +2 -3
  533. package/Source/Scene/Vector3DTilePolylines.js +1 -2
  534. package/Source/Scene/Vector3DTilePrimitive.js +9 -13
  535. package/Source/Scene/VoxelBoxShape.js +14 -8
  536. package/Source/Scene/VoxelCell.js +6 -5
  537. package/Source/Scene/VoxelContent.js +171 -107
  538. package/Source/Scene/VoxelCylinderShape.js +69 -69
  539. package/Source/Scene/VoxelEllipsoidShape.js +17 -8
  540. package/Source/Scene/VoxelMetadataOrder.js +24 -0
  541. package/Source/Scene/VoxelPrimitive.js +134 -79
  542. package/Source/Scene/VoxelProvider.js +22 -29
  543. package/Source/Scene/VoxelRenderResources.js +26 -7
  544. package/Source/Scene/VoxelShape.js +10 -3
  545. package/Source/Scene/VoxelTraversal.js +260 -180
  546. package/Source/Scene/WebMapServiceImageryProvider.js +17 -24
  547. package/Source/Scene/WebMapTileServiceImageryProvider.js +7 -10
  548. package/Source/Scene/createElevationBandMaterial.js +4 -4
  549. package/Source/Scene/createGooglePhotorealistic3DTileset.js +8 -16
  550. package/Source/Scene/createOsmBuildingsAsync.js +3 -6
  551. package/Source/Scene/createTangentSpaceDebugPrimitive.js +4 -6
  552. package/Source/Scene/createWorldImageryAsync.js +3 -3
  553. package/Source/Scene/findContentMetadata.js +2 -5
  554. package/Source/Scene/findTileMetadata.js +2 -5
  555. package/Source/Scene/parseBatchTable.js +1 -5
  556. package/Source/Scene/parseFeatureMetadataLegacy.js +2 -2
  557. package/Source/Scene/parseStructuralMetadata.js +2 -2
  558. package/Source/Scene/processVoxelProperties.js +3 -0
  559. package/Source/Shaders/GlobeFS.glsl +10 -1
  560. package/Source/Shaders/GlobeFS.js +10 -1
  561. package/Source/Shaders/Voxels/Megatexture.glsl +4 -16
  562. package/Source/Shaders/Voxels/Megatexture.js +4 -16
  563. package/Source/Shaders/Voxels/Octree.glsl +44 -7
  564. package/Source/Shaders/Voxels/Octree.js +44 -7
  565. package/Source/Shaders/Voxels/VoxelFS.glsl +9 -15
  566. package/Source/Shaders/Voxels/VoxelFS.js +9 -15
  567. package/Source/Shaders/Voxels/convertUvToCylinder.glsl +15 -15
  568. package/Source/Shaders/Voxels/convertUvToCylinder.js +15 -15
  569. package/Source/Widget/CesiumWidget.js +17 -25
  570. package/Source/Workers/createGeometry.js +1 -2
  571. package/Source/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -2
  572. package/Source/Workers/decodeI3S.js +1 -5
  573. package/Source/Workers/transcodeKTX2.js +1 -2
  574. package/index.d.ts +231 -92
  575. package/index.js +315 -310
  576. package/package.json +3 -3
  577. package/Build/Workers/chunk-TVL3F7IU.js +0 -39
  578. package/Source/Scene/TextureAtlas.js +0 -558
@@ -107,7 +107,7 @@ ITwinData.createTilesetForRealityDataId = async function (
107
107
  if (defined(rootDocument)) {
108
108
  Check.typeOf.string("rootDocument", rootDocument);
109
109
  }
110
- //>>includeEnd('debug')
110
+ //>>includeEnd('debug');
111
111
 
112
112
  if (!defined(type) || !defined(rootDocument)) {
113
113
  const metadata = await ITwinPlatform.getRealityDataMetadata(
@@ -170,7 +170,7 @@ ITwinData.createDataSourceForRealityDataId = async function (
170
170
  if (defined(rootDocument)) {
171
171
  Check.typeOf.string("rootDocument", rootDocument);
172
172
  }
173
- //>>includeEnd('debug')
173
+ //>>includeEnd('debug');
174
174
 
175
175
  if (!defined(type) || !defined(rootDocument)) {
176
176
  const metadata = await ITwinPlatform.getRealityDataMetadata(
@@ -227,10 +227,15 @@ ITwinData.loadGeospatialFeatures = async function (
227
227
  Check.typeOf.number.lessThanOrEquals("limit", limit, 10000);
228
228
  Check.typeOf.number.greaterThanOrEquals("limit", limit, 1);
229
229
  }
230
- if (!defined(ITwinPlatform.defaultAccessToken)) {
231
- throw new DeveloperError("Must set ITwinPlatform.defaultAccessToken first");
230
+ if (
231
+ !defined(ITwinPlatform.defaultAccessToken) &&
232
+ !defined(ITwinPlatform.defaultShareKey)
233
+ ) {
234
+ throw new DeveloperError(
235
+ "Must set ITwinPlatform.defaultAccessToken or ITwinPlatform.defaultShareKey first",
236
+ );
232
237
  }
233
- //>>includeEnd('debug')
238
+ //>>includeEnd('debug');
234
239
 
235
240
  const pageLimit = limit ?? 10000;
236
241
 
@@ -239,7 +244,7 @@ ITwinData.loadGeospatialFeatures = async function (
239
244
  const resource = new Resource({
240
245
  url: tilesetUrl,
241
246
  headers: {
242
- Authorization: `Bearer ${ITwinPlatform.defaultAccessToken}`,
247
+ Authorization: ITwinPlatform._getAuthorizationHeader(),
243
248
  Accept: "application/vnd.bentley.itwin-platform.v1+json",
244
249
  },
245
250
  queryParameters: {
@@ -1,7 +1,7 @@
1
1
  import Cartesian2 from "../Core/Cartesian2.js";
2
2
  import Check from "../Core/Check.js";
3
3
  import defined from "../Core/defined.js";
4
- import defaultValue from "../Core/defaultValue.js";
4
+ import Frozen from "../Core/Frozen.js";
5
5
  import destroyObject from "../Core/destroyObject.js";
6
6
  import DeveloperError from "../Core/DeveloperError.js";
7
7
  import SpecularEnvironmentCubeMap from "./SpecularEnvironmentCubeMap.js";
@@ -24,7 +24,7 @@ import SpecularEnvironmentCubeMap from "./SpecularEnvironmentCubeMap.js";
24
24
  * @param {string} [options.specularEnvironmentMaps] A URL to a KTX2 file that contains a cube map of the specular lighting and the convoluted specular mipmaps.
25
25
  */
26
26
  function ImageBasedLighting(options) {
27
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
27
+ options = options ?? Frozen.EMPTY_OBJECT;
28
28
  const imageBasedLightingFactor = defined(options.imageBasedLightingFactor)
29
29
  ? Cartesian2.clone(options.imageBasedLightingFactor)
30
30
  : new Cartesian2(1.0, 1.0);
@@ -2,7 +2,7 @@ import Cartesian2 from "../Core/Cartesian2.js";
2
2
  import Cartesian4 from "../Core/Cartesian4.js";
3
3
  import Check from "../Core/Check.js";
4
4
  import createWorldImageryAsync from "../Scene/createWorldImageryAsync.js";
5
- import defaultValue from "../Core/defaultValue.js";
5
+ import Frozen from "../Core/Frozen.js";
6
6
  import defined from "../Core/defined.js";
7
7
  import destroyObject from "../Core/destroyObject.js";
8
8
  import DeveloperError from "../Core/DeveloperError.js";
@@ -162,8 +162,8 @@ function ImageryLayer(imageryProvider, options) {
162
162
  this._readyEvent = new Event();
163
163
  this._errorEvent = new Event();
164
164
 
165
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
166
- imageryProvider = defaultValue(imageryProvider, defaultValue.EMPTY_OBJECT);
165
+ options = options ?? Frozen.EMPTY_OBJECT;
166
+ imageryProvider = imageryProvider ?? Frozen.EMPTY_OBJECT;
167
167
 
168
168
  /**
169
169
  * The alpha blending value of this layer, with 0.0 representing fully transparent and
@@ -172,10 +172,7 @@ function ImageryLayer(imageryProvider, options) {
172
172
  * @type {number}
173
173
  * @default 1.0
174
174
  */
175
- this.alpha = defaultValue(
176
- options.alpha,
177
- defaultValue(imageryProvider._defaultAlpha, 1.0),
178
- );
175
+ this.alpha = options.alpha ?? imageryProvider._defaultAlpha ?? 1.0;
179
176
 
180
177
  /**
181
178
  * The alpha blending value of this layer on the night side of the globe, with 0.0 representing fully transparent and
@@ -184,10 +181,8 @@ function ImageryLayer(imageryProvider, options) {
184
181
  * @type {number}
185
182
  * @default 1.0
186
183
  */
187
- this.nightAlpha = defaultValue(
188
- options.nightAlpha,
189
- defaultValue(imageryProvider._defaultNightAlpha, 1.0),
190
- );
184
+ this.nightAlpha =
185
+ options.nightAlpha ?? imageryProvider._defaultNightAlpha ?? 1.0;
191
186
 
192
187
  /**
193
188
  * The alpha blending value of this layer on the day side of the globe, with 0.0 representing fully transparent and
@@ -196,10 +191,7 @@ function ImageryLayer(imageryProvider, options) {
196
191
  * @type {number}
197
192
  * @default 1.0
198
193
  */
199
- this.dayAlpha = defaultValue(
200
- options.dayAlpha,
201
- defaultValue(imageryProvider._defaultDayAlpha, 1.0),
202
- );
194
+ this.dayAlpha = options.dayAlpha ?? imageryProvider._defaultDayAlpha ?? 1.0;
203
195
 
204
196
  /**
205
197
  * The brightness of this layer. 1.0 uses the unmodified imagery color. Less than 1.0
@@ -208,13 +200,10 @@ function ImageryLayer(imageryProvider, options) {
208
200
  * @type {number}
209
201
  * @default {@link ImageryLayer.DEFAULT_BRIGHTNESS}
210
202
  */
211
- this.brightness = defaultValue(
212
- options.brightness,
213
- defaultValue(
214
- imageryProvider._defaultBrightness,
215
- ImageryLayer.DEFAULT_BRIGHTNESS,
216
- ),
217
- );
203
+ this.brightness =
204
+ options.brightness ??
205
+ imageryProvider._defaultBrightness ??
206
+ ImageryLayer.DEFAULT_BRIGHTNESS;
218
207
 
219
208
  /**
220
209
  * The contrast of this layer. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
@@ -223,13 +212,10 @@ function ImageryLayer(imageryProvider, options) {
223
212
  * @type {number}
224
213
  * @default {@link ImageryLayer.DEFAULT_CONTRAST}
225
214
  */
226
- this.contrast = defaultValue(
227
- options.contrast,
228
- defaultValue(
229
- imageryProvider._defaultContrast,
230
- ImageryLayer.DEFAULT_CONTRAST,
231
- ),
232
- );
215
+ this.contrast =
216
+ options.contrast ??
217
+ imageryProvider._defaultContrast ??
218
+ ImageryLayer.DEFAULT_CONTRAST;
233
219
 
234
220
  /**
235
221
  * The hue of this layer in radians. 0.0 uses the unmodified imagery color.
@@ -237,10 +223,8 @@ function ImageryLayer(imageryProvider, options) {
237
223
  * @type {number}
238
224
  * @default {@link ImageryLayer.DEFAULT_HUE}
239
225
  */
240
- this.hue = defaultValue(
241
- options.hue,
242
- defaultValue(imageryProvider._defaultHue, ImageryLayer.DEFAULT_HUE),
243
- );
226
+ this.hue =
227
+ options.hue ?? imageryProvider._defaultHue ?? ImageryLayer.DEFAULT_HUE;
244
228
 
245
229
  /**
246
230
  * The saturation of this layer. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
@@ -249,13 +233,10 @@ function ImageryLayer(imageryProvider, options) {
249
233
  * @type {number}
250
234
  * @default {@link ImageryLayer.DEFAULT_SATURATION}
251
235
  */
252
- this.saturation = defaultValue(
253
- options.saturation,
254
- defaultValue(
255
- imageryProvider._defaultSaturation,
256
- ImageryLayer.DEFAULT_SATURATION,
257
- ),
258
- );
236
+ this.saturation =
237
+ options.saturation ??
238
+ imageryProvider._defaultSaturation ??
239
+ ImageryLayer.DEFAULT_SATURATION;
259
240
 
260
241
  /**
261
242
  * The gamma correction to apply to this layer. 1.0 uses the unmodified imagery color.
@@ -263,10 +244,10 @@ function ImageryLayer(imageryProvider, options) {
263
244
  * @type {number}
264
245
  * @default {@link ImageryLayer.DEFAULT_GAMMA}
265
246
  */
266
- this.gamma = defaultValue(
267
- options.gamma,
268
- defaultValue(imageryProvider._defaultGamma, ImageryLayer.DEFAULT_GAMMA),
269
- );
247
+ this.gamma =
248
+ options.gamma ??
249
+ imageryProvider._defaultGamma ??
250
+ ImageryLayer.DEFAULT_GAMMA;
270
251
 
271
252
  /**
272
253
  * The {@link SplitDirection} to apply to this layer.
@@ -274,10 +255,7 @@ function ImageryLayer(imageryProvider, options) {
274
255
  * @type {SplitDirection}
275
256
  * @default {@link ImageryLayer.DEFAULT_SPLIT}
276
257
  */
277
- this.splitDirection = defaultValue(
278
- options.splitDirection,
279
- ImageryLayer.DEFAULT_SPLIT,
280
- );
258
+ this.splitDirection = options.splitDirection ?? ImageryLayer.DEFAULT_SPLIT;
281
259
 
282
260
  /**
283
261
  * The {@link TextureMinificationFilter} to apply to this layer.
@@ -290,13 +268,10 @@ function ImageryLayer(imageryProvider, options) {
290
268
  * @type {TextureMinificationFilter}
291
269
  * @default {@link ImageryLayer.DEFAULT_MINIFICATION_FILTER}
292
270
  */
293
- this.minificationFilter = defaultValue(
294
- options.minificationFilter,
295
- defaultValue(
296
- imageryProvider._defaultMinificationFilter,
297
- ImageryLayer.DEFAULT_MINIFICATION_FILTER,
298
- ),
299
- );
271
+ this.minificationFilter =
272
+ options.minificationFilter ??
273
+ imageryProvider._defaultMinificationFilter ??
274
+ ImageryLayer.DEFAULT_MINIFICATION_FILTER;
300
275
 
301
276
  /**
302
277
  * The {@link TextureMagnificationFilter} to apply to this layer.
@@ -309,13 +284,10 @@ function ImageryLayer(imageryProvider, options) {
309
284
  * @type {TextureMagnificationFilter}
310
285
  * @default {@link ImageryLayer.DEFAULT_MAGNIFICATION_FILTER}
311
286
  */
312
- this.magnificationFilter = defaultValue(
313
- options.magnificationFilter,
314
- defaultValue(
315
- imageryProvider._defaultMagnificationFilter,
316
- ImageryLayer.DEFAULT_MAGNIFICATION_FILTER,
317
- ),
318
- );
287
+ this.magnificationFilter =
288
+ options.magnificationFilter ??
289
+ imageryProvider._defaultMagnificationFilter ??
290
+ ImageryLayer.DEFAULT_MAGNIFICATION_FILTER;
319
291
 
320
292
  /**
321
293
  * Determines if this layer is shown.
@@ -323,12 +295,12 @@ function ImageryLayer(imageryProvider, options) {
323
295
  * @type {boolean}
324
296
  * @default true
325
297
  */
326
- this.show = defaultValue(options.show, true);
298
+ this.show = options.show ?? true;
327
299
 
328
300
  this._minimumTerrainLevel = options.minimumTerrainLevel;
329
301
  this._maximumTerrainLevel = options.maximumTerrainLevel;
330
302
 
331
- this._rectangle = defaultValue(options.rectangle, Rectangle.MAX_VALUE);
303
+ this._rectangle = options.rectangle ?? Rectangle.MAX_VALUE;
332
304
  this._maximumAnisotropy = options.maximumAnisotropy;
333
305
 
334
306
  this._imageryCache = {};
@@ -367,10 +339,9 @@ function ImageryLayer(imageryProvider, options) {
367
339
  *
368
340
  * @type {number}
369
341
  */
370
- this.colorToAlphaThreshold = defaultValue(
371
- options.colorToAlphaThreshold,
372
- ImageryLayer.DEFAULT_APPLY_COLOR_TO_ALPHA_THRESHOLD,
373
- );
342
+ this.colorToAlphaThreshold =
343
+ options.colorToAlphaThreshold ??
344
+ ImageryLayer.DEFAULT_APPLY_COLOR_TO_ALPHA_THRESHOLD;
374
345
  }
375
346
 
376
347
  Object.defineProperties(ImageryLayer.prototype, {
@@ -604,7 +575,7 @@ ImageryLayer.fromProviderAsync = function (imageryProviderPromise, options) {
604
575
  * @see ImageryLayer.provider
605
576
  */
606
577
  ImageryLayer.fromWorldImagery = function (options) {
607
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
578
+ options = options ?? Frozen.EMPTY_OBJECT;
608
579
 
609
580
  return ImageryLayer.fromProviderAsync(
610
581
  createWorldImageryAsync({
@@ -1316,7 +1287,7 @@ ImageryLayer.prototype._finalizeReprojectTexture = function (context, texture) {
1316
1287
  ContextLimits.maximumTextureFilterAnisotropy;
1317
1288
  const maximumAnisotropy = Math.min(
1318
1289
  maximumSupportedAnisotropy,
1319
- defaultValue(this._maximumAnisotropy, maximumSupportedAnisotropy),
1290
+ this._maximumAnisotropy ?? maximumSupportedAnisotropy,
1320
1291
  );
1321
1292
  const mipmapSamplerKey = getSamplerKey(
1322
1293
  minificationFilter,
@@ -1383,7 +1354,7 @@ ImageryLayer.prototype._reprojectTexture = function (
1383
1354
  const rectangle = imagery.rectangle;
1384
1355
  const context = frameState.context;
1385
1356
 
1386
- needGeographicProjection = defaultValue(needGeographicProjection, true);
1357
+ needGeographicProjection = needGeographicProjection ?? true;
1387
1358
 
1388
1359
  // Reproject this texture if it is not already in a geographic projection and
1389
1360
  // the pixels are more than 1e-5 radians apart. The pixel spacing cutoff
@@ -1,4 +1,3 @@
1
- import defaultValue from "../Core/defaultValue.js";
2
1
  import defined from "../Core/defined.js";
3
2
  import destroyObject from "../Core/destroyObject.js";
4
3
  import DeveloperError from "../Core/DeveloperError.js";
@@ -158,7 +157,7 @@ ImageryLayerCollection.prototype.addImageryProvider = function (
158
157
  * false if the layer was not in the collection.
159
158
  */
160
159
  ImageryLayerCollection.prototype.remove = function (layer, destroy) {
161
- destroy = defaultValue(destroy, true);
160
+ destroy = destroy ?? true;
162
161
 
163
162
  const index = this._layers.indexOf(layer);
164
163
  if (index !== -1) {
@@ -184,7 +183,7 @@ ImageryLayerCollection.prototype.remove = function (layer, destroy) {
184
183
  * @param {boolean} [destroy=true] whether to destroy the layers in addition to removing them.
185
184
  */
186
185
  ImageryLayerCollection.prototype.removeAll = function (destroy) {
187
- destroy = defaultValue(destroy, true);
186
+ destroy = destroy ?? true;
188
187
 
189
188
  const layers = this._layers;
190
189
  for (let i = 0, len = layers.length; i < len; i++) {
@@ -2,7 +2,6 @@ import Cartesian3 from "../Core/Cartesian3.js";
2
2
  import Check from "../Core/Check.js";
3
3
  import clone from "../Core/clone.js";
4
4
  import combine from "../Core/combine.js";
5
- import defaultValue from "../Core/defaultValue.js";
6
5
  import defined from "../Core/defined.js";
7
6
  import destroyObject from "../Core/destroyObject.js";
8
7
  import DeveloperError from "../Core/DeveloperError.js";
@@ -216,7 +215,7 @@ Implicit3DTileContent.fromSubtreeJson = async function (
216
215
  }
217
216
  //>>includeEnd('debug');
218
217
 
219
- byteOffset = defaultValue(byteOffset, 0);
218
+ byteOffset = byteOffset ?? 0;
220
219
  let uint8Array;
221
220
  if (defined(arrayBuffer)) {
222
221
  uint8Array = new Uint8Array(arrayBuffer, byteOffset);
@@ -449,7 +448,7 @@ function deriveChildTile(
449
448
  ) {
450
449
  const implicitTileset = implicitContent._implicitTileset;
451
450
  let implicitCoordinates;
452
- if (defaultValue(parentIsPlaceholderTile, false)) {
451
+ if (parentIsPlaceholderTile ?? false) {
453
452
  implicitCoordinates = parentTile.implicitCoordinates;
454
453
  } else {
455
454
  implicitCoordinates =
@@ -718,7 +717,7 @@ function getTileBoundingVolume(
718
717
  implicitTileset,
719
718
  implicitCoordinates,
720
719
  childIndex,
721
- defaultValue(parentIsPlaceholderTile, false),
720
+ parentIsPlaceholderTile ?? false,
722
721
  parentTile,
723
722
  );
724
723
  } else {
@@ -1,6 +1,5 @@
1
1
  import Check from "../Core/Check.js";
2
2
  import defined from "../Core/defined.js";
3
- import defaultValue from "../Core/defaultValue.js";
4
3
  import DeveloperError from "../Core/DeveloperError.js";
5
4
  import RuntimeError from "../Core/RuntimeError.js";
6
5
 
@@ -44,10 +43,8 @@ function ImplicitAvailabilityBitstream(options) {
44
43
 
45
44
  // Only compute the available count if requested, as this involves looping
46
45
  // over the bitstream.
47
- const computeAvailableCountEnabled = defaultValue(
48
- options.computeAvailableCountEnabled,
49
- false,
50
- );
46
+ const computeAvailableCountEnabled =
47
+ options.computeAvailableCountEnabled ?? false;
51
48
  if (!defined(availableCount) && computeAvailableCountEnabled) {
52
49
  availableCount = count1Bits(bitstream, lengthBits);
53
50
  }
@@ -1,5 +1,5 @@
1
1
  import Check from "../Core/Check.js";
2
- import defaultValue from "../Core/defaultValue.js";
2
+ import Frozen from "../Core/Frozen.js";
3
3
 
4
4
  /**
5
5
  * This class represents a single entity in the <code>MetadataTable</code> owned by an implicit subtree. The entity is specified by the entityId.
@@ -19,7 +19,7 @@ import defaultValue from "../Core/defaultValue.js";
19
19
  * @experimental This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy.
20
20
  */
21
21
  function ImplicitMetadataView(options) {
22
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
22
+ options = options ?? Frozen.EMPTY_OBJECT;
23
23
  const metadataTable = options.metadataTable;
24
24
  const metadataClass = options.class;
25
25
  const entityId = options.entityId;
@@ -1,5 +1,4 @@
1
1
  import Check from "../Core/Check.js";
2
- import defaultValue from "../Core/defaultValue.js";
3
2
  import DeveloperError from "../Core/DeveloperError.js";
4
3
  import defined from "../Core/defined.js";
5
4
  import destroyObject from "../Core/destroyObject.js";
@@ -183,6 +182,7 @@ ImplicitSubtree.prototype.tileIsAvailableAtIndex = function (index) {
183
182
 
184
183
  /**
185
184
  * Check if a specific tile is available at an implicit tile coordinate
185
+ * NOTE: only used for voxels.
186
186
  *
187
187
  * @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a tile
188
188
  * @returns {boolean} The value of the i-th bit
@@ -207,7 +207,7 @@ ImplicitSubtree.prototype.contentIsAvailableAtIndex = function (
207
207
  index,
208
208
  contentIndex,
209
209
  ) {
210
- contentIndex = defaultValue(contentIndex, 0);
210
+ contentIndex = contentIndex ?? 0;
211
211
  //>>includeStart('debug', pragmas.debug);
212
212
  if (
213
213
  contentIndex < 0 ||
@@ -249,6 +249,7 @@ ImplicitSubtree.prototype.childSubtreeIsAvailableAtIndex = function (index) {
249
249
 
250
250
  /**
251
251
  * Check if a specific child subtree is available at an implicit tile coordinate
252
+ * NOTE: only used for voxels.
252
253
  *
253
254
  * @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a child subtree
254
255
  * @returns {boolean} The value of the i-th bit
@@ -401,7 +402,7 @@ ImplicitSubtree.fromSubtreeJson = async function (
401
402
  subtreeJson.contentAvailabilityHeaders = subtreeJson.contentAvailability;
402
403
  } else {
403
404
  subtreeJson.contentAvailabilityHeaders.push(
404
- defaultValue(subtreeJson.contentAvailability, defaultContentAvailability),
405
+ subtreeJson.contentAvailability ?? defaultContentAvailability,
405
406
  );
406
407
  }
407
408
 
@@ -644,19 +645,15 @@ function markActiveMetadataBufferViews(propertyTableJson, bufferViewHeaders) {
644
645
  const metadataHeader = properties[key];
645
646
 
646
647
  // An older spec used bufferView
647
- const valuesBufferView = defaultValue(
648
- metadataHeader.values,
649
- metadataHeader.bufferView,
650
- );
648
+ const valuesBufferView =
649
+ metadataHeader.values ?? metadataHeader.bufferView;
651
650
  header = bufferViewHeaders[valuesBufferView];
652
651
  header.isActive = true;
653
652
  header.bufferHeader.isActive = true;
654
653
 
655
654
  // An older spec used stringOffsetBufferView
656
- const stringOffsetBufferView = defaultValue(
657
- metadataHeader.stringOffsets,
658
- metadataHeader.stringOffsetBufferView,
659
- );
655
+ const stringOffsetBufferView =
656
+ metadataHeader.stringOffsets ?? metadataHeader.stringOffsetBufferView;
660
657
  if (defined(stringOffsetBufferView)) {
661
658
  header = bufferViewHeaders[stringOffsetBufferView];
662
659
  header.isActive = true;
@@ -664,10 +661,8 @@ function markActiveMetadataBufferViews(propertyTableJson, bufferViewHeaders) {
664
661
  }
665
662
 
666
663
  // an older spec used arrayOffsetBufferView
667
- const arrayOffsetBufferView = defaultValue(
668
- metadataHeader.arrayOffsets,
669
- metadataHeader.arrayOffsetBufferView,
670
- );
664
+ const arrayOffsetBufferView =
665
+ metadataHeader.arrayOffsets ?? metadataHeader.arrayOffsetBufferView;
671
666
  if (defined(arrayOffsetBufferView)) {
672
667
  header = bufferViewHeaders[arrayOffsetBufferView];
673
668
  header.isActive = true;
@@ -1,4 +1,4 @@
1
- import defaultValue from "../Core/defaultValue.js";
1
+ import Frozen from "../Core/Frozen.js";
2
2
  import DeveloperError from "../Core/DeveloperError.js";
3
3
  import DoubleEndedPriorityQueue from "../Core/DoubleEndedPriorityQueue.js";
4
4
 
@@ -12,13 +12,13 @@ import DoubleEndedPriorityQueue from "../Core/DoubleEndedPriorityQueue.js";
12
12
  * @private
13
13
  */
14
14
  function ImplicitSubtreeCache(options) {
15
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
15
+ options = options ?? Frozen.EMPTY_OBJECT;
16
16
 
17
17
  /**
18
18
  * @type {number}
19
19
  * @private
20
20
  */
21
- this._maximumSubtreeCount = defaultValue(options.maximumSubtreeCount, 0);
21
+ this._maximumSubtreeCount = options.maximumSubtreeCount ?? 0;
22
22
 
23
23
  /**
24
24
  * A counter that goes up whenever a subtree is added. Used to sort subtrees by recency.
@@ -1,5 +1,5 @@
1
1
  import Check from "../Core/Check.js";
2
- import defaultValue from "../Core/defaultValue.js";
2
+ import Frozen from "../Core/Frozen.js";
3
3
  import defined from "../Core/defined.js";
4
4
  import MetadataEntity from "./MetadataEntity.js";
5
5
 
@@ -19,7 +19,7 @@ import MetadataEntity from "./MetadataEntity.js";
19
19
  * @experimental This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy.
20
20
  */
21
21
  function ImplicitSubtreeMetadata(options) {
22
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
22
+ options = options ?? Frozen.EMPTY_OBJECT;
23
23
  const subtreeMetadata = options.subtreeMetadata;
24
24
  const metadataClass = options.class;
25
25
 
@@ -51,7 +51,7 @@ const InstanceAttributeSemantic = {
51
51
  InstanceAttributeSemantic.fromGltfSemantic = function (gltfSemantic) {
52
52
  //>>includeStart('debug', pragmas.debug);
53
53
  Check.typeOf.string("gltfSemantic", gltfSemantic);
54
- //>>includeEnd('debug')
54
+ //>>includeEnd('debug');
55
55
 
56
56
  let semantic = gltfSemantic;
57
57
 
@@ -1,5 +1,5 @@
1
1
  import Check from "../Core/Check.js";
2
- import defaultValue from "../Core/defaultValue.js";
2
+ import Frozen from "../Core/Frozen.js";
3
3
  import defined from "../Core/defined.js";
4
4
  import Event from "../Core/Event.js";
5
5
  import IonResource from "../Core/IonResource.js";
@@ -82,7 +82,7 @@ const ImageryProviderAsyncMapping = {
82
82
  * @see IonImageryProvider.fromAssetId
83
83
  */
84
84
  function IonImageryProvider(options) {
85
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
85
+ options = options ?? Frozen.EMPTY_OBJECT;
86
86
 
87
87
  this._defaultAlpha = undefined;
88
88
  this._defaultNightAlpha = undefined;
@@ -266,7 +266,7 @@ IonImageryProvider.fromAssetId = async function (assetId, options) {
266
266
  Check.typeOf.number("assetId", assetId);
267
267
  //>>includeEnd('debug');
268
268
 
269
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
269
+ options = options ?? Frozen.EMPTY_OBJECT;
270
270
  const endpointResource = IonResource._createEndpointResource(
271
271
  assetId,
272
272
  options,
@@ -1,7 +1,7 @@
1
1
  const LoadState = Object.freeze({
2
2
  UNLOADED: 0, // Has no data and is in dormant state
3
3
  RECEIVING: 1, // Is waiting on data from the provider
4
- RECEIVED: 2, // Received data from the provider
4
+ PROCESSING: 2, // Data received. Contents are being processed for rendering. Depending on the content, it might make its own requests for external data.
5
5
  LOADED: 3, // Processed data from provider
6
6
  FAILED: 4, // Failed to receive data from the provider
7
7
  UNAVAILABLE: 5, // No data available for this tile
@@ -20,12 +20,26 @@ function KeyframeNode(spatialNode, keyframe) {
20
20
  this.spatialNode = spatialNode;
21
21
  this.keyframe = keyframe;
22
22
  this.state = LoadState.UNLOADED;
23
- this.metadata = [];
23
+ this.content = undefined;
24
24
  this.megatextureIndex = -1;
25
25
  this.priority = -Number.MAX_VALUE;
26
26
  this.highPriorityFrameNumber = -1;
27
27
  }
28
28
 
29
+ /**
30
+ * Frees the resources used by this object.
31
+ * @private
32
+ */
33
+ KeyframeNode.prototype.unload = function () {
34
+ this.content = this.content && this.content.destroy();
35
+
36
+ this.spatialNode = undefined;
37
+ this.state = LoadState.UNLOADED;
38
+ this.megatextureIndex = -1;
39
+ this.priority = -Number.MAX_VALUE;
40
+ this.highPriorityFrameNumber = -1;
41
+ };
42
+
29
43
  /**
30
44
  * @param {KeyframeNode} a
31
45
  * @param {KeyframeNode} b