@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
@@ -5,7 +5,7 @@ import Check from "../../Core/Check.js";
5
5
  import Credit from "../../Core/Credit.js";
6
6
  import Color from "../../Core/Color.js";
7
7
  import defined from "../../Core/defined.js";
8
- import defaultValue from "../../Core/defaultValue.js";
8
+ import Frozen from "../../Core/Frozen.js";
9
9
  import DeveloperError from "../../Core/DeveloperError.js";
10
10
  import destroyObject from "../../Core/destroyObject.js";
11
11
  import DistanceDisplayCondition from "../../Core/DistanceDisplayCondition.js";
@@ -120,9 +120,9 @@ import pickModel from "./pickModel.js";
120
120
  * @alias Model
121
121
  * @internalConstructor
122
122
  *
123
+ * @privateParam {object} options Object with the following properties:
123
124
  * @privateParam {ResourceLoader} options.loader The loader used to load resources for this model.
124
125
  * @privateParam {ModelType} options.type Type of this model, to distinguish individual glTF files from 3D Tiles internally.
125
- * @privateParam {object} options Object with the following properties:
126
126
  * @privateParam {Resource} options.resource The Resource to the 3D model.
127
127
  * @privateParam {boolean} [options.show=true] Whether or not to render the model.
128
128
  * @privateParam {Matrix4} [options.modelMatrix=Matrix4.IDENTITY] The 4x4 transformation matrix that transforms the model from model to world coordinates.
@@ -174,7 +174,7 @@ import pickModel from "./pickModel.js";
174
174
  * @demo {@link https://sandcastle.cesium.com/index.html?src=3D%20Models.html|Cesium Sandcastle Models Demo}
175
175
  */
176
176
  function Model(options) {
177
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
177
+ options = options ?? Frozen.EMPTY_OBJECT;
178
178
  //>>includeStart('debug', pragmas.debug);
179
179
  Check.typeOf.object("options.loader", options.loader);
180
180
  Check.typeOf.object("options.resource", options.resource);
@@ -198,7 +198,7 @@ function Model(options) {
198
198
  *
199
199
  * @private
200
200
  */
201
- this.type = defaultValue(options.type, ModelType.GLTF);
201
+ this.type = options.type ?? ModelType.GLTF;
202
202
 
203
203
  /**
204
204
  * The 4x4 transformation matrix that transforms the model from model to world coordinates.
@@ -214,13 +214,11 @@ function Model(options) {
214
214
  * const origin = Cesium.Cartesian3.fromDegrees(-95.0, 40.0, 200000.0);
215
215
  * m.modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(origin);
216
216
  */
217
- this.modelMatrix = Matrix4.clone(
218
- defaultValue(options.modelMatrix, Matrix4.IDENTITY),
219
- );
217
+ this.modelMatrix = Matrix4.clone(options.modelMatrix ?? Matrix4.IDENTITY);
220
218
  this._modelMatrix = Matrix4.clone(this.modelMatrix);
221
- this._scale = defaultValue(options.scale, 1.0);
219
+ this._scale = options.scale ?? 1.0;
222
220
 
223
- this._minimumPixelSize = defaultValue(options.minimumPixelSize, 0.0);
221
+ this._minimumPixelSize = options.minimumPixelSize ?? 0.0;
224
222
 
225
223
  this._maximumScale = options.maximumScale;
226
224
 
@@ -269,7 +267,7 @@ function Model(options) {
269
267
  this._defaultTexture = undefined;
270
268
 
271
269
  this._activeAnimations = new ModelAnimationCollection(this);
272
- this._clampAnimations = defaultValue(options.clampAnimations, true);
270
+ this._clampAnimations = options.clampAnimations ?? true;
273
271
 
274
272
  // This flag is true when the Cesium API, not a glTF animation, changes
275
273
  // the transform of a node in the model.
@@ -279,15 +277,12 @@ function Model(options) {
279
277
  this._idDirty = false;
280
278
 
281
279
  this._color = Color.clone(options.color);
282
- this._colorBlendMode = defaultValue(
283
- options.colorBlendMode,
284
- ColorBlendMode.HIGHLIGHT,
285
- );
286
- this._colorBlendAmount = defaultValue(options.colorBlendAmount, 0.5);
280
+ this._colorBlendMode = options.colorBlendMode ?? ColorBlendMode.HIGHLIGHT;
281
+ this._colorBlendAmount = options.colorBlendAmount ?? 0.5;
287
282
 
288
- const silhouetteColor = defaultValue(options.silhouetteColor, Color.RED);
283
+ const silhouetteColor = options.silhouetteColor ?? Color.RED;
289
284
  this._silhouetteColor = Color.clone(silhouetteColor);
290
- this._silhouetteSize = defaultValue(options.silhouetteSize, 0.0);
285
+ this._silhouetteSize = options.silhouetteSize ?? 0.0;
291
286
  this._silhouetteDirty = false;
292
287
 
293
288
  // If silhouettes are used for the model, this will be set to the number
@@ -295,25 +290,23 @@ function Model(options) {
295
290
  // by ModelSilhouettePipelineStage, not by Model itself.
296
291
  this._silhouetteId = undefined;
297
292
 
298
- this._cull = defaultValue(options.cull, true);
299
- this._opaquePass = defaultValue(options.opaquePass, Pass.OPAQUE);
300
- this._allowPicking = defaultValue(options.allowPicking, true);
301
- this._show = defaultValue(options.show, true);
293
+ this._cull = options.cull ?? true;
294
+ this._opaquePass = options.opaquePass ?? Pass.OPAQUE;
295
+ this._allowPicking = options.allowPicking ?? true;
296
+ this._show = options.show ?? true;
302
297
 
303
298
  this._style = undefined;
304
299
  this._styleDirty = false;
305
300
  this._styleCommandsNeeded = undefined;
306
301
 
307
- let featureIdLabel = defaultValue(options.featureIdLabel, "featureId_0");
302
+ let featureIdLabel = options.featureIdLabel ?? "featureId_0";
308
303
  if (typeof featureIdLabel === "number") {
309
304
  featureIdLabel = `featureId_${featureIdLabel}`;
310
305
  }
311
306
  this._featureIdLabel = featureIdLabel;
312
307
 
313
- let instanceFeatureIdLabel = defaultValue(
314
- options.instanceFeatureIdLabel,
315
- "instanceFeatureId_0",
316
- );
308
+ let instanceFeatureIdLabel =
309
+ options.instanceFeatureIdLabel ?? "instanceFeatureId_0";
317
310
  if (typeof instanceFeatureIdLabel === "number") {
318
311
  instanceFeatureIdLabel = `instanceFeatureId_${instanceFeatureIdLabel}`;
319
312
  }
@@ -339,17 +332,11 @@ function Model(options) {
339
332
  this._boundingSphere = new BoundingSphere();
340
333
  this._initialRadius = undefined;
341
334
 
342
- this._heightReference = defaultValue(
343
- options.heightReference,
344
- HeightReference.NONE,
345
- );
335
+ this._heightReference = options.heightReference ?? HeightReference.NONE;
346
336
  this._heightDirty = this._heightReference !== HeightReference.NONE;
347
337
  this._removeUpdateHeightCallback = undefined;
348
338
 
349
- this._enableVerticalExaggeration = defaultValue(
350
- options.enableVerticalExaggeration,
351
- true,
352
- );
339
+ this._enableVerticalExaggeration = options.enableVerticalExaggeration ?? true;
353
340
  this._hasVerticalExaggeration = false;
354
341
 
355
342
  this._clampedModelMatrix = undefined; // For use with height reference
@@ -412,24 +399,18 @@ function Model(options) {
412
399
  "_environmentMapManager",
413
400
  );
414
401
 
415
- this._backFaceCulling = defaultValue(options.backFaceCulling, true);
402
+ this._backFaceCulling = options.backFaceCulling ?? true;
416
403
  this._backFaceCullingDirty = false;
417
404
 
418
- this._shadows = defaultValue(options.shadows, ShadowMode.ENABLED);
405
+ this._shadows = options.shadows ?? ShadowMode.ENABLED;
419
406
  this._shadowsDirty = false;
420
407
 
421
408
  this._debugShowBoundingVolumeDirty = false;
422
- this._debugShowBoundingVolume = defaultValue(
423
- options.debugShowBoundingVolume,
424
- false,
425
- );
409
+ this._debugShowBoundingVolume = options.debugShowBoundingVolume ?? false;
426
410
 
427
- this._enableDebugWireframe = defaultValue(
428
- options.enableDebugWireframe,
429
- false,
430
- );
431
- this._enableShowOutline = defaultValue(options.enableShowOutline, true);
432
- this._debugWireframe = defaultValue(options.debugWireframe, false);
411
+ this._enableDebugWireframe = options.enableDebugWireframe ?? false;
412
+ this._enableShowOutline = options.enableShowOutline ?? true;
413
+ this._debugWireframe = options.debugWireframe ?? false;
433
414
 
434
415
  // Warning for improper setup of debug wireframe
435
416
  if (
@@ -458,15 +439,12 @@ function Model(options) {
458
439
  // Credits parsed from the glTF by GltfLoader.
459
440
  this._gltfCredits = [];
460
441
 
461
- this._showCreditsOnScreen = defaultValue(options.showCreditsOnScreen, false);
442
+ this._showCreditsOnScreen = options.showCreditsOnScreen ?? false;
462
443
  this._showCreditsOnScreenDirty = true;
463
444
 
464
- this._splitDirection = defaultValue(
465
- options.splitDirection,
466
- SplitDirection.NONE,
467
- );
445
+ this._splitDirection = options.splitDirection ?? SplitDirection.NONE;
468
446
 
469
- this._enableShowOutline = defaultValue(options.enableShowOutline, true);
447
+ this._enableShowOutline = options.enableShowOutline ?? true;
470
448
 
471
449
  /**
472
450
  * Whether to display the outline for models using the
@@ -477,7 +455,7 @@ function Model(options) {
477
455
  *
478
456
  * @default true
479
457
  */
480
- this.showOutline = defaultValue(options.showOutline, true);
458
+ this.showOutline = options.showOutline ?? true;
481
459
 
482
460
  /**
483
461
  * The color to use when rendering outlines.
@@ -486,20 +464,20 @@ function Model(options) {
486
464
  *
487
465
  * @default Color.BLACK
488
466
  */
489
- this.outlineColor = defaultValue(options.outlineColor, Color.BLACK);
467
+ this.outlineColor = options.outlineColor ?? Color.BLACK;
490
468
 
491
469
  this._classificationType = options.classificationType;
492
470
 
493
471
  this._statistics = new ModelStatistics();
494
472
 
495
473
  this._sceneMode = undefined;
496
- this._projectTo2D = defaultValue(options.projectTo2D, false);
497
- this._enablePick = defaultValue(options.enablePick, false);
474
+ this._projectTo2D = options.projectTo2D ?? false;
475
+ this._enablePick = options.enablePick ?? false;
498
476
 
499
477
  this._fogRenderable = undefined;
500
478
 
501
479
  this._skipLevelOfDetail = false;
502
- this._ignoreCommands = defaultValue(options.ignoreCommands, false);
480
+ this._ignoreCommands = options.ignoreCommands ?? false;
503
481
 
504
482
  this._errorEvent = new Event();
505
483
  this._readyEvent = new Event();
@@ -678,7 +656,7 @@ Object.defineProperties(Model.prototype, {
678
656
  */
679
657
  incrementallyLoadTextures: {
680
658
  get: function () {
681
- return defaultValue(this._loader.incrementallyLoadTextures, false);
659
+ return this._loader.incrementallyLoadTextures ?? false;
682
660
  },
683
661
  },
684
662
 
@@ -2265,7 +2243,7 @@ function updateClamping(model) {
2265
2243
  return;
2266
2244
  }
2267
2245
 
2268
- const ellipsoid = defaultValue(scene.ellipsoid, Ellipsoid.default);
2246
+ const ellipsoid = scene.ellipsoid ?? Ellipsoid.default;
2269
2247
 
2270
2248
  // Compute cartographic position so we don't recompute every update
2271
2249
  const modelMatrix = model.modelMatrix;
@@ -2399,7 +2377,7 @@ function updateReferenceMatrices(model, frameState) {
2399
2377
  const modelMatrix = defined(model._clampedModelMatrix)
2400
2378
  ? model._clampedModelMatrix
2401
2379
  : model.modelMatrix;
2402
- const referenceMatrix = defaultValue(model.referenceMatrix, modelMatrix);
2380
+ const referenceMatrix = model.referenceMatrix ?? modelMatrix;
2403
2381
  const context = frameState.context;
2404
2382
 
2405
2383
  let iblReferenceFrameMatrix3 = scratchIBLReferenceFrameMatrix3;
@@ -3012,7 +2990,7 @@ Model.prototype.destroyModelResources = function () {
3012
2990
  * }
3013
2991
  */
3014
2992
  Model.fromGltfAsync = async function (options) {
3015
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
2993
+ options = options ?? Frozen.EMPTY_OBJECT;
3016
2994
 
3017
2995
  //>>includeStart('debug', pragmas.debug);
3018
2996
  if (!defined(options.url) && !defined(options.gltf)) {
@@ -3023,7 +3001,7 @@ Model.fromGltfAsync = async function (options) {
3023
3001
  // options.gltf is used internally for 3D Tiles. It can be a Resource, a URL
3024
3002
  // to a glTF/glb file, a binary glTF buffer, or a JSON object containing the
3025
3003
  // glTF contents.
3026
- const gltf = defaultValue(options.url, options.gltf);
3004
+ const gltf = options.url ?? options.gltf;
3027
3005
 
3028
3006
  const loaderOptions = {
3029
3007
  releaseGltfJson: options.releaseGltfJson,
@@ -3038,7 +3016,7 @@ Model.fromGltfAsync = async function (options) {
3038
3016
  loadForClassification: defined(options.classificationType),
3039
3017
  };
3040
3018
 
3041
- const basePath = defaultValue(options.basePath, "");
3019
+ const basePath = options.basePath ?? "";
3042
3020
  const baseResource = Resource.createIfNeeded(basePath);
3043
3021
 
3044
3022
  if (defined(gltf.asset)) {
@@ -1,4 +1,3 @@
1
- import defaultValue from "../../Core/defaultValue.js";
2
1
  import defined from "../../Core/defined.js";
3
2
  import Event from "../../Core/Event.js";
4
3
  import JulianDate from "../../Core/JulianDate.js";
@@ -29,7 +28,7 @@ function ModelAnimation(model, animation, options) {
29
28
  this._runtimeChannels = undefined;
30
29
 
31
30
  this._startTime = JulianDate.clone(options.startTime);
32
- this._delay = defaultValue(options.delay, 0.0); // in seconds
31
+ this._delay = options.delay ?? 0.0; // in seconds
33
32
  this._stopTime = JulianDate.clone(options.stopTime);
34
33
 
35
34
  /**
@@ -40,10 +39,10 @@ function ModelAnimation(model, animation, options) {
40
39
  * @type {boolean}
41
40
  * @default false
42
41
  */
43
- this.removeOnStop = defaultValue(options.removeOnStop, false);
44
- this._multiplier = defaultValue(options.multiplier, 1.0);
45
- this._reverse = defaultValue(options.reverse, false);
46
- this._loop = defaultValue(options.loop, ModelAnimationLoop.NONE);
42
+ this.removeOnStop = options.removeOnStop ?? false;
43
+ this._multiplier = options.multiplier ?? 1.0;
44
+ this._reverse = options.reverse ?? false;
45
+ this._loop = options.loop ?? ModelAnimationLoop.NONE;
47
46
  this._animationTime = options.animationTime;
48
47
  this._prevAnimationDelta = undefined;
49
48
 
@@ -1,7 +1,7 @@
1
1
  import Cartesian3 from "../../Core/Cartesian3.js";
2
2
  import Check from "../../Core/Check.js";
3
3
  import ConstantSpline from "../../Core/ConstantSpline.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 HermiteSpline from "../../Core/HermiteSpline.js";
7
7
  import InterpolationType from "../../Core/InterpolationType.js";
@@ -29,7 +29,7 @@ const AnimatedPropertyType = ModelComponents.AnimatedPropertyType;
29
29
  * @private
30
30
  */
31
31
  function ModelAnimationChannel(options) {
32
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
32
+ options = options ?? Frozen.EMPTY_OBJECT;
33
33
 
34
34
  const channel = options.channel;
35
35
  const runtimeAnimation = options.runtimeAnimation;
@@ -1,4 +1,4 @@
1
- import defaultValue from "../../Core/defaultValue.js";
1
+ import Frozen from "../../Core/Frozen.js";
2
2
  import defined from "../../Core/defined.js";
3
3
  import DeveloperError from "../../Core/DeveloperError.js";
4
4
  import Event from "../../Core/Event.js";
@@ -167,7 +167,7 @@ function addAnimation(collection, animation, options) {
167
167
  * });
168
168
  */
169
169
  ModelAnimationCollection.prototype.add = function (options) {
170
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
170
+ options = options ?? Frozen.EMPTY_OBJECT;
171
171
 
172
172
  const model = this._model;
173
173
 
@@ -251,7 +251,7 @@ ModelAnimationCollection.prototype.add = function (options) {
251
251
  * });
252
252
  */
253
253
  ModelAnimationCollection.prototype.addAll = function (options) {
254
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
254
+ options = options ?? Frozen.EMPTY_OBJECT;
255
255
 
256
256
  const model = this._model;
257
257
 
@@ -426,7 +426,7 @@ ModelAnimationCollection.prototype.update = function (frameState) {
426
426
 
427
427
  if (!defined(runtimeAnimation._computedStartTime)) {
428
428
  runtimeAnimation._computedStartTime = JulianDate.addSeconds(
429
- defaultValue(runtimeAnimation.startTime, sceneTime),
429
+ runtimeAnimation.startTime ?? sceneTime,
430
430
  runtimeAnimation.delay,
431
431
  new JulianDate(),
432
432
  );
@@ -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 Matrix4 from "../../Core/Matrix4.js";
5
5
  import ModelArticulationStage from "./ModelArticulationStage.js";
@@ -19,7 +19,7 @@ import ModelArticulationStage from "./ModelArticulationStage.js";
19
19
  * @private
20
20
  */
21
21
  function ModelArticulation(options) {
22
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
22
+ options = options ?? Frozen.EMPTY_OBJECT;
23
23
 
24
24
  const articulation = options.articulation;
25
25
  const sceneGraph = options.sceneGraph;
@@ -2,7 +2,7 @@ import ArticulationStageType from "../../Core/ArticulationStageType.js";
2
2
  import Cartesian3 from "../../Core/Cartesian3.js";
3
3
  import CesiumMath from "../../Core/Math.js";
4
4
  import Check from "../../Core/Check.js";
5
- import defaultValue from "../../Core/defaultValue.js";
5
+ import Frozen from "../../Core/Frozen.js";
6
6
  import Matrix3 from "../../Core/Matrix3.js";
7
7
  import Matrix4 from "../../Core/Matrix4.js";
8
8
 
@@ -22,7 +22,7 @@ const articulationEpsilon = CesiumMath.EPSILON16;
22
22
  * @private
23
23
  */
24
24
  function ModelArticulationStage(options) {
25
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
25
+ options = options ?? Frozen.EMPTY_OBJECT;
26
26
 
27
27
  const stage = options.stage;
28
28
  const runtimeArticulation = options.runtimeArticulation;
@@ -3,7 +3,7 @@ import Cartesian2 from "../../Core/Cartesian2.js";
3
3
  import CesiumMath from "../../Core/Math.js";
4
4
  import Check from "../../Core/Check.js";
5
5
  import clone from "../../Core/clone.js";
6
- import defaultValue from "../../Core/defaultValue.js";
6
+ import Frozen from "../../Core/Frozen.js";
7
7
  import defined from "../../Core/defined.js";
8
8
  import Matrix4 from "../../Core/Matrix4.js";
9
9
  import WebGLConstants from "../../Core/WebGLConstants.js";
@@ -34,7 +34,7 @@ import StyleCommandsNeeded from "./StyleCommandsNeeded.js";
34
34
  * @private
35
35
  */
36
36
  function ModelDrawCommand(options) {
37
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
37
+ options = options ?? Frozen.EMPTY_OBJECT;
38
38
 
39
39
  const command = options.command;
40
40
  const renderResources = options.primitiveRenderResources;
@@ -124,7 +124,7 @@ function ModelDerivedCommand(options) {
124
124
  this.updateDebugShowBoundingVolume = options.updateDebugShowBoundingVolume;
125
125
 
126
126
  // Whether this ModelDerivedCommand is in 2D.
127
- this.is2D = defaultValue(options.is2D, false);
127
+ this.is2D = options.is2D ?? false;
128
128
 
129
129
  // A ModelDerivedCommand that is the 2D version of this one.
130
130
  this.derivedCommand2D = undefined;
@@ -5,7 +5,6 @@ import Color from "../../Core/Color.js";
5
5
  import defined from "../../Core/defined.js";
6
6
  import destroyObject from "../../Core/destroyObject.js";
7
7
  import ModelFeature from "./ModelFeature.js";
8
- import defaultValue from "../../Core/defaultValue.js";
9
8
  import StyleCommandsNeeded from "./StyleCommandsNeeded.js";
10
9
  import ModelType from "./ModelType.js";
11
10
 
@@ -264,16 +263,11 @@ ModelFeatureTable.prototype.applyStyle = function (style) {
264
263
  for (let i = 0; i < this._featuresLength; i++) {
265
264
  const feature = this.getFeature(i);
266
265
  const color = defined(style.color)
267
- ? defaultValue(
268
- style.color.evaluateColor(feature, scratchColor),
269
- BatchTexture.DEFAULT_COLOR_VALUE,
270
- )
266
+ ? (style.color.evaluateColor(feature, scratchColor) ??
267
+ BatchTexture.DEFAULT_COLOR_VALUE)
271
268
  : BatchTexture.DEFAULT_COLOR_VALUE;
272
269
  const show = defined(style.show)
273
- ? defaultValue(
274
- style.show.evaluate(feature),
275
- BatchTexture.DEFAULT_SHOW_VALUE,
276
- )
270
+ ? (style.show.evaluate(feature) ?? BatchTexture.DEFAULT_SHOW_VALUE)
277
271
  : BatchTexture.DEFAULT_SHOW_VALUE;
278
272
 
279
273
  this.setColor(i, color);
@@ -1,4 +1,4 @@
1
- import defaultValue from "../../Core/defaultValue.js";
1
+ import Frozen from "../../Core/Frozen.js";
2
2
  import LightingModel from "./LightingModel.js";
3
3
 
4
4
  /**
@@ -13,7 +13,7 @@ import LightingModel from "./LightingModel.js";
13
13
  * @private
14
14
  */
15
15
  function ModelLightingOptions(options) {
16
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
16
+ options = options ?? Frozen.EMPTY_OBJECT;
17
17
 
18
18
  /**
19
19
  * The lighting model to use, such as UNLIT or PBR. This is determined by
@@ -23,7 +23,7 @@ function ModelLightingOptions(options) {
23
23
  *
24
24
  * @private
25
25
  */
26
- this.lightingModel = defaultValue(options.lightingModel, LightingModel.UNLIT);
26
+ this.lightingModel = options.lightingModel ?? LightingModel.UNLIT;
27
27
  }
28
28
 
29
29
  export default ModelLightingOptions;
@@ -26,7 +26,7 @@ function ModelNode(model, runtimeNode) {
26
26
  //>>includeStart('debug', pragmas.debug);
27
27
  Check.typeOf.object("model", model);
28
28
  Check.typeOf.object("runtimeNode", runtimeNode);
29
- //>>includeEnd('debug')
29
+ //>>includeEnd('debug');
30
30
 
31
31
  this._model = model;
32
32
  this._runtimeNode = runtimeNode;
@@ -1,6 +1,6 @@
1
1
  import Cartesian3 from "../../Core/Cartesian3.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 DeveloperError from "../../Core/DeveloperError.js";
6
6
  import Matrix4 from "../../Core/Matrix4.js";
@@ -26,7 +26,7 @@ import NodeStatisticsPipelineStage from "./NodeStatisticsPipelineStage.js";
26
26
  * @private
27
27
  */
28
28
  function ModelRuntimeNode(options) {
29
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
29
+ options = options ?? Frozen.EMPTY_OBJECT;
30
30
 
31
31
  const node = options.node;
32
32
  const transform = options.transform;
@@ -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 PrimitiveType from "../../Core/PrimitiveType.js";
5
5
  import SceneMode from "../SceneMode.js";
@@ -43,7 +43,7 @@ import WireframePipelineStage from "./WireframePipelineStage.js";
43
43
  * @private
44
44
  */
45
45
  function ModelRuntimePrimitive(options) {
46
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
46
+ options = options ?? Frozen.EMPTY_OBJECT;
47
47
 
48
48
  const primitive = options.primitive;
49
49
  const node = options.node;
@@ -1,7 +1,7 @@
1
1
  import BoundingSphere from "../../Core/BoundingSphere.js";
2
2
  import Cartesian3 from "../../Core/Cartesian3.js";
3
3
  import Check from "../../Core/Check.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 Matrix4 from "../../Core/Matrix4.js";
7
7
  import Transforms from "../../Core/Transforms.js";
@@ -40,7 +40,7 @@ import ModelDrawCommands from "./ModelDrawCommands.js";
40
40
  * @private
41
41
  */
42
42
  function ModelSceneGraph(options) {
43
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
43
+ options = options ?? Frozen.EMPTY_OBJECT;
44
44
  const components = options.modelComponents;
45
45
 
46
46
  //>>includeStart('debug', pragmas.debug);
@@ -1,6 +1,6 @@
1
1
  import Matrix4 from "../../Core/Matrix4.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
 
5
5
  /**
6
6
  * An in-memory representation of a skin that affects nodes in the {@link ModelSceneGraph}.
@@ -17,7 +17,7 @@ import defaultValue from "../../Core/defaultValue.js";
17
17
  * @private
18
18
  */
19
19
  function ModelSkin(options) {
20
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
20
+ options = options ?? Frozen.EMPTY_OBJECT;
21
21
  //>>includeStart('debug', pragmas.debug);
22
22
  Check.typeOf.object("options.skin", options.skin);
23
23
  Check.typeOf.object("options.sceneGraph", options.sceneGraph);
@@ -346,15 +346,18 @@ ModelUtility.supportedExtensions = {
346
346
  CESIUM_primitive_outline: true,
347
347
  CESIUM_RTC: true,
348
348
  EXT_feature_metadata: true,
349
+ EXT_implicit_cylinder_region: true,
350
+ EXT_implicit_ellipsoid_region: true,
349
351
  EXT_instance_features: true,
350
352
  EXT_mesh_features: true,
351
353
  EXT_mesh_gpu_instancing: true,
352
354
  EXT_meshopt_compression: true,
355
+ EXT_primitive_voxels: true,
353
356
  EXT_structural_metadata: true,
354
357
  EXT_texture_webp: true,
355
358
  KHR_blend: true,
356
359
  KHR_draco_mesh_compression: true,
357
- KHR_techniques_webgl: true,
360
+ KHR_implicit_shapes: true,
358
361
  KHR_materials_common: true,
359
362
  KHR_materials_pbrSpecularGlossiness: true,
360
363
  KHR_materials_specular: true,
@@ -362,6 +365,7 @@ ModelUtility.supportedExtensions = {
362
365
  KHR_materials_clearcoat: true,
363
366
  KHR_materials_unlit: true,
364
367
  KHR_mesh_quantization: true,
368
+ KHR_techniques_webgl: true,
365
369
  KHR_texture_basisu: true,
366
370
  KHR_texture_transform: true,
367
371
  WEB3D_quantized_attributes: true,
@@ -2,7 +2,6 @@ import Buffer from "../../Renderer/Buffer.js";
2
2
  import BufferUsage from "../../Renderer/BufferUsage.js";
3
3
  import Color from "../../Core/Color.js";
4
4
  import ComponentDatatype from "../../Core/ComponentDatatype.js";
5
- import defaultValue from "../../Core/defaultValue.js";
6
5
  import defined from "../../Core/defined.js";
7
6
  import ShaderDestination from "../../Renderer/ShaderDestination.js";
8
7
  import ModelType from "./ModelType.js";
@@ -152,7 +151,7 @@ function processPickTexture(renderResources, primitive, instances) {
152
151
 
153
152
  const batchTexture = featureTable.batchTexture;
154
153
  renderResources.uniformMap.model_pickTexture = function () {
155
- return defaultValue(batchTexture.pickTexture, batchTexture.defaultTexture);
154
+ return batchTexture.pickTexture ?? batchTexture.defaultTexture;
156
155
  };
157
156
 
158
157
  // The feature ID is ignored if it is greater than the number of features.
@@ -3,7 +3,7 @@ import Cartesian3 from "../../Core/Cartesian3.js";
3
3
  import Color from "../../Core/Color.js";
4
4
  import Check from "../../Core/Check.js";
5
5
  import ComponentDatatype from "../../Core/ComponentDatatype.js";
6
- import defaultValue from "../../Core/defaultValue.js";
6
+ import Frozen from "../../Core/Frozen.js";
7
7
  import defined from "../../Core/defined.js";
8
8
  import DeveloperError from "../../Core/DeveloperError.js";
9
9
  import Matrix4 from "../../Core/Matrix4.js";
@@ -48,10 +48,10 @@ const MetallicRoughness = ModelComponents.MetallicRoughness;
48
48
  * @param {boolean} [options.loadAttributesFor2D=false] If true, load the positions buffer as a typed array for accurately projecting models to 2D.
49
49
  */
50
50
  function PntsLoader(options) {
51
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
51
+ options = options ?? Frozen.EMPTY_OBJECT;
52
52
 
53
53
  const arrayBuffer = options.arrayBuffer;
54
- const byteOffset = defaultValue(options.byteOffset, 0);
54
+ const byteOffset = options.byteOffset ?? 0;
55
55
 
56
56
  //>>includeStart('debug', pragmas.debug);
57
57
  Check.typeOf.object("options.arrayBuffer", arrayBuffer);
@@ -59,7 +59,7 @@ function PntsLoader(options) {
59
59
 
60
60
  this._arrayBuffer = arrayBuffer;
61
61
  this._byteOffset = byteOffset;
62
- this._loadAttributesFor2D = defaultValue(options.loadAttributesFor2D, false);
62
+ this._loadAttributesFor2D = options.loadAttributesFor2D ?? false;
63
63
 
64
64
  this._parsedContent = undefined;
65
65
  this._decodePromise = undefined;
@@ -416,7 +416,7 @@ function makeAttribute(loader, attributeInfo, context) {
416
416
  attribute.setIndex = attributeInfo.setIndex;
417
417
  attribute.componentDatatype = attributeInfo.componentDatatype;
418
418
  attribute.type = attributeInfo.type;
419
- attribute.normalized = defaultValue(attributeInfo.normalized, false);
419
+ attribute.normalized = attributeInfo.normalized ?? false;
420
420
  attribute.min = attributeInfo.min;
421
421
  attribute.max = attributeInfo.max;
422
422
  attribute.quantization = quantization;
@@ -556,7 +556,7 @@ function makeStructuralMetadata(parsedContent, customAttributeOutput) {
556
556
  const parseAsPropertyAttributes = !defined(parsedContent.batchIds);
557
557
 
558
558
  if (defined(batchTableBinary) || parsedContent.hasDracoBatchTable) {
559
- const count = defaultValue(batchLength, pointsLength);
559
+ const count = batchLength ?? pointsLength;
560
560
  return parseBatchTable({
561
561
  count: count,
562
562
  batchTable: parsedContent.batchTableJson,