107.0 之前
- 使用 CesiumTerrainProvider 加载地形:
terrainProvider: Cesium.createWorldTerrain(), // 地形数据
或者
viewer.terrainProvider = new Cesium.CesiumTerrainProvider({
url: 'https://assets.agi.com/stk-terrain/world'
});
// 1.107.0 之后
// 我们可以使用一下几个方法解决
terrain: Cesium.Terrain.fromWorldTerrain(), // 地形数据
// 或者
// 添加地形数据
const addWorldTerrainAsync = async (viewer: Cesium.Viewer) => {
try {
const terrainProvider = await Cesium.CesiumTerrainProvider.fromUrl(
"//data.mars3d.cn/terrain",
{
requestWaterMask: true,
requestVertexNormals: true,
}
);
viewer.terrainProvider = terrainProvider;
} catch (error) {
console.log(`Failed to add world imagery: ${error}`);
}
};
// 或者
// 添加地形数据
const addWorldTerrainAsync = async (viewer: Cesium.Viewer) => {
try {
const terrainProvider = await Cesium.createWorldTerrainAsync({
requestWaterMask: true,
requestVertexNormals: true,
});
viewer.terrainProvider = terrainProvider;
} catch (error) {
console.log(`Failed to add world imagery: ${error}`);
}
};