Commit f85f8f15 by jlc

Merge branch 'develop' of ssh://47.96.160.63:10022/jlc/cesium-frame into develop

parents 1daa8887 a2f796f9
......@@ -52,9 +52,11 @@ import vueCodeFog from '@/examples/weather/fog/fog.vue?raw'
import vueCodeWaterSurface from '@/examples/weather/waterSurface/waterSurface.vue?raw'
// 内置算法
import vueCodeDistanceTwoPoints from '@/examples/builtInAlgorithm/distanceTwoPoints/distanceTwoPoints.vue?raw'
import vueCodeConvertECEFtoWGS84 from '@/examples/builtInAlgorithm/convertECEFtoWGS84/convertECEFtoWGS84.vue?raw'
import vueCodeConvertWGS84toECEF from '@/examples/builtInAlgorithm/convertWGS84toECEF/convertWGS84toECEF.vue?raw'
import vueCodeConvertUTCtoJulianDate from '@/examples/builtInAlgorithm/convertUTCtoJulianDate/convertUTCtoJulianDate.vue?raw'
import vueCodeDistanceTwoPoints from '@/examples/builtInAlgorithm/distanceTwoPoints/distanceTwoPoints.vue?raw'
const vueCodeMap = {
// 太空任务
......@@ -113,6 +115,7 @@ const vueCodeMap = {
// 内置算法
经纬高转地固XYZ: vueCodeConvertWGS84toECEF,
地固XYZ转经纬高: vueCodeConvertECEFtoWGS84,
UTC时间转JulianDate: vueCodeConvertUTCtoJulianDate,
计算两点间距离: vueCodeDistanceTwoPoints,
}
......
......@@ -52,8 +52,9 @@ import functionCodeFog from '@/examples/weather/fog/fog-function.js?raw'
import functionCodeWaterSurface from '@/examples/weather/waterSurface/waterSurface-function.js?raw'
// 内置算法
import functiionCodeConvertWGS84toECEF from '@/examples/builtInAlgorithm/convertWGS84toECEF/convertWGS84toECEF-function.js?raw'
import functiionCodeConvertECEFtoWGS84 from '@/examples/builtInAlgorithm/convertECEFtoWGS84/convertECEFtoWGS84-function.js?raw'
import functionCodeConvertWGS84toECEF from '@/examples/builtInAlgorithm/convertWGS84toECEF/convertWGS84toECEF-function.js?raw'
import functionCodeConvertECEFtoWGS84 from '@/examples/builtInAlgorithm/convertECEFtoWGS84/convertECEFtoWGS84-function.js?raw'
import functionCodeConvertUTCtoJulianDate from '@/examples/builtInAlgorithm/convertUTCtoJulianDate/convertUTCtoJulianDate-function.js?raw'
import functionCodeDistanceTwoPoints from '@/examples/builtInAlgorithm/distanceTwoPoints/distanceTwoPoints-function.js?raw'
const functionCodeMap = {
......@@ -111,8 +112,9 @@ const functionCodeMap = {
水面: functionCodeWaterSurface,
// 内置算法
经纬高转地固XYZ: functiionCodeConvertWGS84toECEF,
地固XYZ转经纬高: functiionCodeConvertECEFtoWGS84,
经纬高转地固XYZ: functionCodeConvertWGS84toECEF,
地固XYZ转经纬高: functionCodeConvertECEFtoWGS84,
UTC时间转JulianDate: functionCodeConvertUTCtoJulianDate,
计算两点间距离: functionCodeDistanceTwoPoints,
}
......
function changeTime(){
let date = new Date(); // 获取当前时间
let utcTime = date.toISOString(); // 将UTC 时间转换为 ISO 8601 格式字符串方便进行下一步转化
let julianDate = Cesium.JulianDate.fromIso8601(utcTime); // 转换为 JulianDate时间
console.log(julianDate);
}
\ No newline at end of file
<template>
<div>
<button @click="changeTime">点击转换现在的时间</button>
</div>
<div id="cesiumContainer" style="width: 100vw; height: 100vh"></div>
</template>
<script setup lang="js">
import { onMounted } from "vue";
let viewer = null;
onMounted(() => {
viewer = new Cesium.Viewer("cesiumContainer", {
selectionIndicator: false,
infoBox: false,
terrain: Cesium.Terrain.fromWorldTerrain(),
});
});
</script>
<style scoped>
</style>
\ No newline at end of file
export function addDial(viewer,timetext) {
export function addDial(viewer, timetext) {
// 格式化时间轴
viewer.timeline.makeLabel = function (date) {
const julianDT = new Cesium.JulianDate();
......@@ -6,7 +7,7 @@ export function addDial(viewer,timetext) {
var gregorianDT = Cesium.JulianDate.toGregorianDate(julianDT);
let hour = gregorianDT.hour + "";
let minute = gregorianDT.minute + "";
let second = gregorianDT.second + "";
let second = gregorianDT.second + "";
timetext = `${gregorianDT.year}${gregorianDT.month}${gregorianDT.day}${hour.padStart(2, "0")}:${minute.padStart(2, "0")}:${second.padStart(2,"0")}`
return `${gregorianDT.year}${gregorianDT.month}${gregorianDT.day}${hour.padStart(2, "0")}:${minute.padStart(2, "0")}:${second.padStart(2,"0")}`;
};
......@@ -15,7 +16,7 @@ export function addDial(viewer,timetext) {
export function forward(viewer) {
let t = viewer.clockViewModel.multiplier;
viewer.clockViewModel.multiplier = Math.abs(t);
viewer.clock.shouldAnimate = true;
viewer.clock.shouldAnimate = true;
}
var flag = false;
export function start(viewer) {
......@@ -32,13 +33,11 @@ export function back(viewer) {
}
export function multiplier(viewer) {
viewer.clockViewModel.multiplier *= 2;
let q=viewer.clockViewModel.multiplier
return q
}
export function divide(viewer,bei) {
export function divide(viewer) {
viewer.clockViewModel.multiplier /= 2;
bei = viewer.clockViewModel.multiplier
}
export function reset(viewer) {
viewer.clock.currentTime = viewer.clock.startTime;
......
......@@ -9,8 +9,8 @@
<button class="button1" @click="forward(viewer)"></button>
<button class="button2" v-on:click="start(viewer)"></button>
<button class="button3" v-on:click="back(viewer)"></button>
<button class="button4" v-on:click="qqq">X2</button>
<button class="button5" v-on:click="divide(viewer, bei)">X-2</button>
<button class="button4" v-on:click="multiplier(viewer)">X2</button>
<button class="button5" v-on:click="divide(viewer)">X-2</button>
<button class="button6" v-on:click="reset(viewer)"></button>
<p class="bei">X{{ bei }}</p>
<p class="time-text"> {{ timetext }}</p>
......@@ -20,8 +20,8 @@
import { onMounted,ref, watch } from 'vue';
import { addDial, divide, multiplier, back, start, forward, reset } from './function';
let viewer=ref();
const bei = ref(1)
const timetext=ref('')
let bei = ref(66)
let timetext=ref('')
onMounted(() => {
const script = document.createElement('script');
script.src = 'https://cesium.com/downloads/cesiumjs/releases/1.99/Build/Cesium/Cesium.js';
......@@ -40,9 +40,8 @@ onMounted(() => {
timeline: true,
navigationHelpButton: false,
});
addDial(viewer, timetext)
bei.value = multiplier(viewer)
timetext=addDial(viewer, timetext)
bei.value = viewer.clockViewModel.multiplier
};
document.head.appendChild(script);
const link = document.createElement('link');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment