Commit a2f796f9 by yzh

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

parents 3a255e5c 0c9b0815
...@@ -11,6 +11,7 @@ import vueCodeVehicle from '@/examples/movingTarget/vehicle/vehicle.vue?raw' ...@@ -11,6 +11,7 @@ import vueCodeVehicle from '@/examples/movingTarget/vehicle/vehicle.vue?raw'
import vueCodeShip from '@/examples/movingTarget/ship/ship.vue?raw' import vueCodeShip from '@/examples/movingTarget/ship/ship.vue?raw'
import vueCodeAircraft from '@/examples/movingTarget/aircraft/aircraft.vue?raw' import vueCodeAircraft from '@/examples/movingTarget/aircraft/aircraft.vue?raw'
import vueCodeRobotArmAnimation from '@/examples/movingTarget/robotArmAnimation/robotArmAnimation.vue?raw' import vueCodeRobotArmAnimation from '@/examples/movingTarget/robotArmAnimation/robotArmAnimation.vue?raw'
import vueCodeRealTimeDriver from '@/examples/movingTarget/realTimeDriver/realTimeDriver.vue?raw'
import vueCodeCoordinateAxis from '@/examples/movingTarget/coordinateAxis/coordinateAxis.vue?raw' import vueCodeCoordinateAxis from '@/examples/movingTarget/coordinateAxis/coordinateAxis.vue?raw'
import vueCodeMissileLaunch from '@/examples/movingTarget/missileLaunch/missileLaunch.vue?raw' import vueCodeMissileLaunch from '@/examples/movingTarget/missileLaunch/missileLaunch.vue?raw'
import vueCodeMissileMobileLaunch from '@/examples/movingTarget/missileMobileLaunch/missileMobileLaunch.vue?raw' import vueCodeMissileMobileLaunch from '@/examples/movingTarget/missileMobileLaunch/missileMobileLaunch.vue?raw'
...@@ -70,6 +71,7 @@ const vueCodeMap = { ...@@ -70,6 +71,7 @@ const vueCodeMap = {
: vueCodeShip, : vueCodeShip,
飞机: vueCodeAircraft, 飞机: vueCodeAircraft,
机械臂动画: vueCodeRobotArmAnimation, 机械臂动画: vueCodeRobotArmAnimation,
实时驱动: vueCodeRealTimeDriver,
坐标轴: vueCodeCoordinateAxis, 坐标轴: vueCodeCoordinateAxis,
导弹发射: vueCodeMissileLaunch, 导弹发射: vueCodeMissileLaunch,
导弹机动发射: vueCodeMissileMobileLaunch, 导弹机动发射: vueCodeMissileMobileLaunch,
......
...@@ -11,6 +11,7 @@ import functionCodeVehicle from '@/examples/movingTarget/vehicle/vehicle-functio ...@@ -11,6 +11,7 @@ import functionCodeVehicle from '@/examples/movingTarget/vehicle/vehicle-functio
import functionCodeShip from '@/examples/movingTarget/ship/ship-function.js?raw' import functionCodeShip from '@/examples/movingTarget/ship/ship-function.js?raw'
import functionCodeAircraft from '@/examples/movingTarget/aircraft/aircraft-function.js?raw' import functionCodeAircraft from '@/examples/movingTarget/aircraft/aircraft-function.js?raw'
import functionCodeRobotArmAnimation from '@/examples/movingTarget/robotArmAnimation/robotArmAnimation-function.js?raw' import functionCodeRobotArmAnimation from '@/examples/movingTarget/robotArmAnimation/robotArmAnimation-function.js?raw'
import functionCodeRealTimeDriver from '@/examples/movingTarget/realTimeDriver/realTimeDriver-function.js?raw'
import functionCodeCoordinateAxis from '@/examples/movingTarget/coordinateAxis/coordinateAxis-function.js?raw' import functionCodeCoordinateAxis from '@/examples/movingTarget/coordinateAxis/coordinateAxis-function.js?raw'
import functionCodeMissileLaunch from '@/examples/movingTarget/missileLaunch/missileLaunch-function.js?raw' import functionCodeMissileLaunch from '@/examples/movingTarget/missileLaunch/missileLaunch-function.js?raw'
import functionCodeMissileMobileLaunch from '@/examples/movingTarget/missileMobileLaunch/missileMobileLaunch-function.js?raw' import functionCodeMissileMobileLaunch from '@/examples/movingTarget/missileMobileLaunch/missileMobileLaunch-function.js?raw'
...@@ -69,6 +70,7 @@ const functionCodeMap = { ...@@ -69,6 +70,7 @@ const functionCodeMap = {
: functionCodeShip, : functionCodeShip,
飞机: functionCodeAircraft, 飞机: functionCodeAircraft,
机械臂动画: functionCodeRobotArmAnimation, 机械臂动画: functionCodeRobotArmAnimation,
实时驱动: functionCodeRealTimeDriver,
坐标轴: functionCodeCoordinateAxis, 坐标轴: functionCodeCoordinateAxis,
导弹发射: functionCodeMissileLaunch, 导弹发射: functionCodeMissileLaunch,
导弹机动发射: functionCodeMissileMobileLaunch, 导弹机动发射: functionCodeMissileMobileLaunch,
......
export function addRealTimeDriver(viewer) {
const czml = [
{
id: "document",
name: "realTimeDriver",
version: "1.0",
clock: {
interval: "2019-08-28T04:00:00Z/2019-08-28T04:20:00Z",
currentTime: "2019-08-28T04:00:00.00Z",
multiplier: 1,
range: "LOOP_STOP",
step: "SYSTEM_CLOCK_MULTIPLIER"
}
},
{
id: "realTimeDriver",
name: "realTimeDriver",
description: "<p>this is a realTimeDriver</p>",
availability: "2019-08-28T04:00:00Z/2019-08-28T04:20:00Z",
position: {
cartographicDegrees: [120, 30, 0]
},
model: {
show: true,
gltf: [
{
interval: "2019-08-28T04:00:00Z/9999-12-31T23:59:59.9999999Z",
uri: 'https://raw.githubusercontent.com/jinlinchao123/Cesium-assets/main/3Dmodel/Station.glb'
}
],
minimumPixelSize: 128,
scale: 1,
runAnimations: true
}
},
];
var dataSourcePromise = viewer.dataSources.add(Cesium.CzmlDataSource.load(czml));
dataSourcePromise.then(function (dataSource) {
// 根据模型所在的实体去进行加载
viewer.trackedEntity = dataSource.entities.getById('realTimeDriver');
}).catch(function (error) {
console.error(error);
});
}
<template>
<div id="cesiumContainer" class="cesium-container"></div>
</template>
<script setup>
import { onMounted } from 'vue';
import { addRealTimeDriver } from './function';
let viewer;
onMounted(() => {
const script = document.createElement('script');
script.src = 'https://cesium.com/downloads/cesiumjs/releases/1.99/Build/Cesium/Cesium.js';
script.onload = () => {
window.Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI3Njg4ZWU5Yi1iZDhiLTRhYmUtOTRiYS04YjM5NmUwNjVmMDMiLCJpZCI6MjI3MzQ3LCJpYXQiOjE3MjA1MjA4Mjh9.E5XW4LnwgfVAaBC-znaYr61m4yK0-j2qEQhi9qwFFPE'
viewer = new window.Cesium.Viewer('cesiumContainer', {
infoBox: false,
shouldAnimate: true
});
addRealTimeDriver(viewer)
};
document.head.appendChild(script);
const link = document.createElement('link');
link.rel = 'stylesheet';
link.href = 'https://cesium.com/downloads/cesiumjs/releases/1.119/Build/Cesium/Widgets/widgets.css';
document.head.appendChild(link);
});
</script>
<style>
.cesium-container {
width: 100%;
height: 100vh;
}
</style>
\ No newline at end of file
...@@ -50,7 +50,12 @@ export function addRocketLaunchIntoOrbit(viewer) { ...@@ -50,7 +50,12 @@ export function addRocketLaunchIntoOrbit(viewer) {
solidColor: { solidColor: {
color: [ color: [
{ {
interval: "2019-08-28T04:00:00Z/2019-08-28T04:10:00Z",
rgba: [ 0, 255, 0, 255 ] rgba: [ 0, 255, 0, 255 ]
},
{
interval: "2019-08-28T04:10:00Z/2019-08-28T04:17:33Z",
rgba: [ 255, 255, 0, 255 ]
} }
] ]
} }
......
export function addDial(viewer,timetext) {
export function addDial(viewer, timetext) {
// 格式化时间轴 // 格式化时间轴
viewer.timeline.makeLabel = function (date) { viewer.timeline.makeLabel = function (date) {
const julianDT = new Cesium.JulianDate(); const julianDT = new Cesium.JulianDate();
...@@ -32,13 +33,11 @@ export function back(viewer) { ...@@ -32,13 +33,11 @@ export function back(viewer) {
} }
export function multiplier(viewer) { export function multiplier(viewer) {
viewer.clockViewModel.multiplier *= 2; viewer.clockViewModel.multiplier *= 2;
let q=viewer.clockViewModel.multiplier
return q
} }
export function divide(viewer,bei) { export function divide(viewer) {
viewer.clockViewModel.multiplier /= 2; viewer.clockViewModel.multiplier /= 2;
bei = viewer.clockViewModel.multiplier
} }
export function reset(viewer) { export function reset(viewer) {
viewer.clock.currentTime = viewer.clock.startTime; viewer.clock.currentTime = viewer.clock.startTime;
......
...@@ -9,8 +9,8 @@ ...@@ -9,8 +9,8 @@
<button class="button1" @click="forward(viewer)"></button> <button class="button1" @click="forward(viewer)"></button>
<button class="button2" v-on:click="start(viewer)"></button> <button class="button2" v-on:click="start(viewer)"></button>
<button class="button3" v-on:click="back(viewer)"></button> <button class="button3" v-on:click="back(viewer)"></button>
<button class="button4" v-on:click="qqq">X2</button> <button class="button4" v-on:click="multiplier(viewer)">X2</button>
<button class="button5" v-on:click="divide(viewer, bei)">X-2</button> <button class="button5" v-on:click="divide(viewer)">X-2</button>
<button class="button6" v-on:click="reset(viewer)"></button> <button class="button6" v-on:click="reset(viewer)"></button>
<p class="bei">X{{ bei }}</p> <p class="bei">X{{ bei }}</p>
<p class="time-text"> {{ timetext }}</p> <p class="time-text"> {{ timetext }}</p>
...@@ -20,8 +20,8 @@ ...@@ -20,8 +20,8 @@
import { onMounted,ref, watch } from 'vue'; import { onMounted,ref, watch } from 'vue';
import { addDial, divide, multiplier, back, start, forward, reset } from './function'; import { addDial, divide, multiplier, back, start, forward, reset } from './function';
let viewer=ref(); let viewer=ref();
const bei = ref(1) let bei = ref(66)
const timetext=ref('') let timetext=ref('')
onMounted(() => { onMounted(() => {
const script = document.createElement('script'); const script = document.createElement('script');
script.src = 'https://cesium.com/downloads/cesiumjs/releases/1.99/Build/Cesium/Cesium.js'; script.src = 'https://cesium.com/downloads/cesiumjs/releases/1.99/Build/Cesium/Cesium.js';
...@@ -40,9 +40,8 @@ onMounted(() => { ...@@ -40,9 +40,8 @@ onMounted(() => {
timeline: true, timeline: true,
navigationHelpButton: false, navigationHelpButton: false,
}); });
addDial(viewer, timetext) timetext=addDial(viewer, timetext)
bei.value = multiplier(viewer) bei.value = viewer.clockViewModel.multiplier
}; };
document.head.appendChild(script); document.head.appendChild(script);
const link = document.createElement('link'); const link = document.createElement('link');
......
...@@ -40,6 +40,10 @@ export const elementMovingMap = { ...@@ -40,6 +40,10 @@ export const elementMovingMap = {
title: '机械臂动画', title: '机械臂动画',
pngUrl: '/src/assets/RobotArmAnimation.png' pngUrl: '/src/assets/RobotArmAnimation.png'
}, },
实时驱动: {
title: '实时驱动',
pngUrl: '/src/assets/RobotArmAnimation.png'
},
坐标轴: { 坐标轴: {
title: '坐标轴', title: '坐标轴',
pngUrl: '/src/assets/CoordinateAxis.png' pngUrl: '/src/assets/CoordinateAxis.png'
......
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