From dd5fb06f5ad73a8ffdecd7bb6c442fcb6c4e349d Mon Sep 17 00:00:00 2001 From: Jared Szechy Date: Wed, 23 May 2018 08:45:12 -0400 Subject: [PATCH] [cesium] add module support --- types/cesium/index.d.ts | 3 ++ types/cesium/test/cesium-module.test.ts | 50 +++++++++++++++++++++++++ types/cesium/tsconfig.json | 3 +- 3 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 types/cesium/test/cesium-module.test.ts diff --git a/types/cesium/index.d.ts b/types/cesium/index.d.ts index 08bc2706d7..8e2f929c83 100644 --- a/types/cesium/index.d.ts +++ b/types/cesium/index.d.ts @@ -6,6 +6,9 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 +export = Cesium; +export as namespace Cesium; + declare namespace Cesium { type RenderState = any; diff --git a/types/cesium/test/cesium-module.test.ts b/types/cesium/test/cesium-module.test.ts new file mode 100644 index 0000000000..726daf7df2 --- /dev/null +++ b/types/cesium/test/cesium-module.test.ts @@ -0,0 +1,50 @@ +import * as Cesium from 'cesium'; + +Cesium.buildModuleUrl.setBaseUrl('/assets/cesium/'); + +const viewer = new Cesium.Viewer('#cesium', { + sceneMode: Cesium.SceneMode.COLUMBUS_VIEW, + imageryProvider: new Cesium.IonImageryProvider({ assetId: 3845 }), + baseLayerPicker: false, + geocoder: false, +}); + +const midnight = Cesium.JulianDate.fromDate(new Date(2018, 5, 14)); +const prop = new Cesium.SampledPositionProperty(); + +const pos = Cesium.Cartesian3.fromDegrees(1, 2, 3); +const time = Cesium.JulianDate.addSeconds(midnight, 12345, new Cesium.JulianDate()); +prop.addSample(time, pos); +viewer.entities.add(new Cesium.Entity({ + position: pos, + point: new Cesium.PointGraphics({ + color: Cesium.Color.fromCssColorString('#123123'), + pixelSize: 2 + }) +})); + +const objStart = Cesium.JulianDate.addSeconds(midnight, 12340, new Cesium.JulianDate()); +const objStop = Cesium.JulianDate.addSeconds(midnight, 12350, new Cesium.JulianDate()); + +const entity = new Cesium.Entity({ + name: 'TEST', + availability: new Cesium.TimeIntervalCollection([ + new Cesium.TimeInterval({ + start: objStart, + stop: objStop + }) + ]), + position: prop, + orientation: new Cesium.VelocityOrientationProperty(prop), + path: new Cesium.PathGraphics({ + resolution: 5, + width: 3, + material: new Cesium.ColorMaterialProperty(Cesium.Color.fromCssColorString('#223344')), + leadTime: 0 + }), + model: new Cesium.ModelGraphics({ + uri: 'http://assets.agi.com/models/rv1.gltf', + minimumPixelSize: 48 + }) +}); +viewer.entities.add(entity); diff --git a/types/cesium/tsconfig.json b/types/cesium/tsconfig.json index e8c231d442..e82d8ca16a 100644 --- a/types/cesium/tsconfig.json +++ b/types/cesium/tsconfig.json @@ -19,6 +19,7 @@ }, "files": [ "index.d.ts", - "test/cesium-global.test.ts" + "test/cesium-global.test.ts", + "test/cesium-module.test.ts" ] }