@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,5 @@
1
1
  import BoundingSphere from "./BoundingSphere.js";
2
2
  import Cartesian3 from "./Cartesian3.js";
3
- import defaultValue from "./defaultValue.js";
4
3
  import defined from "./defined.js";
5
4
  import DeveloperError from "./DeveloperError.js";
6
5
  import Ellipsoid from "./Ellipsoid.js";
@@ -507,7 +506,7 @@ Occluder.computeOccludeePointFromRectangle = function (rectangle, ellipsoid) {
507
506
  }
508
507
  //>>includeEnd('debug');
509
508
 
510
- ellipsoid = defaultValue(ellipsoid, Ellipsoid.default);
509
+ ellipsoid = ellipsoid ?? Ellipsoid.default;
511
510
  const positions = Rectangle.subsample(
512
511
  rectangle,
513
512
  ellipsoid,
@@ -1,6 +1,5 @@
1
1
  import Check from "./Check.js";
2
2
  import ComponentDatatype from "./ComponentDatatype.js";
3
- import defaultValue from "./defaultValue.js";
4
3
  import defined from "./defined.js";
5
4
 
6
5
  /**
@@ -19,9 +18,9 @@ import defined from "./defined.js";
19
18
  * @see GeometryInstanceAttribute
20
19
  */
21
20
  function OffsetGeometryInstanceAttribute(x, y, z) {
22
- x = defaultValue(x, 0);
23
- y = defaultValue(y, 0);
24
- z = defaultValue(z, 0);
21
+ x = x ?? 0;
22
+ y = y ?? 0;
23
+ z = z ?? 0;
25
24
 
26
25
  /**
27
26
  * The values for the attributes stored in a typed array.
@@ -2,7 +2,6 @@ import Cartesian3 from "./Cartesian3.js";
2
2
  import Check from "./Check.js";
3
3
  import combine from "./combine.js";
4
4
  import Credit from "./Credit.js";
5
- import defaultValue from "./defaultValue.js";
6
5
  import defined from "./defined.js";
7
6
  import Rectangle from "./Rectangle.js";
8
7
  import Resource from "./Resource.js";
@@ -48,7 +47,7 @@ function OpenCageGeocoderService(url, apiKey, params) {
48
47
  url.appendForwardSlash();
49
48
  url.setQueryParameters({ key: apiKey });
50
49
  this._url = url;
51
- this._params = defaultValue(params, {});
50
+ this._params = params ?? {};
52
51
  this._credit = new Credit(
53
52
  `Geodata copyright <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors`,
54
53
  false,
@@ -3,7 +3,6 @@ import Cartesian2 from "./Cartesian2.js";
3
3
  import Cartesian3 from "./Cartesian3.js";
4
4
  import Cartographic from "./Cartographic.js";
5
5
  import Check from "./Check.js";
6
- import defaultValue from "./defaultValue.js";
7
6
  import defined from "./defined.js";
8
7
  import DeveloperError from "./DeveloperError.js";
9
8
  import Ellipsoid from "./Ellipsoid.js";
@@ -44,7 +43,7 @@ function OrientedBoundingBox(center, halfAxes) {
44
43
  * @type {Cartesian3}
45
44
  * @default {@link Cartesian3.ZERO}
46
45
  */
47
- this.center = Cartesian3.clone(defaultValue(center, Cartesian3.ZERO));
46
+ this.center = Cartesian3.clone(center ?? Cartesian3.ZERO);
48
47
  /**
49
48
  * The three orthogonal half-axes of the bounding box. Equivalently, the
50
49
  * transformation matrix, to rotate and scale a 2x2x2 cube centered at the
@@ -52,7 +51,7 @@ function OrientedBoundingBox(center, halfAxes) {
52
51
  * @type {Matrix3}
53
52
  * @default {@link Matrix3.ZERO}
54
53
  */
55
- this.halfAxes = Matrix3.clone(defaultValue(halfAxes, Matrix3.ZERO));
54
+ this.halfAxes = Matrix3.clone(halfAxes ?? Matrix3.ZERO);
56
55
  }
57
56
 
58
57
  /**
@@ -77,7 +76,7 @@ OrientedBoundingBox.pack = function (value, array, startingIndex) {
77
76
  Check.defined("array", array);
78
77
  //>>includeEnd('debug');
79
78
 
80
- startingIndex = defaultValue(startingIndex, 0);
79
+ startingIndex = startingIndex ?? 0;
81
80
 
82
81
  Cartesian3.pack(value.center, array, startingIndex);
83
82
  Matrix3.pack(value.halfAxes, array, startingIndex + Cartesian3.packedLength);
@@ -98,7 +97,7 @@ OrientedBoundingBox.unpack = function (array, startingIndex, result) {
98
97
  Check.defined("array", array);
99
98
  //>>includeEnd('debug');
100
99
 
101
- startingIndex = defaultValue(startingIndex, 0);
100
+ startingIndex = startingIndex ?? 0;
102
101
 
103
102
  if (!defined(result)) {
104
103
  result = new OrientedBoundingBox();
@@ -371,9 +370,9 @@ OrientedBoundingBox.fromRectangle = function (
371
370
  }
372
371
  //>>includeEnd('debug');
373
372
 
374
- minimumHeight = defaultValue(minimumHeight, 0.0);
375
- maximumHeight = defaultValue(maximumHeight, 0.0);
376
- ellipsoid = defaultValue(ellipsoid, Ellipsoid.default);
373
+ minimumHeight = minimumHeight ?? 0.0;
374
+ maximumHeight = maximumHeight ?? 0.0;
375
+ ellipsoid = ellipsoid ?? Ellipsoid.default;
377
376
 
378
377
  let minX, maxX, minY, maxY, minZ, maxZ, plane;
379
378
 
@@ -1,5 +1,5 @@
1
1
  import Check from "./Check.js";
2
- import defaultValue from "./defaultValue.js";
2
+ import Frozen from "./Frozen.js";
3
3
  import defined from "./defined.js";
4
4
  import DeveloperError from "./DeveloperError.js";
5
5
  import CesiumMath from "./Math.js";
@@ -28,7 +28,7 @@ import OrthographicOffCenterFrustum from "./OrthographicOffCenterFrustum.js";
28
28
  * frustum.far = 50.0 * maxRadii;
29
29
  */
30
30
  function OrthographicFrustum(options) {
31
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
31
+ options = options ?? Frozen.EMPTY_OBJECT;
32
32
 
33
33
  this._offCenterFrustum = new OrthographicOffCenterFrustum();
34
34
 
@@ -53,7 +53,7 @@ function OrthographicFrustum(options) {
53
53
  * @type {number}
54
54
  * @default 1.0
55
55
  */
56
- this.near = defaultValue(options.near, 1.0);
56
+ this.near = options.near ?? 1.0;
57
57
  this._near = this.near;
58
58
 
59
59
  /**
@@ -61,7 +61,7 @@ function OrthographicFrustum(options) {
61
61
  * @type {number}
62
62
  * @default 500000000.0;
63
63
  */
64
- this.far = defaultValue(options.far, 500000000.0);
64
+ this.far = options.far ?? 500000000.0;
65
65
  this._far = this.far;
66
66
  }
67
67
 
@@ -86,7 +86,7 @@ OrthographicFrustum.pack = function (value, array, startingIndex) {
86
86
  Check.defined("array", array);
87
87
  //>>includeEnd('debug');
88
88
 
89
- startingIndex = defaultValue(startingIndex, 0);
89
+ startingIndex = startingIndex ?? 0;
90
90
 
91
91
  array[startingIndex++] = value.width;
92
92
  array[startingIndex++] = value.aspectRatio;
@@ -109,7 +109,7 @@ OrthographicFrustum.unpack = function (array, startingIndex, result) {
109
109
  Check.defined("array", array);
110
110
  //>>includeEnd('debug');
111
111
 
112
- startingIndex = defaultValue(startingIndex, 0);
112
+ startingIndex = startingIndex ?? 0;
113
113
 
114
114
  if (!defined(result)) {
115
115
  result = new OrthographicFrustum();
@@ -1,7 +1,7 @@
1
1
  import Cartesian3 from "./Cartesian3.js";
2
2
  import Cartesian4 from "./Cartesian4.js";
3
3
  import CullingVolume from "./CullingVolume.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 CesiumMath from "./Math.js";
@@ -36,7 +36,7 @@ import Matrix4 from "./Matrix4.js";
36
36
  * frustum.far = 50.0 * maxRadii;
37
37
  */
38
38
  function OrthographicOffCenterFrustum(options) {
39
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
39
+ options = options ?? Frozen.EMPTY_OBJECT;
40
40
 
41
41
  /**
42
42
  * The left clipping plane.
@@ -75,7 +75,7 @@ function OrthographicOffCenterFrustum(options) {
75
75
  * @type {number}
76
76
  * @default 1.0
77
77
  */
78
- this.near = defaultValue(options.near, 1.0);
78
+ this.near = options.near ?? 1.0;
79
79
  this._near = this.near;
80
80
 
81
81
  /**
@@ -83,7 +83,7 @@ function OrthographicOffCenterFrustum(options) {
83
83
  * @type {number}
84
84
  * @default 500000000.0;
85
85
  */
86
- this.far = defaultValue(options.far, 500000000.0);
86
+ this.far = options.far ?? 500000000.0;
87
87
  this._far = this.far;
88
88
 
89
89
  this._cullingVolume = new CullingVolume();
@@ -1,5 +1,5 @@
1
1
  import Check from "./Check.js";
2
- import defaultValue from "./defaultValue.js";
2
+ import Frozen from "./Frozen.js";
3
3
  import defined from "./defined.js";
4
4
  import DeveloperError from "./DeveloperError.js";
5
5
  import CesiumMath from "./Math.js";
@@ -33,7 +33,7 @@ import PerspectiveOffCenterFrustum from "./PerspectiveOffCenterFrustum.js";
33
33
  * @see PerspectiveOffCenterFrustum
34
34
  */
35
35
  function PerspectiveFrustum(options) {
36
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
36
+ options = options ?? Frozen.EMPTY_OBJECT;
37
37
 
38
38
  this._offCenterFrustum = new PerspectiveOffCenterFrustum();
39
39
 
@@ -63,7 +63,7 @@ function PerspectiveFrustum(options) {
63
63
  * @type {number}
64
64
  * @default 1.0
65
65
  */
66
- this.near = defaultValue(options.near, 1.0);
66
+ this.near = options.near ?? 1.0;
67
67
  this._near = this.near;
68
68
 
69
69
  /**
@@ -71,7 +71,7 @@ function PerspectiveFrustum(options) {
71
71
  * @type {number}
72
72
  * @default 500000000.0
73
73
  */
74
- this.far = defaultValue(options.far, 500000000.0);
74
+ this.far = options.far ?? 500000000.0;
75
75
  this._far = this.far;
76
76
 
77
77
  /**
@@ -79,7 +79,7 @@ function PerspectiveFrustum(options) {
79
79
  * @type {number}
80
80
  * @default 0.0
81
81
  */
82
- this.xOffset = defaultValue(options.xOffset, 0.0);
82
+ this.xOffset = options.xOffset ?? 0.0;
83
83
  this._xOffset = this.xOffset;
84
84
 
85
85
  /**
@@ -87,7 +87,7 @@ function PerspectiveFrustum(options) {
87
87
  * @type {number}
88
88
  * @default 0.0
89
89
  */
90
- this.yOffset = defaultValue(options.yOffset, 0.0);
90
+ this.yOffset = options.yOffset ?? 0.0;
91
91
  this._yOffset = this.yOffset;
92
92
  }
93
93
 
@@ -112,7 +112,7 @@ PerspectiveFrustum.pack = function (value, array, startingIndex) {
112
112
  Check.defined("array", array);
113
113
  //>>includeEnd('debug');
114
114
 
115
- startingIndex = defaultValue(startingIndex, 0);
115
+ startingIndex = startingIndex ?? 0;
116
116
 
117
117
  array[startingIndex++] = value.fov;
118
118
  array[startingIndex++] = value.aspectRatio;
@@ -137,7 +137,7 @@ PerspectiveFrustum.unpack = function (array, startingIndex, result) {
137
137
  Check.defined("array", array);
138
138
  //>>includeEnd('debug');
139
139
 
140
- startingIndex = defaultValue(startingIndex, 0);
140
+ startingIndex = startingIndex ?? 0;
141
141
 
142
142
  if (!defined(result)) {
143
143
  result = new PerspectiveFrustum();
@@ -1,7 +1,7 @@
1
1
  import Cartesian3 from "./Cartesian3.js";
2
2
  import Cartesian4 from "./Cartesian4.js";
3
3
  import CullingVolume from "./CullingVolume.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 CesiumMath from "./Math.js";
@@ -37,7 +37,7 @@ import Matrix4 from "./Matrix4.js";
37
37
  * @see PerspectiveFrustum
38
38
  */
39
39
  function PerspectiveOffCenterFrustum(options) {
40
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
40
+ options = options ?? Frozen.EMPTY_OBJECT;
41
41
 
42
42
  /**
43
43
  * Defines the left clipping plane.
@@ -76,7 +76,7 @@ function PerspectiveOffCenterFrustum(options) {
76
76
  * @type {number}
77
77
  * @default 1.0
78
78
  */
79
- this.near = defaultValue(options.near, 1.0);
79
+ this.near = options.near ?? 1.0;
80
80
  this._near = this.near;
81
81
 
82
82
  /**
@@ -84,7 +84,7 @@ function PerspectiveOffCenterFrustum(options) {
84
84
  * @type {number}
85
85
  * @default 500000000.0
86
86
  */
87
- this.far = defaultValue(options.far, 500000000.0);
87
+ this.far = options.far ?? 500000000.0;
88
88
  this._far = this.far;
89
89
 
90
90
  this._cullingVolume = new CullingVolume();
@@ -2,7 +2,7 @@ import BoundingSphere from "./BoundingSphere.js";
2
2
  import Cartesian3 from "./Cartesian3.js";
3
3
  import Check from "./Check.js";
4
4
  import ComponentDatatype from "./ComponentDatatype.js";
5
- import defaultValue from "./defaultValue.js";
5
+ import Frozen from "./Frozen.js";
6
6
  import defined from "./defined.js";
7
7
  import Geometry from "./Geometry.js";
8
8
  import GeometryAttribute from "./GeometryAttribute.js";
@@ -25,9 +25,9 @@ import VertexFormat from "./VertexFormat.js";
25
25
  * });
26
26
  */
27
27
  function PlaneGeometry(options) {
28
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
28
+ options = options ?? Frozen.EMPTY_OBJECT;
29
29
 
30
- const vertexFormat = defaultValue(options.vertexFormat, VertexFormat.DEFAULT);
30
+ const vertexFormat = options.vertexFormat ?? VertexFormat.DEFAULT;
31
31
 
32
32
  this._vertexFormat = vertexFormat;
33
33
  this._workerName = "createPlaneGeometry";
@@ -54,7 +54,7 @@ PlaneGeometry.pack = function (value, array, startingIndex) {
54
54
  Check.defined("array", array);
55
55
  //>>includeEnd('debug');
56
56
 
57
- startingIndex = defaultValue(startingIndex, 0);
57
+ startingIndex = startingIndex ?? 0;
58
58
 
59
59
  VertexFormat.pack(value._vertexFormat, array, startingIndex);
60
60
 
@@ -79,7 +79,7 @@ PlaneGeometry.unpack = function (array, startingIndex, result) {
79
79
  Check.defined("array", array);
80
80
  //>>includeEnd('debug');
81
81
 
82
- startingIndex = defaultValue(startingIndex, 0);
82
+ startingIndex = startingIndex ?? 0;
83
83
 
84
84
  const vertexFormat = VertexFormat.unpack(
85
85
  array,
@@ -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";
@@ -690,19 +690,16 @@ function PolygonGeometry(options) {
690
690
  //>>includeEnd('debug');
691
691
 
692
692
  const polygonHierarchy = options.polygonHierarchy;
693
- const vertexFormat = defaultValue(options.vertexFormat, VertexFormat.DEFAULT);
694
- const ellipsoid = defaultValue(options.ellipsoid, Ellipsoid.default);
695
- const granularity = defaultValue(
696
- options.granularity,
697
- CesiumMath.RADIANS_PER_DEGREE,
698
- );
699
- const stRotation = defaultValue(options.stRotation, 0.0);
693
+ const vertexFormat = options.vertexFormat ?? VertexFormat.DEFAULT;
694
+ const ellipsoid = options.ellipsoid ?? Ellipsoid.default;
695
+ const granularity = options.granularity ?? CesiumMath.RADIANS_PER_DEGREE;
696
+ const stRotation = options.stRotation ?? 0.0;
700
697
  const textureCoordinates = options.textureCoordinates;
701
- const perPositionHeight = defaultValue(options.perPositionHeight, false);
698
+ const perPositionHeight = options.perPositionHeight ?? false;
702
699
  const perPositionHeightExtrude =
703
700
  perPositionHeight && defined(options.extrudedHeight);
704
- let height = defaultValue(options.height, 0.0);
705
- let extrudedHeight = defaultValue(options.extrudedHeight, height);
701
+ let height = options.height ?? 0.0;
702
+ let extrudedHeight = options.extrudedHeight ?? height;
706
703
 
707
704
  if (!perPositionHeightExtrude) {
708
705
  const h = Math.max(height, extrudedHeight);
@@ -716,15 +713,15 @@ function PolygonGeometry(options) {
716
713
  this._stRotation = stRotation;
717
714
  this._height = height;
718
715
  this._extrudedHeight = extrudedHeight;
719
- this._closeTop = defaultValue(options.closeTop, true);
720
- this._closeBottom = defaultValue(options.closeBottom, true);
716
+ this._closeTop = options.closeTop ?? true;
717
+ this._closeBottom = options.closeBottom ?? true;
721
718
  this._polygonHierarchy = polygonHierarchy;
722
719
  this._perPositionHeight = perPositionHeight;
723
720
  this._perPositionHeightExtrude = perPositionHeightExtrude;
724
- this._shadowVolume = defaultValue(options.shadowVolume, false);
721
+ this._shadowVolume = options.shadowVolume ?? false;
725
722
  this._workerName = "createPolygonGeometry";
726
723
  this._offsetAttribute = options.offsetAttribute;
727
- this._arcType = defaultValue(options.arcType, ArcType.GEODESIC);
724
+ this._arcType = options.arcType ?? ArcType.GEODESIC;
728
725
 
729
726
  this._rectangle = undefined;
730
727
  this._textureCoordinateRotationPoints = undefined;
@@ -784,7 +781,7 @@ function PolygonGeometry(options) {
784
781
  * @see PolygonGeometry#createGeometry
785
782
  */
786
783
  PolygonGeometry.fromPositions = function (options) {
787
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
784
+ options = options ?? Frozen.EMPTY_OBJECT;
788
785
 
789
786
  //>>includeStart('debug', pragmas.debug);
790
787
  Check.defined("options.positions", options.positions);
@@ -825,7 +822,7 @@ PolygonGeometry.pack = function (value, array, startingIndex) {
825
822
  Check.defined("array", array);
826
823
  //>>includeEnd('debug');
827
824
 
828
- startingIndex = defaultValue(startingIndex, 0);
825
+ startingIndex = startingIndex ?? 0;
829
826
 
830
827
  startingIndex = PolygonGeometryLibrary.packPolygonHierarchy(
831
828
  value._polygonHierarchy,
@@ -849,7 +846,7 @@ PolygonGeometry.pack = function (value, array, startingIndex) {
849
846
  array[startingIndex++] = value._closeTop ? 1.0 : 0.0;
850
847
  array[startingIndex++] = value._closeBottom ? 1.0 : 0.0;
851
848
  array[startingIndex++] = value._shadowVolume ? 1.0 : 0.0;
852
- array[startingIndex++] = defaultValue(value._offsetAttribute, -1);
849
+ array[startingIndex++] = value._offsetAttribute ?? -1;
853
850
  array[startingIndex++] = value._arcType;
854
851
  if (defined(value._textureCoordinates)) {
855
852
  startingIndex = PolygonGeometryLibrary.packPolygonHierarchy(
@@ -885,7 +882,7 @@ PolygonGeometry.unpack = function (array, startingIndex, result) {
885
882
  Check.defined("array", array);
886
883
  //>>includeEnd('debug');
887
884
 
888
- startingIndex = defaultValue(startingIndex, 0);
885
+ startingIndex = startingIndex ?? 0;
889
886
 
890
887
  const polygonHierarchy = PolygonGeometryLibrary.unpackPolygonHierarchy(
891
888
  array,
@@ -4,7 +4,6 @@ import Cartesian2 from "./Cartesian2.js";
4
4
  import Cartesian3 from "./Cartesian3.js";
5
5
  import Cartographic from "./Cartographic.js";
6
6
  import ComponentDatatype from "./ComponentDatatype.js";
7
- import defaultValue from "./defaultValue.js";
8
7
  import defined from "./defined.js";
9
8
  import Ellipsoid from "./Ellipsoid.js";
10
9
  import EllipsoidRhumbLine from "./EllipsoidRhumbLine.js";
@@ -312,6 +311,18 @@ PolygonGeometryLibrary.subdivideTexcoordRhumbLine = function (
312
311
  return texcoords;
313
312
  };
314
313
 
314
+ /**
315
+ * Subdivide the line between 2 points every minDistance length
316
+ * If the points are already closer than minDistance the first will be returned
317
+ *
318
+ * @private
319
+ * @param {Ellipsoid} ellipsoid
320
+ * @param {Cartesian3} p0 start point
321
+ * @param {Cartesian3} p1 end point
322
+ * @param {number} minDistance minimum distance between points in radians
323
+ * @param {number[]} [result] if provided positions will be packed into this array starting at index 0
324
+ * @returns {number[]} Cartesian3 positions packed into an array
325
+ */
315
326
  PolygonGeometryLibrary.subdivideRhumbLine = function (
316
327
  ellipsoid,
317
328
  p0,
@@ -323,15 +334,25 @@ PolygonGeometryLibrary.subdivideRhumbLine = function (
323
334
  const c1 = ellipsoid.cartesianToCartographic(p1, scratchCartographic1);
324
335
  const rhumb = new EllipsoidRhumbLine(c0, c1, ellipsoid);
325
336
 
337
+ if (!defined(result)) {
338
+ result = [];
339
+ }
340
+
341
+ if (rhumb.surfaceDistance <= minDistance) {
342
+ // no need to try and subdivide a line that's already shorter than the min distance
343
+ // this also inherently handles duplicated points which would have 0 distance
344
+ result.length = 3;
345
+ result[0] = p0.x;
346
+ result[1] = p0.y;
347
+ result[2] = p0.z;
348
+ return result;
349
+ }
350
+
326
351
  const n = rhumb.surfaceDistance / minDistance;
327
352
  const countDivide = Math.max(0, Math.ceil(CesiumMath.log2(n)));
328
353
  const numVertices = Math.pow(2, countDivide);
329
354
  const distanceBetweenVertices = rhumb.surfaceDistance / numVertices;
330
355
 
331
- if (!defined(result)) {
332
- result = [];
333
- }
334
-
335
356
  const positions = result;
336
357
  positions.length = numVertices * 3;
337
358
 
@@ -362,7 +383,7 @@ PolygonGeometryLibrary.scaleToGeodeticHeightExtruded = function (
362
383
  ellipsoid,
363
384
  perPositionHeight,
364
385
  ) {
365
- ellipsoid = defaultValue(ellipsoid, Ellipsoid.default);
386
+ ellipsoid = ellipsoid ?? Ellipsoid.default;
366
387
 
367
388
  const n1 = scaleToGeodeticHeightN1;
368
389
  let n2 = scaleToGeodeticHeightN2;
@@ -3,7 +3,7 @@ import BoundingSphere from "./BoundingSphere.js";
3
3
  import Cartesian3 from "./Cartesian3.js";
4
4
  import Check from "./Check.js";
5
5
  import ComponentDatatype from "./ComponentDatatype.js";
6
- import defaultValue from "./defaultValue.js";
6
+ import Frozen from "./Frozen.js";
7
7
  import defined from "./defined.js";
8
8
  import DeveloperError from "./DeveloperError.js";
9
9
  import Ellipsoid from "./Ellipsoid.js";
@@ -368,18 +368,15 @@ function PolygonOutlineGeometry(options) {
368
368
  //>>includeEnd('debug');
369
369
 
370
370
  const polygonHierarchy = options.polygonHierarchy;
371
- const ellipsoid = defaultValue(options.ellipsoid, Ellipsoid.default);
372
- const granularity = defaultValue(
373
- options.granularity,
374
- CesiumMath.RADIANS_PER_DEGREE,
375
- );
376
- const perPositionHeight = defaultValue(options.perPositionHeight, false);
371
+ const ellipsoid = options.ellipsoid ?? Ellipsoid.default;
372
+ const granularity = options.granularity ?? CesiumMath.RADIANS_PER_DEGREE;
373
+ const perPositionHeight = options.perPositionHeight ?? false;
377
374
  const perPositionHeightExtrude =
378
375
  perPositionHeight && defined(options.extrudedHeight);
379
- const arcType = defaultValue(options.arcType, ArcType.GEODESIC);
376
+ const arcType = options.arcType ?? ArcType.GEODESIC;
380
377
 
381
- let height = defaultValue(options.height, 0.0);
382
- let extrudedHeight = defaultValue(options.extrudedHeight, height);
378
+ let height = options.height ?? 0.0;
379
+ let extrudedHeight = options.extrudedHeight ?? height;
383
380
 
384
381
  if (!perPositionHeightExtrude) {
385
382
  const h = Math.max(height, extrudedHeight);
@@ -426,7 +423,7 @@ PolygonOutlineGeometry.pack = function (value, array, startingIndex) {
426
423
  Check.defined("array", array);
427
424
  //>>includeEnd('debug');
428
425
 
429
- startingIndex = defaultValue(startingIndex, 0);
426
+ startingIndex = startingIndex ?? 0;
430
427
 
431
428
  startingIndex = PolygonGeometryLibrary.packPolygonHierarchy(
432
429
  value._polygonHierarchy,
@@ -444,7 +441,7 @@ PolygonOutlineGeometry.pack = function (value, array, startingIndex) {
444
441
  array[startingIndex++] = value._perPositionHeightExtrude ? 1.0 : 0.0;
445
442
  array[startingIndex++] = value._perPositionHeight ? 1.0 : 0.0;
446
443
  array[startingIndex++] = value._arcType;
447
- array[startingIndex++] = defaultValue(value._offsetAttribute, -1);
444
+ array[startingIndex++] = value._offsetAttribute ?? -1;
448
445
  array[startingIndex] = value.packedLength;
449
446
 
450
447
  return array;
@@ -468,7 +465,7 @@ PolygonOutlineGeometry.unpack = function (array, startingIndex, result) {
468
465
  Check.defined("array", array);
469
466
  //>>includeEnd('debug');
470
467
 
471
- startingIndex = defaultValue(startingIndex, 0);
468
+ startingIndex = startingIndex ?? 0;
472
469
 
473
470
  const polygonHierarchy = PolygonGeometryLibrary.unpackPolygonHierarchy(
474
471
  array,
@@ -539,7 +536,7 @@ PolygonOutlineGeometry.unpack = function (array, startingIndex, result) {
539
536
  * @see PolygonOutlineGeometry#createGeometry
540
537
  */
541
538
  PolygonOutlineGeometry.fromPositions = function (options) {
542
- options = defaultValue(options, defaultValue.EMPTY_OBJECT);
539
+ options = options ?? Frozen.EMPTY_OBJECT;
543
540
 
544
541
  //>>includeStart('debug', pragmas.debug);
545
542
  Check.defined("options.positions", options.positions);
@@ -4,7 +4,6 @@ import Cartesian3 from "./Cartesian3.js";
4
4
  import Cartographic from "./Cartographic.js";
5
5
  import Check from "./Check.js";
6
6
  import ComponentDatatype from "./ComponentDatatype.js";
7
- import defaultValue from "./defaultValue.js";
8
7
  import defined from "./defined.js";
9
8
  import Ellipsoid from "./Ellipsoid.js";
10
9
  import EllipsoidRhumbLine from "./EllipsoidRhumbLine.js";
@@ -106,7 +105,7 @@ PolygonPipeline.computeSubdivision = function (
106
105
  texcoords,
107
106
  granularity,
108
107
  ) {
109
- granularity = defaultValue(granularity, CesiumMath.RADIANS_PER_DEGREE);
108
+ granularity = granularity ?? CesiumMath.RADIANS_PER_DEGREE;
110
109
 
111
110
  const hasTexcoords = defined(texcoords);
112
111
 
@@ -341,7 +340,7 @@ PolygonPipeline.computeRhumbLineSubdivision = function (
341
340
  texcoords,
342
341
  granularity,
343
342
  ) {
344
- granularity = defaultValue(granularity, CesiumMath.RADIANS_PER_DEGREE);
343
+ granularity = granularity ?? CesiumMath.RADIANS_PER_DEGREE;
345
344
 
346
345
  const hasTexcoords = defined(texcoords);
347
346
 
@@ -597,13 +596,13 @@ PolygonPipeline.scaleToGeodeticHeight = function (
597
596
  ellipsoid,
598
597
  scaleToSurface,
599
598
  ) {
600
- ellipsoid = defaultValue(ellipsoid, Ellipsoid.default);
599
+ ellipsoid = ellipsoid ?? Ellipsoid.default;
601
600
 
602
601
  let n = scaleToGeodeticHeightN;
603
602
  let p = scaleToGeodeticHeightP;
604
603
 
605
- height = defaultValue(height, 0.0);
606
- scaleToSurface = defaultValue(scaleToSurface, true);
604
+ height = height ?? 0.0;
605
+ scaleToSurface = scaleToSurface ?? true;
607
606
 
608
607
  if (defined(positions)) {
609
608
  const length = positions.length;