ol-cesium
Version:
OpenLayers Cesium integration library
50 lines (44 loc) • 1.39 kB
JavaScript
/**
* @module examples.main
*/
const exports = {};
import OLCesium from 'olcs/OLCesium.js';
import olView from 'ol/View.js';
import {defaults as olControlDefaults} from 'ol/control.js';
import olBingMaps from 'ol/source/BingMaps.js';
import olLayerTile from 'ol/layer/Tile.js';
import olMap from 'ol/Map.js';
Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI0MzAyNzUyYi0zY2QxLTQxZDItODRkOS1hNTA3MDU3ZTBiMDUiLCJpZCI6MjU0MSwiaWF0IjoxNTMzNjI1MTYwfQ.oHn1SUWJa12esu7XUUtEoc1BbEbuZpRocLetw6M6_AA';
const ol2d = new olMap({
layers: [
new olLayerTile({
preload: Infinity,
source: new olBingMaps({
key: 'As1HiMj1PvLPlqc_gtM7AqZfBL8ZL3VrjaS3zIb22Uvb9WKhuJObROC-qUpa81U5',
imagerySet: 'Aerial'
})
}),
],
controls: olControlDefaults({
attribution: true,
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
collapsible: false
})
}),
target: 'map',
view: new olView({
center: [-10967567.978507737, 4204193.972847062],
zoom: 3
})
});
const ol3d = new OLCesium({
map: ol2d,
time() {
return Cesium.JulianDate.now();
}
});
const scene = ol3d.getCesiumScene();
scene.terrainProvider = Cesium.createWorldTerrain();
ol3d.setEnabled(true);
document.getElementById('enable').addEventListener('click', () => ol3d.setEnabled(!ol3d.getEnabled()));
export default exports;