import CatalogMemberTraits from "./CatalogMemberTraits";
import MappableTraits from "./MappableTraits";
import mixTraits from "../mixTraits";
import UrlTraits from "./UrlTraits";
import { traitClass } from "../Trait";
import CesiumIonTraits from "./CesiumIonTraits";
@traitClass({
description: `Creates a Cesium terrain item in the catalog from url.`,
example: {
type: "cesium-terrain",
description:
"This product is a terrain, it provides a representation of the earth's surface with which to apply data in Digital Twin Victoria. The terrain has been generated by transforming Vicmap Elevation digital elevation models (DEMs) into a quantized-mesh terrain tileset. The combined Vicmap elevation extent is embedded in ‘Cesium World Terrain’. These DEMs include ‘Vicmap Elevation DEM 10m’ which provides a base for state-wide coverage. Where available 1m DEMs have been embedded over the ‘Vicmap Elevation DEM 10m’ product.",
url: "https://storage.googleapis.com/vic-datasets-public/85b71982-f5fe-4093-b4e4-fd2e50198fba/v2",
name: "A Vic Terrain",
id: "some-unique-id"
}
})
export default class CesiumTerrainCatalogItemTraits extends mixTraits(
UrlTraits,
MappableTraits,
CatalogMemberTraits,
CesiumIonTraits
) {}