mars3d-cesium 1.91.0 → 1.92.2

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 (370) hide show
  1. package/Build/Cesium/Cesium.d.ts +1070 -844
  2. package/Build/Cesium/Cesium.js +9 -9
  3. package/LICENSE.md +1187 -1216
  4. package/package.json +10 -6
  5. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_0.json +0 -1
  6. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_1.json +0 -1
  7. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_10.json +0 -1
  8. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_11.json +0 -1
  9. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_12.json +0 -1
  10. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_13.json +0 -1
  11. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_14.json +0 -1
  12. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_15.json +0 -1
  13. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_16.json +0 -1
  14. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_17.json +0 -1
  15. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_18.json +0 -1
  16. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_19.json +0 -1
  17. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_2.json +0 -1
  18. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_20.json +0 -1
  19. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_21.json +0 -1
  20. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_22.json +0 -1
  21. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_23.json +0 -1
  22. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_24.json +0 -1
  23. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_25.json +0 -1
  24. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_26.json +0 -1
  25. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_27.json +0 -1
  26. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_3.json +0 -1
  27. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_4.json +0 -1
  28. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_5.json +0 -1
  29. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_6.json +0 -1
  30. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_7.json +0 -1
  31. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_8.json +0 -1
  32. package/Build/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_9.json +0 -1
  33. package/Build/Cesium/Assets/Images/bing_maps_credit.png +0 -0
  34. package/Build/Cesium/Assets/Images/cesium_credit.png +0 -0
  35. package/Build/Cesium/Assets/Images/google_earth_credit.png +0 -0
  36. package/Build/Cesium/Assets/Images/ion-credit.png +0 -0
  37. package/Build/Cesium/Assets/Textures/LensFlare/DirtMask.jpg +0 -0
  38. package/Build/Cesium/Assets/Textures/LensFlare/StarBurst.jpg +0 -0
  39. package/Build/Cesium/Assets/Textures/NaturalEarthII/0/0/0.jpg +0 -0
  40. package/Build/Cesium/Assets/Textures/NaturalEarthII/0/1/0.jpg +0 -0
  41. package/Build/Cesium/Assets/Textures/NaturalEarthII/1/0/0.jpg +0 -0
  42. package/Build/Cesium/Assets/Textures/NaturalEarthII/1/0/1.jpg +0 -0
  43. package/Build/Cesium/Assets/Textures/NaturalEarthII/1/1/0.jpg +0 -0
  44. package/Build/Cesium/Assets/Textures/NaturalEarthII/1/1/1.jpg +0 -0
  45. package/Build/Cesium/Assets/Textures/NaturalEarthII/1/2/0.jpg +0 -0
  46. package/Build/Cesium/Assets/Textures/NaturalEarthII/1/2/1.jpg +0 -0
  47. package/Build/Cesium/Assets/Textures/NaturalEarthII/1/3/0.jpg +0 -0
  48. package/Build/Cesium/Assets/Textures/NaturalEarthII/1/3/1.jpg +0 -0
  49. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/0/0.jpg +0 -0
  50. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/0/1.jpg +0 -0
  51. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/0/2.jpg +0 -0
  52. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/0/3.jpg +0 -0
  53. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/1/0.jpg +0 -0
  54. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/1/1.jpg +0 -0
  55. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/1/2.jpg +0 -0
  56. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/1/3.jpg +0 -0
  57. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/2/0.jpg +0 -0
  58. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/2/1.jpg +0 -0
  59. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/2/2.jpg +0 -0
  60. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/2/3.jpg +0 -0
  61. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/3/0.jpg +0 -0
  62. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/3/1.jpg +0 -0
  63. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/3/2.jpg +0 -0
  64. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/3/3.jpg +0 -0
  65. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/4/0.jpg +0 -0
  66. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/4/1.jpg +0 -0
  67. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/4/2.jpg +0 -0
  68. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/4/3.jpg +0 -0
  69. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/5/0.jpg +0 -0
  70. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/5/1.jpg +0 -0
  71. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/5/2.jpg +0 -0
  72. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/5/3.jpg +0 -0
  73. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/6/0.jpg +0 -0
  74. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/6/1.jpg +0 -0
  75. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/6/2.jpg +0 -0
  76. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/6/3.jpg +0 -0
  77. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/7/0.jpg +0 -0
  78. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/7/1.jpg +0 -0
  79. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/7/2.jpg +0 -0
  80. package/Build/Cesium/Assets/Textures/NaturalEarthII/2/7/3.jpg +0 -0
  81. package/Build/Cesium/Assets/Textures/NaturalEarthII/tilemapresource.xml +0 -14
  82. package/Build/Cesium/Assets/Textures/SkyBox/tycho2t3_80_mx.jpg +0 -0
  83. package/Build/Cesium/Assets/Textures/SkyBox/tycho2t3_80_my.jpg +0 -0
  84. package/Build/Cesium/Assets/Textures/SkyBox/tycho2t3_80_mz.jpg +0 -0
  85. package/Build/Cesium/Assets/Textures/SkyBox/tycho2t3_80_px.jpg +0 -0
  86. package/Build/Cesium/Assets/Textures/SkyBox/tycho2t3_80_py.jpg +0 -0
  87. package/Build/Cesium/Assets/Textures/SkyBox/tycho2t3_80_pz.jpg +0 -0
  88. package/Build/Cesium/Assets/Textures/maki/airfield.png +0 -0
  89. package/Build/Cesium/Assets/Textures/maki/airport.png +0 -0
  90. package/Build/Cesium/Assets/Textures/maki/alcohol-shop.png +0 -0
  91. package/Build/Cesium/Assets/Textures/maki/america-football.png +0 -0
  92. package/Build/Cesium/Assets/Textures/maki/art-gallery.png +0 -0
  93. package/Build/Cesium/Assets/Textures/maki/bakery.png +0 -0
  94. package/Build/Cesium/Assets/Textures/maki/bank.png +0 -0
  95. package/Build/Cesium/Assets/Textures/maki/bar.png +0 -0
  96. package/Build/Cesium/Assets/Textures/maki/baseball.png +0 -0
  97. package/Build/Cesium/Assets/Textures/maki/basketball.png +0 -0
  98. package/Build/Cesium/Assets/Textures/maki/beer.png +0 -0
  99. package/Build/Cesium/Assets/Textures/maki/bicycle.png +0 -0
  100. package/Build/Cesium/Assets/Textures/maki/building.png +0 -0
  101. package/Build/Cesium/Assets/Textures/maki/bus.png +0 -0
  102. package/Build/Cesium/Assets/Textures/maki/cafe.png +0 -0
  103. package/Build/Cesium/Assets/Textures/maki/camera.png +0 -0
  104. package/Build/Cesium/Assets/Textures/maki/campsite.png +0 -0
  105. package/Build/Cesium/Assets/Textures/maki/car.png +0 -0
  106. package/Build/Cesium/Assets/Textures/maki/cemetery.png +0 -0
  107. package/Build/Cesium/Assets/Textures/maki/cesium.png +0 -0
  108. package/Build/Cesium/Assets/Textures/maki/chemist.png +0 -0
  109. package/Build/Cesium/Assets/Textures/maki/cinema.png +0 -0
  110. package/Build/Cesium/Assets/Textures/maki/circle-stroked.png +0 -0
  111. package/Build/Cesium/Assets/Textures/maki/circle.png +0 -0
  112. package/Build/Cesium/Assets/Textures/maki/city.png +0 -0
  113. package/Build/Cesium/Assets/Textures/maki/clothing-store.png +0 -0
  114. package/Build/Cesium/Assets/Textures/maki/college.png +0 -0
  115. package/Build/Cesium/Assets/Textures/maki/commercial.png +0 -0
  116. package/Build/Cesium/Assets/Textures/maki/cricket.png +0 -0
  117. package/Build/Cesium/Assets/Textures/maki/cross.png +0 -0
  118. package/Build/Cesium/Assets/Textures/maki/dam.png +0 -0
  119. package/Build/Cesium/Assets/Textures/maki/danger.png +0 -0
  120. package/Build/Cesium/Assets/Textures/maki/disability.png +0 -0
  121. package/Build/Cesium/Assets/Textures/maki/dog-park.png +0 -0
  122. package/Build/Cesium/Assets/Textures/maki/embassy.png +0 -0
  123. package/Build/Cesium/Assets/Textures/maki/emergency-telephone.png +0 -0
  124. package/Build/Cesium/Assets/Textures/maki/entrance.png +0 -0
  125. package/Build/Cesium/Assets/Textures/maki/farm.png +0 -0
  126. package/Build/Cesium/Assets/Textures/maki/fast-food.png +0 -0
  127. package/Build/Cesium/Assets/Textures/maki/ferry.png +0 -0
  128. package/Build/Cesium/Assets/Textures/maki/fire-station.png +0 -0
  129. package/Build/Cesium/Assets/Textures/maki/fuel.png +0 -0
  130. package/Build/Cesium/Assets/Textures/maki/garden.png +0 -0
  131. package/Build/Cesium/Assets/Textures/maki/gift.png +0 -0
  132. package/Build/Cesium/Assets/Textures/maki/golf.png +0 -0
  133. package/Build/Cesium/Assets/Textures/maki/grocery.png +0 -0
  134. package/Build/Cesium/Assets/Textures/maki/hairdresser.png +0 -0
  135. package/Build/Cesium/Assets/Textures/maki/harbor.png +0 -0
  136. package/Build/Cesium/Assets/Textures/maki/heart.png +0 -0
  137. package/Build/Cesium/Assets/Textures/maki/heliport.png +0 -0
  138. package/Build/Cesium/Assets/Textures/maki/hospital.png +0 -0
  139. package/Build/Cesium/Assets/Textures/maki/ice-cream.png +0 -0
  140. package/Build/Cesium/Assets/Textures/maki/industrial.png +0 -0
  141. package/Build/Cesium/Assets/Textures/maki/land-use.png +0 -0
  142. package/Build/Cesium/Assets/Textures/maki/laundry.png +0 -0
  143. package/Build/Cesium/Assets/Textures/maki/library.png +0 -0
  144. package/Build/Cesium/Assets/Textures/maki/lighthouse.png +0 -0
  145. package/Build/Cesium/Assets/Textures/maki/lodging.png +0 -0
  146. package/Build/Cesium/Assets/Textures/maki/logging.png +0 -0
  147. package/Build/Cesium/Assets/Textures/maki/london-underground.png +0 -0
  148. package/Build/Cesium/Assets/Textures/maki/marker-stroked.png +0 -0
  149. package/Build/Cesium/Assets/Textures/maki/marker.png +0 -0
  150. package/Build/Cesium/Assets/Textures/maki/minefield.png +0 -0
  151. package/Build/Cesium/Assets/Textures/maki/mobilephone.png +0 -0
  152. package/Build/Cesium/Assets/Textures/maki/monument.png +0 -0
  153. package/Build/Cesium/Assets/Textures/maki/museum.png +0 -0
  154. package/Build/Cesium/Assets/Textures/maki/music.png +0 -0
  155. package/Build/Cesium/Assets/Textures/maki/oil-well.png +0 -0
  156. package/Build/Cesium/Assets/Textures/maki/park.png +0 -0
  157. package/Build/Cesium/Assets/Textures/maki/park2.png +0 -0
  158. package/Build/Cesium/Assets/Textures/maki/parking-garage.png +0 -0
  159. package/Build/Cesium/Assets/Textures/maki/parking.png +0 -0
  160. package/Build/Cesium/Assets/Textures/maki/pharmacy.png +0 -0
  161. package/Build/Cesium/Assets/Textures/maki/pitch.png +0 -0
  162. package/Build/Cesium/Assets/Textures/maki/place-of-worship.png +0 -0
  163. package/Build/Cesium/Assets/Textures/maki/playground.png +0 -0
  164. package/Build/Cesium/Assets/Textures/maki/police.png +0 -0
  165. package/Build/Cesium/Assets/Textures/maki/polling-place.png +0 -0
  166. package/Build/Cesium/Assets/Textures/maki/post.png +0 -0
  167. package/Build/Cesium/Assets/Textures/maki/prison.png +0 -0
  168. package/Build/Cesium/Assets/Textures/maki/rail-above.png +0 -0
  169. package/Build/Cesium/Assets/Textures/maki/rail-light.png +0 -0
  170. package/Build/Cesium/Assets/Textures/maki/rail-metro.png +0 -0
  171. package/Build/Cesium/Assets/Textures/maki/rail-underground.png +0 -0
  172. package/Build/Cesium/Assets/Textures/maki/rail.png +0 -0
  173. package/Build/Cesium/Assets/Textures/maki/religious-christian.png +0 -0
  174. package/Build/Cesium/Assets/Textures/maki/religious-jewish.png +0 -0
  175. package/Build/Cesium/Assets/Textures/maki/religious-muslim.png +0 -0
  176. package/Build/Cesium/Assets/Textures/maki/restaurant.png +0 -0
  177. package/Build/Cesium/Assets/Textures/maki/roadblock.png +0 -0
  178. package/Build/Cesium/Assets/Textures/maki/rocket.png +0 -0
  179. package/Build/Cesium/Assets/Textures/maki/school.png +0 -0
  180. package/Build/Cesium/Assets/Textures/maki/scooter.png +0 -0
  181. package/Build/Cesium/Assets/Textures/maki/shop.png +0 -0
  182. package/Build/Cesium/Assets/Textures/maki/skiing.png +0 -0
  183. package/Build/Cesium/Assets/Textures/maki/slaughterhouse.png +0 -0
  184. package/Build/Cesium/Assets/Textures/maki/soccer.png +0 -0
  185. package/Build/Cesium/Assets/Textures/maki/square-stroked.png +0 -0
  186. package/Build/Cesium/Assets/Textures/maki/square.png +0 -0
  187. package/Build/Cesium/Assets/Textures/maki/star-stroked.png +0 -0
  188. package/Build/Cesium/Assets/Textures/maki/star.png +0 -0
  189. package/Build/Cesium/Assets/Textures/maki/suitcase.png +0 -0
  190. package/Build/Cesium/Assets/Textures/maki/swimming.png +0 -0
  191. package/Build/Cesium/Assets/Textures/maki/telephone.png +0 -0
  192. package/Build/Cesium/Assets/Textures/maki/tennis.png +0 -0
  193. package/Build/Cesium/Assets/Textures/maki/theatre.png +0 -0
  194. package/Build/Cesium/Assets/Textures/maki/toilets.png +0 -0
  195. package/Build/Cesium/Assets/Textures/maki/town-hall.png +0 -0
  196. package/Build/Cesium/Assets/Textures/maki/town.png +0 -0
  197. package/Build/Cesium/Assets/Textures/maki/triangle-stroked.png +0 -0
  198. package/Build/Cesium/Assets/Textures/maki/triangle.png +0 -0
  199. package/Build/Cesium/Assets/Textures/maki/village.png +0 -0
  200. package/Build/Cesium/Assets/Textures/maki/warehouse.png +0 -0
  201. package/Build/Cesium/Assets/Textures/maki/waste-basket.png +0 -0
  202. package/Build/Cesium/Assets/Textures/maki/water.png +0 -0
  203. package/Build/Cesium/Assets/Textures/maki/wetland.png +0 -0
  204. package/Build/Cesium/Assets/Textures/maki/zoo.png +0 -0
  205. package/Build/Cesium/Assets/Textures/moonSmall.jpg +0 -0
  206. package/Build/Cesium/Assets/Textures/pin.svg +0 -1
  207. package/Build/Cesium/Assets/Textures/waterNormals.jpg +0 -0
  208. package/Build/Cesium/Assets/Textures/waterNormalsSmall.jpg +0 -0
  209. package/Build/Cesium/Assets/approximateTerrainHeights.json +0 -1
  210. package/Build/Cesium/Scene/ModelExperimental/CustomShaderGuide/README.md +0 -4
  211. package/Build/Cesium/ThirdParty/Workers/basis_transcoder.js +0 -1
  212. package/Build/Cesium/ThirdParty/Workers/draco_decoder_nodejs.js +0 -116
  213. package/Build/Cesium/ThirdParty/Workers/pako_deflate.min.js +0 -1
  214. package/Build/Cesium/ThirdParty/Workers/pako_inflate.min.js +0 -1
  215. package/Build/Cesium/ThirdParty/Workers/z-worker-pako.js +0 -1
  216. package/Build/Cesium/ThirdParty/basis_transcoder.wasm +0 -0
  217. package/Build/Cesium/ThirdParty/draco_decoder.wasm +0 -0
  218. package/Build/Cesium/ThirdParty/google-earth-dbroot-parser.js +0 -1
  219. package/Build/Cesium/Widgets/Animation/Animation.css +0 -1
  220. package/Build/Cesium/Widgets/Animation/lighter.css +0 -1
  221. package/Build/Cesium/Widgets/BaseLayerPicker/BaseLayerPicker.css +0 -1
  222. package/Build/Cesium/Widgets/BaseLayerPicker/lighter.css +0 -1
  223. package/Build/Cesium/Widgets/Cesium3DTilesInspector/Cesium3DTilesInspector.css +0 -1
  224. package/Build/Cesium/Widgets/CesiumInspector/CesiumInspector.css +0 -1
  225. package/Build/Cesium/Widgets/CesiumWidget/CesiumWidget.css +0 -1
  226. package/Build/Cesium/Widgets/CesiumWidget/lighter.css +0 -1
  227. package/Build/Cesium/Widgets/FullscreenButton/FullscreenButton.css +0 -1
  228. package/Build/Cesium/Widgets/Geocoder/Geocoder.css +0 -1
  229. package/Build/Cesium/Widgets/Geocoder/lighter.css +0 -1
  230. package/Build/Cesium/Widgets/Images/ImageryProviders/bingAerial.png +0 -0
  231. package/Build/Cesium/Widgets/Images/ImageryProviders/bingAerialLabels.png +0 -0
  232. package/Build/Cesium/Widgets/Images/ImageryProviders/bingRoads.png +0 -0
  233. package/Build/Cesium/Widgets/Images/ImageryProviders/blueMarble.png +0 -0
  234. package/Build/Cesium/Widgets/Images/ImageryProviders/earthAtNight.png +0 -0
  235. package/Build/Cesium/Widgets/Images/ImageryProviders/esriNationalGeographic.png +0 -0
  236. package/Build/Cesium/Widgets/Images/ImageryProviders/esriWorldImagery.png +0 -0
  237. package/Build/Cesium/Widgets/Images/ImageryProviders/esriWorldStreetMap.png +0 -0
  238. package/Build/Cesium/Widgets/Images/ImageryProviders/mapQuestOpenStreetMap.png +0 -0
  239. package/Build/Cesium/Widgets/Images/ImageryProviders/mapboxSatellite.png +0 -0
  240. package/Build/Cesium/Widgets/Images/ImageryProviders/mapboxStreets.png +0 -0
  241. package/Build/Cesium/Widgets/Images/ImageryProviders/mapboxTerrain.png +0 -0
  242. package/Build/Cesium/Widgets/Images/ImageryProviders/naturalEarthII.png +0 -0
  243. package/Build/Cesium/Widgets/Images/ImageryProviders/openStreetMap.png +0 -0
  244. package/Build/Cesium/Widgets/Images/ImageryProviders/sentinel-2.png +0 -0
  245. package/Build/Cesium/Widgets/Images/ImageryProviders/stamenToner.png +0 -0
  246. package/Build/Cesium/Widgets/Images/ImageryProviders/stamenWatercolor.png +0 -0
  247. package/Build/Cesium/Widgets/Images/NavigationHelp/Mouse.svg +0 -84
  248. package/Build/Cesium/Widgets/Images/NavigationHelp/MouseLeft.svg +0 -76
  249. package/Build/Cesium/Widgets/Images/NavigationHelp/MouseMiddle.svg +0 -76
  250. package/Build/Cesium/Widgets/Images/NavigationHelp/MouseRight.svg +0 -76
  251. package/Build/Cesium/Widgets/Images/NavigationHelp/Touch.svg +0 -120
  252. package/Build/Cesium/Widgets/Images/NavigationHelp/TouchDrag.svg +0 -129
  253. package/Build/Cesium/Widgets/Images/NavigationHelp/TouchRotate.svg +0 -76
  254. package/Build/Cesium/Widgets/Images/NavigationHelp/TouchTilt.svg +0 -135
  255. package/Build/Cesium/Widgets/Images/NavigationHelp/TouchZoom.svg +0 -74
  256. package/Build/Cesium/Widgets/Images/TerrainProviders/CesiumWorldTerrain.png +0 -0
  257. package/Build/Cesium/Widgets/Images/TerrainProviders/Ellipsoid.png +0 -0
  258. package/Build/Cesium/Widgets/Images/TimelineIcons.png +0 -0
  259. package/Build/Cesium/Widgets/Images/info-loading.gif +0 -0
  260. package/Build/Cesium/Widgets/InfoBox/InfoBox.css +0 -1
  261. package/Build/Cesium/Widgets/InfoBox/InfoBoxDescription.css +0 -1
  262. package/Build/Cesium/Widgets/NavigationHelpButton/NavigationHelpButton.css +0 -1
  263. package/Build/Cesium/Widgets/NavigationHelpButton/lighter.css +0 -1
  264. package/Build/Cesium/Widgets/PerformanceWatchdog/PerformanceWatchdog.css +0 -1
  265. package/Build/Cesium/Widgets/ProjectionPicker/ProjectionPicker.css +0 -1
  266. package/Build/Cesium/Widgets/SceneModePicker/SceneModePicker.css +0 -1
  267. package/Build/Cesium/Widgets/SelectionIndicator/SelectionIndicator.css +0 -1
  268. package/Build/Cesium/Widgets/Timeline/Timeline.css +0 -1
  269. package/Build/Cesium/Widgets/Timeline/lighter.css +0 -1
  270. package/Build/Cesium/Widgets/VRButton/VRButton.css +0 -1
  271. package/Build/Cesium/Widgets/Viewer/Viewer.css +0 -1
  272. package/Build/Cesium/Widgets/lighter.css +0 -1
  273. package/Build/Cesium/Widgets/lighterShared.css +0 -1
  274. package/Build/Cesium/Widgets/shared.css +0 -1
  275. package/Build/Cesium/Widgets/widgets.css +0 -1
  276. package/Build/Cesium/Workers/ArcType-e1641d8d.js +0 -1
  277. package/Build/Cesium/Workers/AttributeCompression-0ee09568.js +0 -1
  278. package/Build/Cesium/Workers/AxisAlignedBoundingBox-0ebb51f1.js +0 -1
  279. package/Build/Cesium/Workers/BoundingRectangle-8d15888c.js +0 -1
  280. package/Build/Cesium/Workers/BoxGeometry-91a65404.js +0 -1
  281. package/Build/Cesium/Workers/Color-f48e883d.js +0 -1
  282. package/Build/Cesium/Workers/ComponentDatatype-5f63ec93.js +0 -1
  283. package/Build/Cesium/Workers/CoplanarPolygonGeometryLibrary-9fd8c9bf.js +0 -1
  284. package/Build/Cesium/Workers/CorridorGeometryLibrary-2c8a56b1.js +0 -1
  285. package/Build/Cesium/Workers/CylinderGeometry-4c9fdff8.js +0 -1
  286. package/Build/Cesium/Workers/CylinderGeometryLibrary-6799e174.js +0 -1
  287. package/Build/Cesium/Workers/EllipseGeometry-2c8825bb.js +0 -1
  288. package/Build/Cesium/Workers/EllipseGeometryLibrary-2c9e8629.js +0 -1
  289. package/Build/Cesium/Workers/EllipseOutlineGeometry-5a01e7f9.js +0 -1
  290. package/Build/Cesium/Workers/EllipsoidGeodesic-412b0c43.js +0 -1
  291. package/Build/Cesium/Workers/EllipsoidGeometry-51deea95.js +0 -1
  292. package/Build/Cesium/Workers/EllipsoidOutlineGeometry-6f5a7019.js +0 -1
  293. package/Build/Cesium/Workers/EllipsoidRhumbLine-0893952b.js +0 -1
  294. package/Build/Cesium/Workers/EllipsoidTangentPlane-3f1b123a.js +0 -1
  295. package/Build/Cesium/Workers/EncodedCartesian3-55eee0ea.js +0 -1
  296. package/Build/Cesium/Workers/FrustumGeometry-33d96e4a.js +0 -1
  297. package/Build/Cesium/Workers/GeometryAttribute-4b6dfc85.js +0 -1
  298. package/Build/Cesium/Workers/GeometryAttributes-b253752a.js +0 -1
  299. package/Build/Cesium/Workers/GeometryInstance-28411208.js +0 -1
  300. package/Build/Cesium/Workers/GeometryOffsetAttribute-369d5efa.js +0 -1
  301. package/Build/Cesium/Workers/GeometryPipeline-c36432c1.js +0 -1
  302. package/Build/Cesium/Workers/IndexDatatype-c2b69fc2.js +0 -1
  303. package/Build/Cesium/Workers/IntersectionTests-3a1d2826.js +0 -1
  304. package/Build/Cesium/Workers/Matrix2-f0fc6cd3.js +0 -1
  305. package/Build/Cesium/Workers/OrientedBoundingBox-1136cfae.js +0 -1
  306. package/Build/Cesium/Workers/Plane-863ea815.js +0 -1
  307. package/Build/Cesium/Workers/PolygonGeometryLibrary-0cf237e6.js +0 -1
  308. package/Build/Cesium/Workers/PolygonPipeline-583f5389.js +0 -1
  309. package/Build/Cesium/Workers/PolylinePipeline-8d9de722.js +0 -1
  310. package/Build/Cesium/Workers/PolylineVolumeGeometryLibrary-d3ae69ea.js +0 -1
  311. package/Build/Cesium/Workers/PrimitivePipeline-1907e610.js +0 -1
  312. package/Build/Cesium/Workers/RectangleGeometryLibrary-a2a41ed9.js +0 -1
  313. package/Build/Cesium/Workers/RuntimeError-8f3d96ee.js +0 -1
  314. package/Build/Cesium/Workers/TerrainEncoding-047c0bfb.js +0 -1
  315. package/Build/Cesium/Workers/Transforms-4a1d2c0e.js +0 -39
  316. package/Build/Cesium/Workers/VertexFormat-af764a6f.js +0 -1
  317. package/Build/Cesium/Workers/WallGeometryLibrary-5c745ea0.js +0 -1
  318. package/Build/Cesium/Workers/WebGLConstants-f63312fc.js +0 -1
  319. package/Build/Cesium/Workers/WebMercatorProjection-9d9a5a33.js +0 -1
  320. package/Build/Cesium/Workers/arrayRemoveDuplicates-7cd4e18c.js +0 -1
  321. package/Build/Cesium/Workers/cesiumWorkerBootstrapper.js +0 -6
  322. package/Build/Cesium/Workers/combine-6d9c3903.js +0 -1
  323. package/Build/Cesium/Workers/combineGeometry.js +0 -1
  324. package/Build/Cesium/Workers/createBoxGeometry.js +0 -1
  325. package/Build/Cesium/Workers/createBoxOutlineGeometry.js +0 -1
  326. package/Build/Cesium/Workers/createCircleGeometry.js +0 -1
  327. package/Build/Cesium/Workers/createCircleOutlineGeometry.js +0 -1
  328. package/Build/Cesium/Workers/createCoplanarPolygonGeometry.js +0 -1
  329. package/Build/Cesium/Workers/createCoplanarPolygonOutlineGeometry.js +0 -1
  330. package/Build/Cesium/Workers/createCorridorGeometry.js +0 -1
  331. package/Build/Cesium/Workers/createCorridorOutlineGeometry.js +0 -1
  332. package/Build/Cesium/Workers/createCylinderGeometry.js +0 -1
  333. package/Build/Cesium/Workers/createCylinderOutlineGeometry.js +0 -1
  334. package/Build/Cesium/Workers/createEllipseGeometry.js +0 -1
  335. package/Build/Cesium/Workers/createEllipseOutlineGeometry.js +0 -1
  336. package/Build/Cesium/Workers/createEllipsoidGeometry.js +0 -1
  337. package/Build/Cesium/Workers/createEllipsoidOutlineGeometry.js +0 -1
  338. package/Build/Cesium/Workers/createFrustumGeometry.js +0 -1
  339. package/Build/Cesium/Workers/createFrustumOutlineGeometry.js +0 -1
  340. package/Build/Cesium/Workers/createGeometry.js +0 -1
  341. package/Build/Cesium/Workers/createGroundPolylineGeometry.js +0 -1
  342. package/Build/Cesium/Workers/createPlaneGeometry.js +0 -1
  343. package/Build/Cesium/Workers/createPlaneOutlineGeometry.js +0 -1
  344. package/Build/Cesium/Workers/createPolygonGeometry.js +0 -1
  345. package/Build/Cesium/Workers/createPolygonOutlineGeometry.js +0 -1
  346. package/Build/Cesium/Workers/createPolylineGeometry.js +0 -1
  347. package/Build/Cesium/Workers/createPolylineVolumeGeometry.js +0 -1
  348. package/Build/Cesium/Workers/createPolylineVolumeOutlineGeometry.js +0 -1
  349. package/Build/Cesium/Workers/createRectangleGeometry.js +0 -1
  350. package/Build/Cesium/Workers/createRectangleOutlineGeometry.js +0 -1
  351. package/Build/Cesium/Workers/createSimplePolylineGeometry.js +0 -1
  352. package/Build/Cesium/Workers/createSphereGeometry.js +0 -1
  353. package/Build/Cesium/Workers/createSphereOutlineGeometry.js +0 -1
  354. package/Build/Cesium/Workers/createTaskProcessorWorker.js +0 -1
  355. package/Build/Cesium/Workers/createVectorTileClampedPolylines.js +0 -1
  356. package/Build/Cesium/Workers/createVectorTileGeometries.js +0 -1
  357. package/Build/Cesium/Workers/createVectorTilePoints.js +0 -1
  358. package/Build/Cesium/Workers/createVectorTilePolygons.js +0 -1
  359. package/Build/Cesium/Workers/createVectorTilePolylines.js +0 -1
  360. package/Build/Cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +0 -1
  361. package/Build/Cesium/Workers/createVerticesFromHeightmap.js +0 -3
  362. package/Build/Cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +0 -1
  363. package/Build/Cesium/Workers/createWallGeometry.js +0 -1
  364. package/Build/Cesium/Workers/createWallOutlineGeometry.js +0 -1
  365. package/Build/Cesium/Workers/decodeDraco.js +0 -1
  366. package/Build/Cesium/Workers/decodeGoogleEarthEnterprisePacket.js +0 -1
  367. package/Build/Cesium/Workers/transcodeKTX2.js +0 -1
  368. package/Build/Cesium/Workers/transferTypedArrayTest.js +0 -1
  369. package/Build/Cesium/Workers/upsampleQuantizedTerrainMesh.js +0 -1
  370. package/Build/Cesium/Workers/when-229515d6.js +0 -3
@@ -1669,6 +1669,15 @@ export class Cartesian2 {
1669
1669
  * @returns A cartesian with the maximum components.
1670
1670
  */
1671
1671
  static maximumByComponent(first: Cartesian2, second: Cartesian2, result: Cartesian2): Cartesian2;
1672
+ /**
1673
+ * Constrain a value to lie between two values.
1674
+ * @param value - The value to clamp.
1675
+ * @param min - The minimum bound.
1676
+ * @param max - The maximum bound.
1677
+ * @param result - The object into which to store the result.
1678
+ * @returns The clamped value such that min <= result <= max.
1679
+ */
1680
+ static clamp(value: Cartesian2, min: Cartesian2, max: Cartesian2, result: Cartesian2): Cartesian2;
1672
1681
  /**
1673
1682
  * Computes the provided Cartesian's squared magnitude.
1674
1683
  * @param cartesian - The Cartesian instance whose squared magnitude is to be computed.
@@ -2002,6 +2011,15 @@ export class Cartesian3 {
2002
2011
  * @returns A cartesian with the maximum components.
2003
2012
  */
2004
2013
  static maximumByComponent(first: Cartesian3, second: Cartesian3, result: Cartesian3): Cartesian3;
2014
+ /**
2015
+ * Constrain a value to lie between two values.
2016
+ * @param cartesian - The value to clamp.
2017
+ * @param min - The minimum bound.
2018
+ * @param max - The maximum bound.
2019
+ * @param result - The object into which to store the result.
2020
+ * @returns The clamped value such that min <= value <= max.
2021
+ */
2022
+ static clamp(cartesian: Cartesian3, min: Cartesian3, max: Cartesian3, result: Cartesian3): Cartesian3;
2005
2023
  /**
2006
2024
  * Computes the provided Cartesian's squared magnitude.
2007
2025
  * @param cartesian - The Cartesian instance whose squared magnitude is to be computed.
@@ -2419,6 +2437,15 @@ export class Cartesian4 {
2419
2437
  * @returns A cartesian with the maximum components.
2420
2438
  */
2421
2439
  static maximumByComponent(first: Cartesian4, second: Cartesian4, result: Cartesian4): Cartesian4;
2440
+ /**
2441
+ * Constrain a value to lie between two values.
2442
+ * @param value - The value to clamp.
2443
+ * @param min - The minimum bound.
2444
+ * @param max - The maximum bound.
2445
+ * @param result - The object into which to store the result.
2446
+ * @returns The clamped value such that min <= result <= max.
2447
+ */
2448
+ static clamp(value: Cartesian4, min: Cartesian4, max: Cartesian4, result: Cartesian4): Cartesian4;
2422
2449
  /**
2423
2450
  * Computes the provided Cartesian's squared magnitude.
2424
2451
  * @param cartesian - The Cartesian instance whose squared magnitude is to be computed.
@@ -8704,12 +8731,12 @@ export class IonResource extends Resource {
8704
8731
  * // load a single image asynchronously
8705
8732
  resource.fetchImage().then(function(image) {
8706
8733
  // use the loaded image
8707
- }).otherwise(function(error) {
8734
+ }).catch(function(error) {
8708
8735
  // an error occurred
8709
8736
  });
8710
8737
 
8711
8738
  // load several images in parallel
8712
- when.all([resource1.fetchImage(), resource2.fetchImage()]).then(function(images) {
8739
+ Promise.all([resource1.fetchImage(), resource2.fetchImage()]).then(function(images) {
8713
8740
  // images is an array containing all the loaded images
8714
8741
  });
8715
8742
  * @param [options] - An object with the following properties.
@@ -9573,10 +9600,10 @@ export namespace Math {
9573
9600
  function previousPowerOfTwo(n: number): number;
9574
9601
  /**
9575
9602
  * Constraint a value to lie between two values.
9576
- * @param value - The value to constrain.
9603
+ * @param value - The value to clamp.
9577
9604
  * @param min - The minimum value.
9578
9605
  * @param max - The maximum value.
9579
- * @returns The value clamped so that min <= value <= max.
9606
+ * @returns The clamped value such that min <= result <= max.
9580
9607
  */
9581
9608
  function clamp(value: number, min: number, max: number): number;
9582
9609
  /**
@@ -14730,7 +14757,7 @@ export enum RequestType {
14730
14757
  resource.queryParameters.access_token = token;
14731
14758
  return true;
14732
14759
  })
14733
- .otherwise(function() {
14760
+ .catch(function() {
14734
14761
  return false;
14735
14762
  });
14736
14763
  }
@@ -14910,7 +14937,7 @@ export class Resource {
14910
14937
  * // load a single URL asynchronously
14911
14938
  resource.fetchArrayBuffer().then(function(arrayBuffer) {
14912
14939
  // use the data
14913
- }).otherwise(function(error) {
14940
+ }).catch(function(error) {
14914
14941
  // an error occurred
14915
14942
  });
14916
14943
  * @returns a promise that will resolve to the requested data when loaded. Returns undefined if <code>request.throttle</code> is true and the request does not have high enough priority.
@@ -14948,7 +14975,7 @@ export class Resource {
14948
14975
  * // load a single URL asynchronously
14949
14976
  resource.fetchBlob().then(function(blob) {
14950
14977
  // use the data
14951
- }).otherwise(function(error) {
14978
+ }).catch(function(error) {
14952
14979
  // an error occurred
14953
14980
  });
14954
14981
  * @returns a promise that will resolve to the requested data when loaded. Returns undefined if <code>request.throttle</code> is true and the request does not have high enough priority.
@@ -14985,12 +15012,12 @@ export class Resource {
14985
15012
  * // load a single image asynchronously
14986
15013
  resource.fetchImage().then(function(image) {
14987
15014
  // use the loaded image
14988
- }).otherwise(function(error) {
15015
+ }).catch(function(error) {
14989
15016
  // an error occurred
14990
15017
  });
14991
15018
 
14992
15019
  // load several images in parallel
14993
- when.all([resource1.fetchImage(), resource2.fetchImage()]).then(function(images) {
15020
+ Promise.all([resource1.fetchImage(), resource2.fetchImage()]).then(function(images) {
14994
15021
  // images is an array containing all the loaded images
14995
15022
  });
14996
15023
  * @param [options] - An object with the following properties.
@@ -15052,7 +15079,7 @@ export class Resource {
15052
15079
  });
15053
15080
  resource.fetchText().then(function(text) {
15054
15081
  // Do something with the text
15055
- }).otherwise(function(error) {
15082
+ }).catch(function(error) {
15056
15083
  // an error occurred
15057
15084
  });
15058
15085
  * @returns a promise that will resolve to the requested data when loaded. Returns undefined if <code>request.throttle</code> is true and the request does not have high enough priority.
@@ -15091,7 +15118,7 @@ export class Resource {
15091
15118
  * @example
15092
15119
  * resource.fetchJson().then(function(jsonData) {
15093
15120
  // Do something with the JSON object
15094
- }).otherwise(function(error) {
15121
+ }).catch(function(error) {
15095
15122
  // an error occurred
15096
15123
  });
15097
15124
  * @returns a promise that will resolve to the requested data when loaded. Returns undefined if <code>request.throttle</code> is true and the request does not have high enough priority.
@@ -15131,7 +15158,7 @@ export class Resource {
15131
15158
  'X-Custom-Header' : 'some value'
15132
15159
  }).then(function(document) {
15133
15160
  // Do something with the document
15134
- }).otherwise(function(error) {
15161
+ }).catch(function(error) {
15135
15162
  // an error occurred
15136
15163
  });
15137
15164
  * @returns a promise that will resolve to the requested data when loaded. Returns undefined if <code>request.throttle</code> is true and the request does not have high enough priority.
@@ -15166,7 +15193,7 @@ export class Resource {
15166
15193
  * // load a data asynchronously
15167
15194
  resource.fetchJsonp().then(function(data) {
15168
15195
  // use the loaded data
15169
- }).otherwise(function(error) {
15196
+ }).catch(function(error) {
15170
15197
  // an error occurred
15171
15198
  });
15172
15199
  * @param [callbackParameterName = 'callback'] - The callback parameter name that the server expects.
@@ -15208,7 +15235,7 @@ export class Resource {
15208
15235
  * resource.fetch()
15209
15236
  .then(function(body) {
15210
15237
  // use the data
15211
- }).otherwise(function(error) {
15238
+ }).catch(function(error) {
15212
15239
  // an error occurred
15213
15240
  });
15214
15241
  * @param [options] - Object with the following properties:
@@ -15258,7 +15285,7 @@ export class Resource {
15258
15285
  * resource.delete()
15259
15286
  .then(function(body) {
15260
15287
  // use the data
15261
- }).otherwise(function(error) {
15288
+ }).catch(function(error) {
15262
15289
  // an error occurred
15263
15290
  });
15264
15291
  * @param [options] - Object with the following properties:
@@ -15310,7 +15337,7 @@ export class Resource {
15310
15337
  * resource.head()
15311
15338
  .then(function(headers) {
15312
15339
  // use the data
15313
- }).otherwise(function(error) {
15340
+ }).catch(function(error) {
15314
15341
  // an error occurred
15315
15342
  });
15316
15343
  * @param [options] - Object with the following properties:
@@ -15360,7 +15387,7 @@ export class Resource {
15360
15387
  * resource.options()
15361
15388
  .then(function(headers) {
15362
15389
  // use the data
15363
- }).otherwise(function(error) {
15390
+ }).catch(function(error) {
15364
15391
  // an error occurred
15365
15392
  });
15366
15393
  * @param [options] - Object with the following properties:
@@ -15410,7 +15437,7 @@ export class Resource {
15410
15437
  * resource.post(data)
15411
15438
  .then(function(result) {
15412
15439
  // use the result
15413
- }).otherwise(function(error) {
15440
+ }).catch(function(error) {
15414
15441
  // an error occurred
15415
15442
  });
15416
15443
  * @param data - Data that is posted with the resource.
@@ -15465,7 +15492,7 @@ export class Resource {
15465
15492
  * resource.put(data)
15466
15493
  .then(function(result) {
15467
15494
  // use the result
15468
- }).otherwise(function(error) {
15495
+ }).catch(function(error) {
15469
15496
  // an error occurred
15470
15497
  });
15471
15498
  * @param data - Data that is posted with the resource.
@@ -15518,7 +15545,7 @@ export class Resource {
15518
15545
  * resource.patch(data)
15519
15546
  .then(function(result) {
15520
15547
  // use the result
15521
- }).otherwise(function(error) {
15548
+ }).catch(function(error) {
15522
15549
  // an error occurred
15523
15550
  });
15524
15551
  * @param data - Data that is posted with the resource.
@@ -15624,7 +15651,7 @@ const positions = [
15624
15651
  Cesium.Cartographic.fromDegrees(87.0, 28.0)
15625
15652
  ];
15626
15653
  const promise = Cesium.sampleTerrain(terrainProvider, 11, positions);
15627
- Cesium.when(promise, function(updatedPositions) {
15654
+ Promise.resolve(promise).then(function(updatedPositions) {
15628
15655
  // positions[0].height and positions[1].height have been updated.
15629
15656
  // updatedPositions is just a reference to positions.
15630
15657
  });
@@ -15645,7 +15672,7 @@ const positions = [
15645
15672
  Cesium.Cartographic.fromDegrees(87.0, 28.0)
15646
15673
  ];
15647
15674
  const promise = Cesium.sampleTerrainMostDetailed(terrainProvider, positions);
15648
- Cesium.when(promise, function(updatedPositions) {
15675
+ Promise.resolve(promise).then(function(updatedPositions) {
15649
15676
  // positions[0].height and positions[1].height have been updated.
15650
15677
  // updatedPositions is just a reference to positions.
15651
15678
  });
@@ -16169,7 +16196,7 @@ export class TaskProcessor {
16169
16196
  if (!Cesium.defined(promise)) {
16170
16197
  // too many active tasks - try again later
16171
16198
  } else {
16172
- Cesium.when(promise, function(result) {
16199
+ promise.then(function(result) {
16173
16200
  // use the result of the task
16174
16201
  });
16175
16202
  }
@@ -17219,7 +17246,7 @@ export namespace Transforms {
17219
17246
  indicates that the preload has completed.
17220
17247
  * @example
17221
17248
  * const interval = new Cesium.TimeInterval(...);
17222
- when(Cesium.Transforms.preloadIcrfFixed(interval), function() {
17249
+ Promise.resolve(Cesium.Transforms.preloadIcrfFixed(interval)).then(function() {
17223
17250
  // the data is now loaded
17224
17251
  });
17225
17252
  * @param timeInterval - The interval to preload.
@@ -21442,76 +21469,92 @@ export class KmlCamera {
21442
21469
  export namespace KmlDataSource {
21443
21470
  /**
21444
21471
  * Initialization options for the `load` method.
21445
- * @property camera - The camera that is used for viewRefreshModes and sending camera properties to network links.
21446
- * @property canvas - The canvas that is used for sending viewer properties to network links.
21447
21472
  * @property [sourceUri] - Overrides the url to use for resolving relative links and other KML network features.
21448
21473
  * @property [clampToGround = false] - true if we want the geometry features (Polygons, LineStrings and LinearRings) clamped to the ground.
21449
21474
  * @property [ellipsoid = Ellipsoid.WGS84] - The global ellipsoid used for geographical calculations.
21450
- * @property [credit] - A credit for the data source, which is displayed on the canvas.
21451
21475
  * @property [screenOverlayContainer] - A container for ScreenOverlay images.
21452
21476
  */
21453
21477
  type LoadOptions = {
21454
- camera: Camera;
21455
- canvas: HTMLCanvasElement;
21456
21478
  sourceUri?: string;
21457
21479
  clampToGround?: boolean;
21458
21480
  ellipsoid?: Ellipsoid;
21481
+ screenOverlayContainer?: Element | string;
21482
+ };
21483
+ /**
21484
+ * Options for constructing a new KmlDataSource, or calling the static `load` method.
21485
+ * @property [camera] - The camera that is used for viewRefreshModes and sending camera properties to network links.
21486
+ * @property [canvas] - The canvas that is used for sending viewer properties to network links.
21487
+ * @property [credit] - A credit for the data source, which is displayed on the canvas.
21488
+ * @property [sourceUri] - Overrides the url to use for resolving relative links and other KML network features.
21489
+ * @property [clampToGround = false] - true if we want the geometry features (Polygons, LineStrings and LinearRings) clamped to the ground.
21490
+ * @property [ellipsoid = Ellipsoid.WGS84] - The global ellipsoid used for geographical calculations.
21491
+ * @property [screenOverlayContainer] - A container for ScreenOverlay images.
21492
+ */
21493
+ type ConstructorOptions = {
21494
+ camera?: Camera;
21495
+ canvas?: HTMLCanvasElement;
21459
21496
  credit?: Credit | string;
21497
+ sourceUri?: string;
21498
+ clampToGround?: boolean;
21499
+ ellipsoid?: Ellipsoid;
21460
21500
  screenOverlayContainer?: Element | string;
21461
21501
  };
21462
21502
  }
21463
21503
 
21464
21504
  /**
21465
21505
  * A {@link DataSource} which processes Keyhole Markup Language 2.2 (KML).
21466
- <p>
21467
- KML support in Cesium is incomplete, but a large amount of the standard,
21468
- as well as Google's <code>gx</code> extension namespace, is supported. See Github issue
21469
- {@link https://github.com/CesiumGS/cesium/issues/873|#873} for a
21470
- detailed list of what is and isn't supported. Cesium will also write information to the
21471
- console when it encounters most unsupported features.
21472
- </p>
21473
- <p>
21474
- Non visual feature data, such as <code>atom:author</code> and <code>ExtendedData</code>
21475
- is exposed via an instance of {@link KmlFeatureData}, which is added to each {@link Entity}
21476
- under the <code>kml</code> property.
21477
- </p>
21506
+ * <p>
21507
+ * KML support in Cesium is incomplete, but a large amount of the standard,
21508
+ * as well as Google's <code>gx</code> extension namespace, is supported. See Github issue
21509
+ * {@link https://github.com/CesiumGS/cesium/issues/873|#873} for a
21510
+ * detailed list of what is and isn't supported. Cesium will also write information to the
21511
+ * console when it encounters most unsupported features.
21512
+ * </p>
21513
+ * <p>
21514
+ * Non visual feature data, such as <code>atom:author</code> and <code>ExtendedData</code>
21515
+ * is exposed via an instance of {@link KmlFeatureData}, which is added to each {@link Entity}
21516
+ * under the <code>kml</code> property.
21517
+ * </p>
21478
21518
  * @example
21479
21519
  * const viewer = new Cesium.Viewer('cesiumContainer');
21480
- viewer.dataSources.add(Cesium.KmlDataSource.load('../../SampleData/facilities.kmz',
21481
- {
21482
- camera: viewer.scene.camera,
21483
- canvas: viewer.scene.canvas
21484
- })
21485
- );
21486
- * @param options - An object with the following properties:
21487
- * @param options.camera - The camera that is used for viewRefreshModes and sending camera properties to network links.
21488
- * @param options.canvas - The canvas that is used for sending viewer properties to network links.
21489
- * @param [options.ellipsoid = Ellipsoid.WGS84] - The global ellipsoid used for geographical calculations.
21490
- * @param [options.credit] - A credit for the data source, which is displayed on the canvas.
21520
+ * viewer.dataSources.add(Cesium.KmlDataSource.load('../../SampleData/facilities.kmz',
21521
+ * {
21522
+ * camera: viewer.scene.camera,
21523
+ * canvas: viewer.scene.canvas
21524
+ * })
21525
+ * );
21526
+ * @param [options] - Object describing initialization options
21491
21527
  */
21492
21528
  export class KmlDataSource {
21493
- constructor(options: {
21494
- camera: Camera;
21495
- canvas: HTMLCanvasElement;
21496
- ellipsoid?: Ellipsoid;
21497
- credit?: Credit | string;
21498
- });
21529
+ constructor(options?: KmlDataSource.ConstructorOptions);
21530
+ /**
21531
+ * The current size of this Canvas will be used to populate the Link parameters
21532
+ * for client height and width.
21533
+ */
21534
+ canvas: HTMLCanvasElement | undefined;
21535
+ /**
21536
+ * The position and orientation of this {@link Camera} will be used to
21537
+ * populate various camera parameters when making network requests.
21538
+ * Camera movement will determine when to trigger NetworkLink refresh if
21539
+ * <code>viewRefreshMode</code> is <code>onStop</code>.
21540
+ */
21541
+ camera: Camera | undefined;
21499
21542
  /**
21500
21543
  * Creates a Promise to a new instance loaded with the provided KML data.
21501
21544
  * @param data - A url, parsed KML document, or Blob containing binary KMZ data or a parsed KML document.
21502
21545
  * @param [options] - An object specifying configuration options
21503
21546
  * @returns A promise that will resolve to a new KmlDataSource instance once the KML is loaded.
21504
21547
  */
21505
- static load(data: Resource | string | Document | Blob, options?: KmlDataSource.LoadOptions): Promise<KmlDataSource>;
21548
+ static load(data: Resource | string | Document | Blob, options?: KmlDataSource.ConstructorOptions): Promise<KmlDataSource>;
21506
21549
  /**
21507
21550
  * Gets or sets a human-readable name for this instance.
21508
- This will be automatically be set to the KML document name on load.
21551
+ * This will be automatically be set to the KML document name on load.
21509
21552
  */
21510
21553
  name: string;
21511
21554
  /**
21512
21555
  * Gets the clock settings defined by the loaded KML. This represents the total
21513
- availability interval for all time-dynamic data. If the KML does not contain
21514
- time-dynamic data, this value is undefined.
21556
+ * availability interval for all time-dynamic data. If the KML does not contain
21557
+ * time-dynamic data, this value is undefined.
21515
21558
  */
21516
21559
  clock: DataSourceClock;
21517
21560
  /**
@@ -21561,19 +21604,10 @@ export class KmlDataSource {
21561
21604
  /**
21562
21605
  * Asynchronously loads the provided KML data, replacing any existing data.
21563
21606
  * @param data - A url, parsed KML document, or Blob containing binary KMZ data or a parsed KML document.
21564
- * @param [options] - An object with the following properties:
21565
- * @param [options.sourceUri] - Overrides the url to use for resolving relative links and other KML network features.
21566
- * @param [options.clampToGround = false] - true if we want the geometry features (Polygons, LineStrings and LinearRings) clamped to the ground. If true, lines will use corridors so use Entity.corridor instead of Entity.polyline.
21567
- * @param [options.ellipsoid = Ellipsoid.WGS84] - The global ellipsoid used for geographical calculations.
21568
- * @param [options.screenOverlayContainer] - A container for ScreenOverlay images.
21607
+ * @param [options] - An object specifying configuration options
21569
21608
  * @returns A promise that will resolve to this instances once the KML is loaded.
21570
21609
  */
21571
- load(data: Resource | string | Document | Blob, options?: {
21572
- sourceUri?: Resource | string;
21573
- clampToGround?: boolean;
21574
- ellipsoid?: Ellipsoid;
21575
- screenOverlayContainer?: Element | string;
21576
- }): Promise<KmlDataSource>;
21610
+ load(data: Resource | string | Document | Blob, options?: KmlDataSource.LoadOptions): Promise<KmlDataSource>;
21577
21611
  /**
21578
21612
  * Cleans up any non-entity elements created by the data source. Currently this only affects ScreenOverlay elements.
21579
21613
  */
@@ -21613,8 +21647,8 @@ export class KmlFeatureData {
21613
21647
  snippet: string;
21614
21648
  /**
21615
21649
  * Gets the extended data, parsed into a JSON object.
21616
- Currently only the <code>Data</code> property is supported.
21617
- <code>SchemaData</code> and custom data are ignored.
21650
+ * Currently only the <code>Data</code> property is supported.
21651
+ * <code>SchemaData</code> and custom data are ignored.
21618
21652
  */
21619
21653
  extendedData: string;
21620
21654
  }
@@ -22262,7 +22296,7 @@ export class ModelVisualizer {
22262
22296
  constructor(scene: Scene, entityCollection: EntityCollection);
22263
22297
  /**
22264
22298
  * Updates models created this visualizer to match their
22265
- Entity counterpart at the given time.
22299
+ * Entity counterpart at the given time.
22266
22300
  * @param time - The time to update to.
22267
22301
  * @returns This function always returns true.
22268
22302
  */
@@ -25189,19 +25223,19 @@ export enum Axis {
25189
25223
 
25190
25224
  /**
25191
25225
  * A viewport-aligned image positioned in the 3D scene, that is created
25192
- and rendered using a {@link BillboardCollection}. A billboard is created and its initial
25193
- properties are set by calling {@link BillboardCollection#add}.
25194
- <br /><br />
25195
- <div align='center'>
25196
- <img src='Images/Billboard.png' width='400' height='300' /><br />
25197
- Example billboards
25198
- </div>
25226
+ * and rendered using a {@link BillboardCollection}. A billboard is created and its initial
25227
+ * properties are set by calling {@link BillboardCollection#add}.
25228
+ * <br /><br />
25229
+ * <div align='center'>
25230
+ * <img src='Images/Billboard.png' width='400' height='300' /><br />
25231
+ * Example billboards
25232
+ * </div>
25199
25233
  */
25200
25234
  export class Billboard {
25201
25235
  constructor();
25202
25236
  /**
25203
25237
  * Determines if this billboard will be shown. Use this to hide or show a billboard, instead
25204
- of removing it and re-adding it to the collection.
25238
+ * of removing it and re-adding it to the collection.
25205
25239
  */
25206
25240
  show: boolean;
25207
25241
  /**
@@ -25214,159 +25248,159 @@ export class Billboard {
25214
25248
  heightReference: HeightReference;
25215
25249
  /**
25216
25250
  * Gets or sets the pixel offset in screen space from the origin of this billboard. This is commonly used
25217
- to align multiple billboards and labels at the same position, e.g., an image and text. The
25218
- screen space origin is the top, left corner of the canvas; <code>x</code> increases from
25219
- left to right, and <code>y</code> increases from top to bottom.
25220
- <br /><br />
25221
- <div align='center'>
25222
- <table border='0' cellpadding='5'><tr>
25223
- <td align='center'><code>default</code><br/><img src='Images/Billboard.setPixelOffset.default.png' width='250' height='188' /></td>
25224
- <td align='center'><code>b.pixeloffset = new Cartesian2(50, 25);</code><br/><img src='Images/Billboard.setPixelOffset.x50y-25.png' width='250' height='188' /></td>
25225
- </tr></table>
25226
- The billboard's origin is indicated by the yellow point.
25227
- </div>
25251
+ * to align multiple billboards and labels at the same position, e.g., an image and text. The
25252
+ * screen space origin is the top, left corner of the canvas; <code>x</code> increases from
25253
+ * left to right, and <code>y</code> increases from top to bottom.
25254
+ * <br /><br />
25255
+ * <div align='center'>
25256
+ * <table border='0' cellpadding='5'><tr>
25257
+ * <td align='center'><code>default</code><br/><img src='Images/Billboard.setPixelOffset.default.png' width='250' height='188' /></td>
25258
+ * <td align='center'><code>b.pixeloffset = new Cartesian2(50, 25);</code><br/><img src='Images/Billboard.setPixelOffset.x50y-25.png' width='250' height='188' /></td>
25259
+ * </tr></table>
25260
+ * The billboard's origin is indicated by the yellow point.
25261
+ * </div>
25228
25262
  */
25229
25263
  pixelOffset: Cartesian2;
25230
25264
  /**
25231
25265
  * Gets or sets near and far scaling properties of a Billboard based on the billboard's distance from the camera.
25232
- A billboard's scale will interpolate between the {@link NearFarScalar#nearValue} and
25233
- {@link NearFarScalar#farValue} while the camera distance falls within the lower and upper bounds
25234
- of the specified {@link NearFarScalar#near} and {@link NearFarScalar#far}.
25235
- Outside of these ranges the billboard's scale remains clamped to the nearest bound. If undefined,
25236
- scaleByDistance will be disabled.
25266
+ * A billboard's scale will interpolate between the {@link NearFarScalar#nearValue} and
25267
+ * {@link NearFarScalar#farValue} while the camera distance falls within the lower and upper bounds
25268
+ * of the specified {@link NearFarScalar#near} and {@link NearFarScalar#far}.
25269
+ * Outside of these ranges the billboard's scale remains clamped to the nearest bound. If undefined,
25270
+ * scaleByDistance will be disabled.
25237
25271
  * @example
25238
25272
  * // Example 1.
25239
- // Set a billboard's scaleByDistance to scale by 1.5 when the
25240
- // camera is 1500 meters from the billboard and disappear as
25241
- // the camera distance approaches 8.0e6 meters.
25242
- b.scaleByDistance = new Cesium.NearFarScalar(1.5e2, 1.5, 8.0e6, 0.0);
25273
+ * // Set a billboard's scaleByDistance to scale by 1.5 when the
25274
+ * // camera is 1500 meters from the billboard and disappear as
25275
+ * // the camera distance approaches 8.0e6 meters.
25276
+ * b.scaleByDistance = new Cesium.NearFarScalar(1.5e2, 1.5, 8.0e6, 0.0);
25243
25277
  * @example
25244
25278
  * // Example 2.
25245
- // disable scaling by distance
25246
- b.scaleByDistance = undefined;
25279
+ * // disable scaling by distance
25280
+ * b.scaleByDistance = undefined;
25247
25281
  */
25248
25282
  scaleByDistance: NearFarScalar;
25249
25283
  /**
25250
25284
  * Gets or sets near and far translucency properties of a Billboard based on the billboard's distance from the camera.
25251
- A billboard's translucency will interpolate between the {@link NearFarScalar#nearValue} and
25252
- {@link NearFarScalar#farValue} while the camera distance falls within the lower and upper bounds
25253
- of the specified {@link NearFarScalar#near} and {@link NearFarScalar#far}.
25254
- Outside of these ranges the billboard's translucency remains clamped to the nearest bound. If undefined,
25255
- translucencyByDistance will be disabled.
25285
+ * A billboard's translucency will interpolate between the {@link NearFarScalar#nearValue} and
25286
+ * {@link NearFarScalar#farValue} while the camera distance falls within the lower and upper bounds
25287
+ * of the specified {@link NearFarScalar#near} and {@link NearFarScalar#far}.
25288
+ * Outside of these ranges the billboard's translucency remains clamped to the nearest bound. If undefined,
25289
+ * translucencyByDistance will be disabled.
25256
25290
  * @example
25257
25291
  * // Example 1.
25258
- // Set a billboard's translucency to 1.0 when the
25259
- // camera is 1500 meters from the billboard and disappear as
25260
- // the camera distance approaches 8.0e6 meters.
25261
- b.translucencyByDistance = new Cesium.NearFarScalar(1.5e2, 1.0, 8.0e6, 0.0);
25292
+ * // Set a billboard's translucency to 1.0 when the
25293
+ * // camera is 1500 meters from the billboard and disappear as
25294
+ * // the camera distance approaches 8.0e6 meters.
25295
+ * b.translucencyByDistance = new Cesium.NearFarScalar(1.5e2, 1.0, 8.0e6, 0.0);
25262
25296
  * @example
25263
25297
  * // Example 2.
25264
- // disable translucency by distance
25265
- b.translucencyByDistance = undefined;
25298
+ * // disable translucency by distance
25299
+ * b.translucencyByDistance = undefined;
25266
25300
  */
25267
25301
  translucencyByDistance: NearFarScalar;
25268
25302
  /**
25269
25303
  * Gets or sets near and far pixel offset scaling properties of a Billboard based on the billboard's distance from the camera.
25270
- A billboard's pixel offset will be scaled between the {@link NearFarScalar#nearValue} and
25271
- {@link NearFarScalar#farValue} while the camera distance falls within the lower and upper bounds
25272
- of the specified {@link NearFarScalar#near} and {@link NearFarScalar#far}.
25273
- Outside of these ranges the billboard's pixel offset scale remains clamped to the nearest bound. If undefined,
25274
- pixelOffsetScaleByDistance will be disabled.
25304
+ * A billboard's pixel offset will be scaled between the {@link NearFarScalar#nearValue} and
25305
+ * {@link NearFarScalar#farValue} while the camera distance falls within the lower and upper bounds
25306
+ * of the specified {@link NearFarScalar#near} and {@link NearFarScalar#far}.
25307
+ * Outside of these ranges the billboard's pixel offset scale remains clamped to the nearest bound. If undefined,
25308
+ * pixelOffsetScaleByDistance will be disabled.
25275
25309
  * @example
25276
25310
  * // Example 1.
25277
- // Set a billboard's pixel offset scale to 0.0 when the
25278
- // camera is 1500 meters from the billboard and scale pixel offset to 10.0 pixels
25279
- // in the y direction the camera distance approaches 8.0e6 meters.
25280
- b.pixelOffset = new Cesium.Cartesian2(0.0, 1.0);
25281
- b.pixelOffsetScaleByDistance = new Cesium.NearFarScalar(1.5e2, 0.0, 8.0e6, 10.0);
25311
+ * // Set a billboard's pixel offset scale to 0.0 when the
25312
+ * // camera is 1500 meters from the billboard and scale pixel offset to 10.0 pixels
25313
+ * // in the y direction the camera distance approaches 8.0e6 meters.
25314
+ * b.pixelOffset = new Cesium.Cartesian2(0.0, 1.0);
25315
+ * b.pixelOffsetScaleByDistance = new Cesium.NearFarScalar(1.5e2, 0.0, 8.0e6, 10.0);
25282
25316
  * @example
25283
25317
  * // Example 2.
25284
- // disable pixel offset by distance
25285
- b.pixelOffsetScaleByDistance = undefined;
25318
+ * // disable pixel offset by distance
25319
+ * b.pixelOffsetScaleByDistance = undefined;
25286
25320
  */
25287
25321
  pixelOffsetScaleByDistance: NearFarScalar;
25288
25322
  /**
25289
25323
  * Gets or sets the 3D Cartesian offset applied to this billboard in eye coordinates. Eye coordinates is a left-handed
25290
- coordinate system, where <code>x</code> points towards the viewer's right, <code>y</code> points up, and
25291
- <code>z</code> points into the screen. Eye coordinates use the same scale as world and model coordinates,
25292
- which is typically meters.
25293
- <br /><br />
25294
- An eye offset is commonly used to arrange multiple billboards or objects at the same position, e.g., to
25295
- arrange a billboard above its corresponding 3D model.
25296
- <br /><br />
25297
- Below, the billboard is positioned at the center of the Earth but an eye offset makes it always
25298
- appear on top of the Earth regardless of the viewer's or Earth's orientation.
25299
- <br /><br />
25300
- <div align='center'>
25301
- <table border='0' cellpadding='5'><tr>
25302
- <td align='center'><img src='Images/Billboard.setEyeOffset.one.png' width='250' height='188' /></td>
25303
- <td align='center'><img src='Images/Billboard.setEyeOffset.two.png' width='250' height='188' /></td>
25304
- </tr></table>
25305
- <code>b.eyeOffset = new Cartesian3(0.0, 8000000.0, 0.0);</code><br /><br />
25306
- </div>
25324
+ * coordinate system, where <code>x</code> points towards the viewer's right, <code>y</code> points up, and
25325
+ * <code>z</code> points into the screen. Eye coordinates use the same scale as world and model coordinates,
25326
+ * which is typically meters.
25327
+ * <br /><br />
25328
+ * An eye offset is commonly used to arrange multiple billboards or objects at the same position, e.g., to
25329
+ * arrange a billboard above its corresponding 3D model.
25330
+ * <br /><br />
25331
+ * Below, the billboard is positioned at the center of the Earth but an eye offset makes it always
25332
+ * appear on top of the Earth regardless of the viewer's or Earth's orientation.
25333
+ * <br /><br />
25334
+ * <div align='center'>
25335
+ * <table border='0' cellpadding='5'><tr>
25336
+ * <td align='center'><img src='Images/Billboard.setEyeOffset.one.png' width='250' height='188' /></td>
25337
+ * <td align='center'><img src='Images/Billboard.setEyeOffset.two.png' width='250' height='188' /></td>
25338
+ * </tr></table>
25339
+ * <code>b.eyeOffset = new Cartesian3(0.0, 8000000.0, 0.0);</code><br /><br />
25340
+ * </div>
25307
25341
  */
25308
25342
  eyeOffset: Cartesian3;
25309
25343
  /**
25310
25344
  * Gets or sets the horizontal origin of this billboard, which determines if the billboard is
25311
- to the left, center, or right of its anchor position.
25312
- <br /><br />
25313
- <div align='center'>
25314
- <img src='Images/Billboard.setHorizontalOrigin.png' width='648' height='196' /><br />
25315
- </div>
25345
+ * to the left, center, or right of its anchor position.
25346
+ * <br /><br />
25347
+ * <div align='center'>
25348
+ * <img src='Images/Billboard.setHorizontalOrigin.png' width='648' height='196' /><br />
25349
+ * </div>
25316
25350
  * @example
25317
25351
  * // Use a bottom, left origin
25318
- b.horizontalOrigin = Cesium.HorizontalOrigin.LEFT;
25319
- b.verticalOrigin = Cesium.VerticalOrigin.BOTTOM;
25352
+ * b.horizontalOrigin = Cesium.HorizontalOrigin.LEFT;
25353
+ * b.verticalOrigin = Cesium.VerticalOrigin.BOTTOM;
25320
25354
  */
25321
25355
  horizontalOrigin: HorizontalOrigin;
25322
25356
  /**
25323
25357
  * Gets or sets the vertical origin of this billboard, which determines if the billboard is
25324
- to the above, below, or at the center of its anchor position.
25325
- <br /><br />
25326
- <div align='center'>
25327
- <img src='Images/Billboard.setVerticalOrigin.png' width='695' height='175' /><br />
25328
- </div>
25358
+ * to the above, below, or at the center of its anchor position.
25359
+ * <br /><br />
25360
+ * <div align='center'>
25361
+ * <img src='Images/Billboard.setVerticalOrigin.png' width='695' height='175' /><br />
25362
+ * </div>
25329
25363
  * @example
25330
25364
  * // Use a bottom, left origin
25331
- b.horizontalOrigin = Cesium.HorizontalOrigin.LEFT;
25332
- b.verticalOrigin = Cesium.VerticalOrigin.BOTTOM;
25365
+ * b.horizontalOrigin = Cesium.HorizontalOrigin.LEFT;
25366
+ * b.verticalOrigin = Cesium.VerticalOrigin.BOTTOM;
25333
25367
  */
25334
25368
  verticalOrigin: VerticalOrigin;
25335
25369
  /**
25336
25370
  * Gets or sets the uniform scale that is multiplied with the billboard's image size in pixels.
25337
- A scale of <code>1.0</code> does not change the size of the billboard; a scale greater than
25338
- <code>1.0</code> enlarges the billboard; a positive scale less than <code>1.0</code> shrinks
25339
- the billboard.
25340
- <br /><br />
25341
- <div align='center'>
25342
- <img src='Images/Billboard.setScale.png' width='400' height='300' /><br/>
25343
- From left to right in the above image, the scales are <code>0.5</code>, <code>1.0</code>,
25344
- and <code>2.0</code>.
25345
- </div>
25371
+ * A scale of <code>1.0</code> does not change the size of the billboard; a scale greater than
25372
+ * <code>1.0</code> enlarges the billboard; a positive scale less than <code>1.0</code> shrinks
25373
+ * the billboard.
25374
+ * <br /><br />
25375
+ * <div align='center'>
25376
+ * <img src='Images/Billboard.setScale.png' width='400' height='300' /><br/>
25377
+ * From left to right in the above image, the scales are <code>0.5</code>, <code>1.0</code>,
25378
+ * and <code>2.0</code>.
25379
+ * </div>
25346
25380
  */
25347
25381
  scale: number;
25348
25382
  /**
25349
25383
  * Gets or sets the color that is multiplied with the billboard's texture. This has two common use cases. First,
25350
- the same white texture may be used by many different billboards, each with a different color, to create
25351
- colored billboards. Second, the color's alpha component can be used to make the billboard translucent as shown below.
25352
- An alpha of <code>0.0</code> makes the billboard transparent, and <code>1.0</code> makes the billboard opaque.
25353
- <br /><br />
25354
- <div align='center'>
25355
- <table border='0' cellpadding='5'><tr>
25356
- <td align='center'><code>default</code><br/><img src='Images/Billboard.setColor.Alpha255.png' width='250' height='188' /></td>
25357
- <td align='center'><code>alpha : 0.5</code><br/><img src='Images/Billboard.setColor.Alpha127.png' width='250' height='188' /></td>
25358
- </tr></table>
25359
- </div>
25360
- <br />
25361
- The red, green, blue, and alpha values are indicated by <code>value</code>'s <code>red</code>, <code>green</code>,
25362
- <code>blue</code>, and <code>alpha</code> properties as shown in Example 1. These components range from <code>0.0</code>
25363
- (no intensity) to <code>1.0</code> (full intensity).
25384
+ * the same white texture may be used by many different billboards, each with a different color, to create
25385
+ * colored billboards. Second, the color's alpha component can be used to make the billboard translucent as shown below.
25386
+ * An alpha of <code>0.0</code> makes the billboard transparent, and <code>1.0</code> makes the billboard opaque.
25387
+ * <br /><br />
25388
+ * <div align='center'>
25389
+ * <table border='0' cellpadding='5'><tr>
25390
+ * <td align='center'><code>default</code><br/><img src='Images/Billboard.setColor.Alpha255.png' width='250' height='188' /></td>
25391
+ * <td align='center'><code>alpha : 0.5</code><br/><img src='Images/Billboard.setColor.Alpha127.png' width='250' height='188' /></td>
25392
+ * </tr></table>
25393
+ * </div>
25394
+ * <br />
25395
+ * The red, green, blue, and alpha values are indicated by <code>value</code>'s <code>red</code>, <code>green</code>,
25396
+ * <code>blue</code>, and <code>alpha</code> properties as shown in Example 1. These components range from <code>0.0</code>
25397
+ * (no intensity) to <code>1.0</code> (full intensity).
25364
25398
  * @example
25365
25399
  * // Example 1. Assign yellow.
25366
- b.color = Cesium.Color.YELLOW;
25400
+ * b.color = Cesium.Color.YELLOW;
25367
25401
  * @example
25368
25402
  * // Example 2. Make a billboard 50% translucent.
25369
- b.color = new Cesium.Color(1.0, 1.0, 1.0, 0.5);
25403
+ * b.color = new Cesium.Color(1.0, 1.0, 1.0, 0.5);
25370
25404
  */
25371
25405
  color: Color;
25372
25406
  /**
@@ -25375,20 +25409,20 @@ export class Billboard {
25375
25409
  rotation: number;
25376
25410
  /**
25377
25411
  * Gets or sets the aligned axis in world space. The aligned axis is the unit vector that the billboard up vector points towards.
25378
- The default is the zero vector, which means the billboard is aligned to the screen up vector.
25412
+ * The default is the zero vector, which means the billboard is aligned to the screen up vector.
25379
25413
  * @example
25380
25414
  * // Example 1.
25381
- // Have the billboard up vector point north
25382
- billboard.alignedAxis = Cesium.Cartesian3.UNIT_Z;
25415
+ * // Have the billboard up vector point north
25416
+ * billboard.alignedAxis = Cesium.Cartesian3.UNIT_Z;
25383
25417
  * @example
25384
25418
  * // Example 2.
25385
- // Have the billboard point east.
25386
- billboard.alignedAxis = Cesium.Cartesian3.UNIT_Z;
25387
- billboard.rotation = -Cesium.Math.PI_OVER_TWO;
25419
+ * // Have the billboard point east.
25420
+ * billboard.alignedAxis = Cesium.Cartesian3.UNIT_Z;
25421
+ * billboard.rotation = -Cesium.Math.PI_OVER_TWO;
25388
25422
  * @example
25389
25423
  * // Example 3.
25390
- // Reset the aligned axis
25391
- billboard.alignedAxis = Cesium.Cartesian3.ZERO;
25424
+ * // Reset the aligned axis
25425
+ * billboard.alignedAxis = Cesium.Cartesian3.ZERO;
25392
25426
  */
25393
25427
  alignedAxis: Cartesian3;
25394
25428
  /**
@@ -25401,7 +25435,7 @@ export class Billboard {
25401
25435
  height: number;
25402
25436
  /**
25403
25437
  * Gets or sets if the billboard size is in meters or pixels. <code>true</code> to size the billboard in meters;
25404
- otherwise, the size is in pixels.
25438
+ * otherwise, the size is in pixels.
25405
25439
  */
25406
25440
  sizeInMeters: boolean;
25407
25441
  /**
@@ -25410,7 +25444,7 @@ export class Billboard {
25410
25444
  distanceDisplayCondition: DistanceDisplayCondition;
25411
25445
  /**
25412
25446
  * Gets or sets the distance from the camera at which to disable the depth test to, for example, prevent clipping against terrain.
25413
- When set to zero, the depth test is always applied. When set to Number.POSITIVE_INFINITY, the depth test is never applied.
25447
+ * When set to zero, the depth test is always applied. When set to Number.POSITIVE_INFINITY, the depth test is never applied.
25414
25448
  */
25415
25449
  disableDepthTestDistance: number;
25416
25450
  /**
@@ -25419,72 +25453,72 @@ export class Billboard {
25419
25453
  id: any;
25420
25454
  /**
25421
25455
  * <p>
25422
- Gets or sets the image to be used for this billboard. If a texture has already been created for the
25423
- given image, the existing texture is used.
25424
- </p>
25425
- <p>
25426
- This property can be set to a loaded Image, a URL which will be loaded as an Image automatically,
25427
- a canvas, or another billboard's image property (from the same billboard collection).
25428
- </p>
25456
+ * Gets or sets the image to be used for this billboard. If a texture has already been created for the
25457
+ * given image, the existing texture is used.
25458
+ * </p>
25459
+ * <p>
25460
+ * This property can be set to a loaded Image, a URL which will be loaded as an Image automatically,
25461
+ * a canvas, or another billboard's image property (from the same billboard collection).
25462
+ * </p>
25429
25463
  * @example
25430
25464
  * // load an image from a URL
25431
- b.image = 'some/image/url.png';
25432
-
25433
- // assuming b1 and b2 are billboards in the same billboard collection,
25434
- // use the same image for both billboards.
25435
- b2.image = b1.image;
25465
+ * b.image = 'some/image/url.png';
25466
+ *
25467
+ * // assuming b1 and b2 are billboards in the same billboard collection,
25468
+ * // use the same image for both billboards.
25469
+ * b2.image = b1.image;
25436
25470
  */
25437
25471
  image: string;
25438
25472
  /**
25439
25473
  * When <code>true</code>, this billboard is ready to render, i.e., the image
25440
- has been downloaded and the WebGL resources are created.
25474
+ * has been downloaded and the WebGL resources are created.
25441
25475
  */
25442
25476
  readonly ready: boolean;
25443
25477
  /**
25444
25478
  * <p>
25445
- Sets the image to be used for this billboard. If a texture has already been created for the
25446
- given id, the existing texture is used.
25447
- </p>
25448
- <p>
25449
- This function is useful for dynamically creating textures that are shared across many billboards.
25450
- Only the first billboard will actually call the function and create the texture, while subsequent
25451
- billboards created with the same id will simply re-use the existing texture.
25452
- </p>
25453
- <p>
25454
- To load an image from a URL, setting the {@link Billboard#image} property is more convenient.
25455
- </p>
25479
+ * Sets the image to be used for this billboard. If a texture has already been created for the
25480
+ * given id, the existing texture is used.
25481
+ * </p>
25482
+ * <p>
25483
+ * This function is useful for dynamically creating textures that are shared across many billboards.
25484
+ * Only the first billboard will actually call the function and create the texture, while subsequent
25485
+ * billboards created with the same id will simply re-use the existing texture.
25486
+ * </p>
25487
+ * <p>
25488
+ * To load an image from a URL, setting the {@link Billboard#image} property is more convenient.
25489
+ * </p>
25456
25490
  * @example
25457
25491
  * // create a billboard image dynamically
25458
- function drawImage(id) {
25459
- // create and draw an image using a canvas
25460
- const canvas = document.createElement('canvas');
25461
- const context2D = canvas.getContext('2d');
25462
- // ... draw image
25463
- return canvas;
25464
- }
25465
- // drawImage will be called to create the texture
25466
- b.setImage('myImage', drawImage);
25467
-
25468
- // subsequent billboards created in the same collection using the same id will use the existing
25469
- // texture, without the need to create the canvas or draw the image
25470
- b2.setImage('myImage', drawImage);
25492
+ * function drawImage(id) {
25493
+ * // create and draw an image using a canvas
25494
+ * const canvas = document.createElement('canvas');
25495
+ * const context2D = canvas.getContext('2d');
25496
+ * // ... draw image
25497
+ * return canvas;
25498
+ * }
25499
+ * // drawImage will be called to create the texture
25500
+ * b.setImage('myImage', drawImage);
25501
+ *
25502
+ * // subsequent billboards created in the same collection using the same id will use the existing
25503
+ * // texture, without the need to create the canvas or draw the image
25504
+ * b2.setImage('myImage', drawImage);
25471
25505
  * @param id - The id of the image. This can be any string that uniquely identifies the image.
25472
25506
  * @param image - The image to load. This parameter
25473
- can either be a loaded Image or Canvas, a URL which will be loaded as an Image automatically,
25474
- or a function which will be called to create the image if it hasn't been loaded already.
25507
+ * can either be a loaded Image or Canvas, a URL which will be loaded as an Image automatically,
25508
+ * or a function which will be called to create the image if it hasn't been loaded already.
25475
25509
  */
25476
25510
  setImage(id: string, image: HTMLImageElement | HTMLCanvasElement | string | Resource | Billboard.CreateImageCallback): void;
25477
25511
  /**
25478
25512
  * Uses a sub-region of the image with the given id as the image for this billboard,
25479
- measured in pixels from the bottom-left.
25513
+ * measured in pixels from the bottom-left.
25480
25514
  * @param id - The id of the image to use.
25481
25515
  * @param subRegion - The sub-region of the image.
25482
25516
  */
25483
25517
  setImageSubRegion(id: string, subRegion: BoundingRectangle): void;
25484
25518
  /**
25485
25519
  * Computes the screen-space position of the billboard's origin, taking into account eye and pixel offsets.
25486
- The screen space origin is the top, left corner of the canvas; <code>x</code> increases from
25487
- left to right, and <code>y</code> increases from top to bottom.
25520
+ * The screen space origin is the top, left corner of the canvas; <code>x</code> increases from
25521
+ * left to right, and <code>y</code> increases from top to bottom.
25488
25522
  * @example
25489
25523
  * console.log(b.computeScreenSpacePosition(scene).toString());
25490
25524
  * @param scene - The scene.
@@ -25494,7 +25528,7 @@ export class Billboard {
25494
25528
  computeScreenSpacePosition(scene: Scene, result?: Cartesian2): Cartesian2;
25495
25529
  /**
25496
25530
  * Determines if this billboard equals another billboard. Billboards are equal if all their properties
25497
- are equal. Billboards in different collections can be equal.
25531
+ * are equal. Billboards in different collections can be equal.
25498
25532
  * @param other - The billboard to compare for equality.
25499
25533
  * @returns <code>true</code> if the billboards are equal; otherwise, <code>false</code>.
25500
25534
  */
@@ -27166,16 +27200,21 @@ export class Cesium3DTileFeature {
27166
27200
  getProperty(name: string): any;
27167
27201
  /**
27168
27202
  * Returns a copy of the feature's property with the given name, examining all
27169
- the metadata from 3D Tiles 1.0 formats, the EXT_mesh_features and legacy
27170
- EXT_feature_metadata glTF extensions, and the 3DTILES_metadata 3D Tiles
27171
- extension. Metadata is checked against name from most specific to most
27172
- general and the first match is returned. Metadata is checked in this order:
27203
+ the metadata from 3D Tiles 1.0 formats, the EXT_structural_metadata and legacy
27204
+ EXT_feature_metadata glTF extensions, and the metadata present either in the
27205
+ tileset JSON (3D Tiles 1.1) or in the 3DTILES_metadata 3D Tiles extension.
27206
+ Metadata is checked against name from most specific to most general and the
27207
+ first match is returned. Metadata is checked in this order:
27173
27208
 
27174
27209
  <ol>
27175
- <li>Batch table (feature metadata) property by semantic</li>
27176
- <li>Batch table (feature metadata) property by property ID</li>
27210
+ <li>Batch table (structural metadata) property by semantic</li>
27211
+ <li>Batch table (structural metadata) property by property ID</li>
27212
+ <li>Content metadata property by semantic</li>
27213
+ <li>Content metadata property by property</li>
27177
27214
  <li>Tile metadata property by semantic</li>
27178
27215
  <li>Tile metadata property by property ID</li>
27216
+ <li>Subtree metadata property by semantic</li>
27217
+ <li>Subtree metadata property by property ID</li>
27179
27218
  <li>Group metadata property by semantic</li>
27180
27219
  <li>Group metadata property by property ID</li>
27181
27220
  <li>Tileset metadata property by semantic</li>
@@ -27184,7 +27223,7 @@ export class Cesium3DTileFeature {
27184
27223
  </ol>
27185
27224
  <p>
27186
27225
  For 3D Tiles Next details, see the {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_metadata|3DTILES_metadata Extension}
27187
- for 3D Tiles, as well as the {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_mesh_features|EXT_mesh_features Extension}
27226
+ for 3D Tiles, as well as the {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_structural_metadata|EXT_structural_metadata Extension}
27188
27227
  for glTF. For the legacy glTF extension, see {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_feature_metadata|EXT_feature_metadata Extension}
27189
27228
  </p>
27190
27229
  * @param content - The content for accessing the metadata
@@ -27517,18 +27556,20 @@ const tileset = scene.primitives.add(new Cesium.Cesium3DTileset({
27517
27556
  * @param [options.classificationType] - Determines whether terrain, 3D Tiles or both will be classified by this tileset. See {@link Cesium3DTileset#classificationType} for details about restrictions and limitations.
27518
27557
  * @param [options.ellipsoid = Ellipsoid.WGS84] - The ellipsoid determining the size and shape of the globe.
27519
27558
  * @param [options.pointCloudShading] - Options for constructing a {@link PointCloudShading} object to control point attenuation based on geometric error and lighting.
27520
- * @param [options.imageBasedLightingFactor = new Cartesian2(1.0, 1.0)] - Scales the diffuse and specular image-based lighting from the earth, sky, atmosphere and star skybox.
27521
27559
  * @param [options.lightColor] - The light color when shading models. When <code>undefined</code> the scene's light color is used instead.
27522
- * @param [options.luminanceAtZenith = 0.2] - The sun's luminance at the zenith in kilo candela per meter squared to use for this model's procedural environment map.
27523
- * @param [options.sphericalHarmonicCoefficients] - The third order spherical harmonic coefficients used for the diffuse color of image-based lighting.
27524
- * @param [options.specularEnvironmentMaps] - A URL to a KTX2 file that contains a cube map of the specular lighting and the convoluted specular mipmaps.
27560
+ * @param [options.imageBasedLighting] - The properties for managing image-based lighting for this tileset.
27561
+ * @param [options.imageBasedLightingFactor = new Cartesian2(1.0, 1.0)] - Scales the diffuse and specular image-based lighting from the earth, sky, atmosphere and star skybox. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
27562
+ * @param [options.luminanceAtZenith = 0.2] - The sun's luminance at the zenith in kilo candela per meter squared to use for this model's procedural environment map. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
27563
+ * @param [options.sphericalHarmonicCoefficients] - The third order spherical harmonic coefficients used for the diffuse color of image-based lighting. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
27564
+ * @param [options.specularEnvironmentMaps] - A URL to a KTX2 file that contains a cube map of the specular lighting and the convoluted specular mipmaps. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
27525
27565
  * @param [options.backFaceCulling = true] - Whether to cull back-facing geometry. When true, back face culling is determined by the glTF material's doubleSided property; when false, back face culling is disabled.
27526
27566
  * @param [options.showOutline = true] - Whether to display the outline for models using the {@link https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Vendor/CESIUM_primitive_outline|CESIUM_primitive_outline} extension. When true, outlines are displayed. When false, outlines are not displayed.
27527
27567
  * @param [options.vectorClassificationOnly = false] - Indicates that only the tileset's vector tiles should be used for classification.
27528
27568
  * @param [options.vectorKeepDecodedPositions = false] - Whether vector tiles should keep decoded positions in memory. This is used with {@link Cesium3DTileFeature.getPolylinePositions}.
27529
- * @param [options.featureIdIndex = 0] - The index into the list of primitive feature IDs used for picking and styling. For EXT_feature_metadata, feature ID attributes are listed before feature ID textures. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
27530
- * @param [options.instanceFeatureIdIndex = 0] - The index into the list of instance feature IDs used for picking and styling. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
27569
+ * @param [options.featureIdLabel = "featureId_0"] - Label of the feature ID set to use for picking and styling. For EXT_mesh_features, this is the feature ID's label property, or "featureId_N" (where N is the index in the featureIds array) when not specified. EXT_feature_metadata did not have a label field, so such feature ID sets are always labeled "featureId_N" where N is the index in the list of all feature Ids, where feature ID attributes are listed before feature ID textures. If featureIdLabel is an integer N, it is converted to the string "featureId_N" automatically. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
27570
+ * @param [options.instanceFeatureIdLabel = "instanceFeatureId_0"] - Label of the instance feature ID set used for picking and styling. If instanceFeatureIdLabel is set to an integer N, it is converted to the string "instanceFeatureId_N" automatically. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
27531
27571
  * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this tileset on screen.
27572
+ * @param [options.splitDirection = SplitDirection.NONE] - The {@link SplitDirection} split to apply to this tileset.
27532
27573
  * @param [options.debugHeatmapTilePropertyName] - The tile variable to colorize as a heatmap. All rendered tiles will be colorized relative to each other's specified variable value.
27533
27574
  * @param [options.debugFreezeFrame = false] - For debugging only. Determines if only the tiles from last frame should be used for rendering.
27534
27575
  * @param [options.debugColorizeTiles = false] - For debugging only. When true, assigns a random color to each tile.
@@ -27575,8 +27616,9 @@ export class Cesium3DTileset {
27575
27616
  classificationType?: ClassificationType;
27576
27617
  ellipsoid?: Ellipsoid;
27577
27618
  pointCloudShading?: any;
27578
- imageBasedLightingFactor?: Cartesian2;
27579
27619
  lightColor?: Cartesian3;
27620
+ imageBasedLighting?: ImageBasedLighting;
27621
+ imageBasedLightingFactor?: Cartesian2;
27580
27622
  luminanceAtZenith?: number;
27581
27623
  sphericalHarmonicCoefficients?: Cartesian3[];
27582
27624
  specularEnvironmentMaps?: string;
@@ -27584,9 +27626,10 @@ export class Cesium3DTileset {
27584
27626
  showOutline?: boolean;
27585
27627
  vectorClassificationOnly?: boolean;
27586
27628
  vectorKeepDecodedPositions?: boolean;
27587
- featureIdIndex?: number;
27588
- instanceFeatureIdIndex?: number;
27629
+ featureIdLabel?: string | number;
27630
+ instanceFeatureIdLabel?: string | number;
27589
27631
  showCreditsOnScreen?: boolean;
27632
+ splitDirection?: SplitDirection;
27590
27633
  debugHeatmapTilePropertyName?: string;
27591
27634
  debugFreezeFrame?: boolean;
27592
27635
  debugColorizeTiles?: boolean;
@@ -27794,7 +27837,7 @@ export class Cesium3DTileset {
27794
27837
  <li><code>message</code>: the error message.</li>
27795
27838
  </ul>
27796
27839
  <p>
27797
- If the <code>3DTILES_multiple_contents</code> extension is used, this event is raised once per inner content with errors.
27840
+ If multiple contents are present, this event is raised once per inner content with errors.
27798
27841
  </p>
27799
27842
  * @example
27800
27843
  * tileset.tileFailed.addEventListener(function(error) {
@@ -27887,33 +27930,11 @@ export class Cesium3DTileset {
27887
27930
  /**
27888
27931
  * The light color when shading models. When <code>undefined</code> the scene's light color is used instead.
27889
27932
  <p>
27890
- For example, disabling additional light sources by setting <code>model.imageBasedLightingFactor = new Cartesian2(0.0, 0.0)</code> will make the
27933
+ For example, disabling additional light sources by setting <code>model.imageBasedLighting.imageBasedLightingFactor = new Cartesian2(0.0, 0.0)</code> will make the
27891
27934
  model much darker. Here, increasing the intensity of the light source will make the model brighter.
27892
27935
  </p>
27893
27936
  */
27894
27937
  lightColor: Cartesian3;
27895
- /**
27896
- * The sun's luminance at the zenith in kilo candela per meter squared to use for this model's procedural environment map.
27897
- This is used when {@link Cesium3DTileset#specularEnvironmentMaps} and {@link Cesium3DTileset#sphericalHarmonicCoefficients} are not defined.
27898
- */
27899
- luminanceAtZenith: number;
27900
- /**
27901
- * The third order spherical harmonic coefficients used for the diffuse color of image-based lighting. When <code>undefined</code>, a diffuse irradiance
27902
- computed from the atmosphere color is used.
27903
- <p>
27904
- There are nine <code>Cartesian3</code> coefficients.
27905
- The order of the coefficients is: L<sub>00</sub>, L<sub>1-1</sub>, L<sub>10</sub>, L<sub>11</sub>, L<sub>2-2</sub>, L<sub>2-1</sub>, L<sub>20</sub>, L<sub>21</sub>, L<sub>22</sub>
27906
- </p>
27907
-
27908
- These values can be obtained by preprocessing the environment map using the <code>cmgen</code> tool of
27909
- {@link https://github.com/google/filament/releases|Google's Filament project}. This will also generate a KTX file that can be
27910
- supplied to {@link Cesium3DTileset#specularEnvironmentMaps}.
27911
- */
27912
- sphericalHarmonicCoefficients: Cartesian3[];
27913
- /**
27914
- * A URL to a KTX file that contains a cube map of the specular lighting and the convoluted specular mipmaps.
27915
- */
27916
- specularEnvironmentMaps: string;
27917
27938
  /**
27918
27939
  * Whether to cull back-facing geometry. When true, back face culling is determined
27919
27940
  by the glTF material's doubleSided property; when false, back face culling is disabled.
@@ -27925,6 +27946,10 @@ export class Cesium3DTileset {
27925
27946
  When true, outlines are displayed. When false, outlines are not displayed.
27926
27947
  */
27927
27948
  readonly showOutline: boolean;
27949
+ /**
27950
+ * The {@link SplitDirection} to apply to this tileset.
27951
+ */
27952
+ splitDirection: SplitDirection;
27928
27953
  /**
27929
27954
  * This property is for debugging only; it is not optimized for production use.
27930
27955
  <p>
@@ -28006,27 +28031,6 @@ export class Cesium3DTileset {
28006
28031
  * Function for examining vector lines as they are being streamed.
28007
28032
  */
28008
28033
  examineVectorLinesFunction: (...params: any[]) => any;
28009
- /**
28010
- * If true, {@link ModelExperimental} will be used instead of {@link Model}
28011
- for each tile with a glTF or 3D Tiles 1.0 content (where applicable).
28012
- <p>
28013
- The value defaults to {@link ExperimentalFeatures.enableModelExperimental}.
28014
- </p>
28015
- */
28016
- enableModelExperimental: boolean;
28017
- /**
28018
- * The index into the list of primitive feature IDs used for picking and
28019
- styling. For EXT_feature_metadata, feature ID attributes are listed before
28020
- feature ID textures. If both per-primitive and per-instance feature IDs are
28021
- present, the instance feature IDs take priority.
28022
- */
28023
- featureIdIndex: number;
28024
- /**
28025
- * The index into the list of instance feature IDs used for picking and
28026
- styling. If both per-primitive and per-instance feature IDs are present,
28027
- the instance feature IDs take priority.
28028
- */
28029
- instanceFeatureIdIndex: number;
28030
28034
  /**
28031
28035
  * Gets the tileset's asset object property, which contains metadata about the tileset.
28032
28036
  <p>
@@ -28253,11 +28257,37 @@ export class Cesium3DTileset {
28253
28257
  Returns <code>undefined</code> if <code>extras</code> does not exist.
28254
28258
  */
28255
28259
  readonly extras: any;
28260
+ /**
28261
+ * The properties for managing image-based lighting on this tileset.
28262
+ */
28263
+ imageBasedLighting: ImageBasedLighting;
28256
28264
  /**
28257
28265
  * Cesium adds lighting from the earth, sky, atmosphere, and star skybox. This cartesian is used to scale the final
28258
28266
  diffuse and specular lighting contribution from those sources to the final color. A value of 0.0 will disable those light sources.
28259
28267
  */
28260
28268
  imageBasedLightingFactor: Cartesian2;
28269
+ /**
28270
+ * The sun's luminance at the zenith in kilo candela per meter squared to use for this model's procedural environment map.
28271
+ This is used when {@link Cesium3DTileset#specularEnvironmentMaps} and {@link Cesium3DTileset#sphericalHarmonicCoefficients} are not defined.
28272
+ */
28273
+ luminanceAtZenith: number;
28274
+ /**
28275
+ * The third order spherical harmonic coefficients used for the diffuse color of image-based lighting. When <code>undefined</code>, a diffuse irradiance
28276
+ computed from the atmosphere color is used.
28277
+ <p>
28278
+ There are nine <code>Cartesian3</code> coefficients.
28279
+ The order of the coefficients is: L<sub>0,0</sub>, L<sub>1,-1</sub>, L<sub>1,0</sub>, L<sub>1,1</sub>, L<sub>2,-2</sub>, L<sub>2,-1</sub>, L<sub>2,0</sub>, L<sub>2,1</sub>, L<sub>2,2</sub>
28280
+ </p>
28281
+
28282
+ These values can be obtained by preprocessing the environment map using the <code>cmgen</code> tool of
28283
+ {@link https://github.com/google/filament/releases|Google's Filament project}. This will also generate a KTX file that can be
28284
+ supplied to {@link Cesium3DTileset#specularEnvironmentMaps}.
28285
+ */
28286
+ sphericalHarmonicCoefficients: Cartesian3[];
28287
+ /**
28288
+ * A URL to a KTX file that contains a cube map of the specular lighting and the convoluted specular mipmaps.
28289
+ */
28290
+ specularEnvironmentMaps: string;
28261
28291
  /**
28262
28292
  * Indicates that only the tileset's vector tiles should be used for classification.
28263
28293
  */
@@ -28271,6 +28301,34 @@ export class Cesium3DTileset {
28271
28301
  * Determines whether the credits of the tileset will be displayed on the screen
28272
28302
  */
28273
28303
  showCreditsOnScreen: boolean;
28304
+ /**
28305
+ * Label of the feature ID set to use for picking and styling.
28306
+ <p>
28307
+ For EXT_mesh_features, this is the feature ID's label property, or
28308
+ "featureId_N" (where N is the index in the featureIds array) when not
28309
+ specified. EXT_feature_metadata did not have a label field, so such
28310
+ feature ID sets are always labeled "featureId_N" where N is the index in
28311
+ the list of all feature Ids, where feature ID attributes are listed before
28312
+ feature ID textures.
28313
+ </p>
28314
+ <p>
28315
+ If featureIdLabel is set to an integer N, it is converted to
28316
+ the string "featureId_N" automatically. If both per-primitive and
28317
+ per-instance feature IDs are present, the instance feature IDs take
28318
+ priority.
28319
+ </p>
28320
+ */
28321
+ featureIdLabel: string;
28322
+ /**
28323
+ * Label of the instance feature ID set used for picking and styling.
28324
+ <p>
28325
+ If instanceFeatureIdLabel is set to an integer N, it is converted to
28326
+ the string "instanceFeatureId_N" automatically.
28327
+ If both per-primitive and per-instance feature IDs are present, the
28328
+ instance feature IDs take priority.
28329
+ </p>
28330
+ */
28331
+ instanceFeatureIdLabel: string;
28274
28332
  /**
28275
28333
  * Provides a hook to override the method used to request the tileset json
28276
28334
  useful when fetching tilesets from remote servers
@@ -30565,6 +30623,11 @@ export class Fog {
30565
30623
  * <code>true</code> if fog is enabled, <code>false</code> otherwise.
30566
30624
  */
30567
30625
  enabled: boolean;
30626
+ /**
30627
+ * <code>true</code> if fog is renderable in shaders, <code>false</code> otherwise.
30628
+ This allows to benefits from optimized tile loading strategy based on fog density without the actual visual rendering.
30629
+ */
30630
+ renderable: boolean;
30568
30631
  /**
30569
30632
  * A scalar that determines the density of the fog. Terrain that is in full fog are culled.
30570
30633
  The density of the fog increases as this number approaches 1.0 and becomes less dense as it approaches zero.
@@ -31088,8 +31151,8 @@ export namespace GoogleEarthEnterpriseImageryProvider {
31088
31151
  * @property metadata - A metadata object that can be used to share metadata requests with a GoogleEarthEnterpriseTerrainProvider.
31089
31152
  * @property [ellipsoid] - The ellipsoid. If not specified, the WGS84 ellipsoid is used.
31090
31153
  * @property [tileDiscardPolicy] - The policy that determines if a tile
31091
- is invalid and should be discarded. If this value is not specified, a default
31092
- is to discard tiles that fail to download.
31154
+ * is invalid and should be discarded. If this value is not specified, a default
31155
+ * is to discard tiles that fail to download.
31093
31156
  * @property [credit] - A credit for the data source, which is displayed on the canvas.
31094
31157
  */
31095
31158
  type ConstructorOptions = {
@@ -31103,41 +31166,41 @@ export namespace GoogleEarthEnterpriseImageryProvider {
31103
31166
 
31104
31167
  /**
31105
31168
  * Provides tiled imagery using the Google Earth Enterprise REST API.
31106
-
31107
- Notes: This provider is for use with the 3D Earth API of Google Earth Enterprise,
31108
- {@link GoogleEarthEnterpriseMapsProvider} should be used with 2D Maps API.
31169
+ *
31170
+ * Notes: This provider is for use with the 3D Earth API of Google Earth Enterprise,
31171
+ * {@link GoogleEarthEnterpriseMapsProvider} should be used with 2D Maps API.
31109
31172
  * @example
31110
31173
  * const geeMetadata = new GoogleEarthEnterpriseMetadata('http://www.earthenterprise.org/3d');
31111
- const gee = new Cesium.GoogleEarthEnterpriseImageryProvider({
31112
- metadata : geeMetadata
31113
- });
31174
+ * const gee = new Cesium.GoogleEarthEnterpriseImageryProvider({
31175
+ * metadata : geeMetadata
31176
+ * });
31114
31177
  * @param options - Object describing initialization options
31115
31178
  */
31116
31179
  export class GoogleEarthEnterpriseImageryProvider {
31117
31180
  constructor(options: GoogleEarthEnterpriseImageryProvider.ConstructorOptions);
31118
31181
  /**
31119
31182
  * The default alpha blending value of this provider, with 0.0 representing fully transparent and
31120
- 1.0 representing fully opaque.
31183
+ * 1.0 representing fully opaque.
31121
31184
  */
31122
31185
  defaultAlpha: number | undefined;
31123
31186
  /**
31124
31187
  * The default alpha blending value on the night side of the globe of this provider, with 0.0 representing fully transparent and
31125
- 1.0 representing fully opaque.
31188
+ * 1.0 representing fully opaque.
31126
31189
  */
31127
31190
  defaultNightAlpha: number | undefined;
31128
31191
  /**
31129
31192
  * The default alpha blending value on the day side of the globe of this provider, with 0.0 representing fully transparent and
31130
- 1.0 representing fully opaque.
31193
+ * 1.0 representing fully opaque.
31131
31194
  */
31132
31195
  defaultDayAlpha: number | undefined;
31133
31196
  /**
31134
31197
  * The default brightness of this provider. 1.0 uses the unmodified imagery color. Less than 1.0
31135
- makes the imagery darker while greater than 1.0 makes it brighter.
31198
+ * makes the imagery darker while greater than 1.0 makes it brighter.
31136
31199
  */
31137
31200
  defaultBrightness: number | undefined;
31138
31201
  /**
31139
31202
  * The default contrast of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
31140
- the contrast while greater than 1.0 increases it.
31203
+ * the contrast while greater than 1.0 increases it.
31141
31204
  */
31142
31205
  defaultContrast: number | undefined;
31143
31206
  /**
@@ -31146,7 +31209,7 @@ export class GoogleEarthEnterpriseImageryProvider {
31146
31209
  defaultHue: number | undefined;
31147
31210
  /**
31148
31211
  * The default saturation of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
31149
- saturation while greater than 1.0 increases it.
31212
+ * saturation while greater than 1.0 increases it.
31150
31213
  */
31151
31214
  defaultSaturation: number | undefined;
31152
31215
  /**
@@ -31171,45 +31234,45 @@ export class GoogleEarthEnterpriseImageryProvider {
31171
31234
  readonly proxy: Proxy;
31172
31235
  /**
31173
31236
  * Gets the width of each tile, in pixels. This function should
31174
- not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31237
+ * not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31175
31238
  */
31176
31239
  readonly tileWidth: number;
31177
31240
  /**
31178
31241
  * Gets the height of each tile, in pixels. This function should
31179
- not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31242
+ * not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31180
31243
  */
31181
31244
  readonly tileHeight: number;
31182
31245
  /**
31183
31246
  * Gets the maximum level-of-detail that can be requested. This function should
31184
- not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31247
+ * not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31185
31248
  */
31186
31249
  readonly maximumLevel: number | undefined;
31187
31250
  /**
31188
31251
  * Gets the minimum level-of-detail that can be requested. This function should
31189
- not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31252
+ * not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31190
31253
  */
31191
31254
  readonly minimumLevel: number;
31192
31255
  /**
31193
31256
  * Gets the tiling scheme used by this provider. This function should
31194
- not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31257
+ * not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31195
31258
  */
31196
31259
  readonly tilingScheme: TilingScheme;
31197
31260
  /**
31198
31261
  * Gets the rectangle, in radians, of the imagery provided by this instance. This function should
31199
- not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31262
+ * not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31200
31263
  */
31201
31264
  readonly rectangle: Rectangle;
31202
31265
  /**
31203
31266
  * Gets the tile discard policy. If not undefined, the discard policy is responsible
31204
- for filtering out "missing" tiles via its shouldDiscardImage function. If this function
31205
- returns undefined, no tiles are filtered. This function should
31206
- not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31267
+ * for filtering out "missing" tiles via its shouldDiscardImage function. If this function
31268
+ * returns undefined, no tiles are filtered. This function should
31269
+ * not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31207
31270
  */
31208
31271
  readonly tileDiscardPolicy: TileDiscardPolicy;
31209
31272
  /**
31210
31273
  * Gets an event that is raised when the imagery provider encounters an asynchronous error. By subscribing
31211
- to the event, you will be notified of the error and can potentially recover from it. Event listeners
31212
- are passed an instance of {@link TileProviderError}.
31274
+ * to the event, you will be notified of the error and can potentially recover from it. Event listeners
31275
+ * are passed an instance of {@link TileProviderError}.
31213
31276
  */
31214
31277
  readonly errorEvent: Event;
31215
31278
  /**
@@ -31222,15 +31285,15 @@ export class GoogleEarthEnterpriseImageryProvider {
31222
31285
  readonly readyPromise: Promise<boolean>;
31223
31286
  /**
31224
31287
  * Gets the credit to display when this imagery provider is active. Typically this is used to credit
31225
- the source of the imagery. This function should not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31288
+ * the source of the imagery. This function should not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31226
31289
  */
31227
31290
  readonly credit: Credit;
31228
31291
  /**
31229
31292
  * Gets a value indicating whether or not the images provided by this imagery provider
31230
- include an alpha channel. If this property is false, an alpha channel, if present, will
31231
- be ignored. If this property is true, any images without an alpha channel will be treated
31232
- as if their alpha is 1.0 everywhere. Setting this property to false reduces memory usage
31233
- and texture upload time.
31293
+ * include an alpha channel. If this property is false, an alpha channel, if present, will
31294
+ * be ignored. If this property is true, any images without an alpha channel will be treated
31295
+ * as if their alpha is 1.0 everywhere. Setting this property to false reduces memory usage
31296
+ * and texture upload time.
31234
31297
  */
31235
31298
  readonly hasAlphaChannel: boolean;
31236
31299
  /**
@@ -31243,29 +31306,29 @@ export class GoogleEarthEnterpriseImageryProvider {
31243
31306
  getTileCredits(x: number, y: number, level: number): Credit[];
31244
31307
  /**
31245
31308
  * Requests the image for a given tile. This function should
31246
- not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31309
+ * not be called before {@link GoogleEarthEnterpriseImageryProvider#ready} returns true.
31247
31310
  * @param x - The tile X coordinate.
31248
31311
  * @param y - The tile Y coordinate.
31249
31312
  * @param level - The tile level.
31250
31313
  * @param [request] - The request object. Intended for internal use only.
31251
31314
  * @returns A promise for the image that will resolve when the image is available, or
31252
- undefined if there are too many active requests to the server, and the request
31253
- should be retried later. The resolved image may be either an
31254
- Image or a Canvas DOM object.
31315
+ * undefined if there are too many active requests to the server, and the request
31316
+ * should be retried later. The resolved image may be either an
31317
+ * Image or a Canvas DOM object.
31255
31318
  */
31256
31319
  requestImage(x: number, y: number, level: number, request?: Request): Promise<HTMLImageElement | HTMLCanvasElement> | undefined;
31257
31320
  /**
31258
31321
  * Picking features is not currently supported by this imagery provider, so this function simply returns
31259
- undefined.
31322
+ * undefined.
31260
31323
  * @param x - The tile X coordinate.
31261
31324
  * @param y - The tile Y coordinate.
31262
31325
  * @param level - The tile level.
31263
31326
  * @param longitude - The longitude at which to pick features.
31264
31327
  * @param latitude - The latitude at which to pick features.
31265
31328
  * @returns A promise for the picked features that will resolve when the asynchronous
31266
- picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
31267
- instances. The array may be empty if no features are found at the given location.
31268
- It may also be undefined if picking is not supported.
31329
+ * picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
31330
+ * instances. The array may be empty if no features are found at the given location.
31331
+ * It may also be undefined if picking is not supported.
31269
31332
  */
31270
31333
  pickFeatures(x: number, y: number, level: number, longitude: number, latitude: number): Promise<ImageryLayerFeatureInfo[]> | undefined;
31271
31334
  }
@@ -31515,8 +31578,8 @@ export namespace GridImageryProvider {
31515
31578
  * Initialization options for the GridImageryProvider constructor
31516
31579
  * @property [tilingScheme = new GeographicTilingScheme()] - The tiling scheme for which to draw tiles.
31517
31580
  * @property [ellipsoid] - The ellipsoid. If the tilingScheme is specified,
31518
- this parameter is ignored and the tiling scheme's ellipsoid is used instead. If neither
31519
- parameter is specified, the WGS84 ellipsoid is used.
31581
+ * this parameter is ignored and the tiling scheme's ellipsoid is used instead. If neither
31582
+ * parameter is specified, the WGS84 ellipsoid is used.
31520
31583
  * @property [cells = 8] - The number of grids cells.
31521
31584
  * @property [color = Color(1.0, 1.0, 1.0, 0.4)] - The color to draw grid lines.
31522
31585
  * @property [glowColor = Color(0.0, 1.0, 0.0, 0.05)] - The color to draw glow for grid lines.
@@ -31542,34 +31605,34 @@ export namespace GridImageryProvider {
31542
31605
 
31543
31606
  /**
31544
31607
  * An {@link ImageryProvider} that draws a wireframe grid on every tile with controllable background and glow.
31545
- May be useful for custom rendering effects or debugging terrain.
31608
+ * May be useful for custom rendering effects or debugging terrain.
31546
31609
  * @param options - Object describing initialization options
31547
31610
  */
31548
31611
  export class GridImageryProvider {
31549
31612
  constructor(options: GridImageryProvider.ConstructorOptions);
31550
31613
  /**
31551
31614
  * The default alpha blending value of this provider, with 0.0 representing fully transparent and
31552
- 1.0 representing fully opaque.
31615
+ * 1.0 representing fully opaque.
31553
31616
  */
31554
31617
  defaultAlpha: number | undefined;
31555
31618
  /**
31556
31619
  * The default alpha blending value on the night side of the globe of this provider, with 0.0 representing fully transparent and
31557
- 1.0 representing fully opaque.
31620
+ * 1.0 representing fully opaque.
31558
31621
  */
31559
31622
  defaultNightAlpha: number | undefined;
31560
31623
  /**
31561
31624
  * The default alpha blending value on the day side of the globe of this provider, with 0.0 representing fully transparent and
31562
- 1.0 representing fully opaque.
31625
+ * 1.0 representing fully opaque.
31563
31626
  */
31564
31627
  defaultDayAlpha: number | undefined;
31565
31628
  /**
31566
31629
  * The default brightness of this provider. 1.0 uses the unmodified imagery color. Less than 1.0
31567
- makes the imagery darker while greater than 1.0 makes it brighter.
31630
+ * makes the imagery darker while greater than 1.0 makes it brighter.
31568
31631
  */
31569
31632
  defaultBrightness: number | undefined;
31570
31633
  /**
31571
31634
  * The default contrast of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
31572
- the contrast while greater than 1.0 increases it.
31635
+ * the contrast while greater than 1.0 increases it.
31573
31636
  */
31574
31637
  defaultContrast: number | undefined;
31575
31638
  /**
@@ -31578,7 +31641,7 @@ export class GridImageryProvider {
31578
31641
  defaultHue: number | undefined;
31579
31642
  /**
31580
31643
  * The default saturation of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
31581
- saturation while greater than 1.0 increases it.
31644
+ * saturation while greater than 1.0 increases it.
31582
31645
  */
31583
31646
  defaultSaturation: number | undefined;
31584
31647
  /**
@@ -31599,45 +31662,45 @@ export class GridImageryProvider {
31599
31662
  readonly proxy: Proxy;
31600
31663
  /**
31601
31664
  * Gets the width of each tile, in pixels. This function should
31602
- not be called before {@link GridImageryProvider#ready} returns true.
31665
+ * not be called before {@link GridImageryProvider#ready} returns true.
31603
31666
  */
31604
31667
  readonly tileWidth: number;
31605
31668
  /**
31606
31669
  * Gets the height of each tile, in pixels. This function should
31607
- not be called before {@link GridImageryProvider#ready} returns true.
31670
+ * not be called before {@link GridImageryProvider#ready} returns true.
31608
31671
  */
31609
31672
  readonly tileHeight: number;
31610
31673
  /**
31611
31674
  * Gets the maximum level-of-detail that can be requested. This function should
31612
- not be called before {@link GridImageryProvider#ready} returns true.
31675
+ * not be called before {@link GridImageryProvider#ready} returns true.
31613
31676
  */
31614
31677
  readonly maximumLevel: number | undefined;
31615
31678
  /**
31616
31679
  * Gets the minimum level-of-detail that can be requested. This function should
31617
- not be called before {@link GridImageryProvider#ready} returns true.
31680
+ * not be called before {@link GridImageryProvider#ready} returns true.
31618
31681
  */
31619
31682
  readonly minimumLevel: number;
31620
31683
  /**
31621
31684
  * Gets the tiling scheme used by this provider. This function should
31622
- not be called before {@link GridImageryProvider#ready} returns true.
31685
+ * not be called before {@link GridImageryProvider#ready} returns true.
31623
31686
  */
31624
31687
  readonly tilingScheme: TilingScheme;
31625
31688
  /**
31626
31689
  * Gets the rectangle, in radians, of the imagery provided by this instance. This function should
31627
- not be called before {@link GridImageryProvider#ready} returns true.
31690
+ * not be called before {@link GridImageryProvider#ready} returns true.
31628
31691
  */
31629
31692
  readonly rectangle: Rectangle;
31630
31693
  /**
31631
31694
  * Gets the tile discard policy. If not undefined, the discard policy is responsible
31632
- for filtering out "missing" tiles via its shouldDiscardImage function. If this function
31633
- returns undefined, no tiles are filtered. This function should
31634
- not be called before {@link GridImageryProvider#ready} returns true.
31695
+ * for filtering out "missing" tiles via its shouldDiscardImage function. If this function
31696
+ * returns undefined, no tiles are filtered. This function should
31697
+ * not be called before {@link GridImageryProvider#ready} returns true.
31635
31698
  */
31636
31699
  readonly tileDiscardPolicy: TileDiscardPolicy;
31637
31700
  /**
31638
31701
  * Gets an event that is raised when the imagery provider encounters an asynchronous error. By subscribing
31639
- to the event, you will be notified of the error and can potentially recover from it. Event listeners
31640
- are passed an instance of {@link TileProviderError}.
31702
+ * to the event, you will be notified of the error and can potentially recover from it. Event listeners
31703
+ * are passed an instance of {@link TileProviderError}.
31641
31704
  */
31642
31705
  readonly errorEvent: Event;
31643
31706
  /**
@@ -31650,15 +31713,15 @@ export class GridImageryProvider {
31650
31713
  readonly readyPromise: Promise<boolean>;
31651
31714
  /**
31652
31715
  * Gets the credit to display when this imagery provider is active. Typically this is used to credit
31653
- the source of the imagery. This function should not be called before {@link GridImageryProvider#ready} returns true.
31716
+ * the source of the imagery. This function should not be called before {@link GridImageryProvider#ready} returns true.
31654
31717
  */
31655
31718
  readonly credit: Credit;
31656
31719
  /**
31657
31720
  * Gets a value indicating whether or not the images provided by this imagery provider
31658
- include an alpha channel. If this property is false, an alpha channel, if present, will
31659
- be ignored. If this property is true, any images without an alpha channel will be treated
31660
- as if their alpha is 1.0 everywhere. When this property is false, memory usage
31661
- and texture upload time are reduced.
31721
+ * include an alpha channel. If this property is false, an alpha channel, if present, will
31722
+ * be ignored. If this property is true, any images without an alpha channel will be treated
31723
+ * as if their alpha is 1.0 everywhere. When this property is false, memory usage
31724
+ * and texture upload time are reduced.
31662
31725
  */
31663
31726
  readonly hasAlphaChannel: boolean;
31664
31727
  /**
@@ -31679,29 +31742,29 @@ export class GridImageryProvider {
31679
31742
  getTileCredits(x: number, y: number, level: number): Credit[];
31680
31743
  /**
31681
31744
  * Requests the image for a given tile. This function should
31682
- not be called before {@link GridImageryProvider#ready} returns true.
31745
+ * not be called before {@link GridImageryProvider#ready} returns true.
31683
31746
  * @param x - The tile X coordinate.
31684
31747
  * @param y - The tile Y coordinate.
31685
31748
  * @param level - The tile level.
31686
31749
  * @param [request] - The request object. Intended for internal use only.
31687
31750
  * @returns A promise for the image that will resolve when the image is available, or
31688
- undefined if there are too many active requests to the server, and the request
31689
- should be retried later. The resolved image may be either an
31690
- Image or a Canvas DOM object.
31751
+ * undefined if there are too many active requests to the server, and the request
31752
+ * should be retried later. The resolved image may be either an
31753
+ * Image or a Canvas DOM object.
31691
31754
  */
31692
31755
  requestImage(x: number, y: number, level: number, request?: Request): Promise<HTMLImageElement | HTMLCanvasElement> | undefined;
31693
31756
  /**
31694
31757
  * Picking features is not currently supported by this imagery provider, so this function simply returns
31695
- undefined.
31758
+ * undefined.
31696
31759
  * @param x - The tile X coordinate.
31697
31760
  * @param y - The tile Y coordinate.
31698
31761
  * @param level - The tile level.
31699
31762
  * @param longitude - The longitude at which to pick features.
31700
31763
  * @param latitude - The latitude at which to pick features.
31701
31764
  * @returns A promise for the picked features that will resolve when the asynchronous
31702
- picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
31703
- instances. The array may be empty if no features are found at the given location.
31704
- It may also be undefined if picking is not supported.
31765
+ * picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
31766
+ * instances. The array may be empty if no features are found at the given location.
31767
+ * It may also be undefined if picking is not supported.
31705
31768
  */
31706
31769
  pickFeatures(x: number, y: number, level: number, longitude: number, latitude: number): Promise<ImageryLayerFeatureInfo[]> | undefined;
31707
31770
  }
@@ -32170,87 +32233,136 @@ export enum HorizontalOrigin {
32170
32233
  RIGHT = -1
32171
32234
  }
32172
32235
 
32236
+ /**
32237
+ * Properties for managing image-based lighting on tilesets and models.
32238
+ Also manages the necessary resources and textures.
32239
+ <p>
32240
+ If specular environment maps are used, {@link ImageBasedLighting#destroy} must be called
32241
+ when the image-based lighting is no longer needed to clean up GPU resources properly.
32242
+ If a model or tileset creates an instance of ImageBasedLighting, it will handle this.
32243
+ Otherwise, the application is responsible for calling destroy().
32244
+ </p>
32245
+ * @param [options.imageBasedLightingFactor = Cartesian2(1.0, 1.0)] - Scales diffuse and specular image-based lighting from the earth, sky, atmosphere and star skybox.
32246
+ * @param [options.luminanceAtZenith = 0.2] - The sun's luminance at the zenith in kilo candela per meter squared to use for this model's procedural environment map.
32247
+ * @param [options.sphericalHarmonicCoefficients] - The third order spherical harmonic coefficients used for the diffuse color of image-based lighting.
32248
+ * @param [options.specularEnvironmentMaps] - A URL to a KTX2 file that contains a cube map of the specular lighting and the convoluted specular mipmaps.
32249
+ */
32250
+ export class ImageBasedLighting {
32251
+ constructor();
32252
+ /**
32253
+ * Cesium adds lighting from the earth, sky, atmosphere, and star skybox.
32254
+ This cartesian is used to scale the final diffuse and specular lighting
32255
+ contribution from those sources to the final color. A value of 0.0 will
32256
+ disable those light sources.
32257
+ */
32258
+ imageBasedLightingFactor: Cartesian2;
32259
+ /**
32260
+ * The sun's luminance at the zenith in kilo candela per meter squared
32261
+ to use for this model's procedural environment map. This is used when
32262
+ {@link ImageBasedLighting#specularEnvironmentMaps} and {@link ImageBasedLighting#sphericalHarmonicCoefficients}
32263
+ are not defined.
32264
+ */
32265
+ luminanceAtZenith: number;
32266
+ /**
32267
+ * The third order spherical harmonic coefficients used for the diffuse color of image-based lighting. When <code>undefined</code>, a diffuse irradiance
32268
+ computed from the atmosphere color is used.
32269
+ <p>
32270
+ There are nine <code>Cartesian3</code> coefficients.
32271
+ The order of the coefficients is: L<sub>0,0</sub>, L<sub>1,-1</sub>, L<sub>1,0</sub>, L<sub>1,1</sub>, L<sub>2,-2</sub>, L<sub>2,-1</sub>, L<sub>2,0</sub>, L<sub>2,1</sub>, L<sub>2,2</sub>
32272
+ </p>
32273
+
32274
+ These values can be obtained by preprocessing the environment map using the <code>cmgen</code> tool of
32275
+ {@link https://github.com/google/filament/releases|Google's Filament project}. This will also generate a KTX file that can be
32276
+ supplied to {@link Model#specularEnvironmentMaps}.
32277
+ */
32278
+ sphericalHarmonicCoefficients: Cartesian3[];
32279
+ /**
32280
+ * A URL to a KTX2 file that contains a cube map of the specular lighting and the convoluted specular mipmaps.
32281
+ */
32282
+ specularEnvironmentMaps: string;
32283
+ }
32284
+
32173
32285
  /**
32174
32286
  * An imagery layer that displays tiled image data from a single imagery provider
32175
- * on a {@link Globe}.
32287
+ on a {@link Globe}.
32176
32288
  * @param imageryProvider - The imagery provider to use.
32177
32289
  * @param [options] - Object with the following properties:
32178
32290
  * @param [options.rectangle = imageryProvider.rectangle] - The rectangle of the layer. This rectangle
32179
- * can limit the visible portion of the imagery provider.
32291
+ can limit the visible portion of the imagery provider.
32180
32292
  * @param [options.alpha = 1.0] - The alpha blending value of this layer, from 0.0 to 1.0.
32181
- * This can either be a simple number or a function with the signature
32182
- * <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32183
- * current frame state, this layer, and the x, y, and level coordinates of the
32184
- * imagery tile for which the alpha is required, and it is expected to return
32185
- * the alpha value to use for the tile.
32293
+ This can either be a simple number or a function with the signature
32294
+ <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32295
+ current frame state, this layer, and the x, y, and level coordinates of the
32296
+ imagery tile for which the alpha is required, and it is expected to return
32297
+ the alpha value to use for the tile.
32186
32298
  * @param [options.nightAlpha = 1.0] - The alpha blending value of this layer on the night side of the globe, from 0.0 to 1.0.
32187
- * This can either be a simple number or a function with the signature
32188
- * <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32189
- * current frame state, this layer, and the x, y, and level coordinates of the
32190
- * imagery tile for which the alpha is required, and it is expected to return
32191
- * the alpha value to use for the tile. This only takes effect when <code>enableLighting</code> is <code>true</code>.
32299
+ This can either be a simple number or a function with the signature
32300
+ <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32301
+ current frame state, this layer, and the x, y, and level coordinates of the
32302
+ imagery tile for which the alpha is required, and it is expected to return
32303
+ the alpha value to use for the tile. This only takes effect when <code>enableLighting</code> is <code>true</code>.
32192
32304
  * @param [options.dayAlpha = 1.0] - The alpha blending value of this layer on the day side of the globe, from 0.0 to 1.0.
32193
- * This can either be a simple number or a function with the signature
32194
- * <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32195
- * current frame state, this layer, and the x, y, and level coordinates of the
32196
- * imagery tile for which the alpha is required, and it is expected to return
32197
- * the alpha value to use for the tile. This only takes effect when <code>enableLighting</code> is <code>true</code>.
32305
+ This can either be a simple number or a function with the signature
32306
+ <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32307
+ current frame state, this layer, and the x, y, and level coordinates of the
32308
+ imagery tile for which the alpha is required, and it is expected to return
32309
+ the alpha value to use for the tile. This only takes effect when <code>enableLighting</code> is <code>true</code>.
32198
32310
  * @param [options.brightness = 1.0] - The brightness of this layer. 1.0 uses the unmodified imagery
32199
- * color. Less than 1.0 makes the imagery darker while greater than 1.0 makes it brighter.
32200
- * This can either be a simple number or a function with the signature
32201
- * <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32202
- * current frame state, this layer, and the x, y, and level coordinates of the
32203
- * imagery tile for which the brightness is required, and it is expected to return
32204
- * the brightness value to use for the tile. The function is executed for every
32205
- * frame and for every tile, so it must be fast.
32311
+ color. Less than 1.0 makes the imagery darker while greater than 1.0 makes it brighter.
32312
+ This can either be a simple number or a function with the signature
32313
+ <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32314
+ current frame state, this layer, and the x, y, and level coordinates of the
32315
+ imagery tile for which the brightness is required, and it is expected to return
32316
+ the brightness value to use for the tile. The function is executed for every
32317
+ frame and for every tile, so it must be fast.
32206
32318
  * @param [options.contrast = 1.0] - The contrast of this layer. 1.0 uses the unmodified imagery color.
32207
- * Less than 1.0 reduces the contrast while greater than 1.0 increases it.
32208
- * This can either be a simple number or a function with the signature
32209
- * <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32210
- * current frame state, this layer, and the x, y, and level coordinates of the
32211
- * imagery tile for which the contrast is required, and it is expected to return
32212
- * the contrast value to use for the tile. The function is executed for every
32213
- * frame and for every tile, so it must be fast.
32319
+ Less than 1.0 reduces the contrast while greater than 1.0 increases it.
32320
+ This can either be a simple number or a function with the signature
32321
+ <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32322
+ current frame state, this layer, and the x, y, and level coordinates of the
32323
+ imagery tile for which the contrast is required, and it is expected to return
32324
+ the contrast value to use for the tile. The function is executed for every
32325
+ frame and for every tile, so it must be fast.
32214
32326
  * @param [options.hue = 0.0] - The hue of this layer. 0.0 uses the unmodified imagery color.
32215
- * This can either be a simple number or a function with the signature
32216
- * <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32217
- * current frame state, this layer, and the x, y, and level coordinates
32218
- * of the imagery tile for which the hue is required, and it is expected to return
32219
- * the contrast value to use for the tile. The function is executed for every
32220
- * frame and for every tile, so it must be fast.
32327
+ This can either be a simple number or a function with the signature
32328
+ <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32329
+ current frame state, this layer, and the x, y, and level coordinates
32330
+ of the imagery tile for which the hue is required, and it is expected to return
32331
+ the contrast value to use for the tile. The function is executed for every
32332
+ frame and for every tile, so it must be fast.
32221
32333
  * @param [options.saturation = 1.0] - The saturation of this layer. 1.0 uses the unmodified imagery color.
32222
- * Less than 1.0 reduces the saturation while greater than 1.0 increases it.
32223
- * This can either be a simple number or a function with the signature
32224
- * <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32225
- * current frame state, this layer, and the x, y, and level coordinates
32226
- * of the imagery tile for which the saturation is required, and it is expected to return
32227
- * the contrast value to use for the tile. The function is executed for every
32228
- * frame and for every tile, so it must be fast.
32334
+ Less than 1.0 reduces the saturation while greater than 1.0 increases it.
32335
+ This can either be a simple number or a function with the signature
32336
+ <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32337
+ current frame state, this layer, and the x, y, and level coordinates
32338
+ of the imagery tile for which the saturation is required, and it is expected to return
32339
+ the contrast value to use for the tile. The function is executed for every
32340
+ frame and for every tile, so it must be fast.
32229
32341
  * @param [options.gamma = 1.0] - The gamma correction to apply to this layer. 1.0 uses the unmodified imagery color.
32230
- * This can either be a simple number or a function with the signature
32231
- * <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32232
- * current frame state, this layer, and the x, y, and level coordinates of the
32233
- * imagery tile for which the gamma is required, and it is expected to return
32234
- * the gamma value to use for the tile. The function is executed for every
32235
- * frame and for every tile, so it must be fast.
32236
- * @param [options.splitDirection = ImagerySplitDirection.NONE] - The {@link ImagerySplitDirection} split to apply to this layer.
32342
+ This can either be a simple number or a function with the signature
32343
+ <code>function(frameState, layer, x, y, level)</code>. The function is passed the
32344
+ current frame state, this layer, and the x, y, and level coordinates of the
32345
+ imagery tile for which the gamma is required, and it is expected to return
32346
+ the gamma value to use for the tile. The function is executed for every
32347
+ frame and for every tile, so it must be fast.
32348
+ * @param [options.splitDirection = SplitDirection.NONE] - The {@link SplitDirection} split to apply to this layer.
32237
32349
  * @param [options.minificationFilter = TextureMinificationFilter.LINEAR] - The
32238
- * texture minification filter to apply to this layer. Possible values
32239
- * are <code>TextureMinificationFilter.LINEAR</code> and
32240
- * <code>TextureMinificationFilter.NEAREST</code>.
32350
+ texture minification filter to apply to this layer. Possible values
32351
+ are <code>TextureMinificationFilter.LINEAR</code> and
32352
+ <code>TextureMinificationFilter.NEAREST</code>.
32241
32353
  * @param [options.magnificationFilter = TextureMagnificationFilter.LINEAR] - The
32242
- * texture minification filter to apply to this layer. Possible values
32243
- * are <code>TextureMagnificationFilter.LINEAR</code> and
32244
- * <code>TextureMagnificationFilter.NEAREST</code>.
32354
+ texture minification filter to apply to this layer. Possible values
32355
+ are <code>TextureMagnificationFilter.LINEAR</code> and
32356
+ <code>TextureMagnificationFilter.NEAREST</code>.
32245
32357
  * @param [options.show = true] - True if the layer is shown; otherwise, false.
32246
32358
  * @param [options.maximumAnisotropy = maximum supported] - The maximum anisotropy level to use
32247
- * for texture filtering. If this parameter is not specified, the maximum anisotropy supported
32248
- * by the WebGL stack will be used. Larger values make the imagery look better in horizon
32249
- * views.
32359
+ for texture filtering. If this parameter is not specified, the maximum anisotropy supported
32360
+ by the WebGL stack will be used. Larger values make the imagery look better in horizon
32361
+ views.
32250
32362
  * @param [options.minimumTerrainLevel] - The minimum terrain level-of-detail at which to show this imagery layer,
32251
- * or undefined to show it at all levels. Level zero is the least-detailed level.
32363
+ or undefined to show it at all levels. Level zero is the least-detailed level.
32252
32364
  * @param [options.maximumTerrainLevel] - The maximum terrain level-of-detail at which to show this imagery layer,
32253
- * or undefined to show it at all levels. Level zero is the least-detailed level.
32365
+ or undefined to show it at all levels. Level zero is the least-detailed level.
32254
32366
  * @param [options.cutoutRectangle] - Cartographic rectangle for cutting out a portion of this ImageryLayer.
32255
32367
  * @param [options.colorToAlpha] - Color to be used as alpha.
32256
32368
  * @param [options.colorToAlphaThreshold = 0.004] - Threshold for color-to-alpha.
@@ -32266,7 +32378,7 @@ export class ImageryLayer {
32266
32378
  hue?: number | ((...params: any[]) => any);
32267
32379
  saturation?: number | ((...params: any[]) => any);
32268
32380
  gamma?: number | ((...params: any[]) => any);
32269
- splitDirection?: ImagerySplitDirection | ((...params: any[]) => any);
32381
+ splitDirection?: SplitDirection | ((...params: any[]) => any);
32270
32382
  minificationFilter?: TextureMinificationFilter;
32271
32383
  magnificationFilter?: TextureMagnificationFilter;
32272
32384
  show?: boolean;
@@ -32279,27 +32391,27 @@ export class ImageryLayer {
32279
32391
  });
32280
32392
  /**
32281
32393
  * The alpha blending value of this layer, with 0.0 representing fully transparent and
32282
- * 1.0 representing fully opaque.
32394
+ 1.0 representing fully opaque.
32283
32395
  */
32284
32396
  alpha: number;
32285
32397
  /**
32286
32398
  * The alpha blending value of this layer on the night side of the globe, with 0.0 representing fully transparent and
32287
- * 1.0 representing fully opaque. This only takes effect when {@link Globe#enableLighting} is <code>true</code>.
32399
+ 1.0 representing fully opaque. This only takes effect when {@link Globe#enableLighting} is <code>true</code>.
32288
32400
  */
32289
32401
  nightAlpha: number;
32290
32402
  /**
32291
32403
  * The alpha blending value of this layer on the day side of the globe, with 0.0 representing fully transparent and
32292
- * 1.0 representing fully opaque. This only takes effect when {@link Globe#enableLighting} is <code>true</code>.
32404
+ 1.0 representing fully opaque. This only takes effect when {@link Globe#enableLighting} is <code>true</code>.
32293
32405
  */
32294
32406
  dayAlpha: number;
32295
32407
  /**
32296
32408
  * The brightness of this layer. 1.0 uses the unmodified imagery color. Less than 1.0
32297
- * makes the imagery darker while greater than 1.0 makes it brighter.
32409
+ makes the imagery darker while greater than 1.0 makes it brighter.
32298
32410
  */
32299
32411
  brightness: number;
32300
32412
  /**
32301
32413
  * The contrast of this layer. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
32302
- * the contrast while greater than 1.0 increases it.
32414
+ the contrast while greater than 1.0 increases it.
32303
32415
  */
32304
32416
  contrast: number;
32305
32417
  /**
@@ -32308,7 +32420,7 @@ export class ImageryLayer {
32308
32420
  hue: number;
32309
32421
  /**
32310
32422
  * The saturation of this layer. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
32311
- * saturation while greater than 1.0 increases it.
32423
+ saturation while greater than 1.0 increases it.
32312
32424
  */
32313
32425
  saturation: number;
32314
32426
  /**
@@ -32316,25 +32428,25 @@ export class ImageryLayer {
32316
32428
  */
32317
32429
  gamma: number;
32318
32430
  /**
32319
- * The {@link ImagerySplitDirection} to apply to this layer.
32431
+ * The {@link SplitDirection} to apply to this layer.
32320
32432
  */
32321
- splitDirection: ImagerySplitDirection;
32433
+ splitDirection: SplitDirection;
32322
32434
  /**
32323
32435
  * The {@link TextureMinificationFilter} to apply to this layer.
32324
- * Possible values are {@link TextureMinificationFilter.LINEAR} (the default)
32325
- * and {@link TextureMinificationFilter.NEAREST}.
32326
- *
32327
- * To take effect, this property must be set immediately after adding the imagery layer.
32328
- * Once a texture is loaded it won't be possible to change the texture filter used.
32436
+ Possible values are {@link TextureMinificationFilter.LINEAR} (the default)
32437
+ and {@link TextureMinificationFilter.NEAREST}.
32438
+
32439
+ To take effect, this property must be set immediately after adding the imagery layer.
32440
+ Once a texture is loaded it won't be possible to change the texture filter used.
32329
32441
  */
32330
32442
  minificationFilter: TextureMinificationFilter;
32331
32443
  /**
32332
32444
  * The {@link TextureMagnificationFilter} to apply to this layer.
32333
- * Possible values are {@link TextureMagnificationFilter.LINEAR} (the default)
32334
- * and {@link TextureMagnificationFilter.NEAREST}.
32335
- *
32336
- * To take effect, this property must be set immediately after adding the imagery layer.
32337
- * Once a texture is loaded it won't be possible to change the texture filter used.
32445
+ Possible values are {@link TextureMagnificationFilter.LINEAR} (the default)
32446
+ and {@link TextureMagnificationFilter.NEAREST}.
32447
+
32448
+ To take effect, this property must be set immediately after adding the imagery layer.
32449
+ Once a texture is loaded it won't be possible to change the texture filter used.
32338
32450
  */
32339
32451
  magnificationFilter: TextureMagnificationFilter;
32340
32452
  /**
@@ -32359,92 +32471,92 @@ export class ImageryLayer {
32359
32471
  readonly imageryProvider: ImageryProvider;
32360
32472
  /**
32361
32473
  * Gets the rectangle of this layer. If this rectangle is smaller than the rectangle of the
32362
- * {@link ImageryProvider}, only a portion of the imagery provider is shown.
32474
+ {@link ImageryProvider}, only a portion of the imagery provider is shown.
32363
32475
  */
32364
32476
  readonly rectangle: Rectangle;
32365
32477
  /**
32366
32478
  * This value is used as the default brightness for the imagery layer if one is not provided during construction
32367
- * or by the imagery provider. This value does not modify the brightness of the imagery.
32479
+ or by the imagery provider. This value does not modify the brightness of the imagery.
32368
32480
  */
32369
32481
  static DEFAULT_BRIGHTNESS: number;
32370
32482
  /**
32371
32483
  * This value is used as the default contrast for the imagery layer if one is not provided during construction
32372
- * or by the imagery provider. This value does not modify the contrast of the imagery.
32484
+ or by the imagery provider. This value does not modify the contrast of the imagery.
32373
32485
  */
32374
32486
  static DEFAULT_CONTRAST: number;
32375
32487
  /**
32376
32488
  * This value is used as the default hue for the imagery layer if one is not provided during construction
32377
- * or by the imagery provider. This value does not modify the hue of the imagery.
32489
+ or by the imagery provider. This value does not modify the hue of the imagery.
32378
32490
  */
32379
32491
  static DEFAULT_HUE: number;
32380
32492
  /**
32381
32493
  * This value is used as the default saturation for the imagery layer if one is not provided during construction
32382
- * or by the imagery provider. This value does not modify the saturation of the imagery.
32494
+ or by the imagery provider. This value does not modify the saturation of the imagery.
32383
32495
  */
32384
32496
  static DEFAULT_SATURATION: number;
32385
32497
  /**
32386
32498
  * This value is used as the default gamma for the imagery layer if one is not provided during construction
32387
- * or by the imagery provider. This value does not modify the gamma of the imagery.
32499
+ or by the imagery provider. This value does not modify the gamma of the imagery.
32388
32500
  */
32389
32501
  static DEFAULT_GAMMA: number;
32390
32502
  /**
32391
32503
  * This value is used as the default split for the imagery layer if one is not provided during construction
32392
- * or by the imagery provider.
32504
+ or by the imagery provider.
32393
32505
  */
32394
- static DEFAULT_SPLIT: ImagerySplitDirection;
32506
+ static DEFAULT_SPLIT: SplitDirection;
32395
32507
  /**
32396
32508
  * This value is used as the default texture minification filter for the imagery layer if one is not provided
32397
- * during construction or by the imagery provider.
32509
+ during construction or by the imagery provider.
32398
32510
  */
32399
32511
  static DEFAULT_MINIFICATION_FILTER: TextureMinificationFilter;
32400
32512
  /**
32401
32513
  * This value is used as the default texture magnification filter for the imagery layer if one is not provided
32402
- * during construction or by the imagery provider.
32514
+ during construction or by the imagery provider.
32403
32515
  */
32404
32516
  static DEFAULT_MAGNIFICATION_FILTER: TextureMagnificationFilter;
32405
32517
  /**
32406
32518
  * This value is used as the default threshold for color-to-alpha if one is not provided
32407
- * during construction or by the imagery provider.
32519
+ during construction or by the imagery provider.
32408
32520
  */
32409
32521
  static DEFAULT_APPLY_COLOR_TO_ALPHA_THRESHOLD: number;
32410
32522
  /**
32411
32523
  * Gets a value indicating whether this layer is the base layer in the
32412
- * {@link ImageryLayerCollection}. The base layer is the one that underlies all
32413
- * others. It is special in that it is treated as if it has global rectangle, even if
32414
- * it actually does not, by stretching the texels at the edges over the entire
32415
- * globe.
32524
+ {@link ImageryLayerCollection}. The base layer is the one that underlies all
32525
+ others. It is special in that it is treated as if it has global rectangle, even if
32526
+ it actually does not, by stretching the texels at the edges over the entire
32527
+ globe.
32416
32528
  * @returns true if this is the base layer; otherwise, false.
32417
32529
  */
32418
32530
  isBaseLayer(): boolean;
32419
32531
  /**
32420
32532
  * Returns true if this object was destroyed; otherwise, false.
32421
- * <br /><br />
32422
- * If this object was destroyed, it should not be used; calling any function other than
32423
- * <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
32533
+ <br /><br />
32534
+ If this object was destroyed, it should not be used; calling any function other than
32535
+ <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
32424
32536
  * @returns True if this object was destroyed; otherwise, false.
32425
32537
  */
32426
32538
  isDestroyed(): boolean;
32427
32539
  /**
32428
32540
  * Destroys the WebGL resources held by this object. Destroying an object allows for deterministic
32429
- * release of WebGL resources, instead of relying on the garbage collector to destroy this object.
32430
- * <br /><br />
32431
- * Once an object is destroyed, it should not be used; calling any function other than
32432
- * <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
32433
- * assign the return value (<code>undefined</code>) to the object as done in the example.
32541
+ release of WebGL resources, instead of relying on the garbage collector to destroy this object.
32542
+ <br /><br />
32543
+ Once an object is destroyed, it should not be used; calling any function other than
32544
+ <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
32545
+ assign the return value (<code>undefined</code>) to the object as done in the example.
32434
32546
  * @example
32435
32547
  * imageryLayer = imageryLayer && imageryLayer.destroy();
32436
32548
  */
32437
32549
  destroy(): void;
32438
32550
  /**
32439
32551
  * Computes the intersection of this layer's rectangle with the imagery provider's availability rectangle,
32440
- * producing the overall bounds of imagery that can be produced by this layer.
32552
+ producing the overall bounds of imagery that can be produced by this layer.
32441
32553
  * @example
32442
32554
  * // Zoom to an imagery layer.
32443
- * imageryLayer.getViewableRectangle().then(function (rectangle) {
32444
- * return camera.flyTo({
32445
- * destination: rectangle
32446
- * });
32447
- * });
32555
+ imageryLayer.getViewableRectangle().then(function (rectangle) {
32556
+ return camera.flyTo({
32557
+ destination: rectangle
32558
+ });
32559
+ });
32448
32560
  * @returns A promise to a rectangle which defines the overall bounds of imagery that can be produced by this layer.
32449
32561
  */
32450
32562
  getViewableRectangle(): Promise<Rectangle>;
@@ -32457,24 +32569,24 @@ export class ImageryLayerCollection {
32457
32569
  constructor();
32458
32570
  /**
32459
32571
  * An event that is raised when a layer is added to the collection. Event handlers are passed the layer that
32460
- was added and the index at which it was added.
32572
+ * was added and the index at which it was added.
32461
32573
  */
32462
32574
  layerAdded: Event;
32463
32575
  /**
32464
32576
  * An event that is raised when a layer is removed from the collection. Event handlers are passed the layer that
32465
- was removed and the index from which it was removed.
32577
+ * was removed and the index from which it was removed.
32466
32578
  */
32467
32579
  layerRemoved: Event;
32468
32580
  /**
32469
32581
  * An event that is raised when a layer changes position in the collection. Event handlers are passed the layer that
32470
- was moved, its new index after the move, and its old index prior to the move.
32582
+ * was moved, its new index after the move, and its old index prior to the move.
32471
32583
  */
32472
32584
  layerMoved: Event;
32473
32585
  /**
32474
32586
  * An event that is raised when a layer is shown or hidden by setting the
32475
- {@link ImageryLayer#show} property. Event handlers are passed a reference to this layer,
32476
- the index of the layer in the collection, and a flag that is true if the layer is now
32477
- shown or false if it is now hidden.
32587
+ * {@link ImageryLayer#show} property. Event handlers are passed a reference to this layer,
32588
+ * the index of the layer in the collection, and a flag that is true if the layer is now
32589
+ * shown or false if it is now hidden.
32478
32590
  */
32479
32591
  layerShownOrHidden: Event;
32480
32592
  /**
@@ -32485,14 +32597,14 @@ export class ImageryLayerCollection {
32485
32597
  * Adds a layer to the collection.
32486
32598
  * @param layer - the layer to add.
32487
32599
  * @param [index] - the index to add the layer at. If omitted, the layer will
32488
- be added on top of all existing layers.
32600
+ * be added on top of all existing layers.
32489
32601
  */
32490
32602
  add(layer: ImageryLayer, index?: number): void;
32491
32603
  /**
32492
32604
  * Creates a new layer using the given ImageryProvider and adds it to the collection.
32493
32605
  * @param imageryProvider - the imagery provider to create a new layer for.
32494
32606
  * @param [index] - the index to add the layer at. If omitted, the layer will
32495
- added on top of all existing layers.
32607
+ * added on top of all existing layers.
32496
32608
  * @returns The newly created layer.
32497
32609
  */
32498
32610
  addImageryProvider(imageryProvider: ImageryProvider, index?: number): ImageryLayer;
@@ -32501,7 +32613,7 @@ export class ImageryLayerCollection {
32501
32613
  * @param layer - The layer to remove.
32502
32614
  * @param [destroy = true] - whether to destroy the layers in addition to removing them.
32503
32615
  * @returns true if the layer was in the collection and was removed,
32504
- false if the layer was not in the collection.
32616
+ * false if the layer was not in the collection.
32505
32617
  */
32506
32618
  remove(layer: ImageryLayer, destroy?: boolean): boolean;
32507
32619
  /**
@@ -32549,57 +32661,57 @@ export class ImageryLayerCollection {
32549
32661
  lowerToBottom(layer: ImageryLayer): void;
32550
32662
  /**
32551
32663
  * Determines the imagery layers that are intersected by a pick ray. To compute a pick ray from a
32552
- location on the screen, use {@link Camera.getPickRay}.
32664
+ * location on the screen, use {@link Camera.getPickRay}.
32553
32665
  * @param ray - The ray to test for intersection.
32554
32666
  * @param scene - The scene.
32555
32667
  * @returns An array that includes all of
32556
- the layers that are intersected by a given pick ray. Undefined if
32557
- no layers are selected.
32668
+ * the layers that are intersected by a given pick ray. Undefined if
32669
+ * no layers are selected.
32558
32670
  */
32559
32671
  pickImageryLayers(ray: Ray, scene: Scene): ImageryLayer[] | undefined;
32560
32672
  /**
32561
32673
  * Asynchronously determines the imagery layer features that are intersected by a pick ray. The intersected imagery
32562
- layer features are found by invoking {@link ImageryProvider#pickFeatures} for each imagery layer tile intersected
32563
- by the pick ray. To compute a pick ray from a location on the screen, use {@link Camera.getPickRay}.
32674
+ * layer features are found by invoking {@link ImageryProvider#pickFeatures} for each imagery layer tile intersected
32675
+ * by the pick ray. To compute a pick ray from a location on the screen, use {@link Camera.getPickRay}.
32564
32676
  * @example
32565
32677
  * const pickRay = viewer.camera.getPickRay(windowPosition);
32566
- const featuresPromise = viewer.imageryLayers.pickImageryLayerFeatures(pickRay, viewer.scene);
32567
- if (!Cesium.defined(featuresPromise)) {
32568
- console.log('No features picked.');
32569
- } else {
32570
- Cesium.when(featuresPromise, function(features) {
32571
- // This function is called asynchronously when the list if picked features is available.
32572
- console.log('Number of features: ' + features.length);
32573
- if (features.length > 0) {
32574
- console.log('First feature name: ' + features[0].name);
32575
- }
32576
- });
32577
- }
32678
+ * const featuresPromise = viewer.imageryLayers.pickImageryLayerFeatures(pickRay, viewer.scene);
32679
+ * if (!Cesium.defined(featuresPromise)) {
32680
+ * console.log('No features picked.');
32681
+ * } else {
32682
+ * Promise.resolve(featuresPromise).then(function(features) {
32683
+ * // This function is called asynchronously when the list if picked features is available.
32684
+ * console.log('Number of features: ' + features.length);
32685
+ * if (features.length > 0) {
32686
+ * console.log('First feature name: ' + features[0].name);
32687
+ * }
32688
+ * });
32689
+ * }
32578
32690
  * @param ray - The ray to test for intersection.
32579
32691
  * @param scene - The scene.
32580
32692
  * @returns A promise that resolves to an array of features intersected by the pick ray.
32581
- If it can be quickly determined that no features are intersected (for example,
32582
- because no active imagery providers support {@link ImageryProvider#pickFeatures}
32583
- or because the pick ray does not intersect the surface), this function will
32584
- return undefined.
32693
+ * If it can be quickly determined that no features are intersected (for example,
32694
+ * because no active imagery providers support {@link ImageryProvider#pickFeatures}
32695
+ * or because the pick ray does not intersect the surface), this function will
32696
+ * return undefined.
32585
32697
  */
32586
32698
  pickImageryLayerFeatures(ray: Ray, scene: Scene): Promise<ImageryLayerFeatureInfo[]> | undefined;
32587
32699
  /**
32588
32700
  * Returns true if this object was destroyed; otherwise, false.
32589
- <br /><br />
32590
- If this object was destroyed, it should not be used; calling any function other than
32591
- <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
32701
+ * <br /><br />
32702
+ * If this object was destroyed, it should not be used; calling any function other than
32703
+ * <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
32592
32704
  * @returns true if this object was destroyed; otherwise, false.
32593
32705
  */
32594
32706
  isDestroyed(): boolean;
32595
32707
  /**
32596
32708
  * Destroys the WebGL resources held by all layers in this collection. Explicitly destroying this
32597
- object allows for deterministic release of WebGL resources, instead of relying on the garbage
32598
- collector.
32599
- <br /><br />
32600
- Once this object is destroyed, it should not be used; calling any function other than
32601
- <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
32602
- assign the return value (<code>undefined</code>) to the object as done in the example.
32709
+ * object allows for deterministic release of WebGL resources, instead of relying on the garbage
32710
+ * collector.
32711
+ * <br /><br />
32712
+ * Once this object is destroyed, it should not be used; calling any function other than
32713
+ * <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
32714
+ * assign the return value (<code>undefined</code>) to the object as done in the example.
32603
32715
  * @example
32604
32716
  * layerCollection = layerCollection && layerCollection.destroy();
32605
32717
  */
@@ -32824,21 +32936,9 @@ export class ImageryProvider {
32824
32936
  }
32825
32937
 
32826
32938
  /**
32827
- * The direction to display an ImageryLayer relative to the {@link Scene#imagerySplitPosition}.
32939
+ * This enumeration is deprecated. Use {@link SplitPosition} instead.
32828
32940
  */
32829
32941
  export enum ImagerySplitDirection {
32830
- /**
32831
- * Display the ImageryLayer to the left of the {@link Scene#imagerySplitPosition}.
32832
- */
32833
- LEFT = -1,
32834
- /**
32835
- * Always display the ImageryLayer.
32836
- */
32837
- NONE = 0,
32838
- /**
32839
- * Display the ImageryLayer to the right of the {@link Scene#imagerySplitPosition}.
32840
- */
32841
- RIGHT = 1
32842
32942
  }
32843
32943
 
32844
32944
  export namespace IonImageryProvider {
@@ -33303,33 +33403,33 @@ export class Label {
33303
33403
 
33304
33404
  /**
33305
33405
  * A renderable collection of labels. Labels are viewport-aligned text positioned in the 3D scene.
33306
- Each label can have a different font, color, scale, etc.
33307
- <br /><br />
33308
- <div align='center'>
33309
- <img src='Images/Label.png' width='400' height='300' /><br />
33310
- Example labels
33311
- </div>
33312
- <br /><br />
33313
- Labels are added and removed from the collection using {@link LabelCollection#add}
33314
- and {@link LabelCollection#remove}.
33406
+ * Each label can have a different font, color, scale, etc.
33407
+ * <br /><br />
33408
+ * <div align='center'>
33409
+ * <img src='Images/Label.png' width='400' height='300' /><br />
33410
+ * Example labels
33411
+ * </div>
33412
+ * <br /><br />
33413
+ * Labels are added and removed from the collection using {@link LabelCollection#add}
33414
+ * and {@link LabelCollection#remove}.
33315
33415
  * @example
33316
33416
  * // Create a label collection with two labels
33317
- const labels = scene.primitives.add(new Cesium.LabelCollection());
33318
- labels.add({
33319
- position : new Cesium.Cartesian3(1.0, 2.0, 3.0),
33320
- text : 'A label'
33321
- });
33322
- labels.add({
33323
- position : new Cesium.Cartesian3(4.0, 5.0, 6.0),
33324
- text : 'Another label'
33325
- });
33417
+ * const labels = scene.primitives.add(new Cesium.LabelCollection());
33418
+ * labels.add({
33419
+ * position : new Cesium.Cartesian3(1.0, 2.0, 3.0),
33420
+ * text : 'A label'
33421
+ * });
33422
+ * labels.add({
33423
+ * position : new Cesium.Cartesian3(4.0, 5.0, 6.0),
33424
+ * text : 'Another label'
33425
+ * });
33326
33426
  * @param [options] - Object with the following properties:
33327
33427
  * @param [options.modelMatrix = Matrix4.IDENTITY] - The 4x4 transformation matrix that transforms each label from model to world coordinates.
33328
33428
  * @param [options.debugShowBoundingVolume = false] - For debugging only. Determines if this primitive's commands' bounding spheres are shown.
33329
33429
  * @param [options.scene] - Must be passed in for labels that use the height reference property or will be depth tested against the globe.
33330
33430
  * @param [options.blendOption = BlendOption.OPAQUE_AND_TRANSLUCENT] - The label blending option. The default
33331
- is used for rendering both opaque and translucent labels. However, if either all of the labels are completely opaque or all are completely translucent,
33332
- setting the technique to BlendOption.OPAQUE or BlendOption.TRANSLUCENT can improve performance by up to 2x.
33431
+ * is used for rendering both opaque and translucent labels. However, if either all of the labels are completely opaque or all are completely translucent,
33432
+ * setting the technique to BlendOption.OPAQUE or BlendOption.TRANSLUCENT can improve performance by up to 2x.
33333
33433
  * @param [options.show = true] - Determines if the labels in the collection will be shown.
33334
33434
  */
33335
33435
  export class LabelCollection {
@@ -33346,85 +33446,85 @@ export class LabelCollection {
33346
33446
  show: boolean;
33347
33447
  /**
33348
33448
  * The 4x4 transformation matrix that transforms each label in this collection from model to world coordinates.
33349
- When this is the identity matrix, the labels are drawn in world coordinates, i.e., Earth's WGS84 coordinates.
33350
- Local reference frames can be used by providing a different transformation matrix, like that returned
33351
- by {@link Transforms.eastNorthUpToFixedFrame}.
33449
+ * When this is the identity matrix, the labels are drawn in world coordinates, i.e., Earth's WGS84 coordinates.
33450
+ * Local reference frames can be used by providing a different transformation matrix, like that returned
33451
+ * by {@link Transforms.eastNorthUpToFixedFrame}.
33352
33452
  * @example
33353
33453
  * const center = Cesium.Cartesian3.fromDegrees(-75.59777, 40.03883);
33354
- labels.modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(center);
33355
- labels.add({
33356
- position : new Cesium.Cartesian3(0.0, 0.0, 0.0),
33357
- text : 'Center'
33358
- });
33359
- labels.add({
33360
- position : new Cesium.Cartesian3(1000000.0, 0.0, 0.0),
33361
- text : 'East'
33362
- });
33363
- labels.add({
33364
- position : new Cesium.Cartesian3(0.0, 1000000.0, 0.0),
33365
- text : 'North'
33366
- });
33367
- labels.add({
33368
- position : new Cesium.Cartesian3(0.0, 0.0, 1000000.0),
33369
- text : 'Up'
33370
- });
33454
+ * labels.modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(center);
33455
+ * labels.add({
33456
+ * position : new Cesium.Cartesian3(0.0, 0.0, 0.0),
33457
+ * text : 'Center'
33458
+ * });
33459
+ * labels.add({
33460
+ * position : new Cesium.Cartesian3(1000000.0, 0.0, 0.0),
33461
+ * text : 'East'
33462
+ * });
33463
+ * labels.add({
33464
+ * position : new Cesium.Cartesian3(0.0, 1000000.0, 0.0),
33465
+ * text : 'North'
33466
+ * });
33467
+ * labels.add({
33468
+ * position : new Cesium.Cartesian3(0.0, 0.0, 1000000.0),
33469
+ * text : 'Up'
33470
+ * });
33371
33471
  */
33372
33472
  modelMatrix: Matrix4;
33373
33473
  /**
33374
33474
  * This property is for debugging only; it is not for production use nor is it optimized.
33375
- <p>
33376
- Draws the bounding sphere for each draw command in the primitive.
33377
- </p>
33475
+ * <p>
33476
+ * Draws the bounding sphere for each draw command in the primitive.
33477
+ * </p>
33378
33478
  */
33379
33479
  debugShowBoundingVolume: boolean;
33380
33480
  /**
33381
33481
  * The label blending option. The default is used for rendering both opaque and translucent labels.
33382
- However, if either all of the labels are completely opaque or all are completely translucent,
33383
- setting the technique to BlendOption.OPAQUE or BlendOption.TRANSLUCENT can improve
33384
- performance by up to 2x.
33482
+ * However, if either all of the labels are completely opaque or all are completely translucent,
33483
+ * setting the technique to BlendOption.OPAQUE or BlendOption.TRANSLUCENT can improve
33484
+ * performance by up to 2x.
33385
33485
  */
33386
33486
  blendOption: BlendOption;
33387
33487
  /**
33388
33488
  * Returns the number of labels in this collection. This is commonly used with
33389
- {@link LabelCollection#get} to iterate over all the labels
33390
- in the collection.
33489
+ * {@link LabelCollection#get} to iterate over all the labels
33490
+ * in the collection.
33391
33491
  */
33392
33492
  length: number;
33393
33493
  /**
33394
33494
  * Creates and adds a label with the specified initial properties to the collection.
33395
- The added label is returned so it can be modified or removed from the collection later.
33495
+ * The added label is returned so it can be modified or removed from the collection later.
33396
33496
  * @example
33397
33497
  * // Example 1: Add a label, specifying all the default values.
33398
- const l = labels.add({
33399
- show : true,
33400
- position : Cesium.Cartesian3.ZERO,
33401
- text : '',
33402
- font : '30px sans-serif',
33403
- fillColor : Cesium.Color.WHITE,
33404
- outlineColor : Cesium.Color.BLACK,
33405
- outlineWidth : 1.0,
33406
- showBackground : false,
33407
- backgroundColor : new Cesium.Color(0.165, 0.165, 0.165, 0.8),
33408
- backgroundPadding : new Cesium.Cartesian2(7, 5),
33409
- style : Cesium.LabelStyle.FILL,
33410
- pixelOffset : Cesium.Cartesian2.ZERO,
33411
- eyeOffset : Cesium.Cartesian3.ZERO,
33412
- horizontalOrigin : Cesium.HorizontalOrigin.LEFT,
33413
- verticalOrigin : Cesium.VerticalOrigin.BASELINE,
33414
- scale : 1.0,
33415
- translucencyByDistance : undefined,
33416
- pixelOffsetScaleByDistance : undefined,
33417
- heightReference : HeightReference.NONE,
33418
- distanceDisplayCondition : undefined
33419
- });
33498
+ * const l = labels.add({
33499
+ * show : true,
33500
+ * position : Cesium.Cartesian3.ZERO,
33501
+ * text : '',
33502
+ * font : '30px sans-serif',
33503
+ * fillColor : Cesium.Color.WHITE,
33504
+ * outlineColor : Cesium.Color.BLACK,
33505
+ * outlineWidth : 1.0,
33506
+ * showBackground : false,
33507
+ * backgroundColor : new Cesium.Color(0.165, 0.165, 0.165, 0.8),
33508
+ * backgroundPadding : new Cesium.Cartesian2(7, 5),
33509
+ * style : Cesium.LabelStyle.FILL,
33510
+ * pixelOffset : Cesium.Cartesian2.ZERO,
33511
+ * eyeOffset : Cesium.Cartesian3.ZERO,
33512
+ * horizontalOrigin : Cesium.HorizontalOrigin.LEFT,
33513
+ * verticalOrigin : Cesium.VerticalOrigin.BASELINE,
33514
+ * scale : 1.0,
33515
+ * translucencyByDistance : undefined,
33516
+ * pixelOffsetScaleByDistance : undefined,
33517
+ * heightReference : HeightReference.NONE,
33518
+ * distanceDisplayCondition : undefined
33519
+ * });
33420
33520
  * @example
33421
33521
  * // Example 2: Specify only the label's cartographic position,
33422
- // text, and font.
33423
- const l = labels.add({
33424
- position : Cesium.Cartesian3.fromRadians(longitude, latitude, height),
33425
- text : 'Hello World',
33426
- font : '24px Helvetica',
33427
- });
33522
+ * // text, and font.
33523
+ * const l = labels.add({
33524
+ * position : Cesium.Cartesian3.fromRadians(longitude, latitude, height),
33525
+ * text : 'Hello World',
33526
+ * font : '24px Helvetica',
33527
+ * });
33428
33528
  * @param [options] - A template describing the label's properties as shown in Example 1.
33429
33529
  * @returns The label that was added to the collection.
33430
33530
  */
@@ -33433,7 +33533,7 @@ export class LabelCollection {
33433
33533
  * Removes a label from the collection. Once removed, a label is no longer usable.
33434
33534
  * @example
33435
33535
  * const l = labels.add(...);
33436
- labels.remove(l); // Returns true
33536
+ * labels.remove(l); // Returns true
33437
33537
  * @param label - The label to remove.
33438
33538
  * @returns <code>true</code> if the label was removed; <code>false</code> if the label was not found in the collection.
33439
33539
  */
@@ -33442,8 +33542,8 @@ export class LabelCollection {
33442
33542
  * Removes all labels from the collection.
33443
33543
  * @example
33444
33544
  * labels.add(...);
33445
- labels.add(...);
33446
- labels.removeAll();
33545
+ * labels.add(...);
33546
+ * labels.removeAll();
33447
33547
  */
33448
33548
  removeAll(): void;
33449
33549
  /**
@@ -33454,36 +33554,36 @@ export class LabelCollection {
33454
33554
  contains(label: Label): boolean;
33455
33555
  /**
33456
33556
  * Returns the label in the collection at the specified index. Indices are zero-based
33457
- and increase as labels are added. Removing a label shifts all labels after
33458
- it to the left, changing their indices. This function is commonly used with
33459
- {@link LabelCollection#length} to iterate over all the labels
33460
- in the collection.
33557
+ * and increase as labels are added. Removing a label shifts all labels after
33558
+ * it to the left, changing their indices. This function is commonly used with
33559
+ * {@link LabelCollection#length} to iterate over all the labels
33560
+ * in the collection.
33461
33561
  * @example
33462
33562
  * // Toggle the show property of every label in the collection
33463
- const len = labels.length;
33464
- for (let i = 0; i < len; ++i) {
33465
- const l = billboards.get(i);
33466
- l.show = !l.show;
33467
- }
33563
+ * const len = labels.length;
33564
+ * for (let i = 0; i < len; ++i) {
33565
+ * const l = billboards.get(i);
33566
+ * l.show = !l.show;
33567
+ * }
33468
33568
  * @param index - The zero-based index of the billboard.
33469
33569
  * @returns The label at the specified index.
33470
33570
  */
33471
33571
  get(index: number): Label;
33472
33572
  /**
33473
33573
  * Returns true if this object was destroyed; otherwise, false.
33474
- <br /><br />
33475
- If this object was destroyed, it should not be used; calling any function other than
33476
- <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
33574
+ * <br /><br />
33575
+ * If this object was destroyed, it should not be used; calling any function other than
33576
+ * <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
33477
33577
  * @returns True if this object was destroyed; otherwise, false.
33478
33578
  */
33479
33579
  isDestroyed(): boolean;
33480
33580
  /**
33481
33581
  * Destroys the WebGL resources held by this object. Destroying an object allows for deterministic
33482
- release of WebGL resources, instead of relying on the garbage collector to destroy this object.
33483
- <br /><br />
33484
- Once an object is destroyed, it should not be used; calling any function other than
33485
- <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
33486
- assign the return value (<code>undefined</code>) to the object as done in the example.
33582
+ * release of WebGL resources, instead of relying on the garbage collector to destroy this object.
33583
+ * <br /><br />
33584
+ * Once an object is destroyed, it should not be used; calling any function other than
33585
+ * <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
33586
+ * assign the return value (<code>undefined</code>) to the object as done in the example.
33487
33587
  * @example
33488
33588
  * labels = labels && labels.destroy();
33489
33589
  */
@@ -34556,15 +34656,17 @@ relative to a local origin.
34556
34656
  * @param [options.silhouetteSize = 0.0] - The size of the silhouette in pixels.
34557
34657
  * @param [options.clippingPlanes] - The {@link ClippingPlaneCollection} used to selectively disable rendering the model.
34558
34658
  * @param [options.dequantizeInShader = true] - Determines if a {@link https://github.com/google/draco|Draco} encoded model is dequantized on the GPU. This decreases total memory usage for encoded models.
34559
- * @param [options.imageBasedLightingFactor = Cartesian2(1.0, 1.0)] - Scales diffuse and specular image-based lighting from the earth, sky, atmosphere and star skybox.
34560
34659
  * @param [options.lightColor] - The light color when shading the model. When <code>undefined</code> the scene's light color is used instead.
34561
- * @param [options.luminanceAtZenith = 0.2] - The sun's luminance at the zenith in kilo candela per meter squared to use for this model's procedural environment map.
34562
- * @param [options.sphericalHarmonicCoefficients] - The third order spherical harmonic coefficients used for the diffuse color of image-based lighting.
34563
- * @param [options.specularEnvironmentMaps] - A URL to a KTX2 file that contains a cube map of the specular lighting and the convoluted specular mipmaps.
34660
+ * @param [options.imageBasedLighting] - The properties for managing image-based lighting on this model.
34661
+ * @param [options.imageBasedLightingFactor = new Cartesian2(1.0, 1.0)] - Scales diffuse and specular image-based lighting from the earth, sky, atmosphere and star skybox. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
34662
+ * @param [options.luminanceAtZenith = 0.2] - The sun's luminance at the zenith in kilo candela per meter squared to use for this model's procedural environment map. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
34663
+ * @param [options.sphericalHarmonicCoefficients] - The third order spherical harmonic coefficients used for the diffuse color of image-based lighting. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
34664
+ * @param [options.specularEnvironmentMaps] - A URL to a KTX2 file that contains a cube map of the specular lighting and the convoluted specular mipmaps. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
34564
34665
  * @param [options.credit] - A credit for the data source, which is displayed on the canvas.
34565
34666
  * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this model on screen.
34566
34667
  * @param [options.backFaceCulling = true] - Whether to cull back-facing geometry. When true, back face culling is determined by the material's doubleSided property; when false, back face culling is disabled. Back faces are not culled if {@link Model#color} is translucent or {@link Model#silhouetteSize} is greater than 0.0.
34567
34668
  * @param [options.showOutline = true] - Whether to display the outline for models using the {@link https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Vendor/CESIUM_primitive_outline|CESIUM_primitive_outline} extension. When true, outlines are displayed. When false, outlines are not displayed.
34669
+ * @param [options.splitDirection = SplitDirection.NONE] - The {@link SplitDirection} split to apply to this model.
34568
34670
  */
34569
34671
  export class Model {
34570
34672
  constructor(options?: {
@@ -34593,8 +34695,9 @@ export class Model {
34593
34695
  silhouetteSize?: number;
34594
34696
  clippingPlanes?: ClippingPlaneCollection;
34595
34697
  dequantizeInShader?: boolean;
34596
- imageBasedLightingFactor?: Cartesian2;
34597
34698
  lightColor?: Cartesian3;
34699
+ imageBasedLighting?: ImageBasedLighting;
34700
+ imageBasedLightingFactor?: Cartesian2;
34598
34701
  luminanceAtZenith?: number;
34599
34702
  sphericalHarmonicCoefficients?: Cartesian3[];
34600
34703
  specularEnvironmentMaps?: string;
@@ -34602,6 +34705,7 @@ export class Model {
34602
34705
  showCreditsOnScreen?: boolean;
34603
34706
  backFaceCulling?: boolean;
34604
34707
  showOutline?: boolean;
34708
+ splitDirection?: SplitDirection;
34605
34709
  });
34606
34710
  /**
34607
34711
  * Determines if the model primitive will be shown.
@@ -34690,6 +34794,10 @@ export class Model {
34690
34794
  When true, outlines are displayed. When false, outlines are not displayed.
34691
34795
  */
34692
34796
  readonly showOutline: boolean;
34797
+ /**
34798
+ * The {@link SplitDirection} to apply to this model.
34799
+ */
34800
+ splitDirection: SplitDirection;
34693
34801
  /**
34694
34802
  * This property is for debugging only; it is not for production use nor is it optimized.
34695
34803
  <p>
@@ -34740,11 +34848,11 @@ export class Model {
34740
34848
  </p>
34741
34849
  * @example
34742
34850
  * // Play all animations at half-speed when the model is ready to render
34743
- Cesium.when(model.readyPromise).then(function(model) {
34851
+ Promise.resolve(model.readyPromise).then(function(model) {
34744
34852
  model.activeAnimations.addAll({
34745
34853
  multiplier : 0.5
34746
34854
  });
34747
- }).otherwise(function(error){
34855
+ }).catch(function(error){
34748
34856
  window.alert(error);
34749
34857
  });
34750
34858
  */
@@ -34774,11 +34882,6 @@ export class Model {
34774
34882
  * The {@link ClippingPlaneCollection} used to selectively disable rendering the model.
34775
34883
  */
34776
34884
  clippingPlanes: ClippingPlaneCollection;
34777
- /**
34778
- * Cesium adds lighting from the earth, sky, atmosphere, and star skybox. This cartesian is used to scale the final
34779
- diffuse and specular lighting contribution from those sources to the final color. A value of 0.0 will disable those light sources.
34780
- */
34781
- imageBasedLightingFactor: Cartesian2;
34782
34885
  /**
34783
34886
  * The light color when shading the model. When <code>undefined</code> the scene's light color is used instead.
34784
34887
  <p>
@@ -34787,6 +34890,15 @@ export class Model {
34787
34890
  </p>
34788
34891
  */
34789
34892
  lightColor: Cartesian3;
34893
+ /**
34894
+ * The properties for managing image-based lighting on this model.
34895
+ */
34896
+ imageBasedLighting: ImageBasedLighting;
34897
+ /**
34898
+ * Cesium adds lighting from the earth, sky, atmosphere, and star skybox. This cartesian is used to scale the final
34899
+ diffuse and specular lighting contribution from those sources to the final color. A value of 0.0 will disable those light sources.
34900
+ */
34901
+ imageBasedLightingFactor: Cartesian2;
34790
34902
  /**
34791
34903
  * The sun's luminance at the zenith in kilo candela per meter squared to use for this model's procedural environment map.
34792
34904
  This is used when {@link Model#specularEnvironmentMaps} and {@link Model#sphericalHarmonicCoefficients} are not defined.
@@ -34797,7 +34909,7 @@ export class Model {
34797
34909
  computed from the atmosphere color is used.
34798
34910
  <p>
34799
34911
  There are nine <code>Cartesian3</code> coefficients.
34800
- The order of the coefficients is: L<sub>00</sub>, L<sub>1-1</sub>, L<sub>10</sub>, L<sub>11</sub>, L<sub>2-2</sub>, L<sub>2-1</sub>, L<sub>20</sub>, L<sub>21</sub>, L<sub>22</sub>
34912
+ The order of the coefficients is: L<sub>0,0</sub>, L<sub>1,-1</sub>, L<sub>1,0</sub>, L<sub>1,1</sub>, L<sub>2,-2</sub>, L<sub>2,-1</sub>, L<sub>2,0</sub>, L<sub>2,1</sub>, L<sub>2,2</sub>
34801
34913
  </p>
34802
34914
 
34803
34915
  These values can be obtained by preprocessing the environment map using the <code>cmgen</code> tool of
@@ -34916,6 +35028,12 @@ export class Model {
34916
35028
  * @param [options.silhouetteSize = 0.0] - The size of the silhouette in pixels.
34917
35029
  * @param [options.clippingPlanes] - The {@link ClippingPlaneCollection} used to selectively disable rendering the model.
34918
35030
  * @param [options.dequantizeInShader = true] - Determines if a {@link https://github.com/google/draco|Draco} encoded model is dequantized on the GPU. This decreases total memory usage for encoded models.
35031
+ * @param [options.lightColor] - The light color when shading the model. When <code>undefined</code> the scene's light color is used instead.
35032
+ * @param [options.imageBasedLighting] - The properties for managing image-based lighting for this tileset.
35033
+ * @param [options.imageBasedLightingFactor = new Cartesian2(1.0, 1.0)] - Scales diffuse and specular image-based lighting from the earth, sky, atmosphere and star skybox. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
35034
+ * @param [options.luminanceAtZenith = 0.2] - The sun's luminance at the zenith in kilo candela per meter squared to use for this model's procedural environment map. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
35035
+ * @param [options.sphericalHarmonicCoefficients] - The third order spherical harmonic coefficients used for the diffuse color of image-based lighting. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
35036
+ * @param [options.specularEnvironmentMaps] - A URL to a KTX2 file that contains a cube map of the specular lighting and the convoluted specular mipmaps. Deprecated in Cesium 1.92, will be removed in Cesium 1.94.
34919
35037
  * @param [options.credit] - A credit for the model, which is displayed on the canvas.
34920
35038
  * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this model on screen.
34921
35039
  * @param [options.backFaceCulling = true] - Whether to cull back-facing geometry. When true, back face culling is determined by the material's doubleSided property; when false, back face culling is disabled. Back faces are not culled if {@link Model#color} is translucent or {@link Model#silhouetteSize} is greater than 0.0.
@@ -34948,6 +35066,12 @@ export class Model {
34948
35066
  silhouetteSize?: number;
34949
35067
  clippingPlanes?: ClippingPlaneCollection;
34950
35068
  dequantizeInShader?: boolean;
35069
+ lightColor?: Cartesian3;
35070
+ imageBasedLighting?: ImageBasedLighting;
35071
+ imageBasedLightingFactor?: Cartesian2;
35072
+ luminanceAtZenith?: number;
35073
+ sphericalHarmonicCoefficients?: Cartesian3[];
35074
+ specularEnvironmentMaps?: string;
34951
35075
  credit?: Credit | string;
34952
35076
  showCreditsOnScreen?: boolean;
34953
35077
  backFaceCulling?: boolean;
@@ -35480,6 +35604,9 @@ the Model from your source data type.
35480
35604
  * @param options - Object with the following properties:
35481
35605
  * @param options.resource - The Resource to the 3D model.
35482
35606
  * @param [options.modelMatrix = Matrix4.IDENTITY] - The 4x4 transformation matrix that transforms the model from model to world coordinates.
35607
+ * @param [options.scale = 1.0] - A uniform scale applied to this model.
35608
+ * @param [options.minimumPixelSize = 0.0] - The approximate minimum pixel size of the model regardless of zoom.
35609
+ * @param [options.maximumScale] - The maximum scale size of a model. An upper limit for minimumPixelSize.
35483
35610
  * @param [options.debugShowBoundingVolume = false] - For debugging only. Draws the bounding sphere for each draw command in the model.
35484
35611
  * @param [options.cull = true] - Whether or not to cull the model using frustum/horizon culling. If the model is part of a 3D Tiles tileset, this property will always be false, since the 3D Tiles culling system is used.
35485
35612
  * @param [options.opaquePass = Pass.OPAQUE] - The pass to use in the {@link DrawCommand} for the opaque portions of the model.
@@ -35490,17 +35617,24 @@ the Model from your source data type.
35490
35617
  * @param [options.color] - A color that blends with the model's rendered color.
35491
35618
  * @param [options.colorBlendMode = ColorBlendMode.HIGHLIGHT] - Defines how the color blends with the model.
35492
35619
  * @param [options.colorBlendAmount = 0.5] - Value used to determine the color strength when the <code>colorBlendMode</code> is <code>MIX</code>. A value of 0.0 results in the model's rendered color while a value of 1.0 results in a solid color, with any value in-between resulting in a mix of the two.
35493
- * @param [options.featureIdIndex = 0] - The index into the list of primitive feature IDs used for picking and styling. For EXT_feature_metadata, feature ID attributes are listed before feature ID textures. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
35494
- * @param [options.instanceFeatureIdIndex = 0] - The index into the list of instance feature IDs used for picking and styling. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
35620
+ * @param [options.featureIdLabel = "featureId_0"] - Label of the feature ID set to use for picking and styling. For EXT_mesh_features, this is the feature ID's label property, or "featureId_N" (where N is the index in the featureIds array) when not specified. EXT_feature_metadata did not have a label field, so such feature ID sets are always labeled "featureId_N" where N is the index in the list of all feature Ids, where feature ID attributes are listed before feature ID textures. If featureIdLabel is an integer N, it is converted to the string "featureId_N" automatically. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
35621
+ * @param [options.instanceFeatureIdLabel = "instanceFeatureId_0"] - Label of the instance feature ID set used for picking and styling. If instanceFeatureIdLabel is set to an integer N, it is converted to the string "instanceFeatureId_N" automatically. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
35495
35622
  * @param [options.pointCloudShading] - Options for constructing a {@link PointCloudShading} object to control point attenuation based on geometric error and lighting.
35623
+ * @param [options.clippingPlanes] - The {@link ClippingPlaneCollection} used to selectively disable rendering the model.
35624
+ * @param [options.lightColor] - The light color when shading the model. When <code>undefined</code> the scene's light color is used instead.
35625
+ * @param [options.imageBasedLighting] - The properties for managing image-based lighting on this model.
35496
35626
  * @param [options.backFaceCulling = true] - Whether to cull back-facing geometry. When true, back face culling is determined by the material's doubleSided property; when false, back face culling is disabled. Back faces are not culled if the model's color is translucent.
35497
35627
  * @param [options.shadows = ShadowMode.ENABLED] - Determines whether the model casts or receives shadows from light sources.
35498
35628
  * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this model on screen.
35629
+ * @param [options.splitDirection = SplitDirection.NONE] - The {@link SplitDirection} split to apply to this model.
35499
35630
  */
35500
35631
  export class ModelExperimental {
35501
35632
  constructor(options: {
35502
35633
  resource: Resource;
35503
35634
  modelMatrix?: Matrix4;
35635
+ scale?: number;
35636
+ minimumPixelSize?: number;
35637
+ maximumScale?: number;
35504
35638
  debugShowBoundingVolume?: boolean;
35505
35639
  cull?: boolean;
35506
35640
  opaquePass?: boolean;
@@ -35511,12 +35645,16 @@ export class ModelExperimental {
35511
35645
  color?: Color;
35512
35646
  colorBlendMode?: ColorBlendMode;
35513
35647
  colorBlendAmount?: number;
35514
- featureIdIndex?: number;
35515
- instanceFeatureIdIndex?: number;
35648
+ featureIdLabel?: string | number;
35649
+ instanceFeatureIdLabel?: string | number;
35516
35650
  pointCloudShading?: any;
35651
+ clippingPlanes?: ClippingPlaneCollection;
35652
+ lightColor?: Cartesian3;
35653
+ imageBasedLighting?: ImageBasedLighting;
35517
35654
  backFaceCulling?: boolean;
35518
35655
  shadows?: ShadowMode;
35519
35656
  showCreditsOnScreen?: boolean;
35657
+ splitDirection?: SplitDirection;
35520
35658
  });
35521
35659
  /**
35522
35660
  * When <code>true</code>, this model is ready to render, i.e., the external binary, image,
@@ -35571,22 +35709,86 @@ export class ModelExperimental {
35571
35709
  */
35572
35710
  show: boolean;
35573
35711
  /**
35574
- * The index into the list of primitive feature IDs used for picking and
35575
- styling. For EXT_feature_metadata, feature ID attributes are listed before
35576
- feature ID textures. If both per-primitive and per-instance feature IDs are
35577
- present, the instance feature IDs take priority.
35712
+ * Label of the feature ID set to use for picking and styling.
35713
+ <p>
35714
+ For EXT_mesh_features, this is the feature ID's label property, or
35715
+ "featureId_N" (where N is the index in the featureIds array) when not
35716
+ specified. EXT_feature_metadata did not have a label field, so such
35717
+ feature ID sets are always labeled "featureId_N" where N is the index in
35718
+ the list of all feature Ids, where feature ID attributes are listed before
35719
+ feature ID textures.
35720
+ </p>
35721
+ <p>
35722
+ If featureIdLabel is set to an integer N, it is converted to
35723
+ the string "featureId_N" automatically. If both per-primitive and
35724
+ per-instance feature IDs are present, the instance feature IDs take
35725
+ priority.
35726
+ </p>
35578
35727
  */
35579
- readonly featureIdIndex: number;
35728
+ featureIdLabel: string;
35580
35729
  /**
35581
- * The index into the list of instance feature IDs used for picking and
35582
- styling. If both per-primitive and per-instance feature IDs are present,
35583
- the instance feature IDs take priority.
35730
+ * Label of the instance feature ID set used for picking and styling.
35731
+ <p>
35732
+ If instanceFeatureIdLabel is set to an integer N, it is converted to
35733
+ the string "instanceFeatureId_N" automatically.
35734
+ If both per-primitive and per-instance feature IDs are present, the
35735
+ instance feature IDs take priority.
35736
+ </p>
35737
+ */
35738
+ instanceFeatureIdLabel: string;
35739
+ /**
35740
+ * The {@link ClippingPlaneCollection} used to selectively disable rendering the model.
35741
+ */
35742
+ clippingPlanes: ClippingPlaneCollection;
35743
+ /**
35744
+ * The light color when shading the model. When <code>undefined</code> the scene's light color is used instead.
35745
+ <p>
35746
+ Disabling additional light sources by setting <code>model.imageBasedLightingFactor = new Cartesian2(0.0, 0.0)</code> will make the
35747
+ model much darker. Here, increasing the intensity of the light source will make the model brighter.
35748
+ </p>
35749
+ */
35750
+ lightColor: Cartesian3;
35751
+ /**
35752
+ * The properties for managing image-based lighting on this model.
35753
+ */
35754
+ imageBasedLighting: ImageBasedLighting;
35755
+ /**
35756
+ * Whether to cull back-facing geometry. When true, back face culling is
35757
+ determined by the material's doubleSided property; when false, back face
35758
+ culling is disabled. Back faces are not culled if the model's color is
35759
+ translucent.
35760
+ */
35761
+ backFaceCulling: boolean;
35762
+ /**
35763
+ * A uniform scale applied to this model before the {@link Model#modelMatrix}.
35764
+ Values greater than <code>1.0</code> increase the size of the model; values
35765
+ less than <code>1.0</code> decrease.
35766
+ */
35767
+ scale: number;
35768
+ /**
35769
+ * The approximate minimum pixel size of the model regardless of zoom.
35770
+ This can be used to ensure that a model is visible even when the viewer
35771
+ zooms out. When <code>0.0</code>, no minimum size is enforced.
35584
35772
  */
35585
- instanceFeatureIdIndex: number;
35773
+ minimumPixelSize: number;
35774
+ /**
35775
+ * The maximum scale size for a model. This can be used to give
35776
+ an upper limit to the {@link Model#minimumPixelSize}, ensuring that the model
35777
+ is never an unreasonable scale.
35778
+ */
35779
+ maximumScale: number;
35780
+ /**
35781
+ * Determines whether the model casts or receives shadows from light sources.
35782
+ */
35783
+ shadows: ShadowMode;
35586
35784
  /**
35587
35785
  * Gets or sets whether the credits of the model will be displayed on the screen
35588
35786
  */
35589
35787
  showCreditsOnScreen: boolean;
35788
+ /**
35789
+ * The {@link SplitDirection} to apply to this model.
35790
+ */
35791
+ splitDirection: SplitDirection;
35590
35792
  /**
35591
35793
  * Called when {@link Viewer} or {@link CesiumWidget} render the scene to
35592
35794
  get the draw commands needed to render this primitive.
@@ -35626,6 +35828,9 @@ export class ModelExperimental {
35626
35828
  * @param options.gltf - A Resource/URL to a glTF/glb file, a binary glTF buffer, or a JSON object containing the glTF contents
35627
35829
  * @param [options.basePath = ''] - The base path that paths in the glTF JSON are relative to.
35628
35830
  * @param [options.modelMatrix = Matrix4.IDENTITY] - The 4x4 transformation matrix that transforms the model from model to world coordinates.
35831
+ * @param [options.scale = 1.0] - A uniform scale applied to this model.
35832
+ * @param [options.minimumPixelSize = 0.0] - The approximate minimum pixel size of the model regardless of zoom.
35833
+ * @param [options.maximumScale] - The maximum scale size of a model. An upper limit for minimumPixelSize.
35629
35834
  * @param [options.incrementallyLoadTextures = true] - Determine if textures may continue to stream in after the model is loaded.
35630
35835
  * @param [options.releaseGltfJson = false] - When true, the glTF JSON is released once the glTF is loaded. This is is especially useful for cases like 3D Tiles, where each .gltf model is unique and caching the glTF JSON is not effective.
35631
35836
  * @param [options.debugShowBoundingVolume = false] - For debugging only. Draws the bounding sphere for each draw command in the model.
@@ -35640,18 +35845,25 @@ export class ModelExperimental {
35640
35845
  * @param [options.color] - A color that blends with the model's rendered color.
35641
35846
  * @param [options.colorBlendMode = ColorBlendMode.HIGHLIGHT] - Defines how the color blends with the model.
35642
35847
  * @param [options.colorBlendAmount = 0.5] - Value used to determine the color strength when the <code>colorBlendMode</code> is <code>MIX</code>. A value of 0.0 results in the model's rendered color while a value of 1.0 results in a solid color, with any value in-between resulting in a mix of the two.
35643
- * @param [options.featureIdIndex = 0] - The index into the list of primitive feature IDs used for picking and styling. For EXT_feature_metadata, feature ID attributes are listed before feature ID textures. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
35644
- * @param [options.instanceFeatureIdIndex = 0] - The index into the list of instance feature IDs used for picking and styling. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
35848
+ * @param [options.featureIdLabel = "featureId_0"] - Label of the feature ID set to use for picking and styling. For EXT_mesh_features, this is the feature ID's label property, or "featureId_N" (where N is the index in the featureIds array) when not specified. EXT_feature_metadata did not have a label field, so such feature ID sets are always labeled "featureId_N" where N is the index in the list of all feature Ids, where feature ID attributes are listed before feature ID textures. If featureIdLabel is an integer N, it is converted to the string "featureId_N" automatically. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
35849
+ * @param [options.instanceFeatureIdLabel = "instanceFeatureId_0"] - Label of the instance feature ID set used for picking and styling. If instanceFeatureIdLabel is set to an integer N, it is converted to the string "instanceFeatureId_N" automatically. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
35645
35850
  * @param [options.pointCloudShading] - Options for constructing a {@link PointCloudShading} object to control point attenuation and lighting.
35851
+ * @param [options.clippingPlanes] - The {@link ClippingPlaneCollection} used to selectively disable rendering the model.
35852
+ * @param [options.lightColor] - The light color when shading the model. When <code>undefined</code> the scene's light color is used instead.
35853
+ * @param [options.imageBasedLighting] - The properties for managing image-based lighting on this model.
35646
35854
  * @param [options.backFaceCulling = true] - Whether to cull back-facing geometry. When true, back face culling is determined by the material's doubleSided property; when false, back face culling is disabled. Back faces are not culled if the model's color is translucent.
35647
35855
  * @param [options.shadows = ShadowMode.ENABLED] - Determines whether the model casts or receives shadows from light sources.
35648
35856
  * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this model on screen.
35857
+ * @param [options.splitDirection = SplitDirection.NONE] - The {@link SplitDirection} split to apply to this model.
35649
35858
  * @returns The newly created model.
35650
35859
  */
35651
35860
  static fromGltf(options: {
35652
35861
  gltf: string | Resource | Uint8Array | any;
35653
35862
  basePath?: string | Resource;
35654
35863
  modelMatrix?: Matrix4;
35864
+ scale?: number;
35865
+ minimumPixelSize?: number;
35866
+ maximumScale?: number;
35655
35867
  incrementallyLoadTextures?: boolean;
35656
35868
  releaseGltfJson?: boolean;
35657
35869
  debugShowBoundingVolume?: boolean;
@@ -35666,12 +35878,16 @@ export class ModelExperimental {
35666
35878
  color?: Color;
35667
35879
  colorBlendMode?: ColorBlendMode;
35668
35880
  colorBlendAmount?: number;
35669
- featureIdIndex?: number;
35670
- instanceFeatureIdIndex?: number;
35881
+ featureIdLabel?: string | number;
35882
+ instanceFeatureIdLabel?: string | number;
35671
35883
  pointCloudShading?: any;
35884
+ clippingPlanes?: ClippingPlaneCollection;
35885
+ lightColor?: Cartesian3;
35886
+ imageBasedLighting?: ImageBasedLighting;
35672
35887
  backFaceCulling?: boolean;
35673
35888
  shadows?: ShadowMode;
35674
35889
  showCreditsOnScreen?: boolean;
35890
+ splitDirection?: SplitDirection;
35675
35891
  }): ModelExperimental;
35676
35892
  }
35677
35893
 
@@ -35691,19 +35907,6 @@ export var modelMatrix: Matrix4;
35691
35907
  */
35692
35908
  export var style: Cesium3DTileStyle;
35693
35909
 
35694
- /**
35695
- * Whether to cull back-facing geometry. When true, back face culling is
35696
- determined by the material's doubleSided property; when false, back face
35697
- culling is disabled. Back faces are not culled if the model's color is
35698
- translucent.
35699
- */
35700
- export var backFaceCulling: boolean;
35701
-
35702
- /**
35703
- * Determines whether the model casts or receives shadows from light sources.
35704
- */
35705
- export var shadows: ShadowMode;
35706
-
35707
35910
  /**
35708
35911
  * The indices of the children of this node in the scene graph.
35709
35912
  */
@@ -35781,15 +35984,15 @@ export class ModelFeature {
35781
35984
  getProperty(name: string): any;
35782
35985
  /**
35783
35986
  * Returns a copy of the feature's property with the given name, examining all
35784
- the metadata from the EXT_mesh_features and legacy EXT_feature_metadata glTF
35987
+ the metadata from the EXT_structural_metadata and legacy EXT_feature_metadata glTF
35785
35988
  extensions. Metadata is checked against name from most specific to most
35786
35989
  general and the first match is returned. Metadata is checked in this order:
35787
35990
  <ol>
35788
- <li>Feature metadata property by semantic</li>
35789
- <li>Feature metadata property by property ID</li>
35991
+ <li>structural metadata property by semantic</li>
35992
+ <li>structural metadata property by property ID</li>
35790
35993
  </ol>
35791
35994
  <p>
35792
- See the {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_mesh_features|EXT_mesh_features Extension} as well as the
35995
+ See the {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_structural_metadata|EXT_structural_metadata Extension} as well as the
35793
35996
  previous {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_feature_metadata|EXT_feature_metadata Extension} for glTF.
35794
35997
  </p>
35795
35998
  * @param name - The semantic or property ID of the feature. Semantics are checked before property IDs in each granularity of metadata.
@@ -38027,88 +38230,88 @@ export enum PostProcessStageSampleMode {
38027
38230
 
38028
38231
  /**
38029
38232
  * A primitive represents geometry in the {@link Scene}. The geometry can be from a single {@link GeometryInstance}
38030
- as shown in example 1 below, or from an array of instances, even if the geometry is from different
38031
- geometry types, e.g., an {@link RectangleGeometry} and an {@link EllipsoidGeometry} as shown in Code Example 2.
38032
- <p>
38033
- A primitive combines geometry instances with an {@link Appearance} that describes the full shading, including
38034
- {@link Material} and {@link RenderState}. Roughly, the geometry instance defines the structure and placement,
38035
- and the appearance defines the visual characteristics. Decoupling geometry and appearance allows us to mix
38036
- and match most of them and add a new geometry or appearance independently of each other.
38037
- </p>
38038
- <p>
38039
- Combining multiple instances into one primitive is called batching, and significantly improves performance for static data.
38040
- Instances can be individually picked; {@link Scene#pick} returns their {@link GeometryInstance#id}. Using
38041
- per-instance appearances like {@link PerInstanceColorAppearance}, each instance can also have a unique color.
38042
- </p>
38043
- <p>
38044
- {@link Geometry} can either be created and batched on a web worker or the main thread. The first two examples
38045
- show geometry that will be created on a web worker by using the descriptions of the geometry. The third example
38046
- shows how to create the geometry on the main thread by explicitly calling the <code>createGeometry</code> method.
38047
- </p>
38233
+ * as shown in example 1 below, or from an array of instances, even if the geometry is from different
38234
+ * geometry types, e.g., an {@link RectangleGeometry} and an {@link EllipsoidGeometry} as shown in Code Example 2.
38235
+ * <p>
38236
+ * A primitive combines geometry instances with an {@link Appearance} that describes the full shading, including
38237
+ * {@link Material} and {@link RenderState}. Roughly, the geometry instance defines the structure and placement,
38238
+ * and the appearance defines the visual characteristics. Decoupling geometry and appearance allows us to mix
38239
+ * and match most of them and add a new geometry or appearance independently of each other.
38240
+ * </p>
38241
+ * <p>
38242
+ * Combining multiple instances into one primitive is called batching, and significantly improves performance for static data.
38243
+ * Instances can be individually picked; {@link Scene#pick} returns their {@link GeometryInstance#id}. Using
38244
+ * per-instance appearances like {@link PerInstanceColorAppearance}, each instance can also have a unique color.
38245
+ * </p>
38246
+ * <p>
38247
+ * {@link Geometry} can either be created and batched on a web worker or the main thread. The first two examples
38248
+ * show geometry that will be created on a web worker by using the descriptions of the geometry. The third example
38249
+ * shows how to create the geometry on the main thread by explicitly calling the <code>createGeometry</code> method.
38250
+ * </p>
38048
38251
  * @example
38049
38252
  * // 1. Draw a translucent ellipse on the surface with a checkerboard pattern
38050
- const instance = new Cesium.GeometryInstance({
38051
- geometry : new Cesium.EllipseGeometry({
38052
- center : Cesium.Cartesian3.fromDegrees(-100.0, 20.0),
38053
- semiMinorAxis : 500000.0,
38054
- semiMajorAxis : 1000000.0,
38055
- rotation : Cesium.Math.PI_OVER_FOUR,
38056
- vertexFormat : Cesium.VertexFormat.POSITION_AND_ST
38057
- }),
38058
- id : 'object returned when this instance is picked and to get/set per-instance attributes'
38059
- });
38060
- scene.primitives.add(new Cesium.Primitive({
38061
- geometryInstances : instance,
38062
- appearance : new Cesium.EllipsoidSurfaceAppearance({
38063
- material : Cesium.Material.fromType('Checkerboard')
38064
- })
38065
- }));
38253
+ * const instance = new Cesium.GeometryInstance({
38254
+ * geometry : new Cesium.EllipseGeometry({
38255
+ * center : Cesium.Cartesian3.fromDegrees(-100.0, 20.0),
38256
+ * semiMinorAxis : 500000.0,
38257
+ * semiMajorAxis : 1000000.0,
38258
+ * rotation : Cesium.Math.PI_OVER_FOUR,
38259
+ * vertexFormat : Cesium.VertexFormat.POSITION_AND_ST
38260
+ * }),
38261
+ * id : 'object returned when this instance is picked and to get/set per-instance attributes'
38262
+ * });
38263
+ * scene.primitives.add(new Cesium.Primitive({
38264
+ * geometryInstances : instance,
38265
+ * appearance : new Cesium.EllipsoidSurfaceAppearance({
38266
+ * material : Cesium.Material.fromType('Checkerboard')
38267
+ * })
38268
+ * }));
38066
38269
  * @example
38067
38270
  * // 2. Draw different instances each with a unique color
38068
- const rectangleInstance = new Cesium.GeometryInstance({
38069
- geometry : new Cesium.RectangleGeometry({
38070
- rectangle : Cesium.Rectangle.fromDegrees(-140.0, 30.0, -100.0, 40.0),
38071
- vertexFormat : Cesium.PerInstanceColorAppearance.VERTEX_FORMAT
38072
- }),
38073
- id : 'rectangle',
38074
- attributes : {
38075
- color : new Cesium.ColorGeometryInstanceAttribute(0.0, 1.0, 1.0, 0.5)
38076
- }
38077
- });
38078
- const ellipsoidInstance = new Cesium.GeometryInstance({
38079
- geometry : new Cesium.EllipsoidGeometry({
38080
- radii : new Cesium.Cartesian3(500000.0, 500000.0, 1000000.0),
38081
- vertexFormat : Cesium.VertexFormat.POSITION_AND_NORMAL
38082
- }),
38083
- modelMatrix : Cesium.Matrix4.multiplyByTranslation(Cesium.Transforms.eastNorthUpToFixedFrame(
38084
- Cesium.Cartesian3.fromDegrees(-95.59777, 40.03883)), new Cesium.Cartesian3(0.0, 0.0, 500000.0), new Cesium.Matrix4()),
38085
- id : 'ellipsoid',
38086
- attributes : {
38087
- color : Cesium.ColorGeometryInstanceAttribute.fromColor(Cesium.Color.AQUA)
38088
- }
38089
- });
38090
- scene.primitives.add(new Cesium.Primitive({
38091
- geometryInstances : [rectangleInstance, ellipsoidInstance],
38092
- appearance : new Cesium.PerInstanceColorAppearance()
38093
- }));
38271
+ * const rectangleInstance = new Cesium.GeometryInstance({
38272
+ * geometry : new Cesium.RectangleGeometry({
38273
+ * rectangle : Cesium.Rectangle.fromDegrees(-140.0, 30.0, -100.0, 40.0),
38274
+ * vertexFormat : Cesium.PerInstanceColorAppearance.VERTEX_FORMAT
38275
+ * }),
38276
+ * id : 'rectangle',
38277
+ * attributes : {
38278
+ * color : new Cesium.ColorGeometryInstanceAttribute(0.0, 1.0, 1.0, 0.5)
38279
+ * }
38280
+ * });
38281
+ * const ellipsoidInstance = new Cesium.GeometryInstance({
38282
+ * geometry : new Cesium.EllipsoidGeometry({
38283
+ * radii : new Cesium.Cartesian3(500000.0, 500000.0, 1000000.0),
38284
+ * vertexFormat : Cesium.VertexFormat.POSITION_AND_NORMAL
38285
+ * }),
38286
+ * modelMatrix : Cesium.Matrix4.multiplyByTranslation(Cesium.Transforms.eastNorthUpToFixedFrame(
38287
+ * Cesium.Cartesian3.fromDegrees(-95.59777, 40.03883)), new Cesium.Cartesian3(0.0, 0.0, 500000.0), new Cesium.Matrix4()),
38288
+ * id : 'ellipsoid',
38289
+ * attributes : {
38290
+ * color : Cesium.ColorGeometryInstanceAttribute.fromColor(Cesium.Color.AQUA)
38291
+ * }
38292
+ * });
38293
+ * scene.primitives.add(new Cesium.Primitive({
38294
+ * geometryInstances : [rectangleInstance, ellipsoidInstance],
38295
+ * appearance : new Cesium.PerInstanceColorAppearance()
38296
+ * }));
38094
38297
  * @example
38095
38298
  * // 3. Create the geometry on the main thread.
38096
- scene.primitives.add(new Cesium.Primitive({
38097
- geometryInstances : new Cesium.GeometryInstance({
38098
- geometry : Cesium.EllipsoidGeometry.createGeometry(new Cesium.EllipsoidGeometry({
38099
- radii : new Cesium.Cartesian3(500000.0, 500000.0, 1000000.0),
38100
- vertexFormat : Cesium.VertexFormat.POSITION_AND_NORMAL
38101
- })),
38102
- modelMatrix : Cesium.Matrix4.multiplyByTranslation(Cesium.Transforms.eastNorthUpToFixedFrame(
38103
- Cesium.Cartesian3.fromDegrees(-95.59777, 40.03883)), new Cesium.Cartesian3(0.0, 0.0, 500000.0), new Cesium.Matrix4()),
38104
- id : 'ellipsoid',
38105
- attributes : {
38106
- color : Cesium.ColorGeometryInstanceAttribute.fromColor(Cesium.Color.AQUA)
38107
- }
38108
- }),
38109
- appearance : new Cesium.PerInstanceColorAppearance(),
38110
- asynchronous : false
38111
- }));
38299
+ * scene.primitives.add(new Cesium.Primitive({
38300
+ * geometryInstances : new Cesium.GeometryInstance({
38301
+ * geometry : Cesium.EllipsoidGeometry.createGeometry(new Cesium.EllipsoidGeometry({
38302
+ * radii : new Cesium.Cartesian3(500000.0, 500000.0, 1000000.0),
38303
+ * vertexFormat : Cesium.VertexFormat.POSITION_AND_NORMAL
38304
+ * })),
38305
+ * modelMatrix : Cesium.Matrix4.multiplyByTranslation(Cesium.Transforms.eastNorthUpToFixedFrame(
38306
+ * Cesium.Cartesian3.fromDegrees(-95.59777, 40.03883)), new Cesium.Cartesian3(0.0, 0.0, 500000.0), new Cesium.Matrix4()),
38307
+ * id : 'ellipsoid',
38308
+ * attributes : {
38309
+ * color : Cesium.ColorGeometryInstanceAttribute.fromColor(Cesium.Color.AQUA)
38310
+ * }
38311
+ * }),
38312
+ * appearance : new Cesium.PerInstanceColorAppearance(),
38313
+ * asynchronous : false
38314
+ * }));
38112
38315
  * @param [options] - Object with the following properties:
38113
38316
  * @param [options.geometryInstances] - The geometry instances - or a single geometry instance - to render.
38114
38317
  * @param [options.appearance] - The appearance used to render the primitive.
@@ -38144,67 +38347,67 @@ export class Primitive {
38144
38347
  });
38145
38348
  /**
38146
38349
  * The geometry instances rendered with this primitive. This may
38147
- be <code>undefined</code> if <code>options.releaseGeometryInstances</code>
38148
- is <code>true</code> when the primitive is constructed.
38149
- <p>
38150
- Changing this property after the primitive is rendered has no effect.
38151
- </p>
38350
+ * be <code>undefined</code> if <code>options.releaseGeometryInstances</code>
38351
+ * is <code>true</code> when the primitive is constructed.
38352
+ * <p>
38353
+ * Changing this property after the primitive is rendered has no effect.
38354
+ * </p>
38152
38355
  */
38153
38356
  readonly geometryInstances: GeometryInstance[] | GeometryInstance;
38154
38357
  /**
38155
38358
  * The {@link Appearance} used to shade this primitive. Each geometry
38156
- instance is shaded with the same appearance. Some appearances, like
38157
- {@link PerInstanceColorAppearance} allow giving each instance unique
38158
- properties.
38359
+ * instance is shaded with the same appearance. Some appearances, like
38360
+ * {@link PerInstanceColorAppearance} allow giving each instance unique
38361
+ * properties.
38159
38362
  */
38160
38363
  appearance: Appearance;
38161
38364
  /**
38162
38365
  * The {@link Appearance} used to shade this primitive when it fails the depth test. Each geometry
38163
- instance is shaded with the same appearance. Some appearances, like
38164
- {@link PerInstanceColorAppearance} allow giving each instance unique
38165
- properties.
38166
-
38167
- <p>
38168
- When using an appearance that requires a color attribute, like PerInstanceColorAppearance,
38169
- add a depthFailColor per-instance attribute instead.
38170
- </p>
38171
-
38172
- <p>
38173
- Requires the EXT_frag_depth WebGL extension to render properly. If the extension is not supported,
38174
- there may be artifacts.
38175
- </p>
38366
+ * instance is shaded with the same appearance. Some appearances, like
38367
+ * {@link PerInstanceColorAppearance} allow giving each instance unique
38368
+ * properties.
38369
+ *
38370
+ * <p>
38371
+ * When using an appearance that requires a color attribute, like PerInstanceColorAppearance,
38372
+ * add a depthFailColor per-instance attribute instead.
38373
+ * </p>
38374
+ *
38375
+ * <p>
38376
+ * Requires the EXT_frag_depth WebGL extension to render properly. If the extension is not supported,
38377
+ * there may be artifacts.
38378
+ * </p>
38176
38379
  */
38177
38380
  depthFailAppearance: Appearance;
38178
38381
  /**
38179
38382
  * The 4x4 transformation matrix that transforms the primitive (all geometry instances) from model to world coordinates.
38180
- When this is the identity matrix, the primitive is drawn in world coordinates, i.e., Earth's WGS84 coordinates.
38181
- Local reference frames can be used by providing a different transformation matrix, like that returned
38182
- by {@link Transforms.eastNorthUpToFixedFrame}.
38183
-
38184
- <p>
38185
- This property is only supported in 3D mode.
38186
- </p>
38383
+ * When this is the identity matrix, the primitive is drawn in world coordinates, i.e., Earth's WGS84 coordinates.
38384
+ * Local reference frames can be used by providing a different transformation matrix, like that returned
38385
+ * by {@link Transforms.eastNorthUpToFixedFrame}.
38386
+ *
38387
+ * <p>
38388
+ * This property is only supported in 3D mode.
38389
+ * </p>
38187
38390
  * @example
38188
38391
  * const origin = Cesium.Cartesian3.fromDegrees(-95.0, 40.0, 200000.0);
38189
- p.modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(origin);
38392
+ * p.modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(origin);
38190
38393
  */
38191
38394
  modelMatrix: Matrix4;
38192
38395
  /**
38193
38396
  * Determines if the primitive will be shown. This affects all geometry
38194
- instances in the primitive.
38397
+ * instances in the primitive.
38195
38398
  */
38196
38399
  show: boolean;
38197
38400
  /**
38198
38401
  * When <code>true</code>, the renderer frustum culls and horizon culls the primitive's commands
38199
- based on their bounding volume. Set this to <code>false</code> for a small performance gain
38200
- if you are manually culling the primitive.
38402
+ * based on their bounding volume. Set this to <code>false</code> for a small performance gain
38403
+ * if you are manually culling the primitive.
38201
38404
  */
38202
38405
  cull: boolean;
38203
38406
  /**
38204
38407
  * This property is for debugging only; it is not for production use nor is it optimized.
38205
- <p>
38206
- Draws the bounding sphere for each draw command in the primitive.
38207
- </p>
38408
+ * <p>
38409
+ * Draws the bounding sphere for each draw command in the primitive.
38410
+ * </p>
38208
38411
  */
38209
38412
  debugShowBoundingVolume: boolean;
38210
38413
  /**
@@ -38237,8 +38440,8 @@ export class Primitive {
38237
38440
  readonly compressVertices: boolean;
38238
38441
  /**
38239
38442
  * Determines if the primitive is complete and ready to render. If this property is
38240
- true, the primitive will be rendered the next time that {@link Primitive#update}
38241
- is called.
38443
+ * true, the primitive will be rendered the next time that {@link Primitive#update}
38444
+ * is called.
38242
38445
  */
38243
38446
  readonly ready: boolean;
38244
38447
  /**
@@ -38247,42 +38450,42 @@ export class Primitive {
38247
38450
  readonly readyPromise: Promise<Primitive>;
38248
38451
  /**
38249
38452
  * Called when {@link Viewer} or {@link CesiumWidget} render the scene to
38250
- get the draw commands needed to render this primitive.
38251
- <p>
38252
- Do not call this function directly. This is documented just to
38253
- list the exceptions that may be propagated when the scene is rendered:
38254
- </p>
38453
+ * get the draw commands needed to render this primitive.
38454
+ * <p>
38455
+ * Do not call this function directly. This is documented just to
38456
+ * list the exceptions that may be propagated when the scene is rendered:
38457
+ * </p>
38255
38458
  */
38256
38459
  update(): void;
38257
38460
  /**
38258
38461
  * Returns the modifiable per-instance attributes for a {@link GeometryInstance}.
38259
38462
  * @example
38260
38463
  * const attributes = primitive.getGeometryInstanceAttributes('an id');
38261
- attributes.color = Cesium.ColorGeometryInstanceAttribute.toValue(Cesium.Color.AQUA);
38262
- attributes.show = Cesium.ShowGeometryInstanceAttribute.toValue(true);
38263
- attributes.distanceDisplayCondition = Cesium.DistanceDisplayConditionGeometryInstanceAttribute.toValue(100.0, 10000.0);
38264
- attributes.offset = Cesium.OffsetGeometryInstanceAttribute.toValue(Cartesian3.IDENTITY);
38464
+ * attributes.color = Cesium.ColorGeometryInstanceAttribute.toValue(Cesium.Color.AQUA);
38465
+ * attributes.show = Cesium.ShowGeometryInstanceAttribute.toValue(true);
38466
+ * attributes.distanceDisplayCondition = Cesium.DistanceDisplayConditionGeometryInstanceAttribute.toValue(100.0, 10000.0);
38467
+ * attributes.offset = Cesium.OffsetGeometryInstanceAttribute.toValue(Cartesian3.IDENTITY);
38265
38468
  * @param id - The id of the {@link GeometryInstance}.
38266
38469
  * @returns The typed array in the attribute's format or undefined if the is no instance with id.
38267
38470
  */
38268
38471
  getGeometryInstanceAttributes(id: any): any;
38269
38472
  /**
38270
38473
  * Returns true if this object was destroyed; otherwise, false.
38271
- <p>
38272
- If this object was destroyed, it should not be used; calling any function other than
38273
- <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
38274
- </p>
38474
+ * <p>
38475
+ * If this object was destroyed, it should not be used; calling any function other than
38476
+ * <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
38477
+ * </p>
38275
38478
  * @returns <code>true</code> if this object was destroyed; otherwise, <code>false</code>.
38276
38479
  */
38277
38480
  isDestroyed(): boolean;
38278
38481
  /**
38279
38482
  * Destroys the WebGL resources held by this object. Destroying an object allows for deterministic
38280
- release of WebGL resources, instead of relying on the garbage collector to destroy this object.
38281
- <p>
38282
- Once an object is destroyed, it should not be used; calling any function other than
38283
- <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
38284
- assign the return value (<code>undefined</code>) to the object as done in the example.
38285
- </p>
38483
+ * release of WebGL resources, instead of relying on the garbage collector to destroy this object.
38484
+ * <p>
38485
+ * Once an object is destroyed, it should not be used; calling any function other than
38486
+ * <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
38487
+ * assign the return value (<code>undefined</code>) to the object as done in the example.
38488
+ * </p>
38286
38489
  * @example
38287
38490
  * e = e && e.destroy();
38288
38491
  */
@@ -38878,6 +39081,10 @@ export class Scene {
38878
39081
  * Determines if the 2D map is rotatable or can be scrolled infinitely in the horizontal direction.
38879
39082
  */
38880
39083
  readonly mapMode2D: MapMode2D;
39084
+ /**
39085
+ * Gets or sets the position of the splitter within the viewport. Valid values are between 0.0 and 1.0.
39086
+ */
39087
+ splitPosition: number;
38881
39088
  /**
38882
39089
  * Gets or sets the position of the Imagery splitter within the viewport. Valid values are between 0.0 and 1.0.
38883
39090
  */
@@ -38913,7 +39120,7 @@ export class Scene {
38913
39120
  /**
38914
39121
  * The sample rate of multisample antialiasing (values greater than 1 enable MSAA).
38915
39122
  */
38916
- readonly msaaSamples: number;
39123
+ msaaSamples: number;
38917
39124
  /**
38918
39125
  * Returns <code>true</code> if the Scene's context supports MSAA.
38919
39126
  */
@@ -39373,7 +39580,7 @@ export class ShadowMap {
39373
39580
  lightCamera: Camera;
39374
39581
  enabled?: boolean;
39375
39582
  isPointLight?: boolean;
39376
- pointLightRadius?: boolean;
39583
+ pointLightRadius?: number;
39377
39584
  cascadesEnabled?: boolean;
39378
39585
  numberOfCascades?: number;
39379
39586
  maximumDistance?: number;
@@ -39756,6 +39963,24 @@ export class SphereEmitter {
39756
39963
  radius: number;
39757
39964
  }
39758
39965
 
39966
+ /**
39967
+ * The direction to display a primitive or ImageryLayer relative to the {@link Scene#splitPosition}.
39968
+ */
39969
+ export enum SplitDirection {
39970
+ /**
39971
+ * Display the primitive or ImageryLayer to the left of the {@link Scene#splitPosition}.
39972
+ */
39973
+ LEFT = -1,
39974
+ /**
39975
+ * Always display the primitive or ImageryLayer.
39976
+ */
39977
+ NONE = 0,
39978
+ /**
39979
+ * Display the primitive or ImageryLayer to the right of the {@link Scene#splitPosition}.
39980
+ */
39981
+ RIGHT = 1
39982
+ }
39983
+
39759
39984
  /**
39760
39985
  * Determines the function used to compare stencil values for the stencil test.
39761
39986
  */
@@ -39937,8 +40162,8 @@ export namespace TileCoordinatesImageryProvider {
39937
40162
  * Initialization options for the TileCoordinatesImageryProvider constructor
39938
40163
  * @property [tilingScheme = new GeographicTilingScheme()] - The tiling scheme for which to draw tiles.
39939
40164
  * @property [ellipsoid] - The ellipsoid. If the tilingScheme is specified,
39940
- this parameter is ignored and the tiling scheme's ellipsoid is used instead. If neither
39941
- parameter is specified, the WGS84 ellipsoid is used.
40165
+ * this parameter is ignored and the tiling scheme's ellipsoid is used instead. If neither
40166
+ * parameter is specified, the WGS84 ellipsoid is used.
39942
40167
  * @property [color = Color.YELLOW] - The color to draw the tile box and label.
39943
40168
  * @property [tileWidth = 256] - The width of the tile for level-of-detail selection purposes.
39944
40169
  * @property [tileHeight = 256] - The height of the tile for level-of-detail selection purposes.
@@ -39954,35 +40179,35 @@ export namespace TileCoordinatesImageryProvider {
39954
40179
 
39955
40180
  /**
39956
40181
  * An {@link ImageryProvider} that draws a box around every rendered tile in the tiling scheme, and draws
39957
- a label inside it indicating the X, Y, Level coordinates of the tile. This is mostly useful for
39958
- debugging terrain and imagery rendering problems.
40182
+ * a label inside it indicating the X, Y, Level coordinates of the tile. This is mostly useful for
40183
+ * debugging terrain and imagery rendering problems.
39959
40184
  * @param [options] - Object describing initialization options
39960
40185
  */
39961
40186
  export class TileCoordinatesImageryProvider {
39962
40187
  constructor(options?: TileCoordinatesImageryProvider.ConstructorOptions);
39963
40188
  /**
39964
40189
  * The default alpha blending value of this provider, with 0.0 representing fully transparent and
39965
- 1.0 representing fully opaque.
40190
+ * 1.0 representing fully opaque.
39966
40191
  */
39967
40192
  defaultAlpha: number | undefined;
39968
40193
  /**
39969
40194
  * The default alpha blending value on the night side of the globe of this provider, with 0.0 representing fully transparent and
39970
- 1.0 representing fully opaque.
40195
+ * 1.0 representing fully opaque.
39971
40196
  */
39972
40197
  defaultNightAlpha: number | undefined;
39973
40198
  /**
39974
40199
  * The default alpha blending value on the day side of the globe of this provider, with 0.0 representing fully transparent and
39975
- 1.0 representing fully opaque.
40200
+ * 1.0 representing fully opaque.
39976
40201
  */
39977
40202
  defaultDayAlpha: number | undefined;
39978
40203
  /**
39979
40204
  * The default brightness of this provider. 1.0 uses the unmodified imagery color. Less than 1.0
39980
- makes the imagery darker while greater than 1.0 makes it brighter.
40205
+ * makes the imagery darker while greater than 1.0 makes it brighter.
39981
40206
  */
39982
40207
  defaultBrightness: number | undefined;
39983
40208
  /**
39984
40209
  * The default contrast of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
39985
- the contrast while greater than 1.0 increases it.
40210
+ * the contrast while greater than 1.0 increases it.
39986
40211
  */
39987
40212
  defaultContrast: number | undefined;
39988
40213
  /**
@@ -39991,7 +40216,7 @@ export class TileCoordinatesImageryProvider {
39991
40216
  defaultHue: number | undefined;
39992
40217
  /**
39993
40218
  * The default saturation of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
39994
- saturation while greater than 1.0 increases it.
40219
+ * saturation while greater than 1.0 increases it.
39995
40220
  */
39996
40221
  defaultSaturation: number | undefined;
39997
40222
  /**
@@ -40012,45 +40237,45 @@ export class TileCoordinatesImageryProvider {
40012
40237
  readonly proxy: Proxy;
40013
40238
  /**
40014
40239
  * Gets the width of each tile, in pixels. This function should
40015
- not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40240
+ * not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40016
40241
  */
40017
40242
  readonly tileWidth: number;
40018
40243
  /**
40019
40244
  * Gets the height of each tile, in pixels. This function should
40020
- not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40245
+ * not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40021
40246
  */
40022
40247
  readonly tileHeight: number;
40023
40248
  /**
40024
40249
  * Gets the maximum level-of-detail that can be requested. This function should
40025
- not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40250
+ * not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40026
40251
  */
40027
40252
  readonly maximumLevel: number | undefined;
40028
40253
  /**
40029
40254
  * Gets the minimum level-of-detail that can be requested. This function should
40030
- not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40255
+ * not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40031
40256
  */
40032
40257
  readonly minimumLevel: number;
40033
40258
  /**
40034
40259
  * Gets the tiling scheme used by this provider. This function should
40035
- not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40260
+ * not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40036
40261
  */
40037
40262
  readonly tilingScheme: TilingScheme;
40038
40263
  /**
40039
40264
  * Gets the rectangle, in radians, of the imagery provided by this instance. This function should
40040
- not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40265
+ * not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40041
40266
  */
40042
40267
  readonly rectangle: Rectangle;
40043
40268
  /**
40044
40269
  * Gets the tile discard policy. If not undefined, the discard policy is responsible
40045
- for filtering out "missing" tiles via its shouldDiscardImage function. If this function
40046
- returns undefined, no tiles are filtered. This function should
40047
- not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40270
+ * for filtering out "missing" tiles via its shouldDiscardImage function. If this function
40271
+ * returns undefined, no tiles are filtered. This function should
40272
+ * not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40048
40273
  */
40049
40274
  readonly tileDiscardPolicy: TileDiscardPolicy;
40050
40275
  /**
40051
40276
  * Gets an event that is raised when the imagery provider encounters an asynchronous error. By subscribing
40052
- to the event, you will be notified of the error and can potentially recover from it. Event listeners
40053
- are passed an instance of {@link TileProviderError}.
40277
+ * to the event, you will be notified of the error and can potentially recover from it. Event listeners
40278
+ * are passed an instance of {@link TileProviderError}.
40054
40279
  */
40055
40280
  readonly errorEvent: Event;
40056
40281
  /**
@@ -40063,15 +40288,15 @@ export class TileCoordinatesImageryProvider {
40063
40288
  readonly readyPromise: Promise<boolean>;
40064
40289
  /**
40065
40290
  * Gets the credit to display when this imagery provider is active. Typically this is used to credit
40066
- the source of the imagery. This function should not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40291
+ * the source of the imagery. This function should not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40067
40292
  */
40068
40293
  readonly credit: Credit;
40069
40294
  /**
40070
40295
  * Gets a value indicating whether or not the images provided by this imagery provider
40071
- include an alpha channel. If this property is false, an alpha channel, if present, will
40072
- be ignored. If this property is true, any images without an alpha channel will be treated
40073
- as if their alpha is 1.0 everywhere. Setting this property to false reduces memory usage
40074
- and texture upload time.
40296
+ * include an alpha channel. If this property is false, an alpha channel, if present, will
40297
+ * be ignored. If this property is true, any images without an alpha channel will be treated
40298
+ * as if their alpha is 1.0 everywhere. Setting this property to false reduces memory usage
40299
+ * and texture upload time.
40075
40300
  */
40076
40301
  readonly hasAlphaChannel: boolean;
40077
40302
  /**
@@ -40084,29 +40309,29 @@ export class TileCoordinatesImageryProvider {
40084
40309
  getTileCredits(x: number, y: number, level: number): Credit[];
40085
40310
  /**
40086
40311
  * Requests the image for a given tile. This function should
40087
- not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40312
+ * not be called before {@link TileCoordinatesImageryProvider#ready} returns true.
40088
40313
  * @param x - The tile X coordinate.
40089
40314
  * @param y - The tile Y coordinate.
40090
40315
  * @param level - The tile level.
40091
40316
  * @param [request] - The request object. Intended for internal use only.
40092
40317
  * @returns A promise for the image that will resolve when the image is available, or
40093
- undefined if there are too many active requests to the server, and the request
40094
- should be retried later. The resolved image may be either an
40095
- Image or a Canvas DOM object.
40318
+ * undefined if there are too many active requests to the server, and the request
40319
+ * should be retried later. The resolved image may be either an
40320
+ * Image or a Canvas DOM object.
40096
40321
  */
40097
40322
  requestImage(x: number, y: number, level: number, request?: Request): Promise<HTMLImageElement | HTMLCanvasElement> | undefined;
40098
40323
  /**
40099
40324
  * Picking features is not currently supported by this imagery provider, so this function simply returns
40100
- undefined.
40325
+ * undefined.
40101
40326
  * @param x - The tile X coordinate.
40102
40327
  * @param y - The tile Y coordinate.
40103
40328
  * @param level - The tile level.
40104
40329
  * @param longitude - The longitude at which to pick features.
40105
40330
  * @param latitude - The latitude at which to pick features.
40106
40331
  * @returns A promise for the picked features that will resolve when the asynchronous
40107
- picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
40108
- instances. The array may be empty if no features are found at the given location.
40109
- It may also be undefined if picking is not supported.
40332
+ * picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
40333
+ * instances. The array may be empty if no features are found at the given location.
40334
+ * It may also be undefined if picking is not supported.
40110
40335
  */
40111
40336
  pickFeatures(x: number, y: number, level: number, longitude: number, latitude: number): Promise<ImageryLayerFeatureInfo[]> | undefined;
40112
40337
  }
@@ -44353,6 +44578,7 @@ declare module "cesium/Source/Scene/GoogleEarthEnterpriseMapsProvider" { import
44353
44578
  declare module "cesium/Source/Scene/GridImageryProvider" { import { GridImageryProvider } from 'mars3d-cesium'; export default GridImageryProvider; }
44354
44579
  declare module "cesium/Source/Scene/GroundPolylinePrimitive" { import { GroundPolylinePrimitive } from 'mars3d-cesium'; export default GroundPolylinePrimitive; }
44355
44580
  declare module "cesium/Source/Scene/GroundPrimitive" { import { GroundPrimitive } from 'mars3d-cesium'; export default GroundPrimitive; }
44581
+ declare module "cesium/Source/Scene/ImageBasedLighting" { import { ImageBasedLighting } from 'mars3d-cesium'; export default ImageBasedLighting; }
44356
44582
  declare module "cesium/Source/Scene/ImageryLayer" { import { ImageryLayer } from 'mars3d-cesium'; export default ImageryLayer; }
44357
44583
  declare module "cesium/Source/Scene/ImageryLayerCollection" { import { ImageryLayerCollection } from 'mars3d-cesium'; export default ImageryLayerCollection; }
44358
44584
  declare module "cesium/Source/Scene/ImageryLayerFeatureInfo" { import { ImageryLayerFeatureInfo } from 'mars3d-cesium'; export default ImageryLayerFeatureInfo; }