@cesium/engine 2.0.0 → 2.2.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 (828) hide show
  1. package/Build/Workers/{ArcType-ce2e50ab.js → ArcType-2d9abbbc.js} +4 -4
  2. package/Build/Workers/{AttributeCompression-b646d393.js → AttributeCompression-8a5a065e.js} +24 -24
  3. package/Build/Workers/{AxisAlignedBoundingBox-47525601.js → AxisAlignedBoundingBox-379015ef.js} +3 -3
  4. package/Build/Workers/{BoundingRectangle-93b263ac.js → BoundingRectangle-57f2b24f.js} +18 -18
  5. package/Build/Workers/{BoxGeometry-8c4b4125.js → BoxGeometry-ecabfc78.js} +9 -9
  6. package/Build/Workers/{Check-666ab1a0.js → Check-6ede7e26.js} +22 -22
  7. package/Build/Workers/{Color-52c60ed7.js → Color-14d1a36d.js} +59 -59
  8. package/Build/Workers/{ComponentDatatype-f7b11d02.js → ComponentDatatype-cf1fa08e.js} +16 -16
  9. package/Build/Workers/{CoplanarPolygonGeometryLibrary-33c4c1f8.js → CoplanarPolygonGeometryLibrary-048c3c14.js} +1 -1
  10. package/Build/Workers/{CorridorGeometryLibrary-5039cd8e.js → CorridorGeometryLibrary-520c8619.js} +1 -1
  11. package/Build/Workers/{CylinderGeometry-3ac44974.js → CylinderGeometry-119068b8.js} +12 -12
  12. package/Build/Workers/{CylinderGeometryLibrary-372c07d8.js → CylinderGeometryLibrary-135b0858.js} +1 -1
  13. package/Build/Workers/{EllipseGeometry-a9c9b3be.js → EllipseGeometry-2dfc3523.js} +20 -20
  14. package/Build/Workers/{EllipseGeometryLibrary-855d4681.js → EllipseGeometryLibrary-0a1e0170.js} +1 -1
  15. package/Build/Workers/{EllipseOutlineGeometry-017a5929.js → EllipseOutlineGeometry-c5251669.js} +15 -15
  16. package/Build/Workers/{EllipsoidGeodesic-98c62a56.js → EllipsoidGeodesic-dcff5cbd.js} +6 -6
  17. package/Build/Workers/{EllipsoidGeometry-826e7bce.js → EllipsoidGeometry-d10a5221.js} +14 -14
  18. package/Build/Workers/{EllipsoidOutlineGeometry-784dcdb5.js → EllipsoidOutlineGeometry-7039a0ae.js} +15 -15
  19. package/Build/Workers/{EllipsoidRhumbLine-19756602.js → EllipsoidRhumbLine-b672d507.js} +9 -9
  20. package/Build/Workers/{EllipsoidTangentPlane-ed9443a1.js → EllipsoidTangentPlane-857186be.js} +1 -1
  21. package/Build/Workers/{EncodedCartesian3-81f70735.js → EncodedCartesian3-e8bbca36.js} +6 -6
  22. package/Build/Workers/{FrustumGeometry-9f1ee4d8.js → FrustumGeometry-400fa1b7.js} +109 -109
  23. package/Build/Workers/{GeometryAttribute-334718f8.js → GeometryAttribute-7a2de5c6.js} +20 -20
  24. package/Build/Workers/{GeometryAttributes-f06a2792.js → GeometryAttributes-ad136444.js} +1 -1
  25. package/Build/Workers/{GeometryInstance-451dc1cd.js → GeometryInstance-3fb607b7.js} +6 -6
  26. package/Build/Workers/{GeometryPipeline-8fb0db69.js → GeometryPipeline-916636fa.js} +22 -22
  27. package/Build/Workers/{IndexDatatype-a55ceaa1.js → IndexDatatype-b8f3e09d.js} +13 -13
  28. package/Build/Workers/{IntersectionTests-27d49265.js → IntersectionTests-b4d02d4d.js} +37 -37
  29. package/Build/Workers/{Math-2dbd6b93.js → Math-dad82b4d.js} +137 -137
  30. package/Build/Workers/{Matrix2-13178034.js → Matrix2-1e403d0e.js} +256 -256
  31. package/Build/Workers/{Matrix3-315394f6.js → Matrix3-fa806b97.js} +150 -150
  32. package/Build/Workers/{OrientedBoundingBox-79ee7cbb.js → OrientedBoundingBox-96fe1752.js} +19 -17
  33. package/Build/Workers/{Plane-900aa728.js → Plane-c27e1ac6.js} +5 -5
  34. package/Build/Workers/{PolygonGeometryLibrary-6b5a29e9.js → PolygonGeometryLibrary-931f1ec6.js} +6 -6
  35. package/Build/Workers/{PolygonPipeline-21668b3f.js → PolygonPipeline-32fc92cc.js} +14 -14
  36. package/Build/Workers/{PolylinePipeline-5e2e1b21.js → PolylinePipeline-6d5c63e5.js} +16 -16
  37. package/Build/Workers/{PolylineVolumeGeometryLibrary-97f0b94e.js → PolylineVolumeGeometryLibrary-f068c1fb.js} +7 -7
  38. package/Build/Workers/{PrimitivePipeline-5640850a.js → PrimitivePipeline-879f996a.js} +6 -6
  39. package/Build/Workers/{RectangleGeometryLibrary-d5457f7b.js → RectangleGeometryLibrary-2d6f36f3.js} +1 -1
  40. package/Build/Workers/{RuntimeError-06c93819.js → RuntimeError-ef395448.js} +5 -5
  41. package/Build/Workers/{TerrainEncoding-bfdf2021.js → TerrainEncoding-82882059.js} +30 -30
  42. package/Build/Workers/{Transforms-a05e5e6e.js → Transforms-9052372a.js} +531 -530
  43. package/Build/Workers/{VertexFormat-6b480673.js → VertexFormat-030f11ff.js} +14 -14
  44. package/Build/Workers/{WallGeometryLibrary-6db0ebb6.js → WallGeometryLibrary-db7a64fb.js} +1 -1
  45. package/Build/Workers/{WebGLConstants-a8cc3e8c.js → WebGLConstants-0b1ce7ba.js} +1 -1
  46. package/Build/Workers/{WebMercatorProjection-13a90d41.js → WebMercatorProjection-76a3fcc0.js} +6 -6
  47. package/Build/Workers/{arrayRemoveDuplicates-c2038105.js → arrayRemoveDuplicates-fac118a8.js} +5 -5
  48. package/Build/Workers/cesiumWorkerBootstrapper.js +5 -5
  49. package/Build/Workers/{combine-ca22a614.js → combine-d9581036.js} +5 -5
  50. package/Build/Workers/combineGeometry.js +1 -1
  51. package/Build/Workers/createBoxGeometry.js +1 -1
  52. package/Build/Workers/createBoxOutlineGeometry.js +9 -9
  53. package/Build/Workers/createCircleGeometry.js +13 -13
  54. package/Build/Workers/createCircleOutlineGeometry.js +13 -13
  55. package/Build/Workers/createCoplanarPolygonGeometry.js +11 -11
  56. package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +9 -9
  57. package/Build/Workers/createCorridorGeometry.js +14 -14
  58. package/Build/Workers/createCorridorOutlineGeometry.js +12 -12
  59. package/Build/Workers/createCylinderGeometry.js +1 -1
  60. package/Build/Workers/createCylinderOutlineGeometry.js +13 -13
  61. package/Build/Workers/createEllipseGeometry.js +1 -1
  62. package/Build/Workers/createEllipseOutlineGeometry.js +1 -1
  63. package/Build/Workers/createEllipsoidGeometry.js +1 -1
  64. package/Build/Workers/createEllipsoidOutlineGeometry.js +1 -1
  65. package/Build/Workers/createFrustumGeometry.js +1 -1
  66. package/Build/Workers/createFrustumOutlineGeometry.js +8 -8
  67. package/Build/Workers/createGeometry.js +1 -1
  68. package/Build/Workers/createGroundPolylineGeometry.js +33 -33
  69. package/Build/Workers/createPlaneGeometry.js +8 -8
  70. package/Build/Workers/createPlaneOutlineGeometry.js +6 -6
  71. package/Build/Workers/createPolygonGeometry.js +25 -25
  72. package/Build/Workers/createPolygonOutlineGeometry.js +17 -17
  73. package/Build/Workers/createPolylineGeometry.js +11 -11
  74. package/Build/Workers/createPolylineVolumeGeometry.js +9 -9
  75. package/Build/Workers/createPolylineVolumeOutlineGeometry.js +9 -9
  76. package/Build/Workers/createRectangleGeometry.js +16 -16
  77. package/Build/Workers/createRectangleOutlineGeometry.js +12 -12
  78. package/Build/Workers/createSimplePolylineGeometry.js +10 -10
  79. package/Build/Workers/createSphereGeometry.js +11 -11
  80. package/Build/Workers/createSphereOutlineGeometry.js +12 -12
  81. package/Build/Workers/createTaskProcessorWorker.js +2 -2
  82. package/Build/Workers/createVectorTileClampedPolylines.js +1 -1
  83. package/Build/Workers/createVectorTileGeometries.js +8 -8
  84. package/Build/Workers/createVectorTilePoints.js +1 -1
  85. package/Build/Workers/createVectorTilePolygons.js +1 -1
  86. package/Build/Workers/createVectorTilePolylines.js +1 -1
  87. package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -1
  88. package/Build/Workers/createVerticesFromHeightmap.js +23 -21
  89. package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +33 -38
  90. package/Build/Workers/createWallGeometry.js +14 -14
  91. package/Build/Workers/createWallOutlineGeometry.js +14 -14
  92. package/Build/Workers/decodeDraco.js +1 -1
  93. package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +15 -15
  94. package/Build/Workers/decodeI3S.js +1 -1
  95. package/Build/Workers/{defaultValue-0a909f67.js → defaultValue-fe22d8c0.js} +2 -2
  96. package/Build/Workers/package.js +1 -1
  97. package/Build/Workers/transcodeKTX2.js +26 -26
  98. package/Build/Workers/transferTypedArrayTest.js +1 -1
  99. package/Build/Workers/upsampleQuantizedTerrainMesh.js +24 -24
  100. package/Source/Core/ApproximateTerrainHeights.js +3 -3
  101. package/Source/Core/ArcGISTiledElevationTerrainProvider.js +308 -208
  102. package/Source/Core/ArcType.js +4 -4
  103. package/Source/Core/ArticulationStageType.js +1 -1
  104. package/Source/Core/AssociativeArray.js +7 -7
  105. package/Source/Core/AttributeCompression.js +12 -12
  106. package/Source/Core/AxisAlignedBoundingBox.js +2 -2
  107. package/Source/Core/BingMapsGeocoderService.js +6 -6
  108. package/Source/Core/BoundingRectangle.js +17 -17
  109. package/Source/Core/BoundingSphere.js +25 -25
  110. package/Source/Core/BoxGeometry.js +8 -8
  111. package/Source/Core/BoxOutlineGeometry.js +8 -8
  112. package/Source/Core/Cartesian2.js +38 -38
  113. package/Source/Core/Cartesian3.js +50 -50
  114. package/Source/Core/Cartesian4.js +44 -44
  115. package/Source/Core/Cartographic.js +19 -19
  116. package/Source/Core/CartographicGeocoderService.js +1 -1
  117. package/Source/Core/CatmullRomSpline.js +10 -10
  118. package/Source/Core/CesiumTerrainProvider.js +598 -461
  119. package/Source/Core/Check.js +17 -17
  120. package/Source/Core/CircleGeometry.js +12 -12
  121. package/Source/Core/CircleOutlineGeometry.js +12 -12
  122. package/Source/Core/Clock.js +7 -7
  123. package/Source/Core/ClockRange.js +4 -4
  124. package/Source/Core/ClockStep.js +4 -4
  125. package/Source/Core/Color.js +58 -58
  126. package/Source/Core/ColorGeometryInstanceAttribute.js +7 -7
  127. package/Source/Core/ComponentDatatype.js +15 -15
  128. package/Source/Core/CompressedTextureBuffer.js +7 -7
  129. package/Source/Core/ConstantSpline.js +9 -9
  130. package/Source/Core/CoplanarPolygonGeometry.js +10 -10
  131. package/Source/Core/CoplanarPolygonOutlineGeometry.js +8 -8
  132. package/Source/Core/CornerType.js +4 -4
  133. package/Source/Core/CorridorGeometry.js +13 -13
  134. package/Source/Core/CorridorOutlineGeometry.js +11 -11
  135. package/Source/Core/Credit.js +7 -7
  136. package/Source/Core/CubicRealPolynomial.js +10 -10
  137. package/Source/Core/CullingVolume.js +7 -7
  138. package/Source/Core/CustomHeightmapTerrainProvider.js +40 -28
  139. package/Source/Core/CylinderGeometry.js +11 -11
  140. package/Source/Core/CylinderOutlineGeometry.js +12 -12
  141. package/Source/Core/DefaultProxy.js +3 -3
  142. package/Source/Core/DeveloperError.js +4 -4
  143. package/Source/Core/DistanceDisplayCondition.js +12 -12
  144. package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +5 -5
  145. package/Source/Core/DoubleEndedPriorityQueue.js +5 -5
  146. package/Source/Core/EarthOrientationParameters.js +6 -6
  147. package/Source/Core/EarthOrientationParametersSample.js +10 -10
  148. package/Source/Core/EasingFunction.js +2 -2
  149. package/Source/Core/EllipseGeometry.js +19 -19
  150. package/Source/Core/EllipseOutlineGeometry.js +14 -14
  151. package/Source/Core/Ellipsoid.js +20 -20
  152. package/Source/Core/EllipsoidGeodesic.js +5 -5
  153. package/Source/Core/EllipsoidGeometry.js +13 -13
  154. package/Source/Core/EllipsoidOutlineGeometry.js +14 -14
  155. package/Source/Core/EllipsoidRhumbLine.js +8 -8
  156. package/Source/Core/EllipsoidTerrainProvider.js +35 -28
  157. package/Source/Core/EllipsoidalOccluder.js +9 -9
  158. package/Source/Core/EncodedCartesian3.js +5 -5
  159. package/Source/Core/Event.js +4 -4
  160. package/Source/Core/EventHelper.js +1 -1
  161. package/Source/Core/ExtrapolationType.js +4 -4
  162. package/Source/Core/FeatureDetection.js +9 -9
  163. package/Source/Core/FrustumGeometry.js +8 -8
  164. package/Source/Core/FrustumOutlineGeometry.js +7 -7
  165. package/Source/Core/Fullscreen.js +8 -8
  166. package/Source/Core/GeocodeType.js +3 -3
  167. package/Source/Core/GeocoderService.js +3 -3
  168. package/Source/Core/GeographicTilingScheme.js +16 -16
  169. package/Source/Core/Geometry.js +5 -5
  170. package/Source/Core/GeometryAttribute.js +6 -6
  171. package/Source/Core/GeometryInstance.js +5 -5
  172. package/Source/Core/GeometryInstanceAttribute.js +7 -7
  173. package/Source/Core/GeometryPipeline.js +11 -11
  174. package/Source/Core/GoogleEarthEnterpriseMetadata.js +107 -55
  175. package/Source/Core/GoogleEarthEnterpriseTerrainData.js +29 -29
  176. package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +137 -100
  177. package/Source/Core/GoogleEarthEnterpriseTileInformation.js +14 -14
  178. package/Source/Core/GregorianDate.js +16 -16
  179. package/Source/Core/GroundPolylineGeometry.js +13 -13
  180. package/Source/Core/HeadingPitchRange.js +6 -6
  181. package/Source/Core/HeadingPitchRoll.js +18 -18
  182. package/Source/Core/Heap.js +7 -7
  183. package/Source/Core/HeightmapEncoding.js +3 -3
  184. package/Source/Core/HeightmapTerrainData.js +44 -44
  185. package/Source/Core/HeightmapTessellator.js +16 -16
  186. package/Source/Core/HermitePolynomialApproximation.js +17 -17
  187. package/Source/Core/HermiteSpline.js +17 -17
  188. package/Source/Core/HilbertOrder.js +7 -7
  189. package/Source/Core/Iau2006XysData.js +13 -13
  190. package/Source/Core/Iau2006XysSample.js +6 -6
  191. package/Source/Core/IauOrientationParameters.js +4 -4
  192. package/Source/Core/IndexDatatype.js +12 -12
  193. package/Source/Core/InterpolationAlgorithm.js +17 -17
  194. package/Source/Core/InterpolationType.js +1 -1
  195. package/Source/Core/Intersect.js +4 -4
  196. package/Source/Core/IntersectionTests.js +5 -5
  197. package/Source/Core/Intersections2D.js +23 -23
  198. package/Source/Core/Interval.js +4 -4
  199. package/Source/Core/Ion.js +3 -3
  200. package/Source/Core/IonGeocoderService.js +4 -4
  201. package/Source/Core/IonResource.js +20 -9
  202. package/Source/Core/JulianDate.js +27 -27
  203. package/Source/Core/KeyboardEventModifier.js +4 -4
  204. package/Source/Core/LagrangePolynomialApproximation.js +8 -8
  205. package/Source/Core/LeapSecond.js +2 -2
  206. package/Source/Core/LinearApproximation.js +8 -8
  207. package/Source/Core/LinearSpline.js +13 -13
  208. package/Source/Core/ManagedArray.js +8 -8
  209. package/Source/Core/Math.js +136 -136
  210. package/Source/Core/Matrix2.js +44 -44
  211. package/Source/Core/Matrix3.js +59 -59
  212. package/Source/Core/Matrix4.js +91 -91
  213. package/Source/Core/MorphWeightSpline.js +14 -14
  214. package/Source/Core/MortonOrder.js +21 -21
  215. package/Source/Core/NearFarScalar.js +16 -16
  216. package/Source/Core/Occluder.js +5 -5
  217. package/Source/Core/OffsetGeometryInstanceAttribute.js +5 -5
  218. package/Source/Core/OpenCageGeocoderService.js +18 -18
  219. package/Source/Core/OrientedBoundingBox.js +18 -16
  220. package/Source/Core/OrthographicFrustum.js +23 -23
  221. package/Source/Core/OrthographicOffCenterFrustum.js +21 -21
  222. package/Source/Core/Packable.js +7 -7
  223. package/Source/Core/PackableForInterpolation.js +11 -11
  224. package/Source/Core/PeliasGeocoderService.js +2 -2
  225. package/Source/Core/PerspectiveFrustum.js +28 -28
  226. package/Source/Core/PerspectiveOffCenterFrustum.js +21 -21
  227. package/Source/Core/PinBuilder.js +9 -9
  228. package/Source/Core/PixelFormat.js +23 -23
  229. package/Source/Core/Plane.js +4 -4
  230. package/Source/Core/PlaneGeometry.js +7 -7
  231. package/Source/Core/PlaneOutlineGeometry.js +5 -5
  232. package/Source/Core/PolygonGeometry.js +24 -24
  233. package/Source/Core/PolygonGeometryLibrary.js +4 -4
  234. package/Source/Core/PolygonOutlineGeometry.js +16 -16
  235. package/Source/Core/PolygonPipeline.js +10 -10
  236. package/Source/Core/PolylineGeometry.js +10 -10
  237. package/Source/Core/PolylinePipeline.js +15 -15
  238. package/Source/Core/PolylineVolumeGeometry.js +8 -8
  239. package/Source/Core/PolylineVolumeOutlineGeometry.js +8 -8
  240. package/Source/Core/PrimitiveType.js +8 -8
  241. package/Source/Core/Proxy.js +2 -2
  242. package/Source/Core/QuadraticRealPolynomial.js +8 -8
  243. package/Source/Core/QuantizedMeshTerrainData.js +37 -37
  244. package/Source/Core/QuarticRealPolynomial.js +12 -12
  245. package/Source/Core/Quaternion.js +42 -42
  246. package/Source/Core/QuaternionSpline.js +10 -10
  247. package/Source/Core/Queue.js +2 -2
  248. package/Source/Core/Ray.js +1 -1
  249. package/Source/Core/Rectangle.js +38 -38
  250. package/Source/Core/RectangleCollisionChecker.js +3 -3
  251. package/Source/Core/RectangleGeometry.js +15 -15
  252. package/Source/Core/RectangleOutlineGeometry.js +11 -11
  253. package/Source/Core/ReferenceFrame.js +3 -3
  254. package/Source/Core/Request.js +13 -13
  255. package/Source/Core/RequestErrorEvent.js +7 -7
  256. package/Source/Core/RequestScheduler.js +15 -15
  257. package/Source/Core/RequestState.js +7 -7
  258. package/Source/Core/RequestType.js +5 -5
  259. package/Source/Core/Resource.js +225 -225
  260. package/Source/Core/RuntimeError.js +4 -4
  261. package/Source/Core/S2Cell.js +15 -15
  262. package/Source/Core/ScreenSpaceEventHandler.js +7 -7
  263. package/Source/Core/ScreenSpaceEventType.js +16 -16
  264. package/Source/Core/ShowGeometryInstanceAttribute.js +4 -4
  265. package/Source/Core/SimplePolylineGeometry.js +9 -9
  266. package/Source/Core/SphereGeometry.js +10 -10
  267. package/Source/Core/SphereOutlineGeometry.js +11 -11
  268. package/Source/Core/Spherical.js +13 -13
  269. package/Source/Core/Spline.js +14 -14
  270. package/Source/Core/SteppedSpline.js +14 -14
  271. package/Source/Core/TaskProcessor.js +10 -10
  272. package/Source/Core/TerrainData.js +25 -25
  273. package/Source/Core/TerrainEncoding.js +14 -14
  274. package/Source/Core/TerrainExaggeration.js +3 -3
  275. package/Source/Core/TerrainMesh.js +18 -18
  276. package/Source/Core/TerrainProvider.js +32 -37
  277. package/Source/Core/TerrainQuantization.js +3 -3
  278. package/Source/Core/TileAvailability.js +16 -16
  279. package/Source/Core/TileProviderError.js +19 -19
  280. package/Source/Core/TilingScheme.js +13 -13
  281. package/Source/Core/TimeConstants.js +10 -10
  282. package/Source/Core/TimeInterval.js +23 -23
  283. package/Source/Core/TimeIntervalCollection.js +39 -39
  284. package/Source/Core/TimeStandard.js +3 -3
  285. package/Source/Core/Tipsify.js +10 -10
  286. package/Source/Core/Transforms.js +2 -2
  287. package/Source/Core/TranslationRotationScale.js +1 -1
  288. package/Source/Core/TridiagonalSystemSolver.js +3 -3
  289. package/Source/Core/TrustedServers.js +5 -5
  290. package/Source/Core/VRTheWorldTerrainProvider.js +210 -141
  291. package/Source/Core/VertexFormat.js +13 -13
  292. package/Source/Core/VideoSynchronizer.js +4 -4
  293. package/Source/Core/Visibility.js +4 -4
  294. package/Source/Core/VulkanConstants.js +1 -1
  295. package/Source/Core/WallGeometry.js +13 -13
  296. package/Source/Core/WallOutlineGeometry.js +13 -13
  297. package/Source/Core/WebGLConstants.js +1 -1
  298. package/Source/Core/WebMercatorProjection.js +5 -5
  299. package/Source/Core/WebMercatorTilingScheme.js +16 -16
  300. package/Source/Core/WindingOrder.js +3 -3
  301. package/Source/Core/WireframeIndexGenerator.js +3 -3
  302. package/Source/Core/arrayRemoveDuplicates.js +4 -4
  303. package/Source/Core/binarySearch.js +2 -2
  304. package/Source/Core/buildModuleUrl.js +8 -7
  305. package/Source/Core/clone.js +3 -3
  306. package/Source/Core/combine.js +4 -4
  307. package/Source/Core/createGuid.js +1 -1
  308. package/Source/Core/createWorldTerrain.js +23 -5
  309. package/Source/Core/createWorldTerrainAsync.js +48 -0
  310. package/Source/Core/defaultValue.js +1 -1
  311. package/Source/Core/defer.js +1 -1
  312. package/Source/Core/defined.js +1 -1
  313. package/Source/Core/deprecationWarning.js +2 -2
  314. package/Source/Core/destroyObject.js +2 -2
  315. package/Source/Core/formatError.js +1 -1
  316. package/Source/Core/getAbsoluteUri.js +3 -3
  317. package/Source/Core/getBaseUri.js +3 -3
  318. package/Source/Core/getExtensionFromUri.js +2 -2
  319. package/Source/Core/getFilenameFromUri.js +2 -2
  320. package/Source/Core/getImageFromTypedArray.js +2 -2
  321. package/Source/Core/getImagePixels.js +4 -3
  322. package/Source/Core/getJsonFromTypedArray.js +3 -3
  323. package/Source/Core/getStringFromTypedArray.js +3 -3
  324. package/Source/Core/getTimestamp.js +1 -1
  325. package/Source/Core/isBlobUri.js +2 -2
  326. package/Source/Core/isDataUri.js +2 -2
  327. package/Source/Core/isLeapYear.js +2 -2
  328. package/Source/Core/loadKTX2.js +8 -8
  329. package/Source/Core/mergeSort.js +1 -1
  330. package/Source/Core/objectToQuery.js +2 -2
  331. package/Source/Core/oneTimeWarning.js +2 -2
  332. package/Source/Core/parseResponseHeaders.js +2 -2
  333. package/Source/Core/pointInsideTriangle.js +1 -1
  334. package/Source/Core/queryToObject.js +2 -2
  335. package/Source/Core/sampleTerrain.js +16 -17
  336. package/Source/Core/sampleTerrainMostDetailed.js +67 -73
  337. package/Source/Core/scaleToGeodeticSurface.js +1 -1
  338. package/Source/Core/subdivideArray.js +1 -1
  339. package/Source/Core/writeTextToCanvas.js +10 -9
  340. package/Source/DataSources/BillboardGraphics.js +1 -1
  341. package/Source/DataSources/BillboardVisualizer.js +2 -2
  342. package/Source/DataSources/BoundingSphereState.js +1 -1
  343. package/Source/DataSources/BoxGraphics.js +1 -1
  344. package/Source/DataSources/CallbackProperty.js +8 -8
  345. package/Source/DataSources/Cesium3DTilesetGraphics.js +1 -1
  346. package/Source/DataSources/Cesium3DTilesetVisualizer.js +39 -28
  347. package/Source/DataSources/CheckerboardMaterialProperty.js +6 -6
  348. package/Source/DataSources/ColorMaterialProperty.js +5 -5
  349. package/Source/DataSources/CompositeEntityCollection.js +8 -8
  350. package/Source/DataSources/CompositeMaterialProperty.js +5 -5
  351. package/Source/DataSources/CompositePositionProperty.js +2 -2
  352. package/Source/DataSources/CompositeProperty.js +4 -4
  353. package/Source/DataSources/ConstantPositionProperty.js +4 -4
  354. package/Source/DataSources/ConstantProperty.js +5 -5
  355. package/Source/DataSources/CorridorGraphics.js +1 -1
  356. package/Source/DataSources/CustomDataSource.js +5 -5
  357. package/Source/DataSources/CylinderGraphics.js +1 -1
  358. package/Source/DataSources/CzmlDataSource.js +26 -26
  359. package/Source/DataSources/DataSource.js +4 -4
  360. package/Source/DataSources/DataSourceClock.js +2 -2
  361. package/Source/DataSources/DataSourceCollection.js +11 -11
  362. package/Source/DataSources/DataSourceDisplay.js +5 -5
  363. package/Source/DataSources/DynamicGeometryUpdater.js +1 -1
  364. package/Source/DataSources/EllipseGraphics.js +1 -1
  365. package/Source/DataSources/EllipsoidGeometryUpdater.js +2 -2
  366. package/Source/DataSources/EllipsoidGraphics.js +1 -1
  367. package/Source/DataSources/Entity.js +20 -15
  368. package/Source/DataSources/EntityCluster.js +16 -16
  369. package/Source/DataSources/EntityCollection.js +8 -8
  370. package/Source/DataSources/GeoJsonDataSource.js +27 -27
  371. package/Source/DataSources/GeometryUpdater.js +22 -22
  372. package/Source/DataSources/GeometryVisualizer.js +2 -2
  373. package/Source/DataSources/GpxDataSource.js +23 -23
  374. package/Source/DataSources/GridMaterialProperty.js +7 -7
  375. package/Source/DataSources/GroundGeometryUpdater.js +5 -5
  376. package/Source/DataSources/ImageMaterialProperty.js +8 -8
  377. package/Source/DataSources/KmlDataSource.js +32 -32
  378. package/Source/DataSources/KmlTour.js +7 -7
  379. package/Source/DataSources/KmlTourFlyTo.js +6 -6
  380. package/Source/DataSources/KmlTourWait.js +2 -2
  381. package/Source/DataSources/LabelGraphics.js +1 -1
  382. package/Source/DataSources/LabelVisualizer.js +2 -2
  383. package/Source/DataSources/MaterialProperty.js +5 -5
  384. package/Source/DataSources/ModelGraphics.js +3 -3
  385. package/Source/DataSources/ModelVisualizer.js +101 -33
  386. package/Source/DataSources/NodeTransformationProperty.js +3 -3
  387. package/Source/DataSources/PathGraphics.js +1 -1
  388. package/Source/DataSources/PathVisualizer.js +2 -2
  389. package/Source/DataSources/PlaneGraphics.js +1 -1
  390. package/Source/DataSources/PointGraphics.js +1 -1
  391. package/Source/DataSources/PointVisualizer.js +2 -2
  392. package/Source/DataSources/PolygonGraphics.js +4 -4
  393. package/Source/DataSources/PolylineArrowMaterialProperty.js +5 -5
  394. package/Source/DataSources/PolylineDashMaterialProperty.js +8 -8
  395. package/Source/DataSources/PolylineGeometryUpdater.js +13 -13
  396. package/Source/DataSources/PolylineGlowMaterialProperty.js +8 -8
  397. package/Source/DataSources/PolylineGraphics.js +2 -2
  398. package/Source/DataSources/PolylineOutlineMaterialProperty.js +7 -7
  399. package/Source/DataSources/PolylineVisualizer.js +2 -2
  400. package/Source/DataSources/PolylineVolumeGraphics.js +3 -3
  401. package/Source/DataSources/PositionProperty.js +2 -2
  402. package/Source/DataSources/PositionPropertyArray.js +2 -2
  403. package/Source/DataSources/Property.js +4 -4
  404. package/Source/DataSources/PropertyArray.js +2 -2
  405. package/Source/DataSources/PropertyBag.js +10 -10
  406. package/Source/DataSources/RectangleGraphics.js +1 -1
  407. package/Source/DataSources/ReferenceProperty.js +10 -10
  408. package/Source/DataSources/Rotation.js +14 -14
  409. package/Source/DataSources/SampledPositionProperty.js +11 -11
  410. package/Source/DataSources/SampledProperty.js +12 -12
  411. package/Source/DataSources/StripeMaterialProperty.js +8 -8
  412. package/Source/DataSources/StripeOrientation.js +3 -3
  413. package/Source/DataSources/TerrainOffsetProperty.js +1 -1
  414. package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +3 -3
  415. package/Source/DataSources/TimeIntervalCollectionProperty.js +4 -4
  416. package/Source/DataSources/VelocityOrientationProperty.js +2 -2
  417. package/Source/DataSources/VelocityVectorProperty.js +4 -4
  418. package/Source/DataSources/Visualizer.js +2 -2
  419. package/Source/DataSources/WallGraphics.js +4 -4
  420. package/Source/DataSources/exportKml.js +9 -9
  421. package/Source/Renderer/Buffer.js +4 -4
  422. package/Source/Renderer/ClearCommand.js +3 -3
  423. package/Source/Renderer/ComputeCommand.js +3 -3
  424. package/Source/Renderer/Context.js +46 -46
  425. package/Source/Renderer/ContextLimits.js +22 -22
  426. package/Source/Renderer/CubeMapFace.js +11 -11
  427. package/Source/Renderer/DrawCommand.js +15 -15
  428. package/Source/Renderer/Framebuffer.js +4 -4
  429. package/Source/Renderer/FramebufferManager.js +9 -9
  430. package/Source/Renderer/MultisampleFramebuffer.js +1 -1
  431. package/Source/Renderer/PassState.js +2 -2
  432. package/Source/Renderer/PixelDatatype.js +1 -1
  433. package/Source/Renderer/RenderState.js +1 -1
  434. package/Source/Renderer/ShaderBuilder.js +24 -24
  435. package/Source/Renderer/ShaderCache.js +8 -8
  436. package/Source/Renderer/ShaderDestination.js +2 -2
  437. package/Source/Renderer/ShaderFunction.js +3 -3
  438. package/Source/Renderer/ShaderSource.js +8 -8
  439. package/Source/Renderer/ShaderStruct.js +4 -4
  440. package/Source/Renderer/Texture.js +18 -18
  441. package/Source/Renderer/TextureMagnificationFilter.js +4 -4
  442. package/Source/Renderer/TextureMinificationFilter.js +8 -8
  443. package/Source/Renderer/UniformState.js +14 -14
  444. package/Source/Renderer/VertexArray.js +2 -2
  445. package/Source/Renderer/createUniform.js +12 -12
  446. package/Source/Renderer/createUniformArray.js +12 -12
  447. package/Source/Renderer/freezeRenderState.js +2 -2
  448. package/Source/Renderer/loadCubeMap.js +3 -3
  449. package/Source/Scene/AlphaMode.js +4 -4
  450. package/Source/Scene/Appearance.js +14 -14
  451. package/Source/Scene/ArcGisMapServerImageryProvider.js +585 -409
  452. package/Source/Scene/AttributeType.js +11 -11
  453. package/Source/Scene/AutoExposure.js +6 -6
  454. package/Source/Scene/Axis.js +6 -6
  455. package/Source/Scene/B3dmParser.js +2 -2
  456. package/Source/Scene/BatchTable.js +13 -13
  457. package/Source/Scene/BatchTableHierarchy.js +22 -22
  458. package/Source/Scene/BatchTexture.js +14 -14
  459. package/Source/Scene/Billboard.js +17 -17
  460. package/Source/Scene/BillboardCollection.js +13 -13
  461. package/Source/Scene/BingMapsImageryProvider.js +541 -335
  462. package/Source/Scene/BingMapsStyle.js +11 -11
  463. package/Source/Scene/BlendEquation.js +6 -6
  464. package/Source/Scene/BlendFunction.js +16 -16
  465. package/Source/Scene/BlendOption.js +4 -4
  466. package/Source/Scene/BlendingState.js +4 -4
  467. package/Source/Scene/BufferLoader.js +33 -38
  468. package/Source/Scene/Camera.js +57 -57
  469. package/Source/Scene/CameraEventAggregator.js +26 -16
  470. package/Source/Scene/CameraEventType.js +6 -6
  471. package/Source/Scene/Cesium3DContentGroup.js +1 -1
  472. package/Source/Scene/Cesium3DTile.js +409 -272
  473. package/Source/Scene/Cesium3DTileBatchTable.js +3 -3
  474. package/Source/Scene/Cesium3DTileColorBlendMode.js +4 -4
  475. package/Source/Scene/Cesium3DTileContent.js +31 -15
  476. package/Source/Scene/Cesium3DTileContentFactory.js +4 -4
  477. package/Source/Scene/Cesium3DTileContentType.js +17 -17
  478. package/Source/Scene/Cesium3DTileFeature.js +16 -16
  479. package/Source/Scene/Cesium3DTileOptimizationHint.js +1 -1
  480. package/Source/Scene/Cesium3DTileOptimizations.js +1 -1
  481. package/Source/Scene/Cesium3DTilePass.js +8 -11
  482. package/Source/Scene/Cesium3DTilePassState.js +1 -1
  483. package/Source/Scene/Cesium3DTilePointFeature.js +23 -23
  484. package/Source/Scene/Cesium3DTileRefine.js +3 -3
  485. package/Source/Scene/Cesium3DTileStyle.js +17 -17
  486. package/Source/Scene/Cesium3DTileStyleEngine.js +1 -1
  487. package/Source/Scene/Cesium3DTilesVoxelProvider.js +226 -118
  488. package/Source/Scene/Cesium3DTileset.js +817 -543
  489. package/Source/Scene/Cesium3DTilesetBaseTraversal.js +301 -0
  490. package/Source/Scene/Cesium3DTilesetHeatmap.js +4 -4
  491. package/Source/Scene/Cesium3DTilesetMetadata.js +5 -5
  492. package/Source/Scene/Cesium3DTilesetMostDetailedTraversal.js +33 -46
  493. package/Source/Scene/Cesium3DTilesetSkipTraversal.js +421 -0
  494. package/Source/Scene/Cesium3DTilesetTraversal.js +219 -671
  495. package/Source/Scene/CircleEmitter.js +2 -2
  496. package/Source/Scene/ClassificationPrimitive.js +32 -25
  497. package/Source/Scene/ClassificationType.js +4 -4
  498. package/Source/Scene/ClippingPlane.js +2 -2
  499. package/Source/Scene/ClippingPlaneCollection.js +17 -17
  500. package/Source/Scene/CloudCollection.js +16 -16
  501. package/Source/Scene/CloudType.js +3 -3
  502. package/Source/Scene/ColorBlendMode.js +1 -1
  503. package/Source/Scene/Composite3DTileContent.js +69 -26
  504. package/Source/Scene/ConditionsExpression.js +11 -11
  505. package/Source/Scene/ConeEmitter.js +2 -2
  506. package/Source/Scene/ContentMetadata.js +16 -16
  507. package/Source/Scene/CreditDisplay.js +22 -6
  508. package/Source/Scene/CullFace.js +4 -4
  509. package/Source/Scene/CumulusCloud.js +3 -3
  510. package/Source/Scene/DebugAppearance.js +17 -17
  511. package/Source/Scene/DebugCameraPrimitive.js +7 -7
  512. package/Source/Scene/DebugModelMatrixPrimitive.js +9 -9
  513. package/Source/Scene/DepthFunction.js +9 -9
  514. package/Source/Scene/DepthPlane.js +1 -1
  515. package/Source/Scene/DeviceOrientationCameraController.js +1 -1
  516. package/Source/Scene/DirectionalLight.js +3 -3
  517. package/Source/Scene/DiscardEmptyTileImagePolicy.js +2 -2
  518. package/Source/Scene/DiscardMissingTileImagePolicy.js +5 -5
  519. package/Source/Scene/DracoLoader.js +4 -4
  520. package/Source/Scene/EllipsoidPrimitive.js +8 -8
  521. package/Source/Scene/EllipsoidSurfaceAppearance.js +19 -19
  522. package/Source/Scene/Empty3DTileContent.js +31 -1
  523. package/Source/Scene/Expression.js +14 -14
  524. package/Source/Scene/Fog.js +5 -5
  525. package/Source/Scene/FrameRateMonitor.js +14 -14
  526. package/Source/Scene/FrameState.js +36 -36
  527. package/Source/Scene/FrustumCommands.js +2 -2
  528. package/Source/Scene/Geometry3DTileContent.js +47 -7
  529. package/Source/Scene/GetFeatureInfoFormat.js +2 -2
  530. package/Source/Scene/Globe.js +39 -35
  531. package/Source/Scene/GlobeSurfaceTile.js +3 -2
  532. package/Source/Scene/GlobeSurfaceTileProvider.js +56 -33
  533. package/Source/Scene/GlobeTranslucency.js +3 -3
  534. package/Source/Scene/GltfBufferViewLoader.js +52 -96
  535. package/Source/Scene/GltfDracoLoader.js +117 -119
  536. package/Source/Scene/GltfImageLoader.js +77 -84
  537. package/Source/Scene/GltfIndexBufferLoader.js +118 -131
  538. package/Source/Scene/GltfJsonLoader.js +81 -80
  539. package/Source/Scene/GltfLoader.js +413 -301
  540. package/Source/Scene/GltfLoaderUtil.js +11 -11
  541. package/Source/Scene/GltfPipeline/addBuffer.js +2 -2
  542. package/Source/Scene/GltfPipeline/addDefaults.js +2 -2
  543. package/Source/Scene/GltfPipeline/addExtensionsRequired.js +2 -2
  544. package/Source/Scene/GltfPipeline/addExtensionsUsed.js +2 -2
  545. package/Source/Scene/GltfPipeline/addPipelineExtras.js +2 -2
  546. package/Source/Scene/GltfPipeline/addToArray.js +2 -2
  547. package/Source/Scene/GltfPipeline/findAccessorMinMax.js +2 -2
  548. package/Source/Scene/GltfPipeline/forEachTextureInMaterial.js +3 -3
  549. package/Source/Scene/GltfPipeline/getAccessorByteStride.js +3 -3
  550. package/Source/Scene/GltfPipeline/getComponentReader.js +5 -5
  551. package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +2 -2
  552. package/Source/Scene/GltfPipeline/moveTechniquesToExtension.js +2 -2
  553. package/Source/Scene/GltfPipeline/numberOfComponentsForType.js +2 -2
  554. package/Source/Scene/GltfPipeline/parseGlb.js +1 -1
  555. package/Source/Scene/GltfPipeline/readAccessorPacked.js +2 -2
  556. package/Source/Scene/GltfPipeline/removeExtension.js +2 -2
  557. package/Source/Scene/GltfPipeline/removeExtensionsRequired.js +2 -2
  558. package/Source/Scene/GltfPipeline/removeExtensionsUsed.js +2 -2
  559. package/Source/Scene/GltfPipeline/removePipelineExtras.js +2 -2
  560. package/Source/Scene/GltfPipeline/removeUnusedElements.js +2 -2
  561. package/Source/Scene/GltfPipeline/updateAccessorComponentTypes.js +2 -2
  562. package/Source/Scene/GltfPipeline/updateVersion.js +4 -4
  563. package/Source/Scene/GltfPipeline/usesExtension.js +3 -3
  564. package/Source/Scene/GltfStructuralMetadataLoader.js +117 -118
  565. package/Source/Scene/GltfTextureLoader.js +104 -103
  566. package/Source/Scene/GltfVertexBufferLoader.js +140 -145
  567. package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +377 -249
  568. package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +520 -360
  569. package/Source/Scene/GridImageryProvider.js +292 -129
  570. package/Source/Scene/GroundPolylinePrimitive.js +32 -21
  571. package/Source/Scene/GroundPrimitive.js +34 -27
  572. package/Source/Scene/GroupMetadata.js +17 -17
  573. package/Source/Scene/HeightReference.js +4 -4
  574. package/Source/Scene/HorizontalOrigin.js +4 -4
  575. package/Source/Scene/I3SDataProvider.js +221 -120
  576. package/Source/Scene/I3SFeature.js +8 -7
  577. package/Source/Scene/I3SField.js +5 -5
  578. package/Source/Scene/I3SGeometry.js +8 -8
  579. package/Source/Scene/I3SLayer.js +33 -44
  580. package/Source/Scene/I3SNode.js +65 -72
  581. package/Source/Scene/I3dmParser.js +2 -2
  582. package/Source/Scene/ImageBasedLighting.js +21 -17
  583. package/Source/Scene/Imagery.js +6 -1
  584. package/Source/Scene/ImageryLayer.js +324 -73
  585. package/Source/Scene/ImageryLayerCollection.js +37 -11
  586. package/Source/Scene/ImageryLayerFeatureInfo.js +6 -6
  587. package/Source/Scene/ImageryProvider.js +151 -133
  588. package/Source/Scene/Implicit3DTileContent.js +128 -79
  589. package/Source/Scene/ImplicitAvailabilityBitstream.js +10 -10
  590. package/Source/Scene/ImplicitMetadataView.js +16 -16
  591. package/Source/Scene/ImplicitSubdivisionScheme.js +4 -4
  592. package/Source/Scene/ImplicitSubtree.js +113 -92
  593. package/Source/Scene/ImplicitSubtreeCache.js +6 -6
  594. package/Source/Scene/ImplicitSubtreeMetadata.js +16 -16
  595. package/Source/Scene/ImplicitTileCoordinates.js +27 -27
  596. package/Source/Scene/ImplicitTileset.js +10 -10
  597. package/Source/Scene/InstanceAttributeSemantic.js +5 -5
  598. package/Source/Scene/IonImageryProvider.js +493 -286
  599. package/Source/Scene/IonWorldImageryStyle.js +4 -4
  600. package/Source/Scene/JsonMetadataTable.js +11 -11
  601. package/Source/Scene/KeyframeNode.js +1 -1
  602. package/Source/Scene/Label.js +14 -14
  603. package/Source/Scene/LabelCollection.js +12 -11
  604. package/Source/Scene/LabelStyle.js +4 -4
  605. package/Source/Scene/Light.js +1 -1
  606. package/Source/Scene/MapMode2D.js +3 -3
  607. package/Source/Scene/MapboxImageryProvider.js +301 -141
  608. package/Source/Scene/MapboxStyleImageryProvider.js +301 -142
  609. package/Source/Scene/Material.js +47 -47
  610. package/Source/Scene/MaterialAppearance.js +21 -21
  611. package/Source/Scene/Megatexture.js +15 -15
  612. package/Source/Scene/MetadataClass.js +16 -16
  613. package/Source/Scene/MetadataClassProperty.js +41 -41
  614. package/Source/Scene/MetadataComponentType.js +21 -21
  615. package/Source/Scene/MetadataEntity.js +31 -31
  616. package/Source/Scene/MetadataEnum.js +14 -14
  617. package/Source/Scene/MetadataEnumValue.js +10 -10
  618. package/Source/Scene/MetadataSchema.js +16 -16
  619. package/Source/Scene/MetadataSchemaLoader.js +31 -41
  620. package/Source/Scene/MetadataSemantic.js +17 -17
  621. package/Source/Scene/MetadataTable.js +24 -24
  622. package/Source/Scene/MetadataTableProperty.js +9 -9
  623. package/Source/Scene/MetadataType.js +15 -15
  624. package/Source/Scene/Model/B3dmLoader.js +54 -58
  625. package/Source/Scene/Model/ClassificationModelDrawCommand.js +3 -3
  626. package/Source/Scene/Model/CustomShader.js +18 -18
  627. package/Source/Scene/Model/CustomShaderMode.js +4 -4
  628. package/Source/Scene/Model/CustomShaderTranslucencyMode.js +4 -4
  629. package/Source/Scene/Model/GeoJsonLoader.js +12 -36
  630. package/Source/Scene/Model/I3dmLoader.js +58 -84
  631. package/Source/Scene/Model/LightingModel.js +3 -3
  632. package/Source/Scene/Model/MaterialPipelineStage.js +6 -6
  633. package/Source/Scene/Model/MetadataPipelineStage.js +25 -26
  634. package/Source/Scene/Model/Model.js +531 -193
  635. package/Source/Scene/Model/Model3DTileContent.js +83 -31
  636. package/Source/Scene/Model/ModelAlphaOptions.js +1 -1
  637. package/Source/Scene/Model/ModelAnimation.js +11 -11
  638. package/Source/Scene/Model/ModelAnimationChannel.js +2 -2
  639. package/Source/Scene/Model/ModelAnimationCollection.js +21 -21
  640. package/Source/Scene/Model/ModelArticulation.js +4 -4
  641. package/Source/Scene/Model/ModelArticulationStage.js +5 -5
  642. package/Source/Scene/Model/ModelDrawCommand.js +18 -29
  643. package/Source/Scene/Model/ModelFeature.js +12 -12
  644. package/Source/Scene/Model/ModelFeatureTable.js +5 -5
  645. package/Source/Scene/Model/ModelLightingOptions.js +1 -1
  646. package/Source/Scene/Model/ModelNode.js +3 -3
  647. package/Source/Scene/Model/ModelRenderResources.js +4 -4
  648. package/Source/Scene/Model/ModelRuntimeNode.js +7 -7
  649. package/Source/Scene/Model/ModelRuntimePrimitive.js +3 -3
  650. package/Source/Scene/Model/ModelSceneGraph.js +11 -11
  651. package/Source/Scene/Model/ModelSilhouettePipelineStage.js +1 -1
  652. package/Source/Scene/Model/ModelSkin.js +1 -1
  653. package/Source/Scene/Model/ModelStatistics.js +7 -7
  654. package/Source/Scene/Model/ModelType.js +8 -8
  655. package/Source/Scene/Model/ModelUtility.js +26 -26
  656. package/Source/Scene/Model/NodeRenderResources.js +7 -7
  657. package/Source/Scene/Model/PntsLoader.js +32 -37
  658. package/Source/Scene/Model/PointCloudStylingPipelineStage.js +1 -1
  659. package/Source/Scene/Model/PrimitiveOutlineGenerator.js +28 -28
  660. package/Source/Scene/Model/PrimitiveRenderResources.js +10 -10
  661. package/Source/Scene/Model/StyleCommandsNeeded.js +1 -1
  662. package/Source/Scene/Model/TextureManager.js +3 -3
  663. package/Source/Scene/Model/TextureUniform.js +6 -6
  664. package/Source/Scene/Model/UniformType.js +17 -17
  665. package/Source/Scene/Model/VaryingType.js +8 -8
  666. package/Source/Scene/ModelAnimationLoop.js +4 -4
  667. package/Source/Scene/ModelComponents.js +61 -61
  668. package/Source/Scene/Moon.js +8 -8
  669. package/Source/Scene/Multiple3DTileContent.js +146 -127
  670. package/Source/Scene/NeverTileDiscardPolicy.js +2 -2
  671. package/Source/Scene/OIT.js +9 -9
  672. package/Source/Scene/OctahedralProjectedCubeMap.js +28 -39
  673. package/Source/Scene/OpenStreetMapImageryProvider.js +6 -6
  674. package/Source/Scene/OrderedGroundPrimitiveCollection.js +9 -9
  675. package/Source/Scene/Particle.js +13 -13
  676. package/Source/Scene/ParticleBurst.js +8 -8
  677. package/Source/Scene/ParticleSystem.js +41 -36
  678. package/Source/Scene/PerInstanceColorAppearance.js +18 -18
  679. package/Source/Scene/PerformanceDisplay.js +2 -2
  680. package/Source/Scene/PntsParser.js +1 -1
  681. package/Source/Scene/PointCloud.js +11 -19
  682. package/Source/Scene/PointCloudEyeDomeLighting.js +1 -1
  683. package/Source/Scene/PointCloudShading.js +20 -20
  684. package/Source/Scene/PointPrimitive.js +6 -6
  685. package/Source/Scene/PointPrimitiveCollection.js +11 -11
  686. package/Source/Scene/Polyline.js +9 -9
  687. package/Source/Scene/PolylineCollection.js +11 -11
  688. package/Source/Scene/PolylineColorAppearance.js +13 -13
  689. package/Source/Scene/PolylineMaterialAppearance.js +13 -13
  690. package/Source/Scene/PostProcessStage.js +15 -15
  691. package/Source/Scene/PostProcessStageCollection.js +10 -10
  692. package/Source/Scene/PostProcessStageComposite.js +13 -13
  693. package/Source/Scene/PostProcessStageLibrary.js +8 -8
  694. package/Source/Scene/PostProcessStageSampleMode.js +3 -3
  695. package/Source/Scene/PostProcessStageTextureCache.js +4 -4
  696. package/Source/Scene/Primitive.js +50 -30
  697. package/Source/Scene/PrimitiveCollection.js +20 -20
  698. package/Source/Scene/PrimitiveLoadPlan.js +6 -6
  699. package/Source/Scene/PropertyAttribute.js +9 -9
  700. package/Source/Scene/PropertyAttributeProperty.js +6 -6
  701. package/Source/Scene/PropertyTable.js +34 -34
  702. package/Source/Scene/PropertyTexture.js +9 -9
  703. package/Source/Scene/PropertyTextureProperty.js +8 -8
  704. package/Source/Scene/QuadtreePrimitive.js +11 -9
  705. package/Source/Scene/QuadtreeTile.js +11 -11
  706. package/Source/Scene/QuadtreeTileLoadState.js +1 -1
  707. package/Source/Scene/QuadtreeTileProvider.js +10 -14
  708. package/Source/Scene/ResourceCache.js +85 -143
  709. package/Source/Scene/ResourceCacheKey.js +42 -42
  710. package/Source/Scene/ResourceCacheStatistics.js +26 -60
  711. package/Source/Scene/ResourceLoader.js +9 -21
  712. package/Source/Scene/ResourceLoaderState.js +16 -8
  713. package/Source/Scene/SDFSettings.js +4 -4
  714. package/Source/Scene/Scene.js +153 -88
  715. package/Source/Scene/SceneMode.js +6 -6
  716. package/Source/Scene/SceneTransitioner.js +1 -1
  717. package/Source/Scene/ScreenSpaceCameraController.js +41 -23
  718. package/Source/Scene/ShadowMap.js +22 -22
  719. package/Source/Scene/ShadowMapShader.js +1 -1
  720. package/Source/Scene/ShadowMode.js +5 -5
  721. package/Source/Scene/ShadowVolumeAppearance.js +17 -17
  722. package/Source/Scene/SingleTileImageryProvider.js +403 -230
  723. package/Source/Scene/SkyAtmosphere.js +10 -10
  724. package/Source/Scene/SkyBox.js +6 -6
  725. package/Source/Scene/SpatialNode.js +103 -87
  726. package/Source/Scene/SphereEmitter.js +2 -2
  727. package/Source/Scene/SplitDirection.js +4 -4
  728. package/Source/Scene/Splitter.js +2 -2
  729. package/Source/Scene/StencilFunction.js +9 -9
  730. package/Source/Scene/StencilOperation.js +9 -9
  731. package/Source/Scene/StructuralMetadata.js +11 -11
  732. package/Source/Scene/StyleExpression.js +8 -8
  733. package/Source/Scene/Sun.js +3 -3
  734. package/Source/Scene/SunLight.js +3 -3
  735. package/Source/Scene/SupportedImageFormats.js +3 -3
  736. package/Source/Scene/Terrain.js +196 -0
  737. package/Source/Scene/TextureAtlas.js +16 -16
  738. package/Source/Scene/TileBoundingRegion.js +6 -6
  739. package/Source/Scene/TileBoundingS2Cell.js +6 -6
  740. package/Source/Scene/TileBoundingSphere.js +5 -5
  741. package/Source/Scene/TileBoundingVolume.js +2 -2
  742. package/Source/Scene/TileCoordinatesImageryProvider.js +289 -126
  743. package/Source/Scene/TileDiscardPolicy.js +2 -2
  744. package/Source/Scene/TileImagery.js +3 -3
  745. package/Source/Scene/TileMapServiceImageryProvider.js +185 -93
  746. package/Source/Scene/TileMetadata.js +16 -16
  747. package/Source/Scene/TileOrientedBoundingBox.js +2 -2
  748. package/Source/Scene/TileReplacementQueue.js +1 -1
  749. package/Source/Scene/TileSelectionResult.js +1 -1
  750. package/Source/Scene/Tileset3DTileContent.js +47 -5
  751. package/Source/Scene/TilesetMetadata.js +15 -15
  752. package/Source/Scene/TimeDynamicImagery.js +8 -8
  753. package/Source/Scene/TimeDynamicPointCloud.js +24 -11
  754. package/Source/Scene/Tonemapper.js +5 -5
  755. package/Source/Scene/TranslucentTileClassification.js +1 -1
  756. package/Source/Scene/TweenCollection.js +31 -31
  757. package/Source/Scene/UrlTemplateImageryProvider.js +380 -252
  758. package/Source/Scene/Vector3DTileBatch.js +7 -7
  759. package/Source/Scene/Vector3DTileClampedPolylines.js +105 -93
  760. package/Source/Scene/Vector3DTileContent.js +47 -22
  761. package/Source/Scene/Vector3DTileGeometry.js +65 -60
  762. package/Source/Scene/Vector3DTilePoints.js +79 -75
  763. package/Source/Scene/Vector3DTilePolygons.js +128 -127
  764. package/Source/Scene/Vector3DTilePolylines.js +95 -91
  765. package/Source/Scene/Vector3DTilePrimitive.js +8 -9
  766. package/Source/Scene/VertexAttributeSemantic.js +15 -15
  767. package/Source/Scene/VerticalOrigin.js +5 -5
  768. package/Source/Scene/ViewportQuad.js +2 -2
  769. package/Source/Scene/VoxelBoxShape.js +27 -118
  770. package/Source/Scene/VoxelContent.js +63 -65
  771. package/Source/Scene/VoxelCylinderShape.js +21 -21
  772. package/Source/Scene/VoxelEllipsoidShape.js +13 -13
  773. package/Source/Scene/VoxelPrimitive.js +83 -135
  774. package/Source/Scene/VoxelProvider.js +15 -15
  775. package/Source/Scene/VoxelRenderResources.js +6 -3
  776. package/Source/Scene/VoxelShape.js +9 -9
  777. package/Source/Scene/VoxelShapeType.js +4 -4
  778. package/Source/Scene/VoxelTraversal.js +86 -144
  779. package/Source/Scene/WebMapServiceImageryProvider.js +313 -152
  780. package/Source/Scene/WebMapTileServiceImageryProvider.js +305 -142
  781. package/Source/Scene/buildVoxelDrawCommands.js +1 -0
  782. package/Source/Scene/computeFlyToLocationForRectangle.js +33 -37
  783. package/Source/Scene/createBillboardPointCallback.js +5 -5
  784. package/Source/Scene/createElevationBandMaterial.js +5 -5
  785. package/Source/Scene/createOsmBuildings.js +9 -3
  786. package/Source/Scene/createOsmBuildingsAsync.js +82 -0
  787. package/Source/Scene/createTangentSpaceDebugPrimitive.js +2 -2
  788. package/Source/Scene/createWorldImagery.js +15 -6
  789. package/Source/Scene/createWorldImageryAsync.js +39 -0
  790. package/Source/Scene/findContentMetadata.js +1 -1
  791. package/Source/Scene/findGroupMetadata.js +1 -1
  792. package/Source/Scene/findTileMetadata.js +1 -1
  793. package/Source/Scene/getClipAndStyleCode.js +4 -4
  794. package/Source/Scene/getClippingFunction.js +1 -1
  795. package/Source/Scene/hasExtension.js +3 -3
  796. package/Source/Scene/parseBatchTable.js +14 -14
  797. package/Source/Scene/parseBoundingVolumeSemantics.js +7 -7
  798. package/Source/Scene/parseFeatureMetadataLegacy.js +4 -4
  799. package/Source/Scene/parseStructuralMetadata.js +4 -4
  800. package/Source/Scene/preprocess3DTileContent.js +2 -2
  801. package/Source/Scene/processVoxelProperties.js +8 -7
  802. package/Source/Shaders/Voxels/IntersectBox.glsl +52 -58
  803. package/Source/Shaders/Voxels/IntersectBox.js +52 -58
  804. package/Source/Shaders/Voxels/IntersectClippingPlanes.glsl +38 -30
  805. package/Source/Shaders/Voxels/IntersectClippingPlanes.js +38 -30
  806. package/Source/Shaders/Voxels/IntersectDepth.glsl +1 -1
  807. package/Source/Shaders/Voxels/IntersectDepth.js +1 -1
  808. package/Source/Shaders/Voxels/Intersection.glsl +10 -12
  809. package/Source/Shaders/Voxels/Intersection.js +10 -12
  810. package/Source/Shaders/Voxels/IntersectionUtils.glsl +52 -59
  811. package/Source/Shaders/Voxels/IntersectionUtils.js +52 -59
  812. package/Source/Shaders/Voxels/Octree.glsl +72 -73
  813. package/Source/Shaders/Voxels/Octree.js +72 -73
  814. package/Source/Shaders/Voxels/VoxelFS.glsl +42 -22
  815. package/Source/Shaders/Voxels/VoxelFS.js +42 -22
  816. package/Source/Shaders/Voxels/convertUvToBox.glsl +13 -5
  817. package/Source/Shaders/Voxels/convertUvToBox.js +13 -5
  818. package/Source/ThirdParty/Workers/draco_decoder_nodejs.js +91 -91
  819. package/Source/ThirdParty/draco_decoder.wasm +0 -0
  820. package/Source/Widget/CesiumWidget.js +78 -50
  821. package/Source/Workers/cesiumWorkerBootstrapper.js +18 -18
  822. package/Source/WorkersES6/createTaskProcessorWorker.js +3 -3
  823. package/index.d.ts +2172 -1432
  824. package/index.js +8 -3
  825. package/package.json +1 -1
  826. package/Source/Core/cancelAnimationFrame.js +0 -53
  827. package/Source/Core/requestAnimationFrame.js +0 -83
  828. /package/Build/Workers/{GeometryOffsetAttribute-04332ce7.js → GeometryOffsetAttribute-9ad0019c.js} +0 -0
@@ -9,8 +9,8 @@ const context2DsByWidthAndHeight = {};
9
9
  * @function getImagePixels
10
10
  *
11
11
  * @param {HTMLImageElement|ImageBitmap} image The image to extract pixels from.
12
- * @param {Number} width The width of the image. If not defined, then image.width is assigned.
13
- * @param {Number} height The height of the image. If not defined, then image.height is assigned.
12
+ * @param {number} width The width of the image. If not defined, then image.width is assigned.
13
+ * @param {number} height The height of the image. If not defined, then image.height is assigned.
14
14
  * @returns {ImageData} The pixels of the image.
15
15
  */
16
16
  function getImagePixels(image, width, height) {
@@ -32,7 +32,8 @@ function getImagePixels(image, width, height) {
32
32
  const canvas = document.createElement("canvas");
33
33
  canvas.width = width;
34
34
  canvas.height = height;
35
- context2d = canvas.getContext("2d");
35
+ // Since we re-use contexts, use the willReadFrequently option – See https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently
36
+ context2d = canvas.getContext("2d", { willReadFrequently: true });
36
37
  context2d.globalCompositeOperation = "copy";
37
38
  context2DsByHeight[height] = context2d;
38
39
  }
@@ -6,9 +6,9 @@ import getStringFromTypedArray from "./getStringFromTypedArray.js";
6
6
  * @function
7
7
  *
8
8
  * @param {Uint8Array} uint8Array The Uint8Array to read from.
9
- * @param {Number} [byteOffset=0] The byte offset to start reading from.
10
- * @param {Number} [byteLength] The byte length to read. If byteLength is omitted the remainder of the buffer is read.
11
- * @returns {Object} An object containing the parsed JSON.
9
+ * @param {number} [byteOffset=0] The byte offset to start reading from.
10
+ * @param {number} [byteLength] The byte length to read. If byteLength is omitted the remainder of the buffer is read.
11
+ * @returns {object} An object containing the parsed JSON.
12
12
  *
13
13
  * @private
14
14
  */
@@ -9,9 +9,9 @@ import RuntimeError from "./RuntimeError.js";
9
9
  * @function
10
10
  *
11
11
  * @param {Uint8Array} uint8Array The Uint8Array to read from.
12
- * @param {Number} [byteOffset=0] The byte offset to start reading from.
13
- * @param {Number} [byteLength] The byte length to read. If byteLength is omitted the remainder of the buffer is read.
14
- * @returns {String} The string.
12
+ * @param {number} [byteOffset=0] The byte offset to start reading from.
13
+ * @param {number} [byteLength] The byte length to read. If byteLength is omitted the remainder of the buffer is read.
14
+ * @returns {string} The string.
15
15
  *
16
16
  * @private
17
17
  */
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * @function getTimestamp
8
8
  *
9
- * @returns {Number} The timestamp in milliseconds since some unspecified reference time.
9
+ * @returns {number} The timestamp in milliseconds since some unspecified reference time.
10
10
  */
11
11
  let getTimestamp;
12
12
 
@@ -7,8 +7,8 @@ const blobUriRegex = /^blob:/i;
7
7
  *
8
8
  * @function isBlobUri
9
9
  *
10
- * @param {String} uri The uri to test.
11
- * @returns {Boolean} true when the uri is a blob uri; otherwise, false.
10
+ * @param {string} uri The uri to test.
11
+ * @returns {boolean} true when the uri is a blob uri; otherwise, false.
12
12
  *
13
13
  * @private
14
14
  */
@@ -7,8 +7,8 @@ const dataUriRegex = /^data:/i;
7
7
  *
8
8
  * @function isDataUri
9
9
  *
10
- * @param {String} uri The uri to test.
11
- * @returns {Boolean} true when the uri is a data uri; otherwise, false.
10
+ * @param {string} uri The uri to test.
11
+ * @returns {boolean} true when the uri is a data uri; otherwise, false.
12
12
  *
13
13
  * @private
14
14
  */
@@ -5,8 +5,8 @@ import DeveloperError from "./DeveloperError.js";
5
5
  *
6
6
  * @function isLeapYear
7
7
  *
8
- * @param {Number} year The year to be tested.
9
- * @returns {Boolean} True if <code>year</code> is a leap year.
8
+ * @param {number} year The year to be tested.
9
+ * @returns {boolean} True if <code>year</code> is a leap year.
10
10
  *
11
11
  * @example
12
12
  * const leapYear = Cesium.isLeapYear(2000); // true
@@ -5,12 +5,12 @@ import KTX2Transcoder from "./KTX2Transcoder.js";
5
5
  /**
6
6
  * Stores the supported formats that KTX2 can transcode to. Called during context creation.
7
7
  *
8
- * @param {Boolean} s3tc Whether or not S3TC is supported
9
- * @param {Boolean} pvrtc Whether or not PVRTC is supported
10
- * @param {Boolean} astc Whether or not ASTC is supported
11
- * @param {Boolean} etc Whether or not ETC is supported
12
- * @param {Boolean} etc1 Whether or not ETC1 is supported
13
- * @param {Boolean} bc7 Whether or not BC7 is supported
8
+ * @param {boolean} s3tc Whether or not S3TC is supported
9
+ * @param {boolean} pvrtc Whether or not PVRTC is supported
10
+ * @param {boolean} astc Whether or not ASTC is supported
11
+ * @param {boolean} etc Whether or not ETC is supported
12
+ * @param {boolean} etc1 Whether or not ETC1 is supported
13
+ * @param {boolean} bc7 Whether or not BC7 is supported
14
14
  * @private
15
15
  */
16
16
  let supportedTranscoderFormats;
@@ -51,8 +51,8 @@ loadKTX2.setKTX2SupportedFormats = function (
51
51
  *
52
52
  * @function loadKTX2
53
53
  *
54
- * @param {Resource|String|ArrayBuffer} resourceOrUrlOrBuffer The URL of the binary data or an ArrayBuffer.
55
- * @returns {Promise.<CompressedTextureBuffer>|undefined} A promise that will resolve to the requested data when loaded. Returns undefined if <code>request.throttle</code> is true and the request does not have high enough priority.
54
+ * @param {Resource|string|ArrayBuffer} resourceOrUrlOrBuffer The URL of the binary data or an ArrayBuffer.
55
+ * @returns {Promise<CompressedTextureBuffer>|undefined} A promise that will resolve to the requested data when loaded. Returns undefined if <code>request.throttle</code> is true and the request does not have high enough priority.
56
56
  *
57
57
  * @exception {RuntimeError} Invalid KTX2 file.
58
58
  * @exception {RuntimeError} KTX2 texture arrays are not supported.
@@ -99,7 +99,7 @@ function mergeSort(array, comparator, userDefinedObject) {
99
99
  * @param {*} a An item in the array.
100
100
  * @param {*} b An item in the array.
101
101
  * @param {*} [userDefinedObject] An object that was passed to {@link mergeSort}.
102
- * @returns {Number} Returns a negative value if <code>a</code> is less than <code>b</code>,
102
+ * @returns {number} Returns a negative value if <code>a</code> is less than <code>b</code>,
103
103
  * a positive value if <code>a</code> is greater than <code>b</code>, or
104
104
  * 0 if <code>a</code> is equal to <code>b</code>.
105
105
  *
@@ -7,8 +7,8 @@ import DeveloperError from "./DeveloperError.js";
7
7
  * will produce multiple values with the same name.
8
8
  * @function objectToQuery
9
9
  *
10
- * @param {Object} obj The object containing data to encode.
11
- * @returns {String} An encoded query string.
10
+ * @param {object} obj The object containing data to encode.
11
+ * @returns {string} An encoded query string.
12
12
  *
13
13
  *
14
14
  * @example
@@ -11,8 +11,8 @@ const warnings = {};
11
11
  *
12
12
  * @function oneTimeWarning
13
13
  *
14
- * @param {String} identifier The unique identifier for this warning.
15
- * @param {String} [message=identifier] The message to log to the console.
14
+ * @param {string} identifier The unique identifier for this warning.
15
+ * @param {string} [message=identifier] The message to log to the console.
16
16
  *
17
17
  * @example
18
18
  * for(let i=0;i<foo.length;++i) {
@@ -4,9 +4,9 @@
4
4
  *
5
5
  * @function parseResponseHeaders
6
6
  *
7
- * @param {String} headerString The header string returned by getAllResponseHeaders(). The format is
7
+ * @param {string} headerString The header string returned by getAllResponseHeaders(). The format is
8
8
  * described here: http://www.w3.org/TR/XMLHttpRequest/#the-getallresponseheaders()-method
9
- * @returns {Object} A dictionary of key/value pairs, where each key is the name of a header and the corresponding value
9
+ * @returns {object} A dictionary of key/value pairs, where each key is the name of a header and the corresponding value
10
10
  * is that header's value.
11
11
  *
12
12
  * @private
@@ -13,7 +13,7 @@ const scratchBarycentricCoords = new Cartesian3();
13
13
  * @param {Cartesian2|Cartesian3} p0 The first point of the triangle.
14
14
  * @param {Cartesian2|Cartesian3} p1 The second point of the triangle.
15
15
  * @param {Cartesian2|Cartesian3} p2 The third point of the triangle.
16
- * @returns {Boolean} <code>true</code> if the point is inside the triangle; otherwise, <code>false</code>.
16
+ * @returns {boolean} <code>true</code> if the point is inside the triangle; otherwise, <code>false</code>.
17
17
  *
18
18
  * @example
19
19
  * // Returns true
@@ -7,8 +7,8 @@ import DeveloperError from "./DeveloperError.js";
7
7
  * the value in the object will be an array of values.
8
8
  * @function queryToObject
9
9
  *
10
- * @param {String} queryString The query string.
11
- * @returns {Object} An object containing the parameters parsed from the query string.
10
+ * @param {string} queryString The query string.
11
+ * @returns {object} An object containing the parameters parsed from the query string.
12
12
  *
13
13
  *
14
14
  * @example
@@ -18,40 +18,39 @@ import defined from "./defined.js";
18
18
  * @function sampleTerrain
19
19
  *
20
20
  * @param {TerrainProvider} terrainProvider The terrain provider from which to query heights.
21
- * @param {Number} level The terrain level-of-detail from which to query terrain heights.
21
+ * @param {number} level The terrain level-of-detail from which to query terrain heights.
22
22
  * @param {Cartographic[]} positions The positions to update with terrain heights.
23
- * @returns {Promise.<Cartographic[]>} A promise that resolves to the provided list of positions when terrain the query has completed.
23
+ * @returns {Promise<Cartographic[]>} A promise that resolves to the provided list of positions when terrain the query has completed.
24
24
  *
25
25
  * @see sampleTerrainMostDetailed
26
26
  *
27
27
  * @example
28
28
  * // Query the terrain height of two Cartographic positions
29
- * const terrainProvider = Cesium.createWorldTerrain();
29
+ * const terrainProvider = await Cesium.createWorldTerrainAsync();
30
30
  * const positions = [
31
31
  * Cesium.Cartographic.fromDegrees(86.925145, 27.988257),
32
32
  * Cesium.Cartographic.fromDegrees(87.0, 28.0)
33
33
  * ];
34
- * const promise = Cesium.sampleTerrain(terrainProvider, 11, positions);
35
- * Promise.resolve(promise).then(function(updatedPositions) {
36
- * // positions[0].height and positions[1].height have been updated.
37
- * // updatedPositions is just a reference to positions.
38
- * });
34
+ * const updatedPositions = await Cesium.sampleTerrain(terrainProvider, 11, positions);
35
+ * // positions[0].height and positions[1].height have been updated.
36
+ * // updatedPositions is just a reference to positions.
39
37
  */
40
- function sampleTerrain(terrainProvider, level, positions) {
38
+ async function sampleTerrain(terrainProvider, level, positions) {
41
39
  //>>includeStart('debug', pragmas.debug);
42
40
  Check.typeOf.object("terrainProvider", terrainProvider);
43
41
  Check.typeOf.number("level", level);
44
42
  Check.defined("positions", positions);
45
43
  //>>includeEnd('debug');
46
44
 
47
- return terrainProvider.readyPromise.then(function () {
48
- return doSampling(terrainProvider, level, positions);
49
- });
45
+ // readyPromise has been deprecated; This is here for backwards compatibility
46
+ await terrainProvider._readyPromise;
47
+
48
+ return doSampling(terrainProvider, level, positions);
50
49
  }
51
50
 
52
51
  /**
53
- * @param {Array.<Object>} tileRequests The mutated list of requests, the first one will be attempted
54
- * @param {Array.<Promise<void>>} results The list to put the result promises into
52
+ * @param {object[]} tileRequests The mutated list of requests, the first one will be attempted
53
+ * @param {Array<Promise<void>>} results The list to put the result promises into
55
54
  * @returns {boolean} true if the request was made, and we are okay to attempt the next item immediately,
56
55
  * or false if we were throttled and should wait awhile before retrying.
57
56
  *
@@ -97,8 +96,8 @@ function delay(ms) {
97
96
  /**
98
97
  * Recursively consumes all the tileRequests until the list has been emptied
99
98
  * and a Promise of each result has been put into the results list
100
- * @param {Array.<Object>} tileRequests The list of requests desired to be made
101
- * @param {Array.<Promise<void>>} results The list to put all the result promises into
99
+ * @param {object[]} tileRequests The list of requests desired to be made
100
+ * @param {Array<Promise<void>>} results The list to put all the result promises into
102
101
  * @returns {Promise<void>} A promise which resolves once all requests have been started
103
102
  *
104
103
  * @private
@@ -176,7 +175,7 @@ function doSampling(terrainProvider, level, positions) {
176
175
  * @param {Cartographic} position The position to interpolate for and assign the height value to
177
176
  * @param {TerrainData} terrainData
178
177
  * @param {Rectangle} rectangle
179
- * @returns {Boolean} If the height was actually interpolated and assigned
178
+ * @returns {boolean} If the height was actually interpolated and assigned
180
179
  * @private
181
180
  */
182
181
  function interpolateAndAssignHeight(position, terrainData, rectangle) {
@@ -12,23 +12,21 @@ const scratchCartesian2 = new Cartesian2();
12
12
  *
13
13
  * @param {TerrainProvider} terrainProvider The terrain provider from which to query heights.
14
14
  * @param {Cartographic[]} positions The positions to update with terrain heights.
15
- * @returns {Promise.<Cartographic[]>} A promise that resolves to the provided list of positions when terrain the query has completed. This
15
+ * @returns {Promise<Cartographic[]>} A promise that resolves to the provided list of positions when terrain the query has completed. This
16
16
  * promise will reject if the terrain provider's `availability` property is undefined.
17
17
  *
18
18
  * @example
19
19
  * // Query the terrain height of two Cartographic positions
20
- * const terrainProvider = Cesium.createWorldTerrain();
20
+ * const terrainProvider = await Cesium.createWorldTerrainAsync();
21
21
  * const positions = [
22
22
  * Cesium.Cartographic.fromDegrees(86.925145, 27.988257),
23
23
  * Cesium.Cartographic.fromDegrees(87.0, 28.0)
24
24
  * ];
25
- * const promise = Cesium.sampleTerrainMostDetailed(terrainProvider, positions);
26
- * Promise.resolve(promise).then(function(updatedPositions) {
27
- * // positions[0].height and positions[1].height have been updated.
28
- * // updatedPositions is just a reference to positions.
29
- * });
25
+ * const updatedPositions = await Cesium.sampleTerrainMostDetailed(terrainProvider, positions);
26
+ * // positions[0].height and positions[1].height have been updated.
27
+ * // updatedPositions is just a reference to positions.
30
28
  */
31
- function sampleTerrainMostDetailed(terrainProvider, positions) {
29
+ async function sampleTerrainMostDetailed(terrainProvider, positions) {
32
30
  //>>includeStart('debug', pragmas.debug);
33
31
  if (!defined(terrainProvider)) {
34
32
  throw new DeveloperError("terrainProvider is required.");
@@ -38,80 +36,76 @@ function sampleTerrainMostDetailed(terrainProvider, positions) {
38
36
  }
39
37
  //>>includeEnd('debug');
40
38
 
41
- return terrainProvider.readyPromise.then(function () {
42
- const byLevel = [];
43
- const maxLevels = [];
39
+ const byLevel = [];
40
+ const maxLevels = [];
44
41
 
45
- const availability = terrainProvider.availability;
42
+ // readyPromise has been deprecated; This is here for backwards compatibility
43
+ await terrainProvider._readyPromise;
46
44
 
47
- //>>includeStart('debug', pragmas.debug);
48
- if (!defined(availability)) {
49
- throw new DeveloperError(
50
- "sampleTerrainMostDetailed requires a terrain provider that has tile availability."
45
+ const availability = terrainProvider.availability;
46
+
47
+ //>>includeStart('debug', pragmas.debug);
48
+ if (!defined(availability)) {
49
+ throw new DeveloperError(
50
+ "sampleTerrainMostDetailed requires a terrain provider that has tile availability."
51
+ );
52
+ }
53
+ //>>includeEnd('debug');
54
+
55
+ const promises = [];
56
+ for (let i = 0; i < positions.length; ++i) {
57
+ const position = positions[i];
58
+ const maxLevel = availability.computeMaximumLevelAtPosition(position);
59
+ maxLevels[i] = maxLevel;
60
+ if (maxLevel === 0) {
61
+ // This is a special case where we have a parent terrain and we are requesting
62
+ // heights from an area that isn't covered by the top level terrain at all.
63
+ // This will essentially trigger the loading of the parent terrains root tile
64
+ terrainProvider.tilingScheme.positionToTileXY(
65
+ position,
66
+ 1,
67
+ scratchCartesian2
68
+ );
69
+ const promise = terrainProvider.loadTileDataAvailability(
70
+ scratchCartesian2.x,
71
+ scratchCartesian2.y,
72
+ 1
51
73
  );
74
+ if (defined(promise)) {
75
+ promises.push(promise);
76
+ }
52
77
  }
53
- //>>includeEnd('debug');
54
78
 
55
- const promises = [];
56
- for (let i = 0; i < positions.length; ++i) {
57
- const position = positions[i];
58
- const maxLevel = availability.computeMaximumLevelAtPosition(position);
59
- maxLevels[i] = maxLevel;
60
- if (maxLevel === 0) {
61
- // This is a special case where we have a parent terrain and we are requesting
62
- // heights from an area that isn't covered by the top level terrain at all.
63
- // This will essentially trigger the loading of the parent terrains root tile
64
- terrainProvider.tilingScheme.positionToTileXY(
65
- position,
66
- 1,
67
- scratchCartesian2
68
- );
69
- const promise = terrainProvider.loadTileDataAvailability(
70
- scratchCartesian2.x,
71
- scratchCartesian2.y,
72
- 1
73
- );
74
- if (defined(promise)) {
75
- promises.push(promise);
76
- }
77
- }
79
+ let atLevel = byLevel[maxLevel];
80
+ if (!defined(atLevel)) {
81
+ byLevel[maxLevel] = atLevel = [];
82
+ }
83
+ atLevel.push(position);
84
+ }
78
85
 
79
- let atLevel = byLevel[maxLevel];
80
- if (!defined(atLevel)) {
81
- byLevel[maxLevel] = atLevel = [];
86
+ await Promise.all(promises);
87
+ await Promise.all(
88
+ byLevel.map(function (positionsAtLevel, index) {
89
+ if (defined(positionsAtLevel)) {
90
+ return sampleTerrain(terrainProvider, index, positionsAtLevel);
82
91
  }
83
- atLevel.push(position);
84
- }
92
+ })
93
+ );
94
+ const changedPositions = [];
95
+ for (let i = 0; i < positions.length; ++i) {
96
+ const position = positions[i];
97
+ const maxLevel = availability.computeMaximumLevelAtPosition(position);
85
98
 
86
- return Promise.all(promises)
87
- .then(function () {
88
- return Promise.all(
89
- byLevel.map(function (positionsAtLevel, index) {
90
- if (defined(positionsAtLevel)) {
91
- return sampleTerrain(terrainProvider, index, positionsAtLevel);
92
- }
93
- })
94
- );
95
- })
96
- .then(function () {
97
- const changedPositions = [];
98
- for (let i = 0; i < positions.length; ++i) {
99
- const position = positions[i];
100
- const maxLevel = availability.computeMaximumLevelAtPosition(position);
99
+ if (maxLevel !== maxLevels[i]) {
100
+ // Now that we loaded the max availability, a higher level has become available
101
+ changedPositions.push(position);
102
+ }
103
+ }
101
104
 
102
- if (maxLevel !== maxLevels[i]) {
103
- // Now that we loaded the max availability, a higher level has become available
104
- changedPositions.push(position);
105
- }
106
- }
105
+ if (changedPositions.length > 0) {
106
+ await sampleTerrainMostDetailed(terrainProvider, changedPositions);
107
+ }
107
108
 
108
- if (changedPositions.length > 0) {
109
- return sampleTerrainMostDetailed(terrainProvider, changedPositions);
110
- }
111
- })
112
- .then(function () {
113
- return positions;
114
- });
115
- });
109
+ return positions;
116
110
  }
117
111
  export default sampleTerrainMostDetailed;
@@ -14,7 +14,7 @@ const scaleToGeodeticSurfaceGradient = new Cartesian3();
14
14
  * @param {Cartesian3} cartesian The Cartesian position to scale.
15
15
  * @param {Cartesian3} oneOverRadii One over radii of the ellipsoid.
16
16
  * @param {Cartesian3} oneOverRadiiSquared One over radii squared of the ellipsoid.
17
- * @param {Number} centerToleranceSquared Tolerance for closeness to the center.
17
+ * @param {number} centerToleranceSquared Tolerance for closeness to the center.
18
18
  * @param {Cartesian3} [result] The object onto which to store the result.
19
19
  * @returns {Cartesian3} The modified result parameter, a new Cartesian3 instance if none was provided, or undefined if the position is at the center.
20
20
  *
@@ -7,7 +7,7 @@ import DeveloperError from "./DeveloperError.js";
7
7
  * @function subdivideArray
8
8
  *
9
9
  * @param {Array} array The array to divide.
10
- * @param {Number} numberOfArrays The number of arrays to divide the provided array into.
10
+ * @param {number} numberOfArrays The number of arrays to divide the provided array into.
11
11
  *
12
12
  * @exception {DeveloperError} numberOfArrays must be greater than 0.
13
13
  */
@@ -101,17 +101,17 @@ let imageSmoothingEnabledName;
101
101
  * Writes the given text into a new canvas. The canvas will be sized to fit the text.
102
102
  * If text is blank, returns undefined.
103
103
  *
104
- * @param {String} text The text to write.
105
- * @param {Object} [options] Object with the following properties:
106
- * @param {String} [options.font='10px sans-serif'] The CSS font to use.
107
- * @param {String} [options.textBaseline='bottom'] The baseline of the text.
108
- * @param {Boolean} [options.fill=true] Whether to fill the text.
109
- * @param {Boolean} [options.stroke=false] Whether to stroke the text.
104
+ * @param {string} text The text to write.
105
+ * @param {object} [options] Object with the following properties:
106
+ * @param {string} [options.font='10px sans-serif'] The CSS font to use.
107
+ * @param {string} [options.textBaseline='bottom'] The baseline of the text.
108
+ * @param {boolean} [options.fill=true] Whether to fill the text.
109
+ * @param {boolean} [options.stroke=false] Whether to stroke the text.
110
110
  * @param {Color} [options.fillColor=Color.WHITE] The fill color.
111
111
  * @param {Color} [options.strokeColor=Color.BLACK] The stroke color.
112
- * @param {Number} [options.strokeWidth=1] The stroke width.
112
+ * @param {number} [options.strokeWidth=1] The stroke width.
113
113
  * @param {Color} [options.backgroundColor=Color.TRANSPARENT] The background color of the canvas.
114
- * @param {Number} [options.padding=0] The pixel size of the padding to add around the text.
114
+ * @param {number} [options.padding=0] The pixel size of the padding to add around the text.
115
115
  * @returns {HTMLCanvasElement|undefined} A new canvas with the given text drawn into it. The dimensions object
116
116
  * from measureText will also be added to the returned canvas. If text is
117
117
  * blank, returns undefined.
@@ -143,7 +143,8 @@ function writeTextToCanvas(text, options) {
143
143
  canvas.width = 1;
144
144
  canvas.height = 1;
145
145
  canvas.style.font = font;
146
- const context2D = canvas.getContext("2d");
146
+ // Since multiple read-back operations are expected for labels, use the willReadFrequently option – See https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently
147
+ const context2D = canvas.getContext("2d", { willReadFrequently: true });
147
148
 
148
149
  if (!defined(imageSmoothingEnabledName)) {
149
150
  if (defined(context2D.imageSmoothingEnabled)) {
@@ -5,7 +5,7 @@ import Event from "../Core/Event.js";
5
5
  import createPropertyDescriptor from "./createPropertyDescriptor.js";
6
6
 
7
7
  /**
8
- * @typedef {Object} BillboardGraphics.ConstructorOptions
8
+ * @typedef {object} BillboardGraphics.ConstructorOptions
9
9
  *
10
10
  * Initialization options for the BillboardGraphics constructor
11
11
  *
@@ -75,7 +75,7 @@ function BillboardVisualizer(entityCluster, entityCollection) {
75
75
  * Entity counterpart at the given time.
76
76
  *
77
77
  * @param {JulianDate} time The time to update to.
78
- * @returns {Boolean} This function always returns true.
78
+ * @returns {boolean} This function always returns true.
79
79
  */
80
80
  BillboardVisualizer.prototype.update = function (time) {
81
81
  //>>includeStart('debug', pragmas.debug);
@@ -274,7 +274,7 @@ BillboardVisualizer.prototype.getBoundingSphere = function (entity, result) {
274
274
  /**
275
275
  * Returns true if this object was destroyed; otherwise, false.
276
276
  *
277
- * @returns {Boolean} True if this object was destroyed; otherwise, false.
277
+ * @returns {boolean} True if this object was destroyed; otherwise, false.
278
278
  */
279
279
  BillboardVisualizer.prototype.isDestroyed = function () {
280
280
  return false;
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * The state of a BoundingSphere computation being performed by a {@link Visualizer}.
3
- * @enum {Number}
3
+ * @enum {number}
4
4
  * @private
5
5
  */
6
6
  const BoundingSphereState = {
@@ -6,7 +6,7 @@ import createMaterialPropertyDescriptor from "./createMaterialPropertyDescriptor
6
6
  import createPropertyDescriptor from "./createPropertyDescriptor.js";
7
7
 
8
8
  /**
9
- * @typedef {Object} BoxGraphics.ConstructorOptions
9
+ * @typedef {object} BoxGraphics.ConstructorOptions
10
10
  *
11
11
  * Initialization options for the BoxGraphics constructor
12
12
  *
@@ -9,7 +9,7 @@ import Event from "../Core/Event.js";
9
9
  * @constructor
10
10
  *
11
11
  * @param {CallbackProperty.Callback} callback The function to be called when the property is evaluated.
12
- * @param {Boolean} isConstant <code>true</code> when the callback function returns the same value every time, <code>false</code> if the value will change.
12
+ * @param {boolean} isConstant <code>true</code> when the callback function returns the same value every time, <code>false</code> if the value will change.
13
13
  */
14
14
  function CallbackProperty(callback, isConstant) {
15
15
  this._callback = undefined;
@@ -23,7 +23,7 @@ Object.defineProperties(CallbackProperty.prototype, {
23
23
  * Gets a value indicating if this property is constant.
24
24
  * @memberof CallbackProperty.prototype
25
25
  *
26
- * @type {Boolean}
26
+ * @type {boolean}
27
27
  * @readonly
28
28
  */
29
29
  isConstant: {
@@ -50,8 +50,8 @@ Object.defineProperties(CallbackProperty.prototype, {
50
50
  * Gets the value of the property.
51
51
  *
52
52
  * @param {JulianDate} time The time for which to retrieve the value.
53
- * @param {Object} [result] The object to store the value into, if omitted, a new instance is created and returned.
54
- * @returns {Object} The modified result parameter or a new instance if the result parameter was not supplied or is unsupported.
53
+ * @param {object} [result] The object to store the value into, if omitted, a new instance is created and returned.
54
+ * @returns {object} The modified result parameter or a new instance if the result parameter was not supplied or is unsupported.
55
55
  */
56
56
  CallbackProperty.prototype.getValue = function (time, result) {
57
57
  return this._callback(time, result);
@@ -61,7 +61,7 @@ CallbackProperty.prototype.getValue = function (time, result) {
61
61
  * Sets the callback to be used.
62
62
  *
63
63
  * @param {CallbackProperty.Callback} callback The function to be called when the property is evaluated.
64
- * @param {Boolean} isConstant <code>true</code> when the callback function returns the same value every time, <code>false</code> if the value will change.
64
+ * @param {boolean} isConstant <code>true</code> when the callback function returns the same value every time, <code>false</code> if the value will change.
65
65
  */
66
66
  CallbackProperty.prototype.setCallback = function (callback, isConstant) {
67
67
  //>>includeStart('debug', pragmas.debug);
@@ -89,7 +89,7 @@ CallbackProperty.prototype.setCallback = function (callback, isConstant) {
89
89
  * <code>true</code> if they are equal, <code>false</code> otherwise.
90
90
  *
91
91
  * @param {Property} [other] The other property.
92
- * @returns {Boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
92
+ * @returns {boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
93
93
  */
94
94
  CallbackProperty.prototype.equals = function (other) {
95
95
  return (
@@ -105,7 +105,7 @@ CallbackProperty.prototype.equals = function (other) {
105
105
  * @callback CallbackProperty.Callback
106
106
  *
107
107
  * @param {JulianDate} time The time for which to retrieve the value.
108
- * @param {Object} [result] The object to store the value into. If omitted, the function must create and return a new instance.
109
- * @returns {Object} The modified result parameter, or a new instance if the result parameter was not supplied or is unsupported.
108
+ * @param {object} [result] The object to store the value into. If omitted, the function must create and return a new instance.
109
+ * @returns {object} The modified result parameter, or a new instance if the result parameter was not supplied or is unsupported.
110
110
  */
111
111
  export default CallbackProperty;
@@ -5,7 +5,7 @@ import Event from "../Core/Event.js";
5
5
  import createPropertyDescriptor from "./createPropertyDescriptor.js";
6
6
 
7
7
  /**
8
- * @typedef {Object} Cesium3DTilesetGraphics.ConstructorOptions
8
+ * @typedef {object} Cesium3DTilesetGraphics.ConstructorOptions
9
9
  *
10
10
  * Initialization options for the Cesium3DTilesetGraphics constructor
11
11
  *