@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
@@ -651,7 +651,7 @@ class Cartesian2 {
651
651
  * @param {Cartesian2} cartesian
652
652
  * @param {number[]} array
653
653
  * @param {number} offset
654
- * @private
654
+ * @ignore
655
655
  */
656
656
  static equalsArray(cartesian, array, offset) {
657
657
  return cartesian.x === array[offset] && cartesian.y === array[offset + 1];
@@ -723,7 +723,7 @@ class Cartesian3 {
723
723
  * @param {Cartesian3} cartesian
724
724
  * @param {number[]} array
725
725
  * @param {number} offset
726
- * @private
726
+ * @ignore
727
727
  */
728
728
  static equalsArray(cartesian, array, offset) {
729
729
  return (
@@ -876,8 +876,7 @@ class Cartesian3 {
876
876
 
877
877
  const radiiSquared = !defined(ellipsoid)
878
878
  ? Cartesian3._ellipsoidRadiiSquared
879
- : // @ts-expect-error Requires type-checking on Ellipsoid.js.
880
- ellipsoid.radiiSquared;
879
+ : ellipsoid.radiiSquared;
881
880
 
882
881
  const cosLatitude = Math.cos(latitude);
883
882
  scratchN.x = cosLatitude * Math.cos(longitude);
@@ -727,7 +727,7 @@ class Cartesian4 {
727
727
  * @param {Cartesian4} cartesian
728
728
  * @param {number[]} array
729
729
  * @param {number} offset
730
- * @private
730
+ * @ignore
731
731
  */
732
732
  static equalsArray(cartesian, array, offset) {
733
733
  return (
@@ -1,255 +1,301 @@
1
+ // @ts-check
2
+
1
3
  import Cartesian3 from "./Cartesian3.js";
2
4
  import Check from "./Check.js";
3
5
  import defined from "./defined.js";
4
6
  import CesiumMath from "./Math.js";
5
7
  import scaleToGeodeticSurface from "./scaleToGeodeticSurface.js";
6
8
 
9
+ /** @import Ellipsoid from "./Ellipsoid.js"; */
10
+
7
11
  /**
8
12
  * A position defined by longitude, latitude, and height.
9
- * @alias Cartographic
10
- * @constructor
11
- *
12
- * @param {number} [longitude=0.0] The longitude, in radians.
13
- * @param {number} [latitude=0.0] The latitude, in radians.
14
- * @param {number} [height=0.0] The height, in meters, above the ellipsoid.
15
13
  *
16
14
  * @see Ellipsoid
17
15
  */
18
- function Cartographic(longitude, latitude, height) {
16
+ class Cartographic {
19
17
  /**
20
- * The longitude, in radians.
21
- * @type {number}
22
- * @default 0.0
18
+ * @param {number} [longitude=0.0] The longitude, in radians.
19
+ * @param {number} [latitude=0.0] The latitude, in radians.
20
+ * @param {number} [height=0.0] The height, in meters, above the ellipsoid.
23
21
  */
24
- this.longitude = longitude ?? 0.0;
22
+ constructor(longitude, latitude, height) {
23
+ /**
24
+ * The longitude, in radians.
25
+ * @type {number}
26
+ * @default 0.0
27
+ */
28
+ this.longitude = longitude ?? 0.0;
29
+
30
+ /**
31
+ * The latitude, in radians.
32
+ * @type {number}
33
+ * @default 0.0
34
+ */
35
+ this.latitude = latitude ?? 0.0;
36
+
37
+ /**
38
+ * The height, in meters, above the ellipsoid.
39
+ * @type {number}
40
+ * @default 0.0
41
+ */
42
+ this.height = height ?? 0.0;
43
+ }
25
44
 
26
45
  /**
27
- * The latitude, in radians.
28
- * @type {number}
29
- * @default 0.0
46
+ * Creates a new Cartographic instance from longitude and latitude
47
+ * specified in radians.
48
+ *
49
+ * @param {number} longitude The longitude, in radians.
50
+ * @param {number} latitude The latitude, in radians.
51
+ * @param {number} [height=0.0] The height, in meters, above the ellipsoid.
52
+ * @param {Cartographic} [result] The object onto which to store the result.
53
+ * @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
30
54
  */
31
- this.latitude = latitude ?? 0.0;
55
+ static fromRadians(longitude, latitude, height, result) {
56
+ //>>includeStart('debug', pragmas.debug);
57
+ Check.typeOf.number("longitude", longitude);
58
+ Check.typeOf.number("latitude", latitude);
59
+ //>>includeEnd('debug');
60
+
61
+ height = height ?? 0.0;
62
+
63
+ if (!defined(result)) {
64
+ return new Cartographic(longitude, latitude, height);
65
+ }
66
+
67
+ result.longitude = longitude;
68
+ result.latitude = latitude;
69
+ result.height = height;
70
+ return result;
71
+ }
32
72
 
33
73
  /**
34
- * The height, in meters, above the ellipsoid.
35
- * @type {number}
36
- * @default 0.0
74
+ * Creates a new Cartographic instance from longitude and latitude
75
+ * specified in degrees. The values in the resulting object will
76
+ * be in radians.
77
+ *
78
+ * @param {number} longitude The longitude, in degrees.
79
+ * @param {number} latitude The latitude, in degrees.
80
+ * @param {number} [height=0.0] The height, in meters, above the ellipsoid.
81
+ * @param {Cartographic} [result] The object onto which to store the result.
82
+ * @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
37
83
  */
38
- this.height = height ?? 0.0;
39
- }
40
-
41
- /**
42
- * Creates a new Cartographic instance from longitude and latitude
43
- * specified in radians.
44
- *
45
- * @param {number} longitude The longitude, in radians.
46
- * @param {number} latitude The latitude, in radians.
47
- * @param {number} [height=0.0] The height, in meters, above the ellipsoid.
48
- * @param {Cartographic} [result] The object onto which to store the result.
49
- * @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
50
- */
51
- Cartographic.fromRadians = function (longitude, latitude, height, result) {
52
- //>>includeStart('debug', pragmas.debug);
53
- Check.typeOf.number("longitude", longitude);
54
- Check.typeOf.number("latitude", latitude);
55
- //>>includeEnd('debug');
84
+ static fromDegrees(longitude, latitude, height, result) {
85
+ //>>includeStart('debug', pragmas.debug);
86
+ Check.typeOf.number("longitude", longitude);
87
+ Check.typeOf.number("latitude", latitude);
88
+ //>>includeEnd('debug');
56
89
 
57
- height = height ?? 0.0;
90
+ longitude = CesiumMath.toRadians(longitude);
91
+ latitude = CesiumMath.toRadians(latitude);
58
92
 
59
- if (!defined(result)) {
60
- return new Cartographic(longitude, latitude, height);
93
+ return Cartographic.fromRadians(longitude, latitude, height, result);
61
94
  }
62
95
 
63
- result.longitude = longitude;
64
- result.latitude = latitude;
65
- result.height = height;
66
- return result;
67
- };
96
+ /**
97
+ * Creates a new Cartographic instance from a Cartesian position. The values in the
98
+ * resulting object will be in radians.
99
+ *
100
+ * @param {Cartesian3} cartesian The Cartesian position to convert to cartographic representation.
101
+ * @param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid on which the position lies.
102
+ * @param {Cartographic} [result] The object onto which to store the result.
103
+ * @returns {Cartographic} The modified result parameter, new Cartographic instance if none was provided, or undefined if the cartesian is at the center of the ellipsoid.
104
+ */
105
+ static fromCartesian(cartesian, ellipsoid, result) {
106
+ const oneOverRadii = defined(ellipsoid)
107
+ ? ellipsoid.oneOverRadii
108
+ : Cartographic._ellipsoidOneOverRadii;
109
+ const oneOverRadiiSquared = defined(ellipsoid)
110
+ ? ellipsoid.oneOverRadiiSquared
111
+ : Cartographic._ellipsoidOneOverRadiiSquared;
112
+ const centerToleranceSquared = defined(ellipsoid)
113
+ ? ellipsoid._centerToleranceSquared
114
+ : Cartographic._ellipsoidCenterToleranceSquared;
68
115
 
69
- /**
70
- * Creates a new Cartographic instance from longitude and latitude
71
- * specified in degrees. The values in the resulting object will
72
- * be in radians.
73
- *
74
- * @param {number} longitude The longitude, in degrees.
75
- * @param {number} latitude The latitude, in degrees.
76
- * @param {number} [height=0.0] The height, in meters, above the ellipsoid.
77
- * @param {Cartographic} [result] The object onto which to store the result.
78
- * @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
79
- */
80
- Cartographic.fromDegrees = function (longitude, latitude, height, result) {
81
- //>>includeStart('debug', pragmas.debug);
82
- Check.typeOf.number("longitude", longitude);
83
- Check.typeOf.number("latitude", latitude);
84
- //>>includeEnd('debug');
116
+ //`cartesian is required.` is thrown from scaleToGeodeticSurface
117
+ const p = scaleToGeodeticSurface(
118
+ cartesian,
119
+ oneOverRadii,
120
+ oneOverRadiiSquared,
121
+ centerToleranceSquared,
122
+ cartesianToCartographicP,
123
+ );
85
124
 
86
- longitude = CesiumMath.toRadians(longitude);
87
- latitude = CesiumMath.toRadians(latitude);
125
+ if (!defined(p)) {
126
+ return undefined;
127
+ }
88
128
 
89
- return Cartographic.fromRadians(longitude, latitude, height, result);
90
- };
129
+ let n = Cartesian3.multiplyComponents(
130
+ p,
131
+ oneOverRadiiSquared,
132
+ cartesianToCartographicN,
133
+ );
134
+ n = Cartesian3.normalize(n, n);
91
135
 
92
- const cartesianToCartographicN = new Cartesian3();
93
- const cartesianToCartographicP = new Cartesian3();
94
- const cartesianToCartographicH = new Cartesian3();
136
+ const h = Cartesian3.subtract(cartesian, p, cartesianToCartographicH);
95
137
 
96
- // To avoid circular dependencies, these are set by Ellipsoid when Ellipsoid.default is set.
97
- Cartographic._ellipsoidOneOverRadii = new Cartesian3(
98
- 1.0 / 6378137.0,
99
- 1.0 / 6378137.0,
100
- 1.0 / 6356752.3142451793,
101
- );
102
- Cartographic._ellipsoidOneOverRadiiSquared = new Cartesian3(
103
- 1.0 / (6378137.0 * 6378137.0),
104
- 1.0 / (6378137.0 * 6378137.0),
105
- 1.0 / (6356752.3142451793 * 6356752.3142451793),
106
- );
107
- Cartographic._ellipsoidCenterToleranceSquared = CesiumMath.EPSILON1;
138
+ const longitude = Math.atan2(n.y, n.x);
139
+ const latitude = Math.asin(n.z);
140
+ const height =
141
+ CesiumMath.sign(Cartesian3.dot(h, cartesian)) * Cartesian3.magnitude(h);
108
142
 
109
- /**
110
- * Creates a new Cartographic instance from a Cartesian position. The values in the
111
- * resulting object will be in radians.
112
- *
113
- * @param {Cartesian3} cartesian The Cartesian position to convert to cartographic representation.
114
- * @param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid on which the position lies.
115
- * @param {Cartographic} [result] The object onto which to store the result.
116
- * @returns {Cartographic} The modified result parameter, new Cartographic instance if none was provided, or undefined if the cartesian is at the center of the ellipsoid.
117
- */
118
- Cartographic.fromCartesian = function (cartesian, ellipsoid, result) {
119
- const oneOverRadii = defined(ellipsoid)
120
- ? ellipsoid.oneOverRadii
121
- : Cartographic._ellipsoidOneOverRadii;
122
- const oneOverRadiiSquared = defined(ellipsoid)
123
- ? ellipsoid.oneOverRadiiSquared
124
- : Cartographic._ellipsoidOneOverRadiiSquared;
125
- const centerToleranceSquared = defined(ellipsoid)
126
- ? ellipsoid._centerToleranceSquared
127
- : Cartographic._ellipsoidCenterToleranceSquared;
128
-
129
- //`cartesian is required.` is thrown from scaleToGeodeticSurface
130
- const p = scaleToGeodeticSurface(
131
- cartesian,
132
- oneOverRadii,
133
- oneOverRadiiSquared,
134
- centerToleranceSquared,
135
- cartesianToCartographicP,
136
- );
143
+ if (!defined(result)) {
144
+ return new Cartographic(longitude, latitude, height);
145
+ }
146
+ result.longitude = longitude;
147
+ result.latitude = latitude;
148
+ result.height = height;
149
+ return result;
150
+ }
151
+
152
+ /**
153
+ * Creates a new Cartesian3 instance from a Cartographic input. The values in the inputted
154
+ * object should be in radians.
155
+ *
156
+ * @param {Cartographic} cartographic Input to be converted into a Cartesian3 output.
157
+ * @param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid on which the position lies.
158
+ * @param {Cartesian3} [result] The object onto which to store the result.
159
+ * @returns {Cartesian3} The position
160
+ */
161
+ static toCartesian(cartographic, ellipsoid, result) {
162
+ //>>includeStart('debug', pragmas.debug);
163
+ Check.defined("cartographic", cartographic);
164
+ //>>includeEnd('debug');
165
+
166
+ return Cartesian3.fromRadians(
167
+ cartographic.longitude,
168
+ cartographic.latitude,
169
+ cartographic.height,
170
+ ellipsoid,
171
+ result,
172
+ );
173
+ }
137
174
 
138
- if (!defined(p)) {
139
- return undefined;
175
+ /**
176
+ * Duplicates a Cartographic instance.
177
+ *
178
+ * @param {Cartographic} cartographic The cartographic to duplicate.
179
+ * @param {Cartographic} [result] The object onto which to store the result.
180
+ * @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided. (Returns undefined if cartographic is undefined)
181
+ */
182
+ static clone(cartographic, result) {
183
+ if (!defined(cartographic)) {
184
+ return undefined;
185
+ }
186
+ if (!defined(result)) {
187
+ return new Cartographic(
188
+ cartographic.longitude,
189
+ cartographic.latitude,
190
+ cartographic.height,
191
+ );
192
+ }
193
+ result.longitude = cartographic.longitude;
194
+ result.latitude = cartographic.latitude;
195
+ result.height = cartographic.height;
196
+ return result;
140
197
  }
141
198
 
142
- let n = Cartesian3.multiplyComponents(
143
- p,
144
- oneOverRadiiSquared,
145
- cartesianToCartographicN,
146
- );
147
- n = Cartesian3.normalize(n, n);
199
+ /**
200
+ * Compares the provided cartographics componentwise and returns
201
+ * <code>true</code> if they are equal, <code>false</code> otherwise.
202
+ *
203
+ * @param {Cartographic} [left] The first cartographic.
204
+ * @param {Cartographic} [right] The second cartographic.
205
+ * @returns {boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
206
+ */
207
+ static equals(left, right) {
208
+ return (
209
+ left === right ||
210
+ (defined(left) &&
211
+ defined(right) &&
212
+ left.longitude === right.longitude &&
213
+ left.latitude === right.latitude &&
214
+ left.height === right.height)
215
+ );
216
+ }
148
217
 
149
- const h = Cartesian3.subtract(cartesian, p, cartesianToCartographicH);
218
+ /**
219
+ * Compares the provided cartographics componentwise and returns
220
+ * <code>true</code> if they are within the provided epsilon,
221
+ * <code>false</code> otherwise.
222
+ *
223
+ * @param {Cartographic} [left] The first cartographic.
224
+ * @param {Cartographic} [right] The second cartographic.
225
+ * @param {number} [epsilon=0] The epsilon to use for equality testing.
226
+ * @returns {boolean} <code>true</code> if left and right are within the provided epsilon, <code>false</code> otherwise.
227
+ */
228
+ static equalsEpsilon(left, right, epsilon) {
229
+ epsilon = epsilon ?? 0;
150
230
 
151
- const longitude = Math.atan2(n.y, n.x);
152
- const latitude = Math.asin(n.z);
153
- const height =
154
- CesiumMath.sign(Cartesian3.dot(h, cartesian)) * Cartesian3.magnitude(h);
231
+ return (
232
+ left === right ||
233
+ (defined(left) &&
234
+ defined(right) &&
235
+ Math.abs(left.longitude - right.longitude) <= epsilon &&
236
+ Math.abs(left.latitude - right.latitude) <= epsilon &&
237
+ Math.abs(left.height - right.height) <= epsilon)
238
+ );
239
+ }
155
240
 
156
- if (!defined(result)) {
157
- return new Cartographic(longitude, latitude, height);
241
+ /**
242
+ * Duplicates this instance.
243
+ *
244
+ * @param {Cartographic} [result] The object onto which to store the result.
245
+ * @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
246
+ */
247
+ clone(result) {
248
+ return Cartographic.clone(this, result);
158
249
  }
159
- result.longitude = longitude;
160
- result.latitude = latitude;
161
- result.height = height;
162
- return result;
163
- };
164
250
 
165
- /**
166
- * Creates a new Cartesian3 instance from a Cartographic input. The values in the inputted
167
- * object should be in radians.
168
- *
169
- * @param {Cartographic} cartographic Input to be converted into a Cartesian3 output.
170
- * @param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid on which the position lies.
171
- * @param {Cartesian3} [result] The object onto which to store the result.
172
- * @returns {Cartesian3} The position
173
- */
174
- Cartographic.toCartesian = function (cartographic, ellipsoid, result) {
175
- //>>includeStart('debug', pragmas.debug);
176
- Check.defined("cartographic", cartographic);
177
- //>>includeEnd('debug');
178
-
179
- return Cartesian3.fromRadians(
180
- cartographic.longitude,
181
- cartographic.latitude,
182
- cartographic.height,
183
- ellipsoid,
184
- result,
185
- );
186
- };
251
+ /**
252
+ * Compares the provided against this cartographic componentwise and returns
253
+ * <code>true</code> if they are equal, <code>false</code> otherwise.
254
+ *
255
+ * @param {Cartographic} [right] The second cartographic.
256
+ * @returns {boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
257
+ */
258
+ equals(right) {
259
+ return Cartographic.equals(this, right);
260
+ }
187
261
 
188
- /**
189
- * Duplicates a Cartographic instance.
190
- *
191
- * @param {Cartographic} cartographic The cartographic to duplicate.
192
- * @param {Cartographic} [result] The object onto which to store the result.
193
- * @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided. (Returns undefined if cartographic is undefined)
194
- */
195
- Cartographic.clone = function (cartographic, result) {
196
- if (!defined(cartographic)) {
197
- return undefined;
262
+ /**
263
+ * Compares the provided against this cartographic componentwise and returns
264
+ * <code>true</code> if they are within the provided epsilon,
265
+ * <code>false</code> otherwise.
266
+ *
267
+ * @param {Cartographic} [right] The second cartographic.
268
+ * @param {number} [epsilon=0] The epsilon to use for equality testing.
269
+ * @returns {boolean} <code>true</code> if left and right are within the provided epsilon, <code>false</code> otherwise.
270
+ */
271
+ equalsEpsilon(right, epsilon) {
272
+ return Cartographic.equalsEpsilon(this, right, epsilon);
198
273
  }
199
- if (!defined(result)) {
200
- return new Cartographic(
201
- cartographic.longitude,
202
- cartographic.latitude,
203
- cartographic.height,
204
- );
274
+
275
+ /**
276
+ * Creates a string representing this cartographic in the format '(longitude, latitude, height)'.
277
+ *
278
+ * @returns {string} A string representing the provided cartographic in the format '(longitude, latitude, height)'.
279
+ */
280
+ toString() {
281
+ return `(${this.longitude}, ${this.latitude}, ${this.height})`;
205
282
  }
206
- result.longitude = cartographic.longitude;
207
- result.latitude = cartographic.latitude;
208
- result.height = cartographic.height;
209
- return result;
210
- };
211
283
 
212
- /**
213
- * Compares the provided cartographics componentwise and returns
214
- * <code>true</code> if they are equal, <code>false</code> otherwise.
215
- *
216
- * @param {Cartographic} [left] The first cartographic.
217
- * @param {Cartographic} [right] The second cartographic.
218
- * @returns {boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
219
- */
220
- Cartographic.equals = function (left, right) {
221
- return (
222
- left === right ||
223
- (defined(left) &&
224
- defined(right) &&
225
- left.longitude === right.longitude &&
226
- left.latitude === right.latitude &&
227
- left.height === right.height)
284
+ // To avoid circular dependencies, these are set by Ellipsoid when Ellipsoid.default is set.
285
+ static _ellipsoidOneOverRadii = new Cartesian3(
286
+ 1.0 / 6378137.0,
287
+ 1.0 / 6378137.0,
288
+ 1.0 / 6356752.3142451793,
228
289
  );
229
- };
230
290
 
231
- /**
232
- * Compares the provided cartographics componentwise and returns
233
- * <code>true</code> if they are within the provided epsilon,
234
- * <code>false</code> otherwise.
235
- *
236
- * @param {Cartographic} [left] The first cartographic.
237
- * @param {Cartographic} [right] The second cartographic.
238
- * @param {number} [epsilon=0] The epsilon to use for equality testing.
239
- * @returns {boolean} <code>true</code> if left and right are within the provided epsilon, <code>false</code> otherwise.
240
- */
241
- Cartographic.equalsEpsilon = function (left, right, epsilon) {
242
- epsilon = epsilon ?? 0;
243
-
244
- return (
245
- left === right ||
246
- (defined(left) &&
247
- defined(right) &&
248
- Math.abs(left.longitude - right.longitude) <= epsilon &&
249
- Math.abs(left.latitude - right.latitude) <= epsilon &&
250
- Math.abs(left.height - right.height) <= epsilon)
291
+ static _ellipsoidOneOverRadiiSquared = new Cartesian3(
292
+ 1.0 / (6378137.0 * 6378137.0),
293
+ 1.0 / (6378137.0 * 6378137.0),
294
+ 1.0 / (6356752.3142451793 * 6356752.3142451793),
251
295
  );
252
- };
296
+
297
+ static _ellipsoidCenterToleranceSquared = CesiumMath.EPSILON1;
298
+ }
253
299
 
254
300
  /**
255
301
  * An immutable Cartographic instance initialized to (0.0, 0.0, 0.0).
@@ -259,46 +305,8 @@ Cartographic.equalsEpsilon = function (left, right, epsilon) {
259
305
  */
260
306
  Cartographic.ZERO = Object.freeze(new Cartographic(0.0, 0.0, 0.0));
261
307
 
262
- /**
263
- * Duplicates this instance.
264
- *
265
- * @param {Cartographic} [result] The object onto which to store the result.
266
- * @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
267
- */
268
- Cartographic.prototype.clone = function (result) {
269
- return Cartographic.clone(this, result);
270
- };
271
-
272
- /**
273
- * Compares the provided against this cartographic componentwise and returns
274
- * <code>true</code> if they are equal, <code>false</code> otherwise.
275
- *
276
- * @param {Cartographic} [right] The second cartographic.
277
- * @returns {boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
278
- */
279
- Cartographic.prototype.equals = function (right) {
280
- return Cartographic.equals(this, right);
281
- };
282
-
283
- /**
284
- * Compares the provided against this cartographic componentwise and returns
285
- * <code>true</code> if they are within the provided epsilon,
286
- * <code>false</code> otherwise.
287
- *
288
- * @param {Cartographic} [right] The second cartographic.
289
- * @param {number} [epsilon=0] The epsilon to use for equality testing.
290
- * @returns {boolean} <code>true</code> if left and right are within the provided epsilon, <code>false</code> otherwise.
291
- */
292
- Cartographic.prototype.equalsEpsilon = function (right, epsilon) {
293
- return Cartographic.equalsEpsilon(this, right, epsilon);
294
- };
308
+ const cartesianToCartographicN = new Cartesian3();
309
+ const cartesianToCartographicP = new Cartesian3();
310
+ const cartesianToCartographicH = new Cartesian3();
295
311
 
296
- /**
297
- * Creates a string representing this cartographic in the format '(longitude, latitude, height)'.
298
- *
299
- * @returns {string} A string representing the provided cartographic in the format '(longitude, latitude, height)'.
300
- */
301
- Cartographic.prototype.toString = function () {
302
- return `(${this.longitude}, ${this.latitude}, ${this.height})`;
303
- };
304
312
  export default Cartographic;
@@ -1,3 +1,5 @@
1
+ // @ts-check
2
+
1
3
  /**
2
4
  * Constants used by {@link Clock#tick} to determine behavior
3
5
  * when {@link Clock#startTime} or {@link Clock#stopTime} is reached.
@@ -36,4 +38,7 @@ const ClockRange = {
36
38
  */
37
39
  LOOP_STOP: 2,
38
40
  };
39
- export default Object.freeze(ClockRange);
41
+
42
+ Object.freeze(ClockRange);
43
+
44
+ export default ClockRange;
@@ -1,3 +1,5 @@
1
+ // @ts-check
2
+
1
3
  /**
2
4
  * Constants to determine how much time advances with each call
3
5
  * to {@link Clock#tick}.
@@ -35,4 +37,7 @@ const ClockStep = {
35
37
  */
36
38
  SYSTEM_CLOCK: 2,
37
39
  };
38
- export default Object.freeze(ClockStep);
40
+
41
+ Object.freeze(ClockStep);
42
+
43
+ export default ClockStep;