|
@@ -11,13 +11,36 @@ import {
|
|
formatError,
|
|
formatError,
|
|
Cartesian3,
|
|
Cartesian3,
|
|
Resource,
|
|
Resource,
|
|
- EllipsoidTerrainProvider
|
|
|
|
|
|
+ EllipsoidTerrainProvider,
|
|
|
|
+ ClockViewModel,
|
|
|
|
+ Clock,
|
|
|
|
+ JulianDate,
|
|
|
|
+ ClockRange,
|
|
|
|
+ ClockStep
|
|
} from "cesium/Cesium";
|
|
} from "cesium/Cesium";
|
|
import CesiumNavigation from "./plugins/cesium-navigation-es6";
|
|
import CesiumNavigation from "./plugins/cesium-navigation-es6";
|
|
import HeatmapImageryProvider from './plugins/HeatmapImageryProvider'
|
|
import HeatmapImageryProvider from './plugins/HeatmapImageryProvider'
|
|
import { renderStyle } from './plugins/mvt'
|
|
import { renderStyle } from './plugins/mvt'
|
|
import { points2 } from './heatmap'
|
|
import { points2 } from './heatmap'
|
|
import bus from '../utils/bus'
|
|
import bus from '../utils/bus'
|
|
|
|
+import grentStyle from './grentStyle'
|
|
|
|
+import './listen.js'
|
|
|
|
+
|
|
|
|
+function getClockViewModel() {
|
|
|
|
+ // Create a clock that loops on Christmas day 2013 and runs in 4000x real time.
|
|
|
|
+ var clock = new Clock({
|
|
|
|
+ startTime: JulianDate.fromIso8601('2013-12-25'),
|
|
|
|
+ currentTime: JulianDate.fromIso8601('2013-12-25'),
|
|
|
|
+ stopTime: JulianDate.fromIso8601('2013-12-26'),
|
|
|
|
+ clockRange: ClockRange.LOOP_STOP, // loop when we hit the end time
|
|
|
|
+ clockStep: ClockStep.SYSTEM_CLOCK_MULTIPLIER,
|
|
|
|
+ multiplier: 16000, // how much time to advance each tick
|
|
|
|
+ shouldAnimate: true // Animation on by default
|
|
|
|
+ });
|
|
|
|
+
|
|
|
|
+ return new ClockViewModel(clock)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
|
|
async function main() {
|
|
async function main() {
|
|
|
|
|
|
@@ -53,7 +76,7 @@ async function main() {
|
|
animation: false, //动画控制不显示
|
|
animation: false, //动画控制不显示
|
|
baseLayerPicker: false,
|
|
baseLayerPicker: false,
|
|
fullscreenButton: false, //全屏按钮,默认显示true
|
|
fullscreenButton: false, //全屏按钮,默认显示true
|
|
- geocoder: false, //地名查找,默认true
|
|
|
|
|
|
+ geocoder: true, //地名查找,默认true
|
|
timeline: false, //时间线,默认true
|
|
timeline: false, //时间线,默认true
|
|
vrButton: false, //双屏模式,默认不显示false
|
|
vrButton: false, //双屏模式,默认不显示false
|
|
homeButton: false, //主页按钮,默认true
|
|
homeButton: false, //主页按钮,默认true
|
|
@@ -61,12 +84,14 @@ async function main() {
|
|
selectionIndicator: false, //选中元素显示,默认true
|
|
selectionIndicator: false, //选中元素显示,默认true
|
|
sceneModePicker: false, //是否显示投影方式控件
|
|
sceneModePicker: false, //是否显示投影方式控件
|
|
navigationHelpButton: false, //是否显示帮助信息控件
|
|
navigationHelpButton: false, //是否显示帮助信息控件
|
|
- maximumRenderTimeChange: Infinity,
|
|
|
|
|
|
+ // maximumRenderTimeChange: Infinity,
|
|
requestRenderMode: true,
|
|
requestRenderMode: true,
|
|
scene3DOnly: true,
|
|
scene3DOnly: true,
|
|
imageryProvider: tdtImagerLayerProvider,
|
|
imageryProvider: tdtImagerLayerProvider,
|
|
|
|
+ clockViewModel: getClockViewModel() //白天黑夜光源控制
|
|
});
|
|
});
|
|
|
|
|
|
|
|
+
|
|
CesiumNavigation(viewer, {
|
|
CesiumNavigation(viewer, {
|
|
// defaultResetView : Rectangle.fromDegrees(80, 22, 130, 50),
|
|
// defaultResetView : Rectangle.fromDegrees(80, 22, 130, 50),
|
|
enableCompass: true,
|
|
enableCompass: true,
|
|
@@ -76,9 +101,9 @@ async function main() {
|
|
});
|
|
});
|
|
|
|
|
|
//使用太阳作为光源,可以照亮地球。
|
|
//使用太阳作为光源,可以照亮地球。
|
|
- viewer.scene.globe.enableLighting = false;
|
|
|
|
|
|
+ viewer.scene.globe.enableLighting = true;
|
|
//关闭地面大气效果,(默认为开启状态)
|
|
//关闭地面大气效果,(默认为开启状态)
|
|
- viewer.scene.globe.showGroundAtmosphere = false;
|
|
|
|
|
|
+ // viewer.scene.globe.showGroundAtmosphere = true;
|
|
//FPS 帧率显示
|
|
//FPS 帧率显示
|
|
//viewer.scene.debugShowFramesPerSecond = true;
|
|
//viewer.scene.debugShowFramesPerSecond = true;
|
|
|
|
|
|
@@ -101,7 +126,7 @@ async function main() {
|
|
}
|
|
}
|
|
})
|
|
})
|
|
|
|
|
|
- var resource = Resource.createIfNeeded('config.json?_'+Date.now());
|
|
|
|
|
|
+ var resource = Resource.createIfNeeded('/config.json?_'+Date.now());
|
|
var config = await resource.fetchJson()
|
|
var config = await resource.fetchJson()
|
|
|
|
|
|
bus.$emit('config', config)
|
|
bus.$emit('config', config)
|
|
@@ -168,7 +193,9 @@ async function main() {
|
|
} else {
|
|
} else {
|
|
var addLayer;
|
|
var addLayer;
|
|
if(layer.type === 'geodata' && layer.url){
|
|
if(layer.type === 'geodata' && layer.url){
|
|
- addLayer = renderStyle(ol, createMapboxStreetsV6Style, {
|
|
|
|
|
|
+ let style = layer.fillColor ? grentStyle(layer) : createMapboxStreetsV6Style
|
|
|
|
+
|
|
|
|
+ addLayer = renderStyle(ol, style, {
|
|
url: layer.url+'/{z}/{x}/{y}.pbf',
|
|
url: layer.url+'/{z}/{x}/{y}.pbf',
|
|
key: "pk.eyJ1IjoibXV5YW8xOTg3IiwiYSI6ImNpcm9ueHd6cjAwNzZoa20xazY1aWlubjIifQ.5tLtC5j1rh8Eqjlyrq3OaA"
|
|
key: "pk.eyJ1IjoibXV5YW8xOTg3IiwiYSI6ImNpcm9ueHd6cjAwNzZoa20xazY1aWlubjIifQ.5tLtC5j1rh8Eqjlyrq3OaA"
|
|
});
|
|
});
|
|
@@ -211,7 +238,6 @@ async function main() {
|
|
} catch (exception) {
|
|
} catch (exception) {
|
|
$loadingIndicator.style.display = 'none';
|
|
$loadingIndicator.style.display = 'none';
|
|
var message = formatError(exception);
|
|
var message = formatError(exception);
|
|
- console.error(message);
|
|
|
|
if (!document.querySelector('.cesium-widget-errorPanel')) {
|
|
if (!document.querySelector('.cesium-widget-errorPanel')) {
|
|
window.alert(message); //eslint-disable-line no-alert
|
|
window.alert(message); //eslint-disable-line no-alert
|
|
}
|
|
}
|
|
@@ -223,4 +249,5 @@ async function main() {
|
|
|
|
|
|
export function start() {
|
|
export function start() {
|
|
main()
|
|
main()
|
|
|
|
+ bus.$emit('addMaker')
|
|
}
|
|
}
|