@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
@@ -1,10 +1,12 @@
1
1
  import Cartesian2 from "../Core/Cartesian2.js";
2
2
  import Cartesian3 from "../Core/Cartesian3.js";
3
3
  import Cartographic from "../Core/Cartographic.js";
4
+ import Check from "../Core/Check.js";
4
5
  import combine from "../Core/combine.js";
5
6
  import Credit from "../Core/Credit.js";
6
7
  import defaultValue from "../Core/defaultValue.js";
7
8
  import defined from "../Core/defined.js";
9
+ import deprecationWarning from "../Core/deprecationWarning.js";
8
10
  import DeveloperError from "../Core/DeveloperError.js";
9
11
  import Event from "../Core/Event.js";
10
12
  import GeographicProjection from "../Core/GeographicProjection.js";
@@ -49,12 +51,12 @@ const pickFeaturesTags = combine(tags, {
49
51
  });
50
52
 
51
53
  /**
52
- * @typedef {Object} UrlTemplateImageryProvider.ConstructorOptions
54
+ * @typedef {object} UrlTemplateImageryProvider.ConstructorOptions
53
55
  *
54
56
  * Initialization options for the UrlTemplateImageryProvider constructor
55
57
  *
56
- * @property {Promise.<Object>|Object} [options] Object with the following properties:
57
- * @property {Resource|String} url The URL template to use to request tiles. It has the following keywords:
58
+ * @property {Promise<object>|object} [options] Object with the following properties:
59
+ * @property {Resource|string} url The URL template to use to request tiles. It has the following keywords:
58
60
  * <ul>
59
61
  * <li><code>{z}</code>: The level of the tile in the tiling scheme. Level zero is the root of the quadtree pyramid.</li>
60
62
  * <li><code>{x}</code>: The tile X coordinate in the tiling scheme, where 0 is the Westernmost tile.</li>
@@ -74,7 +76,7 @@ const pickFeaturesTags = combine(tags, {
74
76
  * <li><code>{width}</code>: The width of each tile in pixels.</li>
75
77
  * <li><code>{height}</code>: The height of each tile in pixels.</li>
76
78
  * </ul>
77
- * @property {Resource|String} [pickFeaturesUrl] The URL template to use to pick features. If this property is not specified,
79
+ * @property {Resource|string} [pickFeaturesUrl] The URL template to use to pick features. If this property is not specified,
78
80
  * {@link UrlTemplateImageryProvider#pickFeatures} will immediately returned undefined, indicating no
79
81
  * features picked. The URL template supports all of the keywords supported by the <code>url</code>
80
82
  * parameter, plus the following:
@@ -89,7 +91,7 @@ const pickFeaturesTags = combine(tags, {
89
91
  * <li><code>{latitudeProjected}</code>: The latitude of the picked position in the projected coordinates of the tiling scheme.</li>
90
92
  * <li><code>{format}</code>: The format in which to get feature information, as specified in the {@link GetFeatureInfoFormat}.</li>
91
93
  * </ul>
92
- * @property {Object} [urlSchemeZeroPadding] Gets the URL scheme zero padding for each tile coordinate. The format is '000' where
94
+ * @property {object} [urlSchemeZeroPadding] Gets the URL scheme zero padding for each tile coordinate. The format is '000' where
93
95
  * each coordinate will be padded on the left with zeros to match the width of the passed string of zeros. e.g. Setting:
94
96
  * urlSchemeZeroPadding : { '{x}' : '0000'}
95
97
  * will cause an 'x' value of 12 to return the string '0012' for {x} in the generated URL.
@@ -102,14 +104,14 @@ const pickFeaturesTags = combine(tags, {
102
104
  * <li> <code>{reverseY}</code>: The zero padding for the tile reverseY coordinate in the tiling scheme.</li>
103
105
  * <li> <code>{reverseZ}</code>: The zero padding for the reverseZ coordinate of the tile in the tiling scheme.</li>
104
106
  * </ul>
105
- * @property {String|String[]} [subdomains='abc'] The subdomains to use for the <code>{s}</code> placeholder in the URL template.
107
+ * @property {string|string[]} [subdomains='abc'] The subdomains to use for the <code>{s}</code> placeholder in the URL template.
106
108
  * If this parameter is a single string, each character in the string is a subdomain. If it is
107
109
  * an array, each element in the array is a subdomain.
108
- * @property {Credit|String} [credit=''] A credit for the data source, which is displayed on the canvas.
109
- * @property {Number} [minimumLevel=0] The minimum level-of-detail supported by the imagery provider. Take care when specifying
110
+ * @property {Credit|string} [credit=''] A credit for the data source, which is displayed on the canvas.
111
+ * @property {number} [minimumLevel=0] The minimum level-of-detail supported by the imagery provider. Take care when specifying
110
112
  * this that the number of tiles at the minimum level is small, such as four or less. A larger number is likely
111
113
  * to result in rendering problems.
112
- * @property {Number} [maximumLevel] The maximum level-of-detail supported by the imagery provider, or undefined if there is no limit.
114
+ * @property {number} [maximumLevel] The maximum level-of-detail supported by the imagery provider, or undefined if there is no limit.
113
115
  * @property {Rectangle} [rectangle=Rectangle.MAX_VALUE] The rectangle, in radians, covered by the image.
114
116
  * @property {TilingScheme} [tilingScheme=WebMercatorTilingScheme] The tiling scheme specifying how the ellipsoidal
115
117
  * surface is broken into tiles. If this parameter is not provided, a {@link WebMercatorTilingScheme}
@@ -117,9 +119,9 @@ const pickFeaturesTags = combine(tags, {
117
119
  * @property {Ellipsoid} [ellipsoid] The ellipsoid. If the tilingScheme is specified,
118
120
  * this parameter is ignored and the tiling scheme's ellipsoid is used instead. If neither
119
121
  * parameter is specified, the WGS84 ellipsoid is used.
120
- * @property {Number} [tileWidth=256] Pixel width of image tiles.
121
- * @property {Number} [tileHeight=256] Pixel height of image tiles.
122
- * @property {Boolean} [hasAlphaChannel=true] true if the images provided by this imagery provider
122
+ * @property {number} [tileWidth=256] Pixel width of image tiles.
123
+ * @property {number} [tileHeight=256] Pixel height of image tiles.
124
+ * @property {boolean} [hasAlphaChannel=true] true if the images provided by this imagery provider
123
125
  * include an alpha channel; otherwise, false. If this property is false, an alpha channel, if
124
126
  * present, will be ignored. If this property is true, any images without an alpha channel will
125
127
  * be treated as if their alpha is 1.0 everywhere. When this property is false, memory usage
@@ -127,13 +129,14 @@ const pickFeaturesTags = combine(tags, {
127
129
  * @property {GetFeatureInfoFormat[]} [getFeatureInfoFormats] The formats in which to get feature information at a
128
130
  * specific location when {@link UrlTemplateImageryProvider#pickFeatures} is invoked. If this
129
131
  * parameter is not specified, feature picking is disabled.
130
- * @property {Boolean} [enablePickFeatures=true] If true, {@link UrlTemplateImageryProvider#pickFeatures} will
132
+ * @property {boolean} [enablePickFeatures=true] If true, {@link UrlTemplateImageryProvider#pickFeatures} will
131
133
  * request the <code>pickFeaturesUrl</code> and attempt to interpret the features included in the response. If false,
132
134
  * {@link UrlTemplateImageryProvider#pickFeatures} will immediately return undefined (indicating no pickable
133
135
  * features) without communicating with the server. Set this property to false if you know your data
134
136
  * source does not support picking features or if you don't want this provider's features to be pickable. Note
135
137
  * that this can be dynamically overridden by modifying the {@link UriTemplateImageryProvider#enablePickFeatures}
136
138
  * property.
139
+ * @property {TileDiscardPolicy} [tileDiscardPolicy] A policy for discarding tile images according to some criteria
137
140
  * @property {Object} [customTags] Allow to replace custom keywords in the URL template. The object must have strings as keys and functions as values.
138
141
  */
139
142
 
@@ -149,7 +152,6 @@ const pickFeaturesTags = combine(tags, {
149
152
  * // Access Natural Earth II imagery, which uses a TMS tiling scheme and Geographic (EPSG:4326) project
150
153
  * const tms = new Cesium.UrlTemplateImageryProvider({
151
154
  * url : Cesium.buildModuleUrl('Assets/Textures/NaturalEarthII') + '/{z}/{x}/{reverseY}.jpg',
152
- * credit : '© Analytical Graphics, Inc.',
153
155
  * tilingScheme : new Cesium.GeographicTilingScheme(),
154
156
  * maximumLevel : 5
155
157
  * });
@@ -188,118 +190,83 @@ const pickFeaturesTags = combine(tags, {
188
190
  * @see WebMapTileServiceImageryProvider
189
191
  */
190
192
  function UrlTemplateImageryProvider(options) {
191
- //>>includeStart('debug', pragmas.debug);
192
- if (!defined(options)) {
193
- throw new DeveloperError("options is required.");
194
- }
195
- if (!defined(options.then) && !defined(options.url)) {
196
- throw new DeveloperError("options is required.");
197
- }
198
- //>>includeEnd('debug');
193
+ options = defaultValue(options, defaultValue.EMPTY_OBJECT);
199
194
 
200
195
  this._errorEvent = new Event();
201
196
 
202
- this._resource = undefined;
203
- this._urlSchemeZeroPadding = undefined;
204
- this._pickFeaturesResource = undefined;
205
- this._tileWidth = undefined;
206
- this._tileHeight = undefined;
207
- this._maximumLevel = undefined;
208
- this._minimumLevel = undefined;
209
- this._tilingScheme = undefined;
210
- this._rectangle = undefined;
211
- this._tileDiscardPolicy = undefined;
212
- this._credit = undefined;
213
- this._hasAlphaChannel = undefined;
214
- this._readyPromise = undefined;
215
- this._tags = undefined;
216
- this._pickFeaturesTags = undefined;
217
-
218
- /**
219
- * The default alpha blending value of this provider, with 0.0 representing fully transparent and
220
- * 1.0 representing fully opaque.
221
- *
222
- * @type {Number|undefined}
223
- * @default undefined
224
- */
225
- this.defaultAlpha = undefined;
226
-
227
- /**
228
- * The default alpha blending value on the night side of the globe of this provider, with 0.0 representing fully transparent and
229
- * 1.0 representing fully opaque.
230
- *
231
- * @type {Number|undefined}
232
- * @default undefined
233
- */
234
- this.defaultNightAlpha = undefined;
235
-
236
- /**
237
- * The default alpha blending value on the day side of the globe of this provider, with 0.0 representing fully transparent and
238
- * 1.0 representing fully opaque.
239
- *
240
- * @type {Number|undefined}
241
- * @default undefined
242
- */
243
- this.defaultDayAlpha = undefined;
197
+ if (defined(options.then)) {
198
+ this._reinitialize(options);
199
+ return;
200
+ }
244
201
 
245
- /**
246
- * The default brightness of this provider. 1.0 uses the unmodified imagery color. Less than 1.0
247
- * makes the imagery darker while greater than 1.0 makes it brighter.
248
- *
249
- * @type {Number|undefined}
250
- * @default undefined
251
- */
252
- this.defaultBrightness = undefined;
202
+ //>>includeStart('debug', pragmas.debug);
203
+ Check.defined("options.url", options.url);
204
+ //>>includeEnd('debug');
253
205
 
254
- /**
255
- * The default contrast of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
256
- * the contrast while greater than 1.0 increases it.
257
- *
258
- * @type {Number|undefined}
259
- * @default undefined
260
- */
261
- this.defaultContrast = undefined;
206
+ const resource = Resource.createIfNeeded(options.url);
207
+ const pickFeaturesResource = Resource.createIfNeeded(options.pickFeaturesUrl);
262
208
 
263
- /**
264
- * The default hue of this provider in radians. 0.0 uses the unmodified imagery color.
265
- *
266
- * @type {Number|undefined}
267
- * @default undefined
268
- */
269
- this.defaultHue = undefined;
209
+ this._resource = resource;
210
+ this._urlSchemeZeroPadding = options.urlSchemeZeroPadding;
211
+ this._getFeatureInfoFormats = options.getFeatureInfoFormats;
212
+ this._pickFeaturesResource = pickFeaturesResource;
270
213
 
271
- /**
272
- * The default saturation of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
273
- * saturation while greater than 1.0 increases it.
274
- *
275
- * @type {Number|undefined}
276
- * @default undefined
277
- */
278
- this.defaultSaturation = undefined;
214
+ let subdomains = options.subdomains;
215
+ if (Array.isArray(subdomains)) {
216
+ subdomains = subdomains.slice();
217
+ } else if (defined(subdomains) && subdomains.length > 0) {
218
+ subdomains = subdomains.split("");
219
+ } else {
220
+ subdomains = ["a", "b", "c"];
221
+ }
222
+ this._subdomains = subdomains;
223
+
224
+ this._tileWidth = defaultValue(options.tileWidth, 256);
225
+ this._tileHeight = defaultValue(options.tileHeight, 256);
226
+ this._minimumLevel = defaultValue(options.minimumLevel, 0);
227
+ this._maximumLevel = options.maximumLevel;
228
+ this._tilingScheme = defaultValue(
229
+ options.tilingScheme,
230
+ new WebMercatorTilingScheme({ ellipsoid: options.ellipsoid })
231
+ );
279
232
 
280
- /**
281
- * The default gamma correction to apply to this provider. 1.0 uses the unmodified imagery color.
282
- *
283
- * @type {Number|undefined}
284
- * @default undefined
285
- */
286
- this.defaultGamma = undefined;
233
+ this._rectangle = defaultValue(
234
+ options.rectangle,
235
+ this._tilingScheme.rectangle
236
+ );
237
+ this._rectangle = Rectangle.intersection(
238
+ this._rectangle,
239
+ this._tilingScheme.rectangle
240
+ );
287
241
 
288
- /**
289
- * The default texture minification filter to apply to this provider.
290
- *
291
- * @type {TextureMinificationFilter}
292
- * @default undefined
293
- */
294
- this.defaultMinificationFilter = undefined;
242
+ this._tileDiscardPolicy = options.tileDiscardPolicy;
295
243
 
296
- /**
297
- * The default texture magnification filter to apply to this provider.
298
- *
299
- * @type {TextureMagnificationFilter}
300
- * @default undefined
301
- */
302
- this.defaultMagnificationFilter = undefined;
244
+ let credit = options.credit;
245
+ if (typeof credit === "string") {
246
+ credit = new Credit(credit);
247
+ }
248
+ this._credit = credit;
249
+ this._hasAlphaChannel = defaultValue(options.hasAlphaChannel, true);
250
+
251
+ const customTags = options.customTags;
252
+ const allTags = combine(tags, customTags);
253
+ const allPickFeaturesTags = combine(pickFeaturesTags, customTags);
254
+ this._tags = allTags;
255
+ this._pickFeaturesTags = allPickFeaturesTags;
256
+
257
+ this._readyPromise = Promise.resolve(true);
258
+ this._ready = true;
259
+
260
+ this._defaultAlpha = undefined;
261
+ this._defaultNightAlpha = undefined;
262
+ this._defaultDayAlpha = undefined;
263
+ this._defaultBrightness = undefined;
264
+ this._defaultContrast = undefined;
265
+ this._defaultHue = undefined;
266
+ this._defaultSaturation = undefined;
267
+ this._defaultGamma = undefined;
268
+ this._defaultMinificationFilter = undefined;
269
+ this._defaultMagnificationFilter = undefined;
303
270
 
304
271
  /**
305
272
  * Gets or sets a value indicating whether feature picking is enabled. If true, {@link UrlTemplateImageryProvider#pickFeatures} will
@@ -307,12 +274,10 @@ function UrlTemplateImageryProvider(options) {
307
274
  * {@link UrlTemplateImageryProvider#pickFeatures} will immediately return undefined (indicating no pickable
308
275
  * features) without communicating with the server. Set this property to false if you know your data
309
276
  * source does not support picking features or if you don't want this provider's features to be pickable.
310
- * @type {Boolean}
277
+ * @type {boolean}
311
278
  * @default true
312
279
  */
313
- this.enablePickFeatures = true;
314
-
315
- this.reinitialize(options);
280
+ this.enablePickFeatures = defaultValue(options.enablePickFeatures, true);
316
281
  }
317
282
 
318
283
  Object.defineProperties(UrlTemplateImageryProvider.prototype, {
@@ -338,7 +303,7 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
338
303
  * <li> <code>{height}</code>: The height of each tile in pixels.</li>
339
304
  * </ul>
340
305
  * @memberof UrlTemplateImageryProvider.prototype
341
- * @type {String}
306
+ * @type {string}
342
307
  * @readonly
343
308
  */
344
309
  url: {
@@ -362,7 +327,7 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
362
327
  * <li> <code>{reverseZ}</code>: The zero padding for the reverseZ coordinate of the tile in the tiling scheme.</li>
363
328
  * </ul>
364
329
  * @memberof UrlTemplateImageryProvider.prototype
365
- * @type {Object}
330
+ * @type {object}
366
331
  * @readonly
367
332
  */
368
333
  urlSchemeZeroPadding: {
@@ -388,7 +353,7 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
388
353
  * <li><code>{format}</code>: The format in which to get feature information, as specified in the {@link GetFeatureInfoFormat}.</li>
389
354
  * </ul>
390
355
  * @memberof UrlTemplateImageryProvider.prototype
391
- * @type {String}
356
+ * @type {string}
392
357
  * @readonly
393
358
  */
394
359
  pickFeaturesUrl: {
@@ -411,92 +376,59 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
411
376
  },
412
377
 
413
378
  /**
414
- * Gets the width of each tile, in pixels. This function should
415
- * not be called before {@link UrlTemplateImageryProvider#ready} returns true.
379
+ * Gets the width of each tile, in pixels.
416
380
  * @memberof UrlTemplateImageryProvider.prototype
417
- * @type {Number}
381
+ * @type {number}
418
382
  * @readonly
419
383
  * @default 256
420
384
  */
421
385
  tileWidth: {
422
386
  get: function () {
423
- //>>includeStart('debug', pragmas.debug);
424
- if (!this.ready) {
425
- throw new DeveloperError(
426
- "tileWidth must not be called before the imagery provider is ready."
427
- );
428
- }
429
- //>>includeEnd('debug');
430
387
  return this._tileWidth;
431
388
  },
432
389
  },
433
390
 
434
391
  /**
435
- * Gets the height of each tile, in pixels. This function should
436
- * not be called before {@link UrlTemplateImageryProvider#ready} returns true.
392
+ * Gets the height of each tile, in pixels.
437
393
  * @memberof UrlTemplateImageryProvider.prototype
438
- * @type {Number}
394
+ * @type {number}
439
395
  * @readonly
440
396
  * @default 256
441
397
  */
442
398
  tileHeight: {
443
399
  get: function () {
444
- //>>includeStart('debug', pragmas.debug);
445
- if (!this.ready) {
446
- throw new DeveloperError(
447
- "tileHeight must not be called before the imagery provider is ready."
448
- );
449
- }
450
- //>>includeEnd('debug');
451
400
  return this._tileHeight;
452
401
  },
453
402
  },
454
403
 
455
404
  /**
456
405
  * Gets the maximum level-of-detail that can be requested, or undefined if there is no limit.
457
- * This function should not be called before {@link UrlTemplateImageryProvider#ready} returns true.
458
406
  * @memberof UrlTemplateImageryProvider.prototype
459
- * @type {Number|undefined}
407
+ * @type {number|undefined}
460
408
  * @readonly
461
409
  * @default undefined
462
410
  */
463
411
  maximumLevel: {
464
412
  get: function () {
465
- //>>includeStart('debug', pragmas.debug);
466
- if (!this.ready) {
467
- throw new DeveloperError(
468
- "maximumLevel must not be called before the imagery provider is ready."
469
- );
470
- }
471
- //>>includeEnd('debug');
472
413
  return this._maximumLevel;
473
414
  },
474
415
  },
475
416
 
476
417
  /**
477
- * Gets the minimum level-of-detail that can be requested. This function should
478
- * not be called before {@link UrlTemplateImageryProvider#ready} returns true.
418
+ * Gets the minimum level-of-detail that can be requested.
479
419
  * @memberof UrlTemplateImageryProvider.prototype
480
- * @type {Number}
420
+ * @type {number}
481
421
  * @readonly
482
422
  * @default 0
483
423
  */
484
424
  minimumLevel: {
485
425
  get: function () {
486
- //>>includeStart('debug', pragmas.debug);
487
- if (!this.ready) {
488
- throw new DeveloperError(
489
- "minimumLevel must not be called before the imagery provider is ready."
490
- );
491
- }
492
- //>>includeEnd('debug');
493
426
  return this._minimumLevel;
494
427
  },
495
428
  },
496
429
 
497
430
  /**
498
- * Gets the tiling scheme used by this provider. This function should
499
- * not be called before {@link UrlTemplateImageryProvider#ready} returns true.
431
+ * Gets the tiling scheme used by this provider.
500
432
  * @memberof UrlTemplateImageryProvider.prototype
501
433
  * @type {TilingScheme}
502
434
  * @readonly
@@ -504,20 +436,12 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
504
436
  */
505
437
  tilingScheme: {
506
438
  get: function () {
507
- //>>includeStart('debug', pragmas.debug);
508
- if (!this.ready) {
509
- throw new DeveloperError(
510
- "tilingScheme must not be called before the imagery provider is ready."
511
- );
512
- }
513
- //>>includeEnd('debug');
514
439
  return this._tilingScheme;
515
440
  },
516
441
  },
517
442
 
518
443
  /**
519
- * Gets the rectangle, in radians, of the imagery provided by this instance. This function should
520
- * not be called before {@link UrlTemplateImageryProvider#ready} returns true.
444
+ * Gets the rectangle, in radians, of the imagery provided by this instance.
521
445
  * @memberof UrlTemplateImageryProvider.prototype
522
446
  * @type {Rectangle}
523
447
  * @readonly
@@ -525,13 +449,6 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
525
449
  */
526
450
  rectangle: {
527
451
  get: function () {
528
- //>>includeStart('debug', pragmas.debug);
529
- if (!this.ready) {
530
- throw new DeveloperError(
531
- "rectangle must not be called before the imagery provider is ready."
532
- );
533
- }
534
- //>>includeEnd('debug');
535
452
  return this._rectangle;
536
453
  },
537
454
  },
@@ -539,8 +456,7 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
539
456
  /**
540
457
  * Gets the tile discard policy. If not undefined, the discard policy is responsible
541
458
  * for filtering out "missing" tiles via its shouldDiscardImage function. If this function
542
- * returns undefined, no tiles are filtered. This function should
543
- * not be called before {@link UrlTemplateImageryProvider#ready} returns true.
459
+ * returns undefined, no tiles are filtered.
544
460
  * @memberof UrlTemplateImageryProvider.prototype
545
461
  * @type {TileDiscardPolicy}
546
462
  * @readonly
@@ -548,13 +464,6 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
548
464
  */
549
465
  tileDiscardPolicy: {
550
466
  get: function () {
551
- //>>includeStart('debug', pragmas.debug);
552
- if (!this.ready) {
553
- throw new DeveloperError(
554
- "tileDiscardPolicy must not be called before the imagery provider is ready."
555
- );
556
- }
557
- //>>includeEnd('debug');
558
467
  return this._tileDiscardPolicy;
559
468
  },
560
469
  },
@@ -576,30 +485,40 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
576
485
  /**
577
486
  * Gets a value indicating whether or not the provider is ready for use.
578
487
  * @memberof UrlTemplateImageryProvider.prototype
579
- * @type {Boolean}
488
+ * @type {boolean}
580
489
  * @readonly
490
+ * @deprecated
581
491
  */
582
492
  ready: {
583
493
  get: function () {
584
- return defined(this._resource);
494
+ deprecationWarning(
495
+ "UrlTemplateImageryProvider.ready",
496
+ "UrlTemplateImageryProvider.ready was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107."
497
+ );
498
+ return this._ready && defined(this._resource);
585
499
  },
586
500
  },
587
501
 
588
502
  /**
589
503
  * Gets a promise that resolves to true when the provider is ready for use.
590
504
  * @memberof UrlTemplateImageryProvider.prototype
591
- * @type {Promise.<Boolean>}
505
+ * @type {Promise<boolean>}
592
506
  * @readonly
507
+ * @deprecated
593
508
  */
594
509
  readyPromise: {
595
510
  get: function () {
511
+ deprecationWarning(
512
+ "UrlTemplateImageryProvider.readyPromise",
513
+ "UrlTemplateImageryProvider.readyPromise was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107."
514
+ );
596
515
  return this._readyPromise;
597
516
  },
598
517
  },
599
518
 
600
519
  /**
601
520
  * Gets the credit to display when this imagery provider is active. Typically this is used to credit
602
- * the source of the imagery. This function should not be called before {@link UrlTemplateImageryProvider#ready} returns true.
521
+ * the source of the imagery.
603
522
  * @memberof UrlTemplateImageryProvider.prototype
604
523
  * @type {Credit}
605
524
  * @readonly
@@ -607,13 +526,6 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
607
526
  */
608
527
  credit: {
609
528
  get: function () {
610
- //>>includeStart('debug', pragmas.debug);
611
- if (!this.ready) {
612
- throw new DeveloperError(
613
- "credit must not be called before the imagery provider is ready."
614
- );
615
- }
616
- //>>includeEnd('debug');
617
529
  return this._credit;
618
530
  },
619
531
  },
@@ -623,35 +535,277 @@ Object.defineProperties(UrlTemplateImageryProvider.prototype, {
623
535
  * include an alpha channel. If this property is false, an alpha channel, if present, will
624
536
  * be ignored. If this property is true, any images without an alpha channel will be treated
625
537
  * as if their alpha is 1.0 everywhere. When this property is false, memory usage
626
- * and texture upload time are reduced. This function should
627
- * not be called before {@link ImageryProvider#ready} returns true.
538
+ * and texture upload time are reduced.
628
539
  * @memberof UrlTemplateImageryProvider.prototype
629
- * @type {Boolean}
540
+ * @type {boolean}
630
541
  * @readonly
631
542
  * @default true
632
543
  */
633
544
  hasAlphaChannel: {
634
545
  get: function () {
635
- //>>includeStart('debug', pragmas.debug);
636
- if (!this.ready) {
637
- throw new DeveloperError(
638
- "hasAlphaChannel must not be called before the imagery provider is ready."
639
- );
640
- }
641
- //>>includeEnd('debug');
642
546
  return this._hasAlphaChannel;
643
547
  },
644
548
  },
549
+
550
+ /**
551
+ * The default alpha blending value of this provider, with 0.0 representing fully transparent and
552
+ * 1.0 representing fully opaque.
553
+ * @memberof UrlTemplateImageryProvider.prototype
554
+ * @type {Number|undefined}
555
+ * @deprecated
556
+ */
557
+ defaultAlpha: {
558
+ get: function () {
559
+ deprecationWarning(
560
+ "UrlTemplateImageryProvider.defaultAlpha",
561
+ "UrlTemplateImageryProvider.defaultAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.alpha instead."
562
+ );
563
+ return this._defaultAlpha;
564
+ },
565
+ set: function (value) {
566
+ deprecationWarning(
567
+ "UrlTemplateImageryProvider.defaultAlpha",
568
+ "UrlTemplateImageryProvider.defaultAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.alpha instead."
569
+ );
570
+ this._defaultAlpha = value;
571
+ },
572
+ },
573
+
574
+ /**
575
+ * The default alpha blending value on the night side of the globe of this provider, with 0.0 representing fully transparent and
576
+ * 1.0 representing fully opaque.
577
+ * @memberof UrlTemplateImageryProvider.prototype
578
+ * @type {Number|undefined}
579
+ * @deprecated
580
+ */
581
+ defaultNightAlpha: {
582
+ get: function () {
583
+ deprecationWarning(
584
+ "UrlTemplateImageryProvider.defaultNightAlpha",
585
+ "UrlTemplateImageryProvider.defaultNightAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.nightAlpha instead."
586
+ );
587
+ return this._defaultNightAlpha;
588
+ },
589
+ set: function (value) {
590
+ deprecationWarning(
591
+ "UrlTemplateImageryProvider.defaultNightAlpha",
592
+ "UrlTemplateImageryProvider.defaultNightAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.nightAlpha instead."
593
+ );
594
+ this._defaultNightAlpha = value;
595
+ },
596
+ },
597
+
598
+ /**
599
+ * The default alpha blending value on the day side of the globe of this provider, with 0.0 representing fully transparent and
600
+ * 1.0 representing fully opaque.
601
+ * @memberof UrlTemplateImageryProvider.prototype
602
+ * @type {Number|undefined}
603
+ * @deprecated
604
+ */
605
+ defaultDayAlpha: {
606
+ get: function () {
607
+ deprecationWarning(
608
+ "UrlTemplateImageryProvider.defaultDayAlpha",
609
+ "UrlTemplateImageryProvider.defaultDayAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.dayAlpha instead."
610
+ );
611
+ return this._defaultDayAlpha;
612
+ },
613
+ set: function (value) {
614
+ deprecationWarning(
615
+ "UrlTemplateImageryProvider.defaultDayAlpha",
616
+ "UrlTemplateImageryProvider.defaultDayAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.dayAlpha instead."
617
+ );
618
+ this._defaultDayAlpha = value;
619
+ },
620
+ },
621
+
622
+ /**
623
+ * The default brightness of this provider. 1.0 uses the unmodified imagery color. Less than 1.0
624
+ * makes the imagery darker while greater than 1.0 makes it brighter.
625
+ * @memberof UrlTemplateImageryProvider.prototype
626
+ * @type {Number|undefined}
627
+ * @deprecated
628
+ */
629
+ defaultBrightness: {
630
+ get: function () {
631
+ deprecationWarning(
632
+ "UrlTemplateImageryProvider.defaultBrightness",
633
+ "UrlTemplateImageryProvider.defaultBrightness was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.brightness instead."
634
+ );
635
+ return this._defaultBrightness;
636
+ },
637
+ set: function (value) {
638
+ deprecationWarning(
639
+ "UrlTemplateImageryProvider.defaultBrightness",
640
+ "UrlTemplateImageryProvider.defaultBrightness was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.brightness instead."
641
+ );
642
+ this._defaultBrightness = value;
643
+ },
644
+ },
645
+
646
+ /**
647
+ * The default contrast of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
648
+ * the contrast while greater than 1.0 increases it.
649
+ * @memberof UrlTemplateImageryProvider.prototype
650
+ * @type {Number|undefined}
651
+ * @deprecated
652
+ */
653
+ defaultContrast: {
654
+ get: function () {
655
+ deprecationWarning(
656
+ "UrlTemplateImageryProvider.defaultContrast",
657
+ "UrlTemplateImageryProvider.defaultContrast was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.contrast instead."
658
+ );
659
+ return this._defaultContrast;
660
+ },
661
+ set: function (value) {
662
+ deprecationWarning(
663
+ "UrlTemplateImageryProvider.defaultContrast",
664
+ "UrlTemplateImageryProvider.defaultContrast was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.contrast instead."
665
+ );
666
+ this._defaultContrast = value;
667
+ },
668
+ },
669
+
670
+ /**
671
+ * The default hue of this provider in radians. 0.0 uses the unmodified imagery color.
672
+ * @memberof UrlTemplateImageryProvider.prototype
673
+ * @type {Number|undefined}
674
+ * @deprecated
675
+ */
676
+ defaultHue: {
677
+ get: function () {
678
+ deprecationWarning(
679
+ "UrlTemplateImageryProvider.defaultHue",
680
+ "UrlTemplateImageryProvider.defaultHue was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.hue instead."
681
+ );
682
+ return this._defaultHue;
683
+ },
684
+ set: function (value) {
685
+ deprecationWarning(
686
+ "UrlTemplateImageryProvider.defaultHue",
687
+ "UrlTemplateImageryProvider.defaultHue was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.hue instead."
688
+ );
689
+ this._defaultHue = value;
690
+ },
691
+ },
692
+
693
+ /**
694
+ * The default saturation of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
695
+ * saturation while greater than 1.0 increases it.
696
+ * @memberof UrlTemplateImageryProvider.prototype
697
+ * @type {Number|undefined}
698
+ * @deprecated
699
+ */
700
+ defaultSaturation: {
701
+ get: function () {
702
+ deprecationWarning(
703
+ "UrlTemplateImageryProvider.defaultSaturation",
704
+ "UrlTemplateImageryProvider.defaultSaturation was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.saturation instead."
705
+ );
706
+ return this._defaultSaturation;
707
+ },
708
+ set: function (value) {
709
+ deprecationWarning(
710
+ "UrlTemplateImageryProvider.defaultSaturation",
711
+ "UrlTemplateImageryProvider.defaultSaturation was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.saturation instead."
712
+ );
713
+ this._defaultSaturation = value;
714
+ },
715
+ },
716
+
717
+ /**
718
+ * The default gamma correction to apply to this provider. 1.0 uses the unmodified imagery color.
719
+ * @memberof UrlTemplateImageryProvider.prototype
720
+ * @type {Number|undefined}
721
+ * @deprecated
722
+ */
723
+ defaultGamma: {
724
+ get: function () {
725
+ deprecationWarning(
726
+ "UrlTemplateImageryProvider.defaultGamma",
727
+ "UrlTemplateImageryProvider.defaultGamma was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.gamma instead."
728
+ );
729
+ return this._defaultGamma;
730
+ },
731
+ set: function (value) {
732
+ deprecationWarning(
733
+ "UrlTemplateImageryProvider.defaultGamma",
734
+ "UrlTemplateImageryProvider.defaultGamma was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.gamma instead."
735
+ );
736
+ this._defaultGamma = value;
737
+ },
738
+ },
739
+
740
+ /**
741
+ * The default texture minification filter to apply to this provider.
742
+ * @memberof UrlTemplateImageryProvider.prototype
743
+ * @type {TextureMinificationFilter}
744
+ * @deprecated
745
+ */
746
+ defaultMinificationFilter: {
747
+ get: function () {
748
+ deprecationWarning(
749
+ "UrlTemplateImageryProvider.defaultMinificationFilter",
750
+ "UrlTemplateImageryProvider.defaultMinificationFilter was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.minificationFilter instead."
751
+ );
752
+ return this._defaultMinificationFilter;
753
+ },
754
+ set: function (value) {
755
+ deprecationWarning(
756
+ "UrlTemplateImageryProvider.defaultMinificationFilter",
757
+ "UrlTemplateImageryProvider.defaultMinificationFilter was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.minificationFilter instead."
758
+ );
759
+ this._defaultMinificationFilter = value;
760
+ },
761
+ },
762
+
763
+ /**
764
+ * The default texture magnification filter to apply to this provider.
765
+ * @memberof UrlTemplateImageryProvider.prototype
766
+ * @type {TextureMagnificationFilter}
767
+ * @deprecated
768
+ */
769
+ defaultMagnificationFilter: {
770
+ get: function () {
771
+ deprecationWarning(
772
+ "UrlTemplateImageryProvider.defaultMagnificationFilter",
773
+ "UrlTemplateImageryProvider.defaultMagnificationFilter was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.magnificationFilter instead."
774
+ );
775
+ return this._defaultMagnificationFilter;
776
+ },
777
+ set: function (value) {
778
+ deprecationWarning(
779
+ "UrlTemplateImageryProvider.defaultMagnificationFilter",
780
+ "UrlTemplateImageryProvider.defaultMagnificationFilter was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.magnificationFilter instead."
781
+ );
782
+ this._defaultMagnificationFilter = value;
783
+ },
784
+ },
645
785
  });
646
786
 
647
787
  /**
648
788
  * Reinitializes this instance. Reinitializing an instance already in use is supported, but it is not
649
789
  * recommended because existing tiles provided by the imagery provider will not be updated.
790
+ * @deprecated
650
791
  *
651
- * @param {Promise.<Object>|Object} options Any of the options that may be passed to the {@link UrlTemplateImageryProvider} constructor.
792
+ * @param {Promise<object>|object} options Any of the options that may be passed to the {@link UrlTemplateImageryProvider} constructor.
652
793
  */
653
794
  UrlTemplateImageryProvider.prototype.reinitialize = function (options) {
795
+ deprecationWarning(
796
+ "UrlTemplateImageryProvider.reinitialize",
797
+ "UrlTemplateImageryProvider.reinitialize was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107."
798
+ );
799
+
800
+ return this._reinitialize(options);
801
+ };
802
+
803
+ /**
804
+ * @private
805
+ */
806
+ UrlTemplateImageryProvider.prototype._reinitialize = function (options) {
654
807
  const that = this;
808
+
655
809
  that._readyPromise = Promise.resolve(options).then(function (properties) {
656
810
  //>>includeStart('debug', pragmas.debug);
657
811
  if (!defined(properties)) {
@@ -718,6 +872,7 @@ UrlTemplateImageryProvider.prototype.reinitialize = function (options) {
718
872
  that._tags = allTags;
719
873
  that._pickFeaturesResource = pickFeaturesResource;
720
874
  that._pickFeaturesTags = allPickFeaturesTags;
875
+ that._ready = true;
721
876
 
722
877
  return true;
723
878
  });
@@ -726,33 +881,21 @@ UrlTemplateImageryProvider.prototype.reinitialize = function (options) {
726
881
  /**
727
882
  * Gets the credits to be displayed when a given tile is displayed.
728
883
  *
729
- * @param {Number} x The tile X coordinate.
730
- * @param {Number} y The tile Y coordinate.
731
- * @param {Number} level The tile level;
884
+ * @param {number} x The tile X coordinate.
885
+ * @param {number} y The tile Y coordinate.
886
+ * @param {number} level The tile level;
732
887
  * @returns {Credit[]} The credits to be displayed when the tile is displayed.
733
- *
734
- * @exception {DeveloperError} <code>getTileCredits</code> must not be called before the imagery provider is ready.
735
888
  */
736
889
  UrlTemplateImageryProvider.prototype.getTileCredits = function (x, y, level) {
737
- //>>includeStart('debug', pragmas.debug);
738
- if (!this.ready) {
739
- throw new DeveloperError(
740
- "getTileCredits must not be called before the imagery provider is ready."
741
- );
742
- }
743
- //>>includeEnd('debug');
744
890
  return undefined;
745
891
  };
746
892
 
747
893
  /**
748
- * Requests the image for a given tile. This function should
749
- * not be called before {@link UrlTemplateImageryProvider#ready} returns true.
750
- *
751
- * @param {Number} x The tile X coordinate.
752
- * @param {Number} y The tile Y coordinate.
753
- * @param {Number} level The tile level.
894
+ * @param {number} x The tile X coordinate.
895
+ * @param {number} y The tile Y coordinate.
896
+ * @param {number} level The tile level.
754
897
  * @param {Request} [request] The request object. Intended for internal use only.
755
- * @returns {Promise.<ImageryTypes>|undefined} A promise for the image that will resolve when the image is available, or
898
+ * @returns {Promise<ImageryTypes>|undefined} A promise for the image that will resolve when the image is available, or
756
899
  * undefined if there are too many active requests to the server, and the request should be retried later.
757
900
  */
758
901
  UrlTemplateImageryProvider.prototype.requestImage = function (
@@ -761,13 +904,6 @@ UrlTemplateImageryProvider.prototype.requestImage = function (
761
904
  level,
762
905
  request
763
906
  ) {
764
- //>>includeStart('debug', pragmas.debug);
765
- if (!this.ready) {
766
- throw new DeveloperError(
767
- "requestImage must not be called before the imagery provider is ready."
768
- );
769
- }
770
- //>>includeEnd('debug');
771
907
  return ImageryProvider.loadImage(
772
908
  this,
773
909
  buildImageResource(this, x, y, level, request)
@@ -776,14 +912,14 @@ UrlTemplateImageryProvider.prototype.requestImage = function (
776
912
 
777
913
  /**
778
914
  * Asynchronously determines what features, if any, are located at a given longitude and latitude within
779
- * a tile. This function should not be called before {@link ImageryProvider#ready} returns true.
915
+ * a tile.
780
916
  *
781
- * @param {Number} x The tile X coordinate.
782
- * @param {Number} y The tile Y coordinate.
783
- * @param {Number} level The tile level.
784
- * @param {Number} longitude The longitude at which to pick features.
785
- * @param {Number} latitude The latitude at which to pick features.
786
- * @return {Promise.<ImageryLayerFeatureInfo[]>|undefined} A promise for the picked features that will resolve when the asynchronous
917
+ * @param {number} x The tile X coordinate.
918
+ * @param {number} y The tile Y coordinate.
919
+ * @param {number} level The tile level.
920
+ * @param {number} longitude The longitude at which to pick features.
921
+ * @param {number} latitude The latitude at which to pick features.
922
+ * @return {Promise<ImageryLayerFeatureInfo[]>|undefined} A promise for the picked features that will resolve when the asynchronous
787
923
  * picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
788
924
  * instances. The array may be empty if no features are found at the given location.
789
925
  * It may also be undefined if picking is not supported.
@@ -795,14 +931,6 @@ UrlTemplateImageryProvider.prototype.pickFeatures = function (
795
931
  longitude,
796
932
  latitude
797
933
  ) {
798
- //>>includeStart('debug', pragmas.debug);
799
- if (!this.ready) {
800
- throw new DeveloperError(
801
- "pickFeatures must not be called before the imagery provider is ready."
802
- );
803
- }
804
- //>>includeEnd('debug');
805
-
806
934
  if (
807
935
  !this.enablePickFeatures ||
808
936
  !defined(this._pickFeaturesResource) ||