createDefaultTerrainProviderViewModels.js 1.2 KB

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