Skip to content

Commit b5233df

Browse files
authored
Merge pull request #11033 from CesiumGS/terrain-ready-promise
Deprecate `ready`/`readyPromise` for terrainProviders
2 parents 857ab2e + 0286bf2 commit b5233df

File tree

104 files changed

+6439
-5734
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

104 files changed

+6439
-5734
lines changed

Apps/CesiumViewer/CesiumViewer.js

+25-25
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ if (window.CESIUM_BASE_URL === undefined) {
44

55
import {
66
Cartesian3,
7-
createWorldTerrain,
7+
createWorldTerrainAsync,
88
defined,
99
formatError,
1010
Math as CesiumMath,
@@ -20,7 +20,7 @@ import {
2020
viewerDragDropMixin,
2121
} from "../../Build/CesiumUnminified/index.js";
2222

23-
function main() {
23+
async function main() {
2424
/*
2525
Options parsed from query string:
2626
source=url The URL of a CZML/GeoJSON/KML data source to load at startup.
@@ -53,21 +53,23 @@ function main() {
5353
let viewer;
5454
try {
5555
const hasBaseLayerPicker = !defined(imageryProvider);
56+
57+
const terrainProvider = await createWorldTerrainAsync({
58+
requestWaterMask: true,
59+
requestVertexNormals: true,
60+
});
61+
5662
viewer = new Viewer("cesiumContainer", {
5763
imageryProvider: imageryProvider,
5864
baseLayerPicker: hasBaseLayerPicker,
5965
scene3DOnly: endUserOptions.scene3DOnly,
6066
requestRenderMode: true,
67+
terrainProvider: terrainProvider,
6168
});
6269

6370
if (hasBaseLayerPicker) {
6471
const viewModel = viewer.baseLayerPicker.viewModel;
6572
viewModel.selectedTerrain = viewModel.terrainProviderViewModels[1];
66-
} else {
67-
viewer.terrainProvider = createWorldTerrain({
68-
requestWaterMask: true,
69-
requestVertexNormals: true,
70-
});
7173
}
7274
} catch (exception) {
7375
loadingIndicator.style.display = "none";
@@ -144,25 +146,23 @@ function main() {
144146
}
145147

146148
if (defined(loadPromise)) {
147-
viewer.dataSources
148-
.add(loadPromise)
149-
.then(function (dataSource) {
150-
const lookAt = endUserOptions.lookAt;
151-
if (defined(lookAt)) {
152-
const entity = dataSource.entities.getById(lookAt);
153-
if (defined(entity)) {
154-
viewer.trackedEntity = entity;
155-
} else {
156-
const error = `No entity with id "${lookAt}" exists in the provided data source.`;
157-
showLoadError(source, error);
158-
}
159-
} else if (!defined(view) && endUserOptions.flyTo !== "false") {
160-
viewer.flyTo(dataSource);
149+
try {
150+
const dataSource = await viewer.dataSources.add(loadPromise);
151+
const lookAt = endUserOptions.lookAt;
152+
if (defined(lookAt)) {
153+
const entity = dataSource.entities.getById(lookAt);
154+
if (defined(entity)) {
155+
viewer.trackedEntity = entity;
156+
} else {
157+
const error = `No entity with id "${lookAt}" exists in the provided data source.`;
158+
showLoadError(source, error);
161159
}
162-
})
163-
.catch(function (error) {
164-
showLoadError(source, error);
165-
});
160+
} else if (!defined(view) && endUserOptions.flyTo !== "false") {
161+
viewer.flyTo(dataSource);
162+
}
163+
} catch (error) {
164+
showLoadError(source, error);
165+
}
166166
}
167167
}
168168

0 commit comments

Comments
 (0)