terriajs
Version:
Geospatial data visualization platform.
33 lines (28 loc) • 1.14 kB
text/typescript
import { computed } from "mobx";
import ArcGISTiledElevationTerrainProvider from "terriajs-cesium/Source/Core/ArcGISTiledElevationTerrainProvider";
import Credit from "terriajs-cesium/Source/Core/Credit";
import MappableMixin from "../../../ModelMixins/MappableMixin";
import CatalogMemberMixin from "../../../ModelMixins/CatalogMemberMixin";
import UrlMixin from "../../../ModelMixins/UrlMixin";
import ArcGisTerrainCatalogItemTraits from "../../../Traits/TraitsClasses/ArcGisTerrainCatalogItemTraits";
import CreateModel from "../../Definition/CreateModel";
export default class ArcGisTerrainCatalogItem extends UrlMixin(
MappableMixin(CatalogMemberMixin(CreateModel(ArcGisTerrainCatalogItemTraits)))
) {
static type = "arcgis-terrain";
get type() {
return ArcGisTerrainCatalogItem.type;
}
get mapItems() {
if (this.url === undefined) return [];
const item = new ArcGISTiledElevationTerrainProvider({
url: this.url
});
if (this.attribution) item.credit = new Credit(this.attribution);
return [];
}
protected forceLoadMapItems(): Promise<void> {
return Promise.resolve();
}
}