@cesium/engine 24.0.0 → 26.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (362) hide show
  1. package/Build/Workers/{chunk-6WLHJFD3.js → chunk-3VFEWOBI.js} +59 -32
  2. package/Build/Workers/{chunk-UQU4RXLT.js → chunk-424RNO3D.js} +50 -45
  3. package/Build/Workers/chunk-4MGMYHOO.js +147 -0
  4. package/Build/Workers/{chunk-AMIHNSST.js → chunk-4S7IE3LB.js} +2 -2
  5. package/Build/Workers/{chunk-J6AW5YHS.js → chunk-52JDLOEM.js} +14 -14
  6. package/Build/Workers/{chunk-6RMS4S72.js → chunk-54I6Y66F.js} +6 -6
  7. package/Build/Workers/{chunk-C6P4IG5P.js → chunk-6YEE6JDR.js} +6 -6
  8. package/Build/Workers/{chunk-72VYSVEW.js → chunk-7J2HKPRH.js} +11 -10
  9. package/Build/Workers/{chunk-7O5XJTVE.js → chunk-7WM2PX4V.js} +5 -5
  10. package/Build/Workers/{chunk-5A2SW66E.js → chunk-ACXQXN46.js} +16 -16
  11. package/Build/Workers/{chunk-VLDEUTOP.js → chunk-AYKR4VBR.js} +2 -2
  12. package/Build/Workers/{chunk-YQFTYQMZ.js → chunk-C6J67V5A.js} +3 -2
  13. package/Build/Workers/{chunk-D4EJ2NXG.js → chunk-C6KNZ7T4.js} +17 -17
  14. package/Build/Workers/{chunk-7MDYBRYJ.js → chunk-CFQP6LYM.js} +4 -4
  15. package/Build/Workers/{chunk-YAOZMOFL.js → chunk-CXOYE2WM.js} +5 -5
  16. package/Build/Workers/{chunk-B6SCUUFP.js → chunk-CZEYZU4N.js} +10 -10
  17. package/Build/Workers/{chunk-NPF7SSHZ.js → chunk-DBOEKL43.js} +7 -7
  18. package/Build/Workers/{chunk-44EMEGKW.js → chunk-DDWSZVMY.js} +5 -5
  19. package/Build/Workers/{chunk-7X322WP2.js → chunk-DOBXCNC3.js} +13 -13
  20. package/Build/Workers/{chunk-JCI63T3K.js → chunk-E7VQ76KE.js} +6 -6
  21. package/Build/Workers/{chunk-7TYLCBGK.js → chunk-EBSIOBXY.js} +12 -10
  22. package/Build/Workers/{chunk-GQUNK2XC.js → chunk-EF2QYXGA.js} +14 -14
  23. package/Build/Workers/{chunk-BJD6QGXZ.js → chunk-EPYXRCDB.js} +12 -12
  24. package/Build/Workers/{chunk-63SIWPLS.js → chunk-F6QDY6HU.js} +13 -13
  25. package/Build/Workers/{chunk-XY6HMDGI.js → chunk-FRQZECAO.js} +5 -5
  26. package/Build/Workers/{chunk-VMVOUQ5J.js → chunk-G7PXZRVF.js} +7 -7
  27. package/Build/Workers/{chunk-N65BAKSH.js → chunk-INUEEEQA.js} +8 -8
  28. package/Build/Workers/{chunk-7QRFIKWQ.js → chunk-IRBKFCEJ.js} +2 -2
  29. package/Build/Workers/{chunk-UIGVOKKI.js → chunk-IYOUHCZB.js} +3 -2
  30. package/Build/Workers/{chunk-5GXYJQ2K.js → chunk-J6BWOHUF.js} +3 -3
  31. package/Build/Workers/{chunk-A47HVBC5.js → chunk-KFSTQKNM.js} +7 -7
  32. package/Build/Workers/{chunk-EV3VGO6Y.js → chunk-KKOSKAZB.js} +17 -17
  33. package/Build/Workers/{chunk-6MPGQEHA.js → chunk-KSSWJIZW.js} +2 -2
  34. package/Build/Workers/{chunk-DHKPFLSJ.js → chunk-M3B5JKSM.js} +3 -2
  35. package/Build/Workers/chunk-MPZHGZU6.js +2342 -0
  36. package/Build/Workers/{chunk-YJZGW74L.js → chunk-MYP774IS.js} +2213 -1349
  37. package/Build/Workers/{chunk-LIB2H534.js → chunk-O3EA5HS7.js} +12 -11
  38. package/Build/Workers/{chunk-ILMFADZA.js → chunk-P3CK7MCY.js} +27 -5
  39. package/Build/Workers/chunk-Q3PY526V.js +3201 -0
  40. package/Build/Workers/chunk-QN67VG36.js +973 -0
  41. package/Build/Workers/{chunk-XJRBB253.js → chunk-QRWGUWI6.js} +11 -11
  42. package/Build/Workers/{chunk-AF3MU2RL.js → chunk-S4MCOY6I.js} +7 -6
  43. package/Build/Workers/{chunk-Y7HNNPNK.js → chunk-SMQZZOW6.js} +10 -10
  44. package/Build/Workers/{chunk-PVV64VFW.js → chunk-TKKIREQ6.js} +3 -2
  45. package/Build/Workers/{chunk-MKM27KGV.js → chunk-U3ZA64U7.js} +2 -2
  46. package/Build/Workers/{chunk-2N4KDHS3.js → chunk-UA25D5MX.js} +12 -11
  47. package/Build/Workers/{chunk-RQNJD3O4.js → chunk-UOOIQ3KX.js} +12 -12
  48. package/Build/Workers/{chunk-GOQBUCXH.js → chunk-V7VQKN6N.js} +709 -431
  49. package/Build/Workers/{chunk-LXMCPFFS.js → chunk-VQYETPWC.js} +4 -4
  50. package/Build/Workers/{chunk-NKT5K3K3.js → chunk-VWV2IJRB.js} +13 -12
  51. package/Build/Workers/chunk-XZMBNNDX.js +1287 -0
  52. package/Build/Workers/{chunk-ISY4EZCA.js → chunk-Y57HREW5.js} +4 -4
  53. package/Build/Workers/{chunk-EDXL4W76.js → chunk-Y5BF6AFU.js} +2 -2
  54. package/Build/Workers/{chunk-Q3C6VQH6.js → chunk-YLY7NKAB.js} +4 -4
  55. package/Build/Workers/{chunk-4TIG36AW.js → chunk-ZK3CF7ZD.js} +12 -12
  56. package/Build/Workers/{chunk-AJLTU6PF.js → chunk-ZP7JMQV4.js} +4 -1
  57. package/Build/Workers/{chunk-HXJMS2ZI.js → chunk-ZZ46LWL6.js} +1 -1
  58. package/Build/Workers/combineGeometry.js +24 -24
  59. package/Build/Workers/createBoxGeometry.js +18 -18
  60. package/Build/Workers/createBoxOutlineGeometry.js +16 -16
  61. package/Build/Workers/createCircleGeometry.js +26 -26
  62. package/Build/Workers/createCircleOutlineGeometry.js +19 -19
  63. package/Build/Workers/createCoplanarPolygonGeometry.js +33 -33
  64. package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
  65. package/Build/Workers/createCorridorGeometry.js +29 -29
  66. package/Build/Workers/createCorridorOutlineGeometry.js +28 -28
  67. package/Build/Workers/createCylinderGeometry.js +20 -20
  68. package/Build/Workers/createCylinderOutlineGeometry.js +18 -18
  69. package/Build/Workers/createEllipseGeometry.js +26 -26
  70. package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
  71. package/Build/Workers/createEllipsoidGeometry.js +19 -19
  72. package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
  73. package/Build/Workers/createFrustumGeometry.js +18 -18
  74. package/Build/Workers/createFrustumOutlineGeometry.js +18 -18
  75. package/Build/Workers/createGeometry.js +24 -24
  76. package/Build/Workers/createGroundPolylineGeometry.js +175 -118
  77. package/Build/Workers/createPlaneGeometry.js +16 -16
  78. package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
  79. package/Build/Workers/createPolygonGeometry.js +32 -32
  80. package/Build/Workers/createPolygonOutlineGeometry.js +30 -30
  81. package/Build/Workers/createPolylineGeometry.js +25 -25
  82. package/Build/Workers/createPolylineVolumeGeometry.js +31 -31
  83. package/Build/Workers/createPolylineVolumeOutlineGeometry.js +27 -27
  84. package/Build/Workers/createRectangleGeometry.js +27 -27
  85. package/Build/Workers/createRectangleOutlineGeometry.js +20 -20
  86. package/Build/Workers/createSimplePolylineGeometry.js +23 -23
  87. package/Build/Workers/createSphereGeometry.js +19 -19
  88. package/Build/Workers/createSphereOutlineGeometry.js +18 -18
  89. package/Build/Workers/createTaskProcessorWorker.js +3 -3
  90. package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
  91. package/Build/Workers/createVectorTileGeometries.js +24 -24
  92. package/Build/Workers/createVectorTilePoints.js +13 -13
  93. package/Build/Workers/createVectorTilePolygons.js +22 -22
  94. package/Build/Workers/createVectorTilePolylines.js +14 -14
  95. package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +25 -25
  96. package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -22
  97. package/Build/Workers/createVerticesFromHeightmap.js +24 -23
  98. package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +20 -20
  99. package/Build/Workers/createWallGeometry.js +24 -24
  100. package/Build/Workers/createWallOutlineGeometry.js +23 -23
  101. package/Build/Workers/decodeDraco.js +10 -10
  102. package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
  103. package/Build/Workers/decodeI3S.js +10 -10
  104. package/Build/Workers/gaussianSplatSorter.js +4 -4
  105. package/Build/Workers/gaussianSplatTextureGenerator.js +4 -4
  106. package/Build/Workers/incrementallyBuildTerrainPicker.js +10 -10
  107. package/Build/Workers/transcodeKTX2.js +12 -9
  108. package/Build/Workers/transferTypedArrayTest.js +1 -1
  109. package/Build/Workers/upsampleQuantizedTerrainMesh.js +22 -22
  110. package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +25 -25
  111. package/Source/Core/ArcType.js +6 -1
  112. package/Source/Core/ArticulationStageType.js +5 -1
  113. package/Source/Core/AssociativeArray.js +100 -94
  114. package/Source/Core/BoundingSphere.js +1296 -1300
  115. package/Source/Core/Cartesian2.js +1 -1
  116. package/Source/Core/Cartesian3.js +2 -3
  117. package/Source/Core/Cartesian4.js +1 -1
  118. package/Source/Core/Cartographic.js +257 -249
  119. package/Source/Core/ClockRange.js +6 -1
  120. package/Source/Core/ClockStep.js +6 -1
  121. package/Source/Core/Color.js +844 -835
  122. package/Source/Core/ComponentDatatype.js +39 -1
  123. package/Source/Core/CornerType.js +6 -1
  124. package/Source/Core/Credit.js +121 -124
  125. package/Source/Core/Ellipsoid.js +637 -660
  126. package/Source/Core/ExtrapolationType.js +6 -1
  127. package/Source/Core/GeocodeType.js +6 -1
  128. package/Source/Core/GeographicProjection.js +74 -74
  129. package/Source/Core/GeographicTilingScheme.js +179 -198
  130. package/Source/Core/GeometryOffsetAttribute.js +7 -1
  131. package/Source/Core/GeometryType.js +7 -1
  132. package/Source/Core/HeightmapEncoding.js +6 -1
  133. package/Source/Core/Iau2006XysData.js +24 -13
  134. package/Source/Core/IndexDatatype.js +3 -1
  135. package/Source/Core/InterpolationType.js +5 -1
  136. package/Source/Core/Intersect.js +6 -1
  137. package/Source/Core/Ion.js +1 -1
  138. package/Source/Core/IonGeocodeProviderType.js +5 -1
  139. package/Source/Core/JulianDate.js +850 -848
  140. package/Source/Core/KeyboardEventModifier.js +6 -1
  141. package/Source/Core/MapProjection.js +40 -44
  142. package/Source/Core/Matrix2.js +906 -893
  143. package/Source/Core/Matrix3.js +1643 -1575
  144. package/Source/Core/Matrix4.js +2903 -2872
  145. package/Source/Core/PixelFormat.js +3 -1
  146. package/Source/Core/PrimitiveType.js +11 -1
  147. package/Source/Core/Ray.js +62 -60
  148. package/Source/Core/Rectangle.js +913 -904
  149. package/Source/Core/ReferenceFrame.js +6 -1
  150. package/Source/Core/RequestScheduler.js +8 -3
  151. package/Source/Core/RequestState.js +6 -1
  152. package/Source/Core/RequestType.js +6 -1
  153. package/Source/Core/Resource.js +1 -1
  154. package/Source/Core/ScreenSpaceEventHandler.js +51 -41
  155. package/Source/Core/ScreenSpaceEventType.js +6 -1
  156. package/Source/Core/TerrainQuantization.js +6 -1
  157. package/Source/Core/TilingScheme.js +100 -98
  158. package/Source/Core/TimeConstants.js +6 -1
  159. package/Source/Core/TimeStandard.js +6 -1
  160. package/Source/Core/TrackingReferenceFrame.js +6 -1
  161. package/Source/Core/Visibility.js +6 -1
  162. package/Source/Core/VulkanConstants.js +6 -1
  163. package/Source/Core/WebGLConstants.js +6 -1
  164. package/Source/Core/WebMercatorProjection.js +108 -109
  165. package/Source/Core/WebMercatorTilingScheme.js +246 -242
  166. package/Source/Core/WindingOrder.js +3 -1
  167. package/Source/Core/createColorRamp.js +37 -0
  168. package/Source/Core/globalTypes.js +25 -0
  169. package/Source/DataSources/StaticGroundGeometryPerMaterialBatch.js +1 -0
  170. package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +1 -0
  171. package/Source/DataSources/StripeOrientation.js +6 -1
  172. package/Source/Renderer/BufferUsage.js +20 -9
  173. package/Source/Renderer/Context.js +2 -29
  174. package/Source/Renderer/DrawCommand.js +435 -403
  175. package/Source/Renderer/MipmapHint.js +5 -1
  176. package/Source/Renderer/Pass.js +10 -3
  177. package/Source/Renderer/PickId.js +44 -0
  178. package/Source/Renderer/PixelDatatype.js +3 -1
  179. package/Source/Renderer/RenderbufferFormat.js +5 -1
  180. package/Source/Renderer/ShaderDestination.js +4 -1
  181. package/Source/Renderer/TextureMagnificationFilter.js +3 -1
  182. package/Source/Renderer/TextureMinificationFilter.js +3 -1
  183. package/Source/Renderer/TextureWrap.js +5 -1
  184. package/Source/Renderer/createUniform.js +346 -239
  185. package/Source/Renderer/createUniformArray.js +494 -381
  186. package/Source/Scene/AlphaMode.js +5 -1
  187. package/Source/Scene/ArcGisBaseMapType.js +6 -1
  188. package/Source/Scene/ArcGisMapService.js +1 -1
  189. package/Source/Scene/AttributeType.js +3 -1
  190. package/Source/Scene/Axis.js +3 -1
  191. package/Source/Scene/BingMapsStyle.js +6 -1
  192. package/Source/Scene/BlendEquation.js +6 -1
  193. package/Source/Scene/BlendFunction.js +6 -1
  194. package/Source/Scene/BlendOption.js +6 -1
  195. package/Source/Scene/BlendingState.js +6 -1
  196. package/Source/Scene/BufferLoader.js +0 -2
  197. package/Source/Scene/BufferPoint.js +1 -0
  198. package/Source/Scene/BufferPointCollection.js +17 -1
  199. package/Source/Scene/BufferPolygon.js +3 -2
  200. package/Source/Scene/BufferPolygonCollection.js +13 -1
  201. package/Source/Scene/BufferPolyline.js +1 -0
  202. package/Source/Scene/BufferPolylineCollection.js +5 -1
  203. package/Source/Scene/BufferPrimitiveCollection.js +210 -43
  204. package/Source/Scene/CameraEventAggregator.js +30 -18
  205. package/Source/Scene/CameraEventType.js +6 -1
  206. package/Source/Scene/Cesium3DTile.js +54 -1
  207. package/Source/Scene/Cesium3DTileColorBlendMode.js +6 -1
  208. package/Source/Scene/Cesium3DTileContent.js +195 -254
  209. package/Source/Scene/Cesium3DTileContentFactory.js +10 -2
  210. package/Source/Scene/Cesium3DTileContentState.js +6 -1
  211. package/Source/Scene/Cesium3DTileContentType.js +3 -1
  212. package/Source/Scene/Cesium3DTileFeature.js +289 -306
  213. package/Source/Scene/Cesium3DTileOptimizationHint.js +6 -1
  214. package/Source/Scene/Cesium3DTilePass.js +5 -1
  215. package/Source/Scene/Cesium3DTilePointFeature.js +433 -511
  216. package/Source/Scene/Cesium3DTileRefine.js +6 -1
  217. package/Source/Scene/Cesium3DTileVectorFeature.js +586 -0
  218. package/Source/Scene/Cesium3DTileset.js +46 -6
  219. package/Source/Scene/ClassificationType.js +3 -1
  220. package/Source/Scene/CloudType.js +3 -1
  221. package/Source/Scene/ColorBlendMode.js +4 -1
  222. package/Source/Scene/Composite3DTileContent.js +254 -292
  223. package/Source/Scene/CullFace.js +6 -1
  224. package/Source/Scene/DepthFunction.js +6 -1
  225. package/Source/Scene/DynamicAtmosphereLightingType.js +3 -1
  226. package/Source/Scene/EdgeDisplayMode.js +50 -0
  227. package/Source/Scene/Empty3DTileContent.js +100 -132
  228. package/Source/Scene/EquirectangularPanorama.js +1 -0
  229. package/Source/Scene/ExpressionNodeType.js +6 -1
  230. package/Source/Scene/GaussianSplat3DTileContent.js +436 -478
  231. package/Source/Scene/GeoJsonPrimitive.js +874 -0
  232. package/Source/Scene/Geometry3DTileContent.js +151 -185
  233. package/Source/Scene/GltfBufferViewLoader.js +0 -2
  234. package/Source/Scene/GltfDracoLoader.js +0 -2
  235. package/Source/Scene/GltfImageLoader.js +0 -3
  236. package/Source/Scene/GltfIndexBufferLoader.js +0 -4
  237. package/Source/Scene/GltfJsonLoader.js +0 -2
  238. package/Source/Scene/GltfLoader.js +109 -5
  239. package/Source/Scene/GltfLoaderUtil.js +14 -0
  240. package/Source/Scene/GltfSpzLoader.js +0 -2
  241. package/Source/Scene/GltfStructuralMetadataLoader.js +0 -2
  242. package/Source/Scene/GltfTextureLoader.js +0 -2
  243. package/Source/Scene/GltfVertexBufferLoader.js +0 -4
  244. package/Source/Scene/HeightReference.js +5 -1
  245. package/Source/Scene/HorizontalOrigin.js +6 -1
  246. package/Source/Scene/ImageryProvider.js +1 -1
  247. package/Source/Scene/ImageryState.js +6 -1
  248. package/Source/Scene/Implicit3DTileContent.js +179 -214
  249. package/Source/Scene/ImplicitSubdivisionScheme.js +3 -1
  250. package/Source/Scene/InstanceAttributeSemantic.js +3 -1
  251. package/Source/Scene/IonWorldImageryStyle.js +6 -1
  252. package/Source/Scene/JobType.js +6 -1
  253. package/Source/Scene/LabelStyle.js +6 -1
  254. package/Source/Scene/MVTDataProvider.js +147 -0
  255. package/Source/Scene/MapMode2D.js +6 -1
  256. package/Source/Scene/MetadataComponentType.js +3 -1
  257. package/Source/Scene/MetadataSchemaLoader.js +0 -2
  258. package/Source/Scene/MetadataSemantic.js +6 -2
  259. package/Source/Scene/MetadataType.js +3 -1
  260. package/Source/Scene/Model/B3dmLoader.js +0 -3
  261. package/Source/Scene/Model/CustomShaderMode.js +3 -1
  262. package/Source/Scene/Model/CustomShaderTranslucencyMode.js +5 -1
  263. package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +78 -337
  264. package/Source/Scene/Model/Extensions/Gpm/PpeSource.js +5 -1
  265. package/Source/Scene/Model/Extensions/Gpm/StorageType.js +5 -1
  266. package/Source/Scene/Model/GeoJsonLoader.js +0 -2
  267. package/Source/Scene/Model/I3dmLoader.js +0 -3
  268. package/Source/Scene/Model/InstancingPipelineStage.js +1 -1
  269. package/Source/Scene/Model/LightingModel.js +5 -1
  270. package/Source/Scene/Model/MaterialPipelineStage.js +184 -3
  271. package/Source/Scene/Model/Model.js +34 -0
  272. package/Source/Scene/Model/Model3DTileContent.js +424 -458
  273. package/Source/Scene/Model/ModelDrawCommand.js +31 -3
  274. package/Source/Scene/Model/ModelReader.js +474 -3
  275. package/Source/Scene/Model/ModelRuntimePrimitive.js +2 -1
  276. package/Source/Scene/Model/ModelType.js +3 -1
  277. package/Source/Scene/Model/ModelUtility.js +4 -0
  278. package/Source/Scene/Model/PntsLoader.js +4 -3
  279. package/Source/Scene/Model/StyleCommandsNeeded.js +3 -1
  280. package/Source/Scene/Model/UniformType.js +5 -1
  281. package/Source/Scene/Model/VaryingType.js +5 -1
  282. package/Source/Scene/Model/createVectorTileBuffersFromModelComponents.js +500 -139
  283. package/Source/Scene/Model/pickModel.js +94 -299
  284. package/Source/Scene/ModelAnimationLoop.js +6 -1
  285. package/Source/Scene/ModelAnimationState.js +6 -1
  286. package/Source/Scene/ModelComponents.js +47 -2
  287. package/Source/Scene/Multiple3DTileContent.js +291 -334
  288. package/Source/Scene/PrimitiveState.js +7 -1
  289. package/Source/Scene/QuadtreeOccluders.js +20 -15
  290. package/Source/Scene/QuadtreeTile.js +547 -541
  291. package/Source/Scene/QuadtreeTileLoadState.js +6 -1
  292. package/Source/Scene/QuadtreeTileProvider.js +159 -175
  293. package/Source/Scene/ResourceLoader.js +0 -1
  294. package/Source/Scene/ResourceLoaderState.js +7 -1
  295. package/Source/Scene/Scene.js +26 -0
  296. package/Source/Scene/SceneMode.js +4 -1
  297. package/Source/Scene/ShadowMode.js +3 -1
  298. package/Source/Scene/SkyBox.js +1 -1
  299. package/Source/Scene/SplitDirection.js +6 -1
  300. package/Source/Scene/StencilFunction.js +6 -1
  301. package/Source/Scene/StencilOperation.js +6 -1
  302. package/Source/Scene/TerrainState.js +7 -1
  303. package/Source/Scene/TileState.js +7 -1
  304. package/Source/Scene/Tileset3DTileContent.js +113 -146
  305. package/Source/Scene/Tonemapper.js +5 -1
  306. package/Source/Scene/UrlTemplate3DTilesDataProvider.js +499 -0
  307. package/Source/Scene/Vector3DTileContent.js +205 -234
  308. package/Source/Scene/VectorGltf3DTileContent.js +131 -61
  309. package/Source/Scene/VertexAttributeSemantic.js +3 -1
  310. package/Source/Scene/VerticalOrigin.js +6 -1
  311. package/Source/Scene/VoxelBoxShape.js +12 -6
  312. package/Source/Scene/VoxelContent.js +2 -0
  313. package/Source/Scene/VoxelCylinderShape.js +39 -38
  314. package/Source/Scene/VoxelEllipsoidShape.js +46 -96
  315. package/Source/Scene/VoxelMetadataOrder.js +6 -1
  316. package/Source/Scene/VoxelPrimitive.js +159 -175
  317. package/Source/Scene/VoxelProvider.js +64 -90
  318. package/Source/Scene/VoxelShapeType.js +3 -1
  319. package/Source/Scene/buildVectorGltfFromMVT.js +1059 -0
  320. package/Source/Scene/buildVoxelCustomShader.js +199 -0
  321. package/Source/Scene/decodeMVT.js +634 -0
  322. package/Source/Scene/renderBufferPointCollection.js +124 -127
  323. package/Source/Scene/renderBufferPolygonCollection.js +122 -122
  324. package/Source/Scene/renderBufferPolylineCollection.js +386 -238
  325. package/Source/Shaders/BufferPointMaterialFS.glsl +1 -0
  326. package/Source/Shaders/BufferPointMaterialFS.js +1 -0
  327. package/Source/Shaders/BufferPointMaterialVS.glsl +19 -9
  328. package/Source/Shaders/BufferPointMaterialVS.js +20 -10
  329. package/Source/Shaders/BufferPolygonMaterialVS.glsl +13 -4
  330. package/Source/Shaders/BufferPolygonMaterialVS.js +14 -5
  331. package/Source/Shaders/BufferPolylineMaterialVS.glsl +16 -2
  332. package/Source/Shaders/BufferPolylineMaterialVS.js +17 -3
  333. package/Source/Shaders/Builtin/Constants/passCesium3DTileEdgesDirect.glsl +9 -0
  334. package/Source/Shaders/Builtin/Constants/passCesium3DTileEdgesDirect.js +11 -0
  335. package/Source/Shaders/Builtin/Constants/passOverlay.glsl +1 -1
  336. package/Source/Shaders/Builtin/Constants/passOverlay.js +1 -1
  337. package/Source/Shaders/Builtin/CzmBuiltins.js +4 -0
  338. package/Source/Shaders/Builtin/Functions/computeTextureTransform.glsl +24 -0
  339. package/Source/Shaders/Builtin/Functions/computeTextureTransform.js +25 -0
  340. package/Source/Shaders/Model/ConstantLodStageFS.glsl +60 -0
  341. package/Source/Shaders/Model/ConstantLodStageFS.js +62 -0
  342. package/Source/Shaders/Model/ConstantLodStageVS.glsl +12 -0
  343. package/Source/Shaders/Model/ConstantLodStageVS.js +13 -0
  344. package/Source/Shaders/Model/EdgeVisibilityStageVS.glsl +0 -1
  345. package/Source/Shaders/Model/EdgeVisibilityStageVS.js +0 -1
  346. package/Source/Shaders/Model/MaterialStageFS.glsl +46 -20
  347. package/Source/Shaders/Model/MaterialStageFS.js +46 -20
  348. package/Source/Shaders/Voxels/convertLocalToBoxUv.glsl +0 -1
  349. package/Source/Shaders/Voxels/convertLocalToBoxUv.js +0 -1
  350. package/Source/Shaders/Voxels/convertLocalToCylinderUv.glsl +7 -9
  351. package/Source/Shaders/Voxels/convertLocalToCylinderUv.js +7 -9
  352. package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.glsl +7 -17
  353. package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.js +7 -17
  354. package/Source/Widget/CesiumWidget.js +11 -4
  355. package/index.d.ts +595 -343
  356. package/index.js +392 -378
  357. package/package.json +3 -3
  358. package/Build/Workers/chunk-DVB56LG7.js +0 -114
  359. package/Build/Workers/chunk-HKUES6UG.js +0 -2357
  360. package/Build/Workers/chunk-HRHRYFHS.js +0 -940
  361. package/Build/Workers/chunk-KLPGTXS3.js +0 -642
  362. package/Build/Workers/chunk-ZBZRTRJB.js +0 -1829
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  * Cesium - https://github.com/CesiumGS/cesium
4
- * Version 1.140.0
4
+ * Version 1.142.0
5
5
  *
6
6
  * Copyright 2011-2022 Cesium Contributors
7
7
  *
@@ -25,25 +25,25 @@
25
25
 
26
26
  import {
27
27
  EllipsoidOutlineGeometry_default
28
- } from "./chunk-RQNJD3O4.js";
29
- import "./chunk-UIGVOKKI.js";
30
- import "./chunk-AF3MU2RL.js";
31
- import "./chunk-6MPGQEHA.js";
32
- import "./chunk-7TYLCBGK.js";
33
- import "./chunk-HRHRYFHS.js";
34
- import "./chunk-YQFTYQMZ.js";
35
- import "./chunk-YJZGW74L.js";
36
- import "./chunk-HKUES6UG.js";
37
- import "./chunk-ILMFADZA.js";
38
- import "./chunk-PVV64VFW.js";
39
- import "./chunk-EDXL4W76.js";
40
- import "./chunk-GOQBUCXH.js";
41
- import "./chunk-ZBZRTRJB.js";
42
- import "./chunk-5GXYJQ2K.js";
43
- import "./chunk-VLDEUTOP.js";
28
+ } from "./chunk-UOOIQ3KX.js";
29
+ import "./chunk-IYOUHCZB.js";
30
+ import "./chunk-S4MCOY6I.js";
31
+ import "./chunk-KSSWJIZW.js";
32
+ import "./chunk-EBSIOBXY.js";
33
+ import "./chunk-XZMBNNDX.js";
34
+ import "./chunk-C6J67V5A.js";
35
+ import "./chunk-MYP774IS.js";
36
+ import "./chunk-Q3PY526V.js";
37
+ import "./chunk-P3CK7MCY.js";
38
+ import "./chunk-TKKIREQ6.js";
39
+ import "./chunk-Y5BF6AFU.js";
40
+ import "./chunk-V7VQKN6N.js";
41
+ import "./chunk-MPZHGZU6.js";
42
+ import "./chunk-J6BWOHUF.js";
43
+ import "./chunk-AYKR4VBR.js";
44
44
  import {
45
45
  defined_default
46
- } from "./chunk-AJLTU6PF.js";
46
+ } from "./chunk-ZP7JMQV4.js";
47
47
 
48
48
  // packages/engine/Source/Workers/createEllipsoidOutlineGeometry.js
49
49
  function createEllipsoidOutlineGeometry(ellipsoidGeometry, offset) {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  * Cesium - https://github.com/CesiumGS/cesium
4
- * Version 1.140.0
4
+ * Version 1.142.0
5
5
  *
6
6
  * Copyright 2011-2022 Cesium Contributors
7
7
  *
@@ -25,25 +25,25 @@
25
25
 
26
26
  import {
27
27
  FrustumGeometry_default
28
- } from "./chunk-GQUNK2XC.js";
29
- import "./chunk-LXMCPFFS.js";
30
- import "./chunk-JCI63T3K.js";
31
- import "./chunk-6MPGQEHA.js";
32
- import "./chunk-7TYLCBGK.js";
33
- import "./chunk-HRHRYFHS.js";
34
- import "./chunk-YQFTYQMZ.js";
35
- import "./chunk-YJZGW74L.js";
36
- import "./chunk-HKUES6UG.js";
37
- import "./chunk-ILMFADZA.js";
38
- import "./chunk-PVV64VFW.js";
39
- import "./chunk-EDXL4W76.js";
40
- import "./chunk-GOQBUCXH.js";
41
- import "./chunk-ZBZRTRJB.js";
42
- import "./chunk-5GXYJQ2K.js";
43
- import "./chunk-VLDEUTOP.js";
28
+ } from "./chunk-EF2QYXGA.js";
29
+ import "./chunk-VQYETPWC.js";
30
+ import "./chunk-E7VQ76KE.js";
31
+ import "./chunk-KSSWJIZW.js";
32
+ import "./chunk-EBSIOBXY.js";
33
+ import "./chunk-XZMBNNDX.js";
34
+ import "./chunk-C6J67V5A.js";
35
+ import "./chunk-MYP774IS.js";
36
+ import "./chunk-Q3PY526V.js";
37
+ import "./chunk-P3CK7MCY.js";
38
+ import "./chunk-TKKIREQ6.js";
39
+ import "./chunk-Y5BF6AFU.js";
40
+ import "./chunk-V7VQKN6N.js";
41
+ import "./chunk-MPZHGZU6.js";
42
+ import "./chunk-J6BWOHUF.js";
43
+ import "./chunk-AYKR4VBR.js";
44
44
  import {
45
45
  defined_default
46
- } from "./chunk-AJLTU6PF.js";
46
+ } from "./chunk-ZP7JMQV4.js";
47
47
 
48
48
  // packages/engine/Source/Workers/createFrustumGeometry.js
49
49
  function createFrustumGeometry(frustumGeometry, offset) {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  * Cesium - https://github.com/CesiumGS/cesium
4
- * Version 1.140.0
4
+ * Version 1.142.0
5
5
  *
6
6
  * Copyright 2011-2022 Cesium Contributors
7
7
  *
@@ -27,41 +27,41 @@ import {
27
27
  FrustumGeometry_default,
28
28
  OrthographicFrustum_default,
29
29
  PerspectiveFrustum_default
30
- } from "./chunk-GQUNK2XC.js";
31
- import "./chunk-LXMCPFFS.js";
32
- import "./chunk-JCI63T3K.js";
30
+ } from "./chunk-EF2QYXGA.js";
31
+ import "./chunk-VQYETPWC.js";
32
+ import "./chunk-E7VQ76KE.js";
33
33
  import {
34
34
  GeometryAttributes_default
35
- } from "./chunk-6MPGQEHA.js";
35
+ } from "./chunk-KSSWJIZW.js";
36
36
  import {
37
37
  GeometryAttribute_default,
38
38
  Geometry_default,
39
39
  PrimitiveType_default
40
- } from "./chunk-7TYLCBGK.js";
40
+ } from "./chunk-EBSIOBXY.js";
41
41
  import {
42
42
  BoundingSphere_default
43
- } from "./chunk-HRHRYFHS.js";
44
- import "./chunk-YQFTYQMZ.js";
43
+ } from "./chunk-XZMBNNDX.js";
44
+ import "./chunk-C6J67V5A.js";
45
45
  import {
46
46
  Quaternion_default
47
- } from "./chunk-YJZGW74L.js";
48
- import "./chunk-HKUES6UG.js";
47
+ } from "./chunk-MYP774IS.js";
48
+ import "./chunk-Q3PY526V.js";
49
49
  import {
50
50
  ComponentDatatype_default
51
- } from "./chunk-ILMFADZA.js";
52
- import "./chunk-PVV64VFW.js";
53
- import "./chunk-EDXL4W76.js";
54
- import "./chunk-GOQBUCXH.js";
51
+ } from "./chunk-P3CK7MCY.js";
52
+ import "./chunk-TKKIREQ6.js";
53
+ import "./chunk-Y5BF6AFU.js";
54
+ import "./chunk-V7VQKN6N.js";
55
55
  import {
56
56
  Cartesian3_default
57
- } from "./chunk-ZBZRTRJB.js";
58
- import "./chunk-5GXYJQ2K.js";
57
+ } from "./chunk-MPZHGZU6.js";
58
+ import "./chunk-J6BWOHUF.js";
59
59
  import {
60
60
  Check_default
61
- } from "./chunk-VLDEUTOP.js";
61
+ } from "./chunk-AYKR4VBR.js";
62
62
  import {
63
63
  defined_default
64
- } from "./chunk-AJLTU6PF.js";
64
+ } from "./chunk-ZP7JMQV4.js";
65
65
 
66
66
  // packages/engine/Source/Core/FrustumOutlineGeometry.js
67
67
  var PERSPECTIVE = 0;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  * Cesium - https://github.com/CesiumGS/cesium
4
- * Version 1.140.0
4
+ * Version 1.142.0
5
5
  *
6
6
  * Copyright 2011-2022 Cesium Contributors
7
7
  *
@@ -25,37 +25,37 @@
25
25
 
26
26
  import {
27
27
  PrimitivePipeline_default
28
- } from "./chunk-4TIG36AW.js";
28
+ } from "./chunk-ZK3CF7ZD.js";
29
29
  import {
30
30
  createTaskProcessorWorker_default
31
- } from "./chunk-AMIHNSST.js";
32
- import "./chunk-DVB56LG7.js";
33
- import "./chunk-5A2SW66E.js";
34
- import "./chunk-72VYSVEW.js";
35
- import "./chunk-ISY4EZCA.js";
36
- import "./chunk-6WLHJFD3.js";
37
- import "./chunk-JCI63T3K.js";
38
- import "./chunk-AF3MU2RL.js";
39
- import "./chunk-6MPGQEHA.js";
40
- import "./chunk-7TYLCBGK.js";
41
- import "./chunk-HRHRYFHS.js";
42
- import "./chunk-YQFTYQMZ.js";
43
- import "./chunk-YJZGW74L.js";
44
- import "./chunk-HKUES6UG.js";
45
- import "./chunk-ILMFADZA.js";
46
- import "./chunk-PVV64VFW.js";
47
- import "./chunk-EDXL4W76.js";
48
- import "./chunk-GOQBUCXH.js";
49
- import "./chunk-ZBZRTRJB.js";
50
- import "./chunk-5GXYJQ2K.js";
31
+ } from "./chunk-4S7IE3LB.js";
32
+ import "./chunk-4MGMYHOO.js";
33
+ import "./chunk-ACXQXN46.js";
34
+ import "./chunk-7J2HKPRH.js";
35
+ import "./chunk-Y57HREW5.js";
36
+ import "./chunk-3VFEWOBI.js";
37
+ import "./chunk-E7VQ76KE.js";
38
+ import "./chunk-S4MCOY6I.js";
39
+ import "./chunk-KSSWJIZW.js";
40
+ import "./chunk-EBSIOBXY.js";
41
+ import "./chunk-XZMBNNDX.js";
42
+ import "./chunk-C6J67V5A.js";
43
+ import "./chunk-MYP774IS.js";
44
+ import "./chunk-Q3PY526V.js";
45
+ import "./chunk-P3CK7MCY.js";
46
+ import "./chunk-TKKIREQ6.js";
47
+ import "./chunk-Y5BF6AFU.js";
48
+ import "./chunk-V7VQKN6N.js";
49
+ import "./chunk-MPZHGZU6.js";
50
+ import "./chunk-J6BWOHUF.js";
51
51
  import {
52
52
  DeveloperError_default
53
- } from "./chunk-VLDEUTOP.js";
53
+ } from "./chunk-AYKR4VBR.js";
54
54
  import {
55
55
  __glob,
56
56
  __require,
57
57
  defined_default
58
- } from "./chunk-AJLTU6PF.js";
58
+ } from "./chunk-ZP7JMQV4.js";
59
59
 
60
60
  // import("./**/*.js") in packages/engine/Source/Workers/createGeometry.js
61
61
  var globImport_js = __glob({
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  * Cesium - https://github.com/CesiumGS/cesium
4
- * Version 1.140.0
4
+ * Version 1.142.0
5
5
  *
6
6
  * Copyright 2011-2022 Cesium Contributors
7
7
  *
@@ -25,186 +25,243 @@
25
25
 
26
26
  import {
27
27
  WebMercatorProjection_default
28
- } from "./chunk-DVB56LG7.js";
28
+ } from "./chunk-4MGMYHOO.js";
29
29
  import {
30
30
  ArcType_default
31
- } from "./chunk-DHKPFLSJ.js";
31
+ } from "./chunk-M3B5JKSM.js";
32
32
  import {
33
33
  EncodedCartesian3_default
34
- } from "./chunk-ISY4EZCA.js";
34
+ } from "./chunk-Y57HREW5.js";
35
35
  import {
36
36
  EllipsoidGeodesic_default
37
- } from "./chunk-C6P4IG5P.js";
37
+ } from "./chunk-6YEE6JDR.js";
38
38
  import {
39
39
  arrayRemoveDuplicates_default
40
- } from "./chunk-7MDYBRYJ.js";
40
+ } from "./chunk-CFQP6LYM.js";
41
41
  import {
42
42
  EllipsoidRhumbLine_default
43
- } from "./chunk-6RMS4S72.js";
43
+ } from "./chunk-54I6Y66F.js";
44
44
  import {
45
45
  IntersectionTests_default
46
- } from "./chunk-6WLHJFD3.js";
46
+ } from "./chunk-3VFEWOBI.js";
47
47
  import {
48
48
  Plane_default
49
- } from "./chunk-JCI63T3K.js";
49
+ } from "./chunk-E7VQ76KE.js";
50
50
  import {
51
51
  GeometryAttribute_default,
52
52
  Geometry_default
53
- } from "./chunk-7TYLCBGK.js";
53
+ } from "./chunk-EBSIOBXY.js";
54
54
  import {
55
55
  BoundingSphere_default,
56
56
  GeographicProjection_default
57
- } from "./chunk-HRHRYFHS.js";
58
- import "./chunk-YQFTYQMZ.js";
57
+ } from "./chunk-XZMBNNDX.js";
58
+ import "./chunk-C6J67V5A.js";
59
59
  import {
60
60
  Quaternion_default,
61
61
  Rectangle_default,
62
62
  Resource_default,
63
63
  buildModuleUrl_default
64
- } from "./chunk-YJZGW74L.js";
65
- import "./chunk-HKUES6UG.js";
64
+ } from "./chunk-MYP774IS.js";
65
+ import "./chunk-Q3PY526V.js";
66
66
  import {
67
67
  ComponentDatatype_default
68
- } from "./chunk-ILMFADZA.js";
69
- import "./chunk-PVV64VFW.js";
70
- import "./chunk-EDXL4W76.js";
68
+ } from "./chunk-P3CK7MCY.js";
69
+ import "./chunk-TKKIREQ6.js";
70
+ import "./chunk-Y5BF6AFU.js";
71
71
  import {
72
72
  Cartesian2_default,
73
73
  Cartographic_default,
74
74
  Ellipsoid_default
75
- } from "./chunk-GOQBUCXH.js";
75
+ } from "./chunk-V7VQKN6N.js";
76
76
  import {
77
77
  Cartesian3_default,
78
78
  Frozen_default,
79
79
  Matrix3_default
80
- } from "./chunk-ZBZRTRJB.js";
80
+ } from "./chunk-MPZHGZU6.js";
81
81
  import {
82
82
  Math_default
83
- } from "./chunk-5GXYJQ2K.js";
83
+ } from "./chunk-J6BWOHUF.js";
84
84
  import {
85
85
  Check_default,
86
86
  DeveloperError_default
87
- } from "./chunk-VLDEUTOP.js";
87
+ } from "./chunk-AYKR4VBR.js";
88
88
  import {
89
89
  defined_default
90
- } from "./chunk-AJLTU6PF.js";
90
+ } from "./chunk-ZP7JMQV4.js";
91
91
 
92
92
  // packages/engine/Source/Core/GeographicTilingScheme.js
93
- function GeographicTilingScheme(options) {
94
- options = options ?? Frozen_default.EMPTY_OBJECT;
95
- this._ellipsoid = options.ellipsoid ?? Ellipsoid_default.default;
96
- this._rectangle = options.rectangle ?? Rectangle_default.MAX_VALUE;
97
- this._projection = new GeographicProjection_default(this._ellipsoid);
98
- this._numberOfLevelZeroTilesX = options.numberOfLevelZeroTilesX ?? 2;
99
- this._numberOfLevelZeroTilesY = options.numberOfLevelZeroTilesY ?? 1;
100
- }
101
- Object.defineProperties(GeographicTilingScheme.prototype, {
93
+ var GeographicTilingScheme = class {
94
+ /**
95
+ * @param {object} [options] Object with the following properties:
96
+ * @param {Ellipsoid} [options.ellipsoid=Ellipsoid.default] The ellipsoid whose surface is being tiled. Defaults to
97
+ * the default ellipsoid.
98
+ * @param {Rectangle} [options.rectangle=Rectangle.MAX_VALUE] The rectangle, in radians, covered by the tiling scheme.
99
+ * @param {number} [options.numberOfLevelZeroTilesX=2] The number of tiles in the X direction at level zero of
100
+ * the tile tree.
101
+ * @param {number} [options.numberOfLevelZeroTilesY=1] The number of tiles in the Y direction at level zero of
102
+ * the tile tree.
103
+ */
104
+ constructor(options) {
105
+ options = options ?? Frozen_default.EMPTY_OBJECT;
106
+ this._ellipsoid = options.ellipsoid ?? Ellipsoid_default.default;
107
+ this._rectangle = options.rectangle ?? Rectangle_default.MAX_VALUE;
108
+ this._projection = new GeographicProjection_default(this._ellipsoid);
109
+ this._numberOfLevelZeroTilesX = options.numberOfLevelZeroTilesX ?? 2;
110
+ this._numberOfLevelZeroTilesY = options.numberOfLevelZeroTilesY ?? 1;
111
+ }
102
112
  /**
103
113
  * Gets the ellipsoid that is tiled by this tiling scheme.
104
- * @memberof GeographicTilingScheme.prototype
105
114
  * @type {Ellipsoid}
106
115
  */
107
- ellipsoid: {
108
- get: function() {
109
- return this._ellipsoid;
110
- }
111
- },
116
+ get ellipsoid() {
117
+ return this._ellipsoid;
118
+ }
112
119
  /**
113
120
  * Gets the rectangle, in radians, covered by this tiling scheme.
114
- * @memberof GeographicTilingScheme.prototype
115
121
  * @type {Rectangle}
116
122
  */
117
- rectangle: {
118
- get: function() {
119
- return this._rectangle;
120
- }
121
- },
123
+ get rectangle() {
124
+ return this._rectangle;
125
+ }
122
126
  /**
123
127
  * Gets the map projection used by this tiling scheme.
124
- * @memberof GeographicTilingScheme.prototype
125
128
  * @type {MapProjection}
126
129
  */
127
- projection: {
128
- get: function() {
129
- return this._projection;
130
- }
130
+ get projection() {
131
+ return this._projection;
131
132
  }
132
- });
133
- GeographicTilingScheme.prototype.getNumberOfXTilesAtLevel = function(level) {
134
- return this._numberOfLevelZeroTilesX << level;
135
- };
136
- GeographicTilingScheme.prototype.getNumberOfYTilesAtLevel = function(level) {
137
- return this._numberOfLevelZeroTilesY << level;
138
- };
139
- GeographicTilingScheme.prototype.rectangleToNativeRectangle = function(rectangle, result) {
140
- Check_default.defined("rectangle", rectangle);
141
- const west = Math_default.toDegrees(rectangle.west);
142
- const south = Math_default.toDegrees(rectangle.south);
143
- const east = Math_default.toDegrees(rectangle.east);
144
- const north = Math_default.toDegrees(rectangle.north);
145
- if (!defined_default(result)) {
146
- return new Rectangle_default(west, south, east, north);
147
- }
148
- result.west = west;
149
- result.south = south;
150
- result.east = east;
151
- result.north = north;
152
- return result;
153
- };
154
- GeographicTilingScheme.prototype.tileXYToNativeRectangle = function(x, y, level, result) {
155
- const rectangleRadians = this.tileXYToRectangle(x, y, level, result);
156
- rectangleRadians.west = Math_default.toDegrees(rectangleRadians.west);
157
- rectangleRadians.south = Math_default.toDegrees(rectangleRadians.south);
158
- rectangleRadians.east = Math_default.toDegrees(rectangleRadians.east);
159
- rectangleRadians.north = Math_default.toDegrees(rectangleRadians.north);
160
- return rectangleRadians;
161
- };
162
- GeographicTilingScheme.prototype.tileXYToRectangle = function(x, y, level, result) {
163
- const rectangle = this._rectangle;
164
- const xTiles = this.getNumberOfXTilesAtLevel(level);
165
- const yTiles = this.getNumberOfYTilesAtLevel(level);
166
- const xTileWidth = rectangle.width / xTiles;
167
- const west = x * xTileWidth + rectangle.west;
168
- const east = (x + 1) * xTileWidth + rectangle.west;
169
- const yTileHeight = rectangle.height / yTiles;
170
- const north = rectangle.north - y * yTileHeight;
171
- const south = rectangle.north - (y + 1) * yTileHeight;
172
- if (!defined_default(result)) {
173
- result = new Rectangle_default(west, south, east, north);
133
+ /**
134
+ * Gets the total number of tiles in the X direction at a specified level-of-detail.
135
+ *
136
+ * @param {number} level The level-of-detail.
137
+ * @returns {number} The number of tiles in the X direction at the given level.
138
+ */
139
+ getNumberOfXTilesAtLevel(level) {
140
+ return this._numberOfLevelZeroTilesX << level;
174
141
  }
175
- result.west = west;
176
- result.south = south;
177
- result.east = east;
178
- result.north = north;
179
- return result;
180
- };
181
- GeographicTilingScheme.prototype.positionToTileXY = function(position, level, result) {
182
- const rectangle = this._rectangle;
183
- if (!Rectangle_default.contains(rectangle, position)) {
184
- return void 0;
142
+ /**
143
+ * Gets the total number of tiles in the Y direction at a specified level-of-detail.
144
+ *
145
+ * @param {number} level The level-of-detail.
146
+ * @returns {number} The number of tiles in the Y direction at the given level.
147
+ */
148
+ getNumberOfYTilesAtLevel(level) {
149
+ return this._numberOfLevelZeroTilesY << level;
185
150
  }
186
- const xTiles = this.getNumberOfXTilesAtLevel(level);
187
- const yTiles = this.getNumberOfYTilesAtLevel(level);
188
- const xTileWidth = rectangle.width / xTiles;
189
- const yTileHeight = rectangle.height / yTiles;
190
- let longitude = position.longitude;
191
- if (rectangle.east < rectangle.west) {
192
- longitude += Math_default.TWO_PI;
151
+ /**
152
+ * Transforms a rectangle specified in geodetic radians to the native coordinate system
153
+ * of this tiling scheme.
154
+ *
155
+ * @param {Rectangle} rectangle The rectangle to transform.
156
+ * @param {Rectangle} [result] The instance to which to copy the result, or undefined if a new instance
157
+ * should be created.
158
+ * @returns {Rectangle} The specified 'result', or a new object containing the native rectangle if 'result'
159
+ * is undefined.
160
+ */
161
+ rectangleToNativeRectangle(rectangle, result) {
162
+ Check_default.defined("rectangle", rectangle);
163
+ const west = Math_default.toDegrees(rectangle.west);
164
+ const south = Math_default.toDegrees(rectangle.south);
165
+ const east = Math_default.toDegrees(rectangle.east);
166
+ const north = Math_default.toDegrees(rectangle.north);
167
+ if (!defined_default(result)) {
168
+ return new Rectangle_default(west, south, east, north);
169
+ }
170
+ result.west = west;
171
+ result.south = south;
172
+ result.east = east;
173
+ result.north = north;
174
+ return result;
193
175
  }
194
- let xTileCoordinate = (longitude - rectangle.west) / xTileWidth | 0;
195
- if (xTileCoordinate >= xTiles) {
196
- xTileCoordinate = xTiles - 1;
176
+ /**
177
+ * Converts tile x, y coordinates and level to a rectangle expressed in the native coordinates
178
+ * of the tiling scheme.
179
+ *
180
+ * @param {number} x The integer x coordinate of the tile.
181
+ * @param {number} y The integer y coordinate of the tile.
182
+ * @param {number} level The tile level-of-detail. Zero is the least detailed.
183
+ * @param {Rectangle} [result] The instance to which to copy the result, or undefined if a new instance
184
+ * should be created.
185
+ * @returns {Rectangle} The specified 'result', or a new object containing the rectangle
186
+ * if 'result' is undefined.
187
+ */
188
+ tileXYToNativeRectangle(x, y, level, result) {
189
+ const rectangleRadians = this.tileXYToRectangle(x, y, level, result);
190
+ rectangleRadians.west = Math_default.toDegrees(rectangleRadians.west);
191
+ rectangleRadians.south = Math_default.toDegrees(rectangleRadians.south);
192
+ rectangleRadians.east = Math_default.toDegrees(rectangleRadians.east);
193
+ rectangleRadians.north = Math_default.toDegrees(rectangleRadians.north);
194
+ return rectangleRadians;
197
195
  }
198
- let yTileCoordinate = (rectangle.north - position.latitude) / yTileHeight | 0;
199
- if (yTileCoordinate >= yTiles) {
200
- yTileCoordinate = yTiles - 1;
196
+ /**
197
+ * Converts tile x, y coordinates and level to a cartographic rectangle in radians.
198
+ *
199
+ * @param {number} x The integer x coordinate of the tile.
200
+ * @param {number} y The integer y coordinate of the tile.
201
+ * @param {number} level The tile level-of-detail. Zero is the least detailed.
202
+ * @param {Rectangle} [result] The instance to which to copy the result, or undefined if a new instance
203
+ * should be created.
204
+ * @returns {Rectangle} The specified 'result', or a new object containing the rectangle
205
+ * if 'result' is undefined.
206
+ */
207
+ tileXYToRectangle(x, y, level, result) {
208
+ const rectangle = this._rectangle;
209
+ const xTiles = this.getNumberOfXTilesAtLevel(level);
210
+ const yTiles = this.getNumberOfYTilesAtLevel(level);
211
+ const xTileWidth = rectangle.width / xTiles;
212
+ const west = x * xTileWidth + rectangle.west;
213
+ const east = (x + 1) * xTileWidth + rectangle.west;
214
+ const yTileHeight = rectangle.height / yTiles;
215
+ const north = rectangle.north - y * yTileHeight;
216
+ const south = rectangle.north - (y + 1) * yTileHeight;
217
+ if (!defined_default(result)) {
218
+ result = new Rectangle_default(west, south, east, north);
219
+ }
220
+ result.west = west;
221
+ result.south = south;
222
+ result.east = east;
223
+ result.north = north;
224
+ return result;
201
225
  }
202
- if (!defined_default(result)) {
203
- return new Cartesian2_default(xTileCoordinate, yTileCoordinate);
226
+ /**
227
+ * Calculates the tile x, y coordinates of the tile containing
228
+ * a given cartographic position.
229
+ *
230
+ * @param {Cartographic} position The position.
231
+ * @param {number} level The tile level-of-detail. Zero is the least detailed.
232
+ * @param {Cartesian2} [result] The instance to which to copy the result, or undefined if a new instance
233
+ * should be created.
234
+ * @returns {Cartesian2} The specified 'result', or a new object containing the tile x, y coordinates
235
+ * if 'result' is undefined.
236
+ */
237
+ positionToTileXY(position, level, result) {
238
+ const rectangle = this._rectangle;
239
+ if (!Rectangle_default.contains(rectangle, position)) {
240
+ return void 0;
241
+ }
242
+ const xTiles = this.getNumberOfXTilesAtLevel(level);
243
+ const yTiles = this.getNumberOfYTilesAtLevel(level);
244
+ const xTileWidth = rectangle.width / xTiles;
245
+ const yTileHeight = rectangle.height / yTiles;
246
+ let longitude = position.longitude;
247
+ if (rectangle.east < rectangle.west) {
248
+ longitude += Math_default.TWO_PI;
249
+ }
250
+ let xTileCoordinate = (longitude - rectangle.west) / xTileWidth | 0;
251
+ if (xTileCoordinate >= xTiles) {
252
+ xTileCoordinate = xTiles - 1;
253
+ }
254
+ let yTileCoordinate = (rectangle.north - position.latitude) / yTileHeight | 0;
255
+ if (yTileCoordinate >= yTiles) {
256
+ yTileCoordinate = yTiles - 1;
257
+ }
258
+ if (!defined_default(result)) {
259
+ return new Cartesian2_default(xTileCoordinate, yTileCoordinate);
260
+ }
261
+ result.x = xTileCoordinate;
262
+ result.y = yTileCoordinate;
263
+ return result;
204
264
  }
205
- result.x = xTileCoordinate;
206
- result.y = yTileCoordinate;
207
- return result;
208
265
  };
209
266
  var GeographicTilingScheme_default = GeographicTilingScheme;
210
267