createDefaultTerrainProviderViewModels.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import buildModuleUrl from "../../Core/buildModuleUrl.js";
  2. import createWorldTerrain from "../../Core/createWorldTerrain.js";
  3. import EllipsoidTerrainProvider from "../../Core/EllipsoidTerrainProvider.js";
  4. import ProviderViewModel from "../BaseLayerPicker/ProviderViewModel.js";
  5. /**
  6. * @private
  7. */
  8. function createDefaultTerrainProviderViewModels() {
  9. const providerViewModels = [];
  10. providerViewModels.push(
  11. new ProviderViewModel({
  12. name: "WGS84 Ellipsoid",
  13. iconUrl: buildModuleUrl("Widgets/Images/TerrainProviders/Ellipsoid.png"),
  14. tooltip: "WGS84 standard ellipsoid, also known as EPSG:4326",
  15. category: "Cesium ion",
  16. creationFunction: function () {
  17. return new EllipsoidTerrainProvider();
  18. },
  19. })
  20. );
  21. providerViewModels.push(
  22. new ProviderViewModel({
  23. name: "Cesium World Terrain",
  24. iconUrl: buildModuleUrl(
  25. "Widgets/Images/TerrainProviders/CesiumWorldTerrain.png"
  26. ),
  27. tooltip:
  28. "High-resolution global terrain tileset curated from several datasources and hosted by Cesium ion",
  29. category: "Cesium ion",
  30. creationFunction: function () {
  31. return createWorldTerrain({
  32. requestWaterMask: true,
  33. requestVertexNormals: true,
  34. });
  35. },
  36. })
  37. );
  38. return providerViewModels;
  39. }
  40. export default createDefaultTerrainProviderViewModels;