@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,6 +1,6 @@
1
1
  import Check from "./Check.js";
2
2
  import Credit from "./Credit.js";
3
- import defaultValue from "./defaultValue.js";
3
+ import Frozen from "./Frozen.js";
4
4
  import defined from "./defined.js";
5
5
  import Event from "./Event.js";
6
6
  import GeographicTilingScheme from "./GeographicTilingScheme.js";
@@ -97,7 +97,7 @@ TerrainCache.prototype.tidy = function () {
97
97
  * @see {@link http://www.w3.org/TR/cors/|Cross-Origin Resource Sharing}
98
98
  */
99
99
  function GoogleEarthEnterpriseTerrainProvider(options) {
100
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
100
+ options = options ?? Frozen.EMPTY_OBJECT;
101
101
 
102
102
  this._tilingScheme = new GeographicTilingScheme({
103
103
  numberOfLevelZeroTilesX: 2,
@@ -222,7 +222,7 @@ Object.defineProperties(GoogleEarthEnterpriseTerrainProvider.prototype, {
222
222
  * at points and in rectangles. This property may be undefined if availability
223
223
  * information is not available.
224
224
  * @memberof GoogleEarthEnterpriseTerrainProvider.prototype
225
- * @type {TileAvailability}
225
+ * @type {TileAvailability|undefined}
226
226
  * @readonly
227
227
  */
228
228
  availability: {
@@ -1,6 +1,6 @@
1
1
  import Check from "./Check.js";
2
2
  import Credit from "./Credit.js";
3
- import defaultValue from "./defaultValue.js";
3
+ import Frozen from "./Frozen.js";
4
4
  import Rectangle from "./Rectangle.js";
5
5
  import Resource from "./Resource.js";
6
6
  import defined from "./defined.js";
@@ -21,7 +21,7 @@ const CREDIT_HTML = `<img alt="Google" src="https://assets.ion.cesium.com/google
21
21
  * @param {string} options.key An API key to use with the Google geocoding service
22
22
  */
23
23
  function GoogleGeocoderService(options) {
24
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
24
+ options = options ?? Frozen.EMPTY_OBJECT;
25
25
  const key = options.key;
26
26
  //>>includeStart('debug', pragmas.debug);
27
27
  if (!defined(key)) {
@@ -1,5 +1,4 @@
1
1
  import Check from "./Check.js";
2
- import defaultValue from "./defaultValue.js";
3
2
  import DeveloperError from "./DeveloperError.js";
4
3
  import isLeapYear from "./isLeapYear.js";
5
4
 
@@ -40,14 +39,14 @@ function GregorianDate(
40
39
  const minimumSecond = 0;
41
40
  const minimumMillisecond = 0;
42
41
 
43
- year = defaultValue(year, minimumYear);
44
- month = defaultValue(month, minimumMonth);
45
- day = defaultValue(day, minimumDay);
46
- hour = defaultValue(hour, minimumHour);
47
- minute = defaultValue(minute, minimumMinute);
48
- second = defaultValue(second, minimumSecond);
49
- millisecond = defaultValue(millisecond, minimumMillisecond);
50
- isLeapSecond = defaultValue(isLeapSecond, false);
42
+ year = year ?? minimumYear;
43
+ month = month ?? minimumMonth;
44
+ day = day ?? minimumDay;
45
+ hour = hour ?? minimumHour;
46
+ minute = minute ?? minimumMinute;
47
+ second = second ?? minimumSecond;
48
+ millisecond = millisecond ?? minimumMillisecond;
49
+ isLeapSecond = isLeapSecond ?? false;
51
50
  //>>includeStart('debug', pragmas.debug);
52
51
  validateRange();
53
52
  validateDate();
@@ -6,7 +6,7 @@ import Cartesian3 from "./Cartesian3.js";
6
6
  import Cartographic from "./Cartographic.js";
7
7
  import Check from "./Check.js";
8
8
  import ComponentDatatype from "./ComponentDatatype.js";
9
- import defaultValue from "./defaultValue.js";
9
+ import Frozen from "./Frozen.js";
10
10
  import defined from "./defined.js";
11
11
  import DeveloperError from "./DeveloperError.js";
12
12
  import Ellipsoid from "./Ellipsoid.js";
@@ -72,7 +72,7 @@ const WALL_INITIAL_MAX_HEIGHT = 1000.0;
72
72
  * });
73
73
  */
74
74
  function GroundPolylineGeometry(options) {
75
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
75
+ options = options ?? Frozen.EMPTY_OBJECT;
76
76
  const positions = options.positions;
77
77
 
78
78
  //>>includeStart('debug', pragmas.debug);
@@ -94,7 +94,7 @@ function GroundPolylineGeometry(options) {
94
94
  * The screen space width in pixels.
95
95
  * @type {number}
96
96
  */
97
- this.width = defaultValue(options.width, 1.0); // Doesn't get packed, not necessary for computing geometry.
97
+ this.width = options.width ?? 1.0; // Doesn't get packed, not necessary for computing geometry.
98
98
 
99
99
  this._positions = positions;
100
100
 
@@ -104,7 +104,7 @@ function GroundPolylineGeometry(options) {
104
104
  * @type {boolean}
105
105
  * @default 9999.0
106
106
  */
107
- this.granularity = defaultValue(options.granularity, 9999.0);
107
+ this.granularity = options.granularity ?? 9999.0;
108
108
 
109
109
  /**
110
110
  * Whether during geometry creation a line segment will be added between the last and first line positions to make this Polyline a loop.
@@ -112,14 +112,14 @@ function GroundPolylineGeometry(options) {
112
112
  * @type {boolean}
113
113
  * @default false
114
114
  */
115
- this.loop = defaultValue(options.loop, false);
115
+ this.loop = options.loop ?? false;
116
116
 
117
117
  /**
118
118
  * The type of path the polyline must follow. Valid options are {@link ArcType.GEODESIC} and {@link ArcType.RHUMB}.
119
119
  * @type {ArcType}
120
120
  * @default ArcType.GEODESIC
121
121
  */
122
- this.arcType = defaultValue(options.arcType, ArcType.GEODESIC);
122
+ this.arcType = options.arcType ?? ArcType.GEODESIC;
123
123
 
124
124
  this._ellipsoid = Ellipsoid.default;
125
125
 
@@ -297,7 +297,7 @@ GroundPolylineGeometry.pack = function (value, array, startingIndex) {
297
297
  Check.defined("array", array);
298
298
  //>>includeEnd('debug');
299
299
 
300
- let index = defaultValue(startingIndex, 0);
300
+ let index = startingIndex ?? 0;
301
301
 
302
302
  const positions = value._positions;
303
303
  const positionsLength = positions.length;
@@ -335,7 +335,7 @@ GroundPolylineGeometry.unpack = function (array, startingIndex, result) {
335
335
  Check.defined("array", array);
336
336
  //>>includeEnd('debug');
337
337
 
338
- let index = defaultValue(startingIndex, 0);
338
+ let index = startingIndex ?? 0;
339
339
  const positionsLength = array[index++];
340
340
  const positions = new Array(positionsLength);
341
341
 
@@ -1,4 +1,3 @@
1
- import defaultValue from "./defaultValue.js";
2
1
  import defined from "./defined.js";
3
2
 
4
3
  /**
@@ -19,7 +18,7 @@ function HeadingPitchRange(heading, pitch, range) {
19
18
  * @type {number}
20
19
  * @default 0.0
21
20
  */
22
- this.heading = defaultValue(heading, 0.0);
21
+ this.heading = heading ?? 0.0;
23
22
 
24
23
  /**
25
24
  * Pitch is the rotation from the local xy-plane. Positive pitch angles
@@ -27,14 +26,14 @@ function HeadingPitchRange(heading, pitch, range) {
27
26
  * @type {number}
28
27
  * @default 0.0
29
28
  */
30
- this.pitch = defaultValue(pitch, 0.0);
29
+ this.pitch = pitch ?? 0.0;
31
30
 
32
31
  /**
33
32
  * Range is the distance from the center of the local frame.
34
33
  * @type {number}
35
34
  * @default 0.0
36
35
  */
37
- this.range = defaultValue(range, 0.0);
36
+ this.range = range ?? 0.0;
38
37
  }
39
38
 
40
39
  /**
@@ -1,4 +1,3 @@
1
- import defaultValue from "./defaultValue.js";
2
1
  import defined from "./defined.js";
3
2
  import DeveloperError from "./DeveloperError.js";
4
3
  import CesiumMath from "./Math.js";
@@ -20,19 +19,19 @@ function HeadingPitchRoll(heading, pitch, roll) {
20
19
  * @type {number}
21
20
  * @default 0.0
22
21
  */
23
- this.heading = defaultValue(heading, 0.0);
22
+ this.heading = heading ?? 0.0;
24
23
  /**
25
24
  * Gets or sets the pitch.
26
25
  * @type {number}
27
26
  * @default 0.0
28
27
  */
29
- this.pitch = defaultValue(pitch, 0.0);
28
+ this.pitch = pitch ?? 0.0;
30
29
  /**
31
30
  * Gets or sets the roll.
32
31
  * @type {number}
33
32
  * @default 0.0
34
33
  */
35
- this.roll = defaultValue(roll, 0.0);
34
+ this.roll = roll ?? 0.0;
36
35
  }
37
36
 
38
37
  /**
@@ -1,5 +1,4 @@
1
1
  import Check from "./Check.js";
2
- import defaultValue from "./defaultValue.js";
3
2
  import defined from "./defined.js";
4
3
 
5
4
  /**
@@ -108,7 +107,7 @@ function swap(array, a, b) {
108
107
  * @param {number} [length] The length to resize internal array to. Defaults to the current length of the heap.
109
108
  */
110
109
  Heap.prototype.reserve = function (length) {
111
- length = defaultValue(length, this._length);
110
+ length = length ?? this._length;
112
111
  this._array.length = length;
113
112
  };
114
113
 
@@ -118,7 +117,7 @@ Heap.prototype.reserve = function (length) {
118
117
  * @param {number} [index=0] The starting index to heapify from.
119
118
  */
120
119
  Heap.prototype.heapify = function (index) {
121
- index = defaultValue(index, 0);
120
+ index = index ?? 0;
122
121
  const length = this._length;
123
122
  const comparator = this._comparator;
124
123
  const array = this._array;
@@ -208,7 +207,7 @@ Heap.prototype.insert = function (element) {
208
207
  * @returns {*} The specified element of the heap.
209
208
  */
210
209
  Heap.prototype.pop = function (index) {
211
- index = defaultValue(index, 0);
210
+ index = index ?? 0;
212
211
  if (this._length === 0) {
213
212
  return undefined;
214
213
  }
@@ -1,7 +1,7 @@
1
1
  import BoundingSphere from "./BoundingSphere.js";
2
2
  import Cartesian3 from "./Cartesian3.js";
3
3
  import Check from "./Check.js";
4
- import defaultValue from "./defaultValue.js";
4
+ import Frozen from "./Frozen.js";
5
5
  import defined from "./defined.js";
6
6
  import DeveloperError from "./DeveloperError.js";
7
7
  import GeographicProjection from "./GeographicProjection.js";
@@ -109,39 +109,29 @@ function HeightmapTerrainData(options) {
109
109
  this._buffer = options.buffer;
110
110
  this._width = options.width;
111
111
  this._height = options.height;
112
- this._childTileMask = defaultValue(options.childTileMask, 15);
113
- this._encoding = defaultValue(options.encoding, HeightmapEncoding.NONE);
112
+ this._childTileMask = options.childTileMask ?? 15;
113
+ this._encoding = options.encoding ?? HeightmapEncoding.NONE;
114
114
 
115
115
  const defaultStructure = HeightmapTessellator.DEFAULT_STRUCTURE;
116
116
  let structure = options.structure;
117
117
  if (!defined(structure)) {
118
118
  structure = defaultStructure;
119
119
  } else if (structure !== defaultStructure) {
120
- structure.heightScale = defaultValue(
121
- structure.heightScale,
122
- defaultStructure.heightScale,
123
- );
124
- structure.heightOffset = defaultValue(
125
- structure.heightOffset,
126
- defaultStructure.heightOffset,
127
- );
128
- structure.elementsPerHeight = defaultValue(
129
- structure.elementsPerHeight,
130
- defaultStructure.elementsPerHeight,
131
- );
132
- structure.stride = defaultValue(structure.stride, defaultStructure.stride);
133
- structure.elementMultiplier = defaultValue(
134
- structure.elementMultiplier,
135
- defaultStructure.elementMultiplier,
136
- );
137
- structure.isBigEndian = defaultValue(
138
- structure.isBigEndian,
139
- defaultStructure.isBigEndian,
140
- );
120
+ structure.heightScale =
121
+ structure.heightScale ?? defaultStructure.heightScale;
122
+ structure.heightOffset =
123
+ structure.heightOffset ?? defaultStructure.heightOffset;
124
+ structure.elementsPerHeight =
125
+ structure.elementsPerHeight ?? defaultStructure.elementsPerHeight;
126
+ structure.stride = structure.stride ?? defaultStructure.stride;
127
+ structure.elementMultiplier =
128
+ structure.elementMultiplier ?? defaultStructure.elementMultiplier;
129
+ structure.isBigEndian =
130
+ structure.isBigEndian ?? defaultStructure.isBigEndian;
141
131
  }
142
132
 
143
133
  this._structure = structure;
144
- this._createdByUpsampling = defaultValue(options.createdByUpsampling, false);
134
+ this._createdByUpsampling = options.createdByUpsampling ?? false;
145
135
  this._waterMask = options.waterMask;
146
136
 
147
137
  this._skirtHeight = undefined;
@@ -168,7 +158,7 @@ Object.defineProperties(HeightmapTerrainData.prototype, {
168
158
  * Uint8Array or image where a value of 255 indicates water and a value of 0 indicates land.
169
159
  * Values in between 0 and 255 are allowed as well to smoothly blend between land and water.
170
160
  * @memberof HeightmapTerrainData.prototype
171
- * @type {Uint8Array|HTMLImageElement|HTMLCanvasElement}
161
+ * @type {Uint8Array|HTMLImageElement|HTMLCanvasElement|undefined}
172
162
  */
173
163
  waterMask: {
174
164
  get: function () {
@@ -208,7 +198,7 @@ const createMeshTaskProcessorThrottle = new TaskProcessor(
208
198
  * be retried later.
209
199
  */
210
200
  HeightmapTerrainData.prototype.createMesh = function (options) {
211
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
201
+ options = options ?? Frozen.EMPTY_OBJECT;
212
202
 
213
203
  //>>includeStart('debug', pragmas.debug);
214
204
  Check.typeOf.object("options.tilingScheme", options.tilingScheme);
@@ -221,12 +211,9 @@ HeightmapTerrainData.prototype.createMesh = function (options) {
221
211
  const x = options.x;
222
212
  const y = options.y;
223
213
  const level = options.level;
224
- const exaggeration = defaultValue(options.exaggeration, 1.0);
225
- const exaggerationRelativeHeight = defaultValue(
226
- options.exaggerationRelativeHeight,
227
- 0.0,
228
- );
229
- const throttle = defaultValue(options.throttle, true);
214
+ const exaggeration = options.exaggeration ?? 1.0;
215
+ const exaggerationRelativeHeight = options.exaggerationRelativeHeight ?? 0.0;
216
+ const throttle = options.throttle ?? true;
230
217
 
231
218
  const ellipsoid = tilingScheme.ellipsoid;
232
219
  const nativeRectangle = tilingScheme.tileXYToNativeRectangle(x, y, level);
@@ -340,11 +327,8 @@ HeightmapTerrainData.prototype._createMeshSync = function (options) {
340
327
  const x = options.x;
341
328
  const y = options.y;
342
329
  const level = options.level;
343
- const exaggeration = defaultValue(options.exaggeration, 1.0);
344
- const exaggerationRelativeHeight = defaultValue(
345
- options.exaggerationRelativeHeight,
346
- 0.0,
347
- );
330
+ const exaggeration = options.exaggeration ?? 1.0;
331
+ const exaggerationRelativeHeight = options.exaggerationRelativeHeight ?? 0.0;
348
332
 
349
333
  const ellipsoid = tilingScheme.ellipsoid;
350
334
  const nativeRectangle = tilingScheme.tileXYToNativeRectangle(x, y, level);
@@ -2,7 +2,6 @@ import AxisAlignedBoundingBox from "./AxisAlignedBoundingBox.js";
2
2
  import BoundingSphere from "./BoundingSphere.js";
3
3
  import Cartesian2 from "./Cartesian2.js";
4
4
  import Cartesian3 from "./Cartesian3.js";
5
- import defaultValue from "./defaultValue.js";
6
5
  import defined from "./defined.js";
7
6
  import DeveloperError from "./DeveloperError.js";
8
7
  import Ellipsoid from "./Ellipsoid.js";
@@ -148,8 +147,8 @@ HeightmapTessellator.computeVertices = function (options) {
148
147
  const skirtHeight = options.skirtHeight;
149
148
  const hasSkirts = skirtHeight > 0.0;
150
149
 
151
- const isGeographic = defaultValue(options.isGeographic, true);
152
- const ellipsoid = defaultValue(options.ellipsoid, Ellipsoid.default);
150
+ const isGeographic = options.isGeographic ?? true;
151
+ const ellipsoid = options.ellipsoid ?? Ellipsoid.default;
153
152
 
154
153
  const oneOverGlobeSemimajorAxis = 1.0 / ellipsoid.maximumRadius;
155
154
 
@@ -187,44 +186,29 @@ HeightmapTessellator.computeVertices = function (options) {
187
186
  let relativeToCenter = options.relativeToCenter;
188
187
  const hasRelativeToCenter = defined(relativeToCenter);
189
188
  relativeToCenter = hasRelativeToCenter ? relativeToCenter : Cartesian3.ZERO;
190
- const includeWebMercatorT = defaultValue(options.includeWebMercatorT, false);
189
+ const includeWebMercatorT = options.includeWebMercatorT ?? false;
191
190
 
192
- const exaggeration = defaultValue(options.exaggeration, 1.0);
193
- const exaggerationRelativeHeight = defaultValue(
194
- options.exaggerationRelativeHeight,
195
- 0.0,
196
- );
191
+ const exaggeration = options.exaggeration ?? 1.0;
192
+ const exaggerationRelativeHeight = options.exaggerationRelativeHeight ?? 0.0;
197
193
  const hasExaggeration = exaggeration !== 1.0;
198
194
  const includeGeodeticSurfaceNormals = hasExaggeration;
199
195
 
200
- const structure = defaultValue(
201
- options.structure,
202
- HeightmapTessellator.DEFAULT_STRUCTURE,
203
- );
204
- const heightScale = defaultValue(
205
- structure.heightScale,
206
- HeightmapTessellator.DEFAULT_STRUCTURE.heightScale,
207
- );
208
- const heightOffset = defaultValue(
209
- structure.heightOffset,
210
- HeightmapTessellator.DEFAULT_STRUCTURE.heightOffset,
211
- );
212
- const elementsPerHeight = defaultValue(
213
- structure.elementsPerHeight,
214
- HeightmapTessellator.DEFAULT_STRUCTURE.elementsPerHeight,
215
- );
216
- const stride = defaultValue(
217
- structure.stride,
218
- HeightmapTessellator.DEFAULT_STRUCTURE.stride,
219
- );
220
- const elementMultiplier = defaultValue(
221
- structure.elementMultiplier,
222
- HeightmapTessellator.DEFAULT_STRUCTURE.elementMultiplier,
223
- );
224
- const isBigEndian = defaultValue(
225
- structure.isBigEndian,
226
- HeightmapTessellator.DEFAULT_STRUCTURE.isBigEndian,
227
- );
196
+ const structure = options.structure ?? HeightmapTessellator.DEFAULT_STRUCTURE;
197
+ const heightScale =
198
+ structure.heightScale ?? HeightmapTessellator.DEFAULT_STRUCTURE.heightScale;
199
+ const heightOffset =
200
+ structure.heightOffset ??
201
+ HeightmapTessellator.DEFAULT_STRUCTURE.heightOffset;
202
+ const elementsPerHeight =
203
+ structure.elementsPerHeight ??
204
+ HeightmapTessellator.DEFAULT_STRUCTURE.elementsPerHeight;
205
+ const stride =
206
+ structure.stride ?? HeightmapTessellator.DEFAULT_STRUCTURE.stride;
207
+ const elementMultiplier =
208
+ structure.elementMultiplier ??
209
+ HeightmapTessellator.DEFAULT_STRUCTURE.elementMultiplier;
210
+ const isBigEndian =
211
+ structure.isBigEndian ?? HeightmapTessellator.DEFAULT_STRUCTURE.isBigEndian;
228
212
 
229
213
  let rectangleWidth = Rectangle.computeWidth(nativeRectangle);
230
214
  let rectangleHeight = Rectangle.computeHeight(nativeRectangle);
@@ -1,4 +1,3 @@
1
- import defaultValue from "./defaultValue.js";
2
1
  import defined from "./defined.js";
3
2
  import DeveloperError from "./DeveloperError.js";
4
3
  import CesiumMath from "./Math.js";
@@ -83,7 +82,7 @@ HermitePolynomialApproximation.getRequiredDataPoints = function (
83
82
  degree,
84
83
  inputOrder,
85
84
  ) {
86
- inputOrder = defaultValue(inputOrder, 0);
85
+ inputOrder = inputOrder ?? 0;
87
86
 
88
87
  //>>includeStart('debug', pragmas.debug);
89
88
  if (!defined(degree)) {
@@ -1,6 +1,6 @@
1
1
  import Cartesian3 from "./Cartesian3.js";
2
2
  import Cartesian4 from "./Cartesian4.js";
3
- import defaultValue from "./defaultValue.js";
3
+ import Frozen from "./Frozen.js";
4
4
  import defined from "./defined.js";
5
5
  import DeveloperError from "./DeveloperError.js";
6
6
  import LinearSpline from "./LinearSpline.js";
@@ -167,7 +167,7 @@ function generateNatural(points) {
167
167
  * @see MorphWeightSpline
168
168
  */
169
169
  function HermiteSpline(options) {
170
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
170
+ options = options ?? Frozen.EMPTY_OBJECT;
171
171
 
172
172
  const points = options.points;
173
173
  const times = options.times;
@@ -320,7 +320,7 @@ Object.defineProperties(HermiteSpline.prototype, {
320
320
  * });
321
321
  */
322
322
  HermiteSpline.createC1 = function (options) {
323
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
323
+ options = options ?? Frozen.EMPTY_OBJECT;
324
324
 
325
325
  const times = options.times;
326
326
  const points = options.points;
@@ -380,7 +380,7 @@ HermiteSpline.createC1 = function (options) {
380
380
  * });
381
381
  */
382
382
  HermiteSpline.createNaturalCubic = function (options) {
383
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
383
+ options = options ?? Frozen.EMPTY_OBJECT;
384
384
 
385
385
  const times = options.times;
386
386
  const points = options.points;
@@ -450,7 +450,7 @@ HermiteSpline.createNaturalCubic = function (options) {
450
450
  * });
451
451
  */
452
452
  HermiteSpline.createClampedCubic = function (options) {
453
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
453
+ options = options ?? Frozen.EMPTY_OBJECT;
454
454
 
455
455
  const times = options.times;
456
456
  const points = options.points;
@@ -56,12 +56,51 @@ ITwinPlatform.RealityDataType = Object.freeze({
56
56
  /**
57
57
  * Gets or sets the default iTwin access token. This token should have the <code>itwin-platform</code> scope.
58
58
  *
59
+ * This value will be ignored if {@link ITwinPlatform.defaultShareKey} is defined.
60
+ *
59
61
  * @experimental This feature is not final and is subject to change without Cesium's standard deprecation policy.
60
62
  *
61
63
  * @type {string|undefined}
62
64
  */
63
65
  ITwinPlatform.defaultAccessToken = undefined;
64
66
 
67
+ /**
68
+ * Gets or sets the default iTwin share key. If this value is provided it will override {@link ITwinPlatform.defaultAccessToken} in all requests.
69
+ *
70
+ * Share keys can be generated using the iTwin Shares api
71
+ * https://developer.bentley.com/apis/access-control-v2/operations/create-itwin-share/
72
+ *
73
+ * @experimental This feature is not final and is subject to change without Cesium's standard deprecation policy.
74
+ *
75
+ * @type {string|undefined}
76
+ */
77
+ ITwinPlatform.defaultShareKey = undefined;
78
+
79
+ /**
80
+ * Create the necessary Authorization header based on which key/token is set.
81
+ * If the {@link ITwinPlatform.defaultShareKey} is set it takes precedence and
82
+ * will be used regardless if the {@link ITwinPlatform.defaultAccessToken} is set
83
+ * @private
84
+ * @returns {string} full auth header with basic/bearer method
85
+ */
86
+ ITwinPlatform._getAuthorizationHeader = function () {
87
+ //>>includeStart('debug', pragmas.debug);
88
+ if (
89
+ !defined(ITwinPlatform.defaultAccessToken) &&
90
+ !defined(ITwinPlatform.defaultShareKey)
91
+ ) {
92
+ throw new DeveloperError(
93
+ "Must set ITwinPlatform.defaultAccessToken or ITwinPlatform.defaultShareKey first",
94
+ );
95
+ }
96
+ //>>includeEnd('debug');
97
+
98
+ if (defined(ITwinPlatform.defaultShareKey)) {
99
+ return `Basic ${ITwinPlatform.defaultShareKey}`;
100
+ }
101
+ return `Bearer ${ITwinPlatform.defaultAccessToken}`;
102
+ };
103
+
65
104
  /**
66
105
  * Gets or sets the default iTwin API endpoint.
67
106
  *
@@ -121,15 +160,20 @@ ITwinPlatform.apiEndpoint = new Resource({
121
160
  ITwinPlatform.getExports = async function (iModelId) {
122
161
  //>>includeStart('debug', pragmas.debug);
123
162
  Check.typeOf.string("iModelId", iModelId);
124
- if (!defined(ITwinPlatform.defaultAccessToken)) {
125
- throw new DeveloperError("Must set ITwinPlatform.defaultAccessToken first");
163
+ if (
164
+ !defined(ITwinPlatform.defaultAccessToken) &&
165
+ !defined(ITwinPlatform.defaultShareKey)
166
+ ) {
167
+ throw new DeveloperError(
168
+ "Must set ITwinPlatform.defaultAccessToken or ITwinPlatform.defaultShareKey first",
169
+ );
126
170
  }
127
- //>>includeEnd('debug')
171
+ //>>includeEnd('debug');
128
172
 
129
173
  const resource = new Resource({
130
174
  url: `${ITwinPlatform.apiEndpoint}mesh-export`,
131
175
  headers: {
132
- Authorization: `Bearer ${ITwinPlatform.defaultAccessToken}`,
176
+ Authorization: ITwinPlatform._getAuthorizationHeader(),
133
177
  Accept: "application/vnd.bentley.itwin-platform.v1+json",
134
178
  Prefer: "return=representation",
135
179
  },
@@ -213,15 +257,20 @@ ITwinPlatform.getRealityDataMetadata = async function (iTwinId, realityDataId) {
213
257
  //>>includeStart('debug', pragmas.debug);
214
258
  Check.typeOf.string("iTwinId", iTwinId);
215
259
  Check.typeOf.string("realityDataId", realityDataId);
216
- if (!defined(ITwinPlatform.defaultAccessToken)) {
217
- throw new DeveloperError("Must set ITwinPlatform.defaultAccessToken first");
260
+ if (
261
+ !defined(ITwinPlatform.defaultAccessToken) &&
262
+ !defined(ITwinPlatform.defaultShareKey)
263
+ ) {
264
+ throw new DeveloperError(
265
+ "Must set ITwinPlatform.defaultAccessToken or ITwinPlatform.defaultShareKey first",
266
+ );
218
267
  }
219
- //>>includeEnd('debug')
268
+ //>>includeEnd('debug');
220
269
 
221
270
  const resource = new Resource({
222
271
  url: `${ITwinPlatform.apiEndpoint}reality-management/reality-data/${realityDataId}`,
223
272
  headers: {
224
- Authorization: `Bearer ${ITwinPlatform.defaultAccessToken}`,
273
+ Authorization: ITwinPlatform._getAuthorizationHeader(),
225
274
  Accept: "application/vnd.bentley.itwin-platform.v1+json",
226
275
  },
227
276
  queryParameters: { iTwinId: iTwinId },
@@ -275,15 +324,20 @@ ITwinPlatform.getRealityDataURL = async function (
275
324
  Check.typeOf.string("iTwinId", iTwinId);
276
325
  Check.typeOf.string("realityDataId", realityDataId);
277
326
  Check.typeOf.string("rootDocument", rootDocument);
278
- if (!defined(ITwinPlatform.defaultAccessToken)) {
279
- throw new DeveloperError("Must set ITwinPlatform.defaultAccessToken first");
327
+ if (
328
+ !defined(ITwinPlatform.defaultAccessToken) &&
329
+ !defined(ITwinPlatform.defaultShareKey)
330
+ ) {
331
+ throw new DeveloperError(
332
+ "Must set ITwinPlatform.defaultAccessToken or ITwinPlatform.defaultShareKey first",
333
+ );
280
334
  }
281
- //>>includeEnd('debug')
335
+ //>>includeEnd('debug');
282
336
 
283
337
  const resource = new Resource({
284
338
  url: `${ITwinPlatform.apiEndpoint}reality-management/reality-data/${realityDataId}/readaccess`,
285
339
  headers: {
286
- Authorization: `Bearer ${ITwinPlatform.defaultAccessToken}`,
340
+ Authorization: ITwinPlatform._getAuthorizationHeader(),
287
341
  Accept: "application/vnd.bentley.itwin-platform.v1+json",
288
342
  },
289
343
  queryParameters: { iTwinId: iTwinId },
@@ -1,5 +1,5 @@
1
1
  import buildModuleUrl from "./buildModuleUrl.js";
2
- import defaultValue from "./defaultValue.js";
2
+ import Frozen from "./Frozen.js";
3
3
  import defined from "./defined.js";
4
4
  import Iau2006XysSample from "./Iau2006XysSample.js";
5
5
  import JulianDate from "./JulianDate.js";
@@ -26,24 +26,22 @@ import TimeStandard from "./TimeStandard.js";
26
26
  * @private
27
27
  */
28
28
  function Iau2006XysData(options) {
29
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
29
+ options = options ?? Frozen.EMPTY_OBJECT;
30
30
 
31
31
  this._xysFileUrlTemplate = Resource.createIfNeeded(
32
32
  options.xysFileUrlTemplate,
33
33
  );
34
- this._interpolationOrder = defaultValue(options.interpolationOrder, 9);
35
- this._sampleZeroJulianEphemerisDate = defaultValue(
36
- options.sampleZeroJulianEphemerisDate,
37
- 2442396.5,
38
- );
34
+ this._interpolationOrder = options.interpolationOrder ?? 9;
35
+ this._sampleZeroJulianEphemerisDate =
36
+ options.sampleZeroJulianEphemerisDate ?? 2442396.5;
39
37
  this._sampleZeroDateTT = new JulianDate(
40
38
  this._sampleZeroJulianEphemerisDate,
41
39
  0.0,
42
40
  TimeStandard.TAI,
43
41
  );
44
- this._stepSizeDays = defaultValue(options.stepSizeDays, 1.0);
45
- this._samplesPerXysFile = defaultValue(options.samplesPerXysFile, 1000);
46
- this._totalSamples = defaultValue(options.totalSamples, 27426);
42
+ this._stepSizeDays = options.stepSizeDays ?? 1.0;
43
+ this._samplesPerXysFile = options.samplesPerXysFile ?? 1000;
44
+ this._totalSamples = options.totalSamples ?? 27426;
47
45
  this._samples = new Array(this._totalSamples * 3);
48
46
  this._chunkDownloadsInProgress = [];
49
47