@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
@@ -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 getJsonFromTypedArray from "../Core/getJsonFromTypedArray.js";
5
5
  import getMagic from "../Core/getMagic.js";
@@ -38,7 +38,7 @@ import ModelUtility from "./Model/ModelUtility.js";
38
38
  * @private
39
39
  */
40
40
  function GltfJsonLoader(options) {
41
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
41
+ options = options ?? Frozen.EMPTY_OBJECT;
42
42
  const resourceCache = options.resourceCache;
43
43
  const gltfResource = options.gltfResource;
44
44
  const baseResource = options.baseResource;
@@ -5,7 +5,7 @@ import Cartesian4 from "../Core/Cartesian4.js";
5
5
  import Check from "../Core/Check.js";
6
6
  import ComponentDatatype from "../Core/ComponentDatatype.js";
7
7
  import Credit from "../Core/Credit.js";
8
- import defaultValue from "../Core/defaultValue.js";
8
+ import Frozen from "../Core/Frozen.js";
9
9
  import defined from "../Core/defined.js";
10
10
  import FeatureDetection from "../Core/FeatureDetection.js";
11
11
  import InterpolationType from "../Core/InterpolationType.js";
@@ -195,7 +195,7 @@ const GltfLoaderState = {
195
195
  * @private
196
196
  */
197
197
  function GltfLoader(options) {
198
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
198
+ options = options ?? Frozen.EMPTY_OBJECT;
199
199
  const {
200
200
  gltfResource,
201
201
  typedArray,
@@ -855,7 +855,7 @@ async function loadAccessorBufferView(
855
855
  bufferViewLoader.typedArray,
856
856
  );
857
857
 
858
- useQuaternion = defaultValue(useQuaternion, false);
858
+ useQuaternion = useQuaternion ?? false;
859
859
  loadAccessorValues(accessor, typedArray, values, useQuaternion);
860
860
  }
861
861
 
@@ -1004,7 +1004,7 @@ function setQuantizationFromWeb3dQuantizedAttributes(
1004
1004
  function createAttribute(gltf, accessorId, name, semantic, setIndex) {
1005
1005
  const accessor = gltf.accessors[accessorId];
1006
1006
  const MathType = AttributeType.getMathType(accessor.type);
1007
- const normalized = defaultValue(accessor.normalized, false);
1007
+ const normalized = accessor.normalized ?? false;
1008
1008
 
1009
1009
  const attribute = new Attribute();
1010
1010
  attribute.name = name;
@@ -1670,10 +1670,7 @@ function loadClearcoat(loader, clearcoatInfo, frameState) {
1670
1670
  function loadMaterial(loader, gltfMaterial, frameState) {
1671
1671
  const material = new Material();
1672
1672
 
1673
- const extensions = defaultValue(
1674
- gltfMaterial.extensions,
1675
- defaultValue.EMPTY_OBJECT,
1676
- );
1673
+ const extensions = gltfMaterial.extensions ?? Frozen.EMPTY_OBJECT;
1677
1674
  const pbrSpecularGlossiness = extensions.KHR_materials_pbrSpecularGlossiness;
1678
1675
  const pbrSpecular = extensions.KHR_materials_specular;
1679
1676
  const pbrAnisotropy = extensions.KHR_materials_anisotropy;
@@ -1794,9 +1791,9 @@ function loadFeatureIdImplicitRangeLegacy(
1794
1791
  featureIdRange.featureCount = featureCount;
1795
1792
 
1796
1793
  // constant/divisor was renamed to offset/repeat
1797
- featureIdRange.offset = defaultValue(featureIds.constant, 0);
1794
+ featureIdRange.offset = featureIds.constant ?? 0;
1798
1795
  // The default is now undefined
1799
- const divisor = defaultValue(featureIds.divisor, 0);
1796
+ const divisor = featureIds.divisor ?? 0;
1800
1797
  featureIdRange.repeat = divisor === 0 ? undefined : divisor;
1801
1798
 
1802
1799
  featureIdRange.positionalLabel = positionalLabel;
@@ -1936,10 +1933,7 @@ function loadPrimitive(loader, gltfPrimitive, hasInstances, frameState) {
1936
1933
  );
1937
1934
  }
1938
1935
 
1939
- const extensions = defaultValue(
1940
- gltfPrimitive.extensions,
1941
- defaultValue.EMPTY_OBJECT,
1942
- );
1936
+ const extensions = gltfPrimitive.extensions ?? Frozen.EMPTY_OBJECT;
1943
1937
 
1944
1938
  let needsPostProcessing = false;
1945
1939
  const outlineExtension = extensions.CESIUM_primitive_outline;
@@ -2191,16 +2185,14 @@ function loadPrimitiveMetadata(primitive, structuralMetadataExtension) {
2191
2185
  if (!defined(structuralMetadataExtension)) {
2192
2186
  return;
2193
2187
  }
2188
+ const { propertyTextures, propertyAttributes } = structuralMetadataExtension;
2194
2189
 
2195
- // Property Textures
2196
- if (defined(structuralMetadataExtension.propertyTextures)) {
2197
- primitive.propertyTextureIds = structuralMetadataExtension.propertyTextures;
2190
+ if (defined(propertyTextures)) {
2191
+ primitive.propertyTextureIds = propertyTextures;
2198
2192
  }
2199
2193
 
2200
- // Property Attributes
2201
- if (defined(structuralMetadataExtension.propertyAttributes)) {
2202
- primitive.propertyAttributeIds =
2203
- structuralMetadataExtension.propertyAttributes;
2194
+ if (defined(propertyAttributes)) {
2195
+ primitive.propertyAttributeIds = propertyAttributes;
2204
2196
  }
2205
2197
  }
2206
2198
 
@@ -2242,10 +2234,8 @@ function loadInstances(loader, nodeExtensions, frameState) {
2242
2234
  }
2243
2235
  }
2244
2236
 
2245
- const instancingExtExtensions = defaultValue(
2246
- instancingExtension.extensions,
2247
- defaultValue.EMPTY_OBJECT,
2248
- );
2237
+ const instancingExtExtensions =
2238
+ instancingExtension.extensions ?? Frozen.EMPTY_OBJECT;
2249
2239
  const instanceFeatures = nodeExtensions.EXT_instance_features;
2250
2240
  const featureMetadataLegacy = instancingExtExtensions.EXT_feature_metadata;
2251
2241
 
@@ -2343,10 +2333,7 @@ function loadNode(loader, gltfNode, frameState) {
2343
2333
  node.rotation = fromArray(Quaternion, gltfNode.rotation);
2344
2334
  node.scale = fromArray(Cartesian3, gltfNode.scale);
2345
2335
 
2346
- const nodeExtensions = defaultValue(
2347
- gltfNode.extensions,
2348
- defaultValue.EMPTY_OBJECT,
2349
- );
2336
+ const nodeExtensions = gltfNode.extensions ?? Frozen.EMPTY_OBJECT;
2350
2337
  const instancingExtension = nodeExtensions.EXT_mesh_gpu_instancing;
2351
2338
  const articulationsExtension = nodeExtensions.AGI_articulations;
2352
2339
 
@@ -2380,7 +2367,7 @@ function loadNode(loader, gltfNode, frameState) {
2380
2367
 
2381
2368
  // If the node has no weights array, it will look for the weights array provided
2382
2369
  // by the mesh. If both are undefined, it will default to an array of zero weights.
2383
- const morphWeights = defaultValue(gltfNode.weights, mesh.weights);
2370
+ const morphWeights = gltfNode.weights ?? mesh.weights;
2384
2371
  const targets = node.primitives[0].morphTargets;
2385
2372
 
2386
2373
  // Since meshes are not stored as separate components, the mesh weights will still
@@ -2510,10 +2497,8 @@ function loadAnimationSampler(loader, gltfSampler) {
2510
2497
  animationSampler.input = loadAccessor(loader, inputAccessor);
2511
2498
 
2512
2499
  const gltfInterpolation = gltfSampler.interpolation;
2513
- animationSampler.interpolation = defaultValue(
2514
- InterpolationType[gltfInterpolation],
2515
- InterpolationType.LINEAR,
2516
- );
2500
+ animationSampler.interpolation =
2501
+ InterpolationType[gltfInterpolation] ?? InterpolationType.LINEAR;
2517
2502
 
2518
2503
  const outputAccessor = accessors[gltfSampler.output];
2519
2504
  animationSampler.output = loadAccessor(loader, outputAccessor, true);
@@ -2608,7 +2593,7 @@ function loadArticulation(articulationJson) {
2608
2593
  }
2609
2594
 
2610
2595
  function loadArticulations(gltf) {
2611
- const extensions = defaultValue(gltf.extensions, defaultValue.EMPTY_OBJECT);
2596
+ const extensions = gltf.extensions ?? Frozen.EMPTY_OBJECT;
2612
2597
  const articulationJsons = extensions.AGI_articulations?.articulations;
2613
2598
  if (!defined(articulationJsons)) {
2614
2599
  return [];
@@ -2621,7 +2606,7 @@ function getSceneNodeIds(gltf) {
2621
2606
  if (defined(gltf.scenes) && defined(gltf.scene)) {
2622
2607
  nodesIds = gltf.scenes[gltf.scene].nodes;
2623
2608
  }
2624
- nodesIds = defaultValue(nodesIds, gltf.nodes);
2609
+ nodesIds = nodesIds ?? gltf.nodes;
2625
2610
  nodesIds = defined(nodesIds) ? nodesIds : [];
2626
2611
  return nodesIds;
2627
2612
  }
@@ -2654,7 +2639,7 @@ const scratchCenter = new Cartesian3();
2654
2639
  */
2655
2640
  function parse(loader, frameState) {
2656
2641
  const gltf = loader.gltfJson;
2657
- const extensions = defaultValue(gltf.extensions, defaultValue.EMPTY_OBJECT);
2642
+ const extensions = gltf.extensions ?? Frozen.EMPTY_OBJECT;
2658
2643
  const structuralMetadataExtension = extensions.EXT_structural_metadata;
2659
2644
  const featureMetadataExtensionLegacy = extensions.EXT_feature_metadata;
2660
2645
  const cesiumRtcExtension = extensions.CESIUM_RTC;
@@ -1,6 +1,6 @@
1
1
  import Cartesian2 from "../Core/Cartesian2.js";
2
2
  import Check from "../Core/Check.js";
3
- import defaultValue from "../Core/defaultValue.js";
3
+ import Frozen from "../Core/Frozen.js";
4
4
  import defined from "../Core/defined.js";
5
5
  import Matrix3 from "../Core/Matrix3.js";
6
6
  import Sampler from "../Renderer/Sampler.js";
@@ -34,7 +34,7 @@ const GltfLoaderUtil = {};
34
34
  * @private
35
35
  */
36
36
  GltfLoaderUtil.getImageIdFromTexture = function (options) {
37
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
37
+ options = options ?? Frozen.EMPTY_OBJECT;
38
38
  const { gltf, textureId, supportedImageFormats } = options;
39
39
 
40
40
  //>>includeStart('debug', pragmas.debug);
@@ -70,7 +70,7 @@ GltfLoaderUtil.getImageIdFromTexture = function (options) {
70
70
  * @private
71
71
  */
72
72
  GltfLoaderUtil.createSampler = function (options) {
73
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
73
+ options = options ?? Frozen.EMPTY_OBJECT;
74
74
  const { gltf, textureInfo, compressedTextureNoMipmap = false } = options;
75
75
 
76
76
  //>>includeStart('debug', pragmas.debug);
@@ -90,10 +90,10 @@ GltfLoaderUtil.createSampler = function (options) {
90
90
 
91
91
  if (defined(samplerId)) {
92
92
  const sampler = gltf.samplers[samplerId];
93
- wrapS = defaultValue(sampler.wrapS, wrapS);
94
- wrapT = defaultValue(sampler.wrapT, wrapT);
95
- minFilter = defaultValue(sampler.minFilter, minFilter);
96
- magFilter = defaultValue(sampler.magFilter, magFilter);
93
+ wrapS = sampler.wrapS ?? wrapS;
94
+ wrapT = sampler.wrapT ?? wrapT;
95
+ minFilter = sampler.minFilter ?? minFilter;
96
+ magFilter = sampler.magFilter ?? magFilter;
97
97
  }
98
98
 
99
99
  if (
@@ -132,25 +132,25 @@ const defaultScale = new Cartesian2(1.0, 1.0);
132
132
  * @returns {ModelComponents.TextureReader} The texture reader for this model.
133
133
  */
134
134
  GltfLoaderUtil.createModelTextureReader = function (options) {
135
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
135
+ options = options ?? Frozen.EMPTY_OBJECT;
136
136
  const { textureInfo, channels, texture } = options;
137
137
 
138
138
  //>>includeStart('debug', pragmas.debug);
139
139
  Check.typeOf.object("options.textureInfo", textureInfo);
140
140
  //>>includeEnd('debug');
141
141
 
142
- let texCoord = defaultValue(textureInfo.texCoord, 0);
142
+ let texCoord = textureInfo.texCoord ?? 0;
143
143
  let transform;
144
144
 
145
145
  const textureTransform = textureInfo.extensions?.KHR_texture_transform;
146
146
 
147
147
  if (defined(textureTransform)) {
148
- texCoord = defaultValue(textureTransform.texCoord, texCoord);
148
+ texCoord = textureTransform.texCoord ?? texCoord;
149
149
 
150
150
  const offset = defined(textureTransform.offset)
151
151
  ? Cartesian2.unpack(textureTransform.offset)
152
152
  : Cartesian2.ZERO;
153
- let rotation = defaultValue(textureTransform.rotation, 0.0);
153
+ let rotation = textureTransform.rotation ?? 0.0;
154
154
  const scale = defined(textureTransform.scale)
155
155
  ? Cartesian2.unpack(textureTransform.scale)
156
156
  : defaultScale;
@@ -1,7 +1,7 @@
1
1
  import addToArray from "./addToArray.js";
2
2
  import ForEach from "./ForEach.js";
3
3
  import getAccessorByteStride from "./getAccessorByteStride.js";
4
- import defaultValue from "../../Core/defaultValue.js";
4
+ import Frozen from "../../Core/Frozen.js";
5
5
  import defined from "../../Core/defined.js";
6
6
  import WebGLConstants from "../../Core/WebGLConstants.js";
7
7
 
@@ -16,19 +16,19 @@ import WebGLConstants from "../../Core/WebGLConstants.js";
16
16
  function addDefaults(gltf) {
17
17
  ForEach.accessor(gltf, function (accessor) {
18
18
  if (defined(accessor.bufferView)) {
19
- accessor.byteOffset = defaultValue(accessor.byteOffset, 0);
19
+ accessor.byteOffset = accessor.byteOffset ?? 0;
20
20
  }
21
21
  });
22
22
 
23
23
  ForEach.bufferView(gltf, function (bufferView) {
24
24
  if (defined(bufferView.buffer)) {
25
- bufferView.byteOffset = defaultValue(bufferView.byteOffset, 0);
25
+ bufferView.byteOffset = bufferView.byteOffset ?? 0;
26
26
  }
27
27
  });
28
28
 
29
29
  ForEach.mesh(gltf, function (mesh) {
30
30
  ForEach.meshPrimitive(mesh, function (primitive) {
31
- primitive.mode = defaultValue(primitive.mode, WebGLConstants.TRIANGLES);
31
+ primitive.mode = primitive.mode ?? WebGLConstants.TRIANGLES;
32
32
  if (!defined(primitive.material)) {
33
33
  if (!defined(gltf.materials)) {
34
34
  gltf.materials = [];
@@ -44,7 +44,7 @@ function addDefaults(gltf) {
44
44
  ForEach.accessorContainingVertexAttributeData(gltf, function (accessorId) {
45
45
  const accessor = gltf.accessors[accessorId];
46
46
  const bufferViewId = accessor.bufferView;
47
- accessor.normalized = defaultValue(accessor.normalized, false);
47
+ accessor.normalized = accessor.normalized ?? false;
48
48
  if (defined(bufferViewId)) {
49
49
  const bufferView = gltf.bufferViews[bufferViewId];
50
50
  bufferView.byteStride = getAccessorByteStride(gltf, accessor);
@@ -62,10 +62,7 @@ function addDefaults(gltf) {
62
62
  });
63
63
 
64
64
  ForEach.material(gltf, function (material) {
65
- const extensions = defaultValue(
66
- material.extensions,
67
- defaultValue.EMPTY_OBJECT
68
- );
65
+ const extensions = material.extensions ?? Frozen.EMPTY_OBJECT;
69
66
  const materialsCommon = extensions.KHR_materials_common;
70
67
  if (defined(materialsCommon)) {
71
68
  const technique = materialsCommon.technique;
@@ -81,7 +78,7 @@ function addDefaults(gltf) {
81
78
  ? values.emission
82
79
  : [0.0, 0.0, 0.0, 1.0];
83
80
 
84
- values.transparency = defaultValue(values.transparency, 1.0);
81
+ values.transparency = values.transparency ?? 1.0;
85
82
 
86
83
  if (technique !== "CONSTANT") {
87
84
  values.diffuse = defined(values.diffuse)
@@ -91,32 +88,23 @@ function addDefaults(gltf) {
91
88
  values.specular = defined(values.specular)
92
89
  ? values.specular
93
90
  : [0.0, 0.0, 0.0, 1.0];
94
- values.shininess = defaultValue(values.shininess, 0.0);
91
+ values.shininess = values.shininess ?? 0.0;
95
92
  }
96
93
  }
97
94
 
98
95
  // These actually exist on the extension object, not the values object despite what's shown in the spec
99
- materialsCommon.transparent = defaultValue(
100
- materialsCommon.transparent,
101
- false
102
- );
103
- materialsCommon.doubleSided = defaultValue(
104
- materialsCommon.doubleSided,
105
- false
106
- );
96
+ materialsCommon.transparent = materialsCommon.transparent ?? false;
97
+ materialsCommon.doubleSided = materialsCommon.doubleSided ?? false;
107
98
 
108
99
  return;
109
100
  }
110
101
 
111
- material.emissiveFactor = defaultValue(
112
- material.emissiveFactor,
113
- [0.0, 0.0, 0.0]
114
- );
115
- material.alphaMode = defaultValue(material.alphaMode, "OPAQUE");
116
- material.doubleSided = defaultValue(material.doubleSided, false);
102
+ material.emissiveFactor = material.emissiveFactor ?? [0.0, 0.0, 0.0];
103
+ material.alphaMode = material.alphaMode ?? "OPAQUE";
104
+ material.doubleSided = material.doubleSided ?? false;
117
105
 
118
106
  if (material.alphaMode === "MASK") {
119
- material.alphaCutoff = defaultValue(material.alphaCutoff, 0.5);
107
+ material.alphaCutoff = material.alphaCutoff ?? 0.5;
120
108
  }
121
109
 
122
110
  const techniquesExtension = extensions.KHR_techniques_webgl;
@@ -135,18 +123,12 @@ function addDefaults(gltf) {
135
123
 
136
124
  const pbrMetallicRoughness = material.pbrMetallicRoughness;
137
125
  if (defined(pbrMetallicRoughness)) {
138
- pbrMetallicRoughness.baseColorFactor = defaultValue(
139
- pbrMetallicRoughness.baseColorFactor,
140
- [1.0, 1.0, 1.0, 1.0]
141
- );
142
- pbrMetallicRoughness.metallicFactor = defaultValue(
143
- pbrMetallicRoughness.metallicFactor,
144
- 1.0
145
- );
146
- pbrMetallicRoughness.roughnessFactor = defaultValue(
147
- pbrMetallicRoughness.roughnessFactor,
148
- 1.0
149
- );
126
+ pbrMetallicRoughness.baseColorFactor =
127
+ pbrMetallicRoughness.baseColorFactor ?? [1.0, 1.0, 1.0, 1.0];
128
+ pbrMetallicRoughness.metallicFactor =
129
+ pbrMetallicRoughness.metallicFactor ?? 1.0;
130
+ pbrMetallicRoughness.roughnessFactor =
131
+ pbrMetallicRoughness.roughnessFactor ?? 1.0;
150
132
  addTextureDefaults(pbrMetallicRoughness.baseColorTexture);
151
133
  addTextureDefaults(pbrMetallicRoughness.metallicRoughnessTexture);
152
134
  }
@@ -154,25 +136,19 @@ function addDefaults(gltf) {
154
136
  const pbrSpecularGlossiness =
155
137
  extensions.KHR_materials_pbrSpecularGlossiness;
156
138
  if (defined(pbrSpecularGlossiness)) {
157
- pbrSpecularGlossiness.diffuseFactor = defaultValue(
158
- pbrSpecularGlossiness.diffuseFactor,
159
- [1.0, 1.0, 1.0, 1.0]
160
- );
161
- pbrSpecularGlossiness.specularFactor = defaultValue(
162
- pbrSpecularGlossiness.specularFactor,
163
- [1.0, 1.0, 1.0]
164
- );
165
- pbrSpecularGlossiness.glossinessFactor = defaultValue(
166
- pbrSpecularGlossiness.glossinessFactor,
167
- 1.0
168
- );
139
+ pbrSpecularGlossiness.diffuseFactor =
140
+ pbrSpecularGlossiness.diffuseFactor ?? [1.0, 1.0, 1.0, 1.0];
141
+ pbrSpecularGlossiness.specularFactor =
142
+ pbrSpecularGlossiness.specularFactor ?? [1.0, 1.0, 1.0];
143
+ pbrSpecularGlossiness.glossinessFactor =
144
+ pbrSpecularGlossiness.glossinessFactor ?? 1.0;
169
145
  addTextureDefaults(pbrSpecularGlossiness.specularGlossinessTexture);
170
146
  }
171
147
  });
172
148
 
173
149
  ForEach.animation(gltf, function (animation) {
174
150
  ForEach.animationSampler(animation, function (sampler) {
175
- sampler.interpolation = defaultValue(sampler.interpolation, "LINEAR");
151
+ sampler.interpolation = sampler.interpolation ?? "LINEAR";
176
152
  });
177
153
  });
178
154
 
@@ -185,23 +161,20 @@ function addDefaults(gltf) {
185
161
  defined(node.rotation) ||
186
162
  defined(node.scale)
187
163
  ) {
188
- node.translation = defaultValue(node.translation, [0.0, 0.0, 0.0]);
189
- node.rotation = defaultValue(node.rotation, [0.0, 0.0, 0.0, 1.0]);
190
- node.scale = defaultValue(node.scale, [1.0, 1.0, 1.0]);
164
+ node.translation = node.translation ?? [0.0, 0.0, 0.0];
165
+ node.rotation = node.rotation ?? [0.0, 0.0, 0.0, 1.0];
166
+ node.scale = node.scale ?? [1.0, 1.0, 1.0];
191
167
  } else {
192
- node.matrix = defaultValue(
193
- node.matrix,
194
- [
195
- 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0,
196
- 0.0, 1.0,
197
- ]
198
- );
168
+ node.matrix = node.matrix ?? [
169
+ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0,
170
+ 0.0, 1.0,
171
+ ];
199
172
  }
200
173
  });
201
174
 
202
175
  ForEach.sampler(gltf, function (sampler) {
203
- sampler.wrapS = defaultValue(sampler.wrapS, WebGLConstants.REPEAT);
204
- sampler.wrapT = defaultValue(sampler.wrapT, WebGLConstants.REPEAT);
176
+ sampler.wrapS = sampler.wrapS ?? WebGLConstants.REPEAT;
177
+ sampler.wrapT = sampler.wrapT ?? WebGLConstants.REPEAT;
205
178
  });
206
179
 
207
180
  if (defined(gltf.scenes) && !defined(gltf.scene)) {
@@ -229,7 +202,7 @@ function getAnimatedNodes(gltf) {
229
202
 
230
203
  function addTextureDefaults(texture) {
231
204
  if (defined(texture)) {
232
- texture.texCoord = defaultValue(texture.texCoord, 0);
205
+ texture.texCoord = texture.texCoord ?? 0;
233
206
  }
234
207
  }
235
208
 
@@ -1,5 +1,3 @@
1
- import defaultValue from "../../Core/defaultValue.js";
2
-
3
1
  /**
4
2
  * Adds an element to an array and returns the element's index.
5
3
  *
@@ -10,7 +8,7 @@ import defaultValue from "../../Core/defaultValue.js";
10
8
  * @private
11
9
  */
12
10
  function addToArray(array, element, checkDuplicates) {
13
- checkDuplicates = defaultValue(checkDuplicates, false);
11
+ checkDuplicates = checkDuplicates ?? false;
14
12
  if (checkDuplicates) {
15
13
  const index = array.indexOf(element);
16
14
  if (index > -1) {
@@ -1,6 +1,5 @@
1
1
  import addExtensionsUsed from "./addExtensionsUsed.js";
2
2
  import ForEach from "./ForEach.js";
3
- import defaultValue from "../../Core/defaultValue.js";
4
3
  import defined from "../../Core/defined.js";
5
4
  import WebGLConstants from "../../Core/WebGLConstants.js";
6
5
 
@@ -84,10 +83,8 @@ function moveTechniqueRenderStates(gltf) {
84
83
  defined(blendFunctions.blendFuncSeparate))
85
84
  ) {
86
85
  blendingForTechnique[techniqueIndex] = {
87
- blendEquation: defaultValue(
88
- blendFunctions.blendEquationSeparate,
89
- defaultBlendEquation
90
- ),
86
+ blendEquation:
87
+ blendFunctions.blendEquationSeparate ?? defaultBlendEquation,
91
88
  blendFactors: getSupportedBlendFactors(
92
89
  blendFunctions.blendFuncSeparate,
93
90
  defaultBlendFactors
@@ -1,6 +1,5 @@
1
1
  import addPipelineExtras from "./addPipelineExtras.js";
2
2
  import removeExtensionsUsed from "./removeExtensionsUsed.js";
3
- import defaultValue from "../../Core/defaultValue.js";
4
3
  import defined from "../../Core/defined.js";
5
4
  import getMagic from "../../Core/getMagic.js";
6
5
  import getStringFromTypedArray from "../../Core/getStringFromTypedArray.js";
@@ -72,10 +71,7 @@ function parseGlbVersion1(glb, header) {
72
71
  const buffers = gltf.buffers;
73
72
  if (defined(buffers) && Object.keys(buffers).length > 0) {
74
73
  // In some older models, the binary glTF buffer is named KHR_binary_glTF
75
- const binaryGltfBuffer = defaultValue(
76
- buffers.binary_glTF,
77
- buffers.KHR_binary_glTF
78
- );
74
+ const binaryGltfBuffer = buffers.binary_glTF ?? buffers.KHR_binary_glTF;
79
75
  if (defined(binaryGltfBuffer)) {
80
76
  binaryGltfBuffer.extras._pipeline.source = binaryBuffer;
81
77
  delete binaryGltfBuffer.uri;
@@ -1,7 +1,6 @@
1
1
  import ForEach from "./ForEach.js";
2
2
  import forEachTextureInMaterial from "./forEachTextureInMaterial.js";
3
3
  import usesExtension from "./usesExtension.js";
4
- import defaultValue from "../../Core/defaultValue.js";
5
4
  import defined from "../../Core/defined.js";
6
5
 
7
6
  const allElementTypes = [
@@ -25,7 +24,7 @@ const allElementTypes = [
25
24
  * @private
26
25
  */
27
26
  function removeUnusedElements(gltf, elementTypes) {
28
- elementTypes = defaultValue(elementTypes, allElementTypes);
27
+ elementTypes = elementTypes ?? allElementTypes;
29
28
  allElementTypes.forEach(function (type) {
30
29
  if (elementTypes.indexOf(type) > -1) {
31
30
  removeUnusedElementsByType(gltf, type);