You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1.2 KiB
JavaScript
50 lines
1.2 KiB
JavaScript
import { defaultValue } from "../Source/Cesium.js";
|
|
import { Ellipsoid } from "../Source/Cesium.js";
|
|
import { Event } from "../Source/Cesium.js";
|
|
|
|
function createGlobe(ellipsoid) {
|
|
ellipsoid = defaultValue(ellipsoid, Ellipsoid.WGS84);
|
|
|
|
var globe = {
|
|
callback: undefined,
|
|
removedCallback: false,
|
|
ellipsoid: ellipsoid,
|
|
beginFrame: function () {},
|
|
endFrame: function () {},
|
|
update: function () {},
|
|
render: function () {},
|
|
getHeight: function () {
|
|
return 0.0;
|
|
},
|
|
_surface: {},
|
|
imageryLayersUpdatedEvent: new Event(),
|
|
_terrainProvider: undefined,
|
|
terrainProviderChanged: new Event(),
|
|
destroy: function () {},
|
|
};
|
|
|
|
globe._surface.updateHeight = function (position, callback) {
|
|
globe.callback = callback;
|
|
return function () {
|
|
globe.removedCallback = true;
|
|
globe.callback = undefined;
|
|
};
|
|
};
|
|
|
|
globe.terrainProviderChanged = new Event();
|
|
Object.defineProperties(globe, {
|
|
terrainProvider: {
|
|
get: function () {
|
|
return this._terrainProvider;
|
|
},
|
|
set: function (value) {
|
|
this._terrainProvider = value;
|
|
this.terrainProviderChanged.raiseEvent(value);
|
|
},
|
|
},
|
|
});
|
|
|
|
return globe;
|
|
}
|
|
export default createGlobe;
|