Commit 23e89783 by jlc

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

parents 9385dd59 a48cb9bf
...@@ -57,9 +57,10 @@ import vueCodeWaterSurface from '@/examples/weather/waterSurface/waterSurface.vu ...@@ -57,9 +57,10 @@ import vueCodeWaterSurface from '@/examples/weather/waterSurface/waterSurface.vu
import vueCodeConvertECEFtoWGS84 from '@/examples/builtInAlgorithm/convertECEFtoWGS84/convertECEFtoWGS84.vue?raw' import vueCodeConvertECEFtoWGS84 from '@/examples/builtInAlgorithm/convertECEFtoWGS84/convertECEFtoWGS84.vue?raw'
import vueCodeConvertWGS84toECEF from '@/examples/builtInAlgorithm/convertWGS84toECEF/convertWGS84toECEF.vue?raw' import vueCodeConvertWGS84toECEF from '@/examples/builtInAlgorithm/convertWGS84toECEF/convertWGS84toECEF.vue?raw'
import vueCodeConvertUTCtoJulianDate from '@/examples/builtInAlgorithm/convertUTCtoJulianDate/convertUTCtoJulianDate.vue?raw' import vueCodeConvertUTCtoJulianDate from '@/examples/builtInAlgorithm/convertUTCtoJulianDate/convertUTCtoJulianDate.vue?raw'
import vueCodeConvertJulianDatetoUTC from '@/examples/builtInAlgorithm/convertJulianDatetoUTC/convertJulianDatetoUTC.vue?raw'
import vueCodeDistancePointToLine from '@/examples/builtInAlgorithm/distancePointToLine/distancePointToLine.vue?raw'
import vueCodeDistanceTwoPoints from '@/examples/builtInAlgorithm/distanceTwoPoints/distanceTwoPoints.vue?raw' import vueCodeDistanceTwoPoints from '@/examples/builtInAlgorithm/distanceTwoPoints/distanceTwoPoints.vue?raw'
const vueCodeMap = { const vueCodeMap = {
// 太空任务 // 太空任务
月球轨道: vueCodeMoonTrack, 月球轨道: vueCodeMoonTrack,
...@@ -120,6 +121,8 @@ const vueCodeMap = { ...@@ -120,6 +121,8 @@ const vueCodeMap = {
经纬高转地固XYZ: vueCodeConvertWGS84toECEF, 经纬高转地固XYZ: vueCodeConvertWGS84toECEF,
地固XYZ转经纬高: vueCodeConvertECEFtoWGS84, 地固XYZ转经纬高: vueCodeConvertECEFtoWGS84,
UTC时间转JulianDate: vueCodeConvertUTCtoJulianDate, UTC时间转JulianDate: vueCodeConvertUTCtoJulianDate,
JulianDateUTC时间: vueCodeConvertJulianDatetoUTC,
计算点到直线的距离: vueCodeDistancePointToLine,
计算两点间距离: vueCodeDistanceTwoPoints, 计算两点间距离: vueCodeDistanceTwoPoints,
} }
......
...@@ -57,6 +57,8 @@ import functionCodeWaterSurface from '@/examples/weather/waterSurface/waterSurfa ...@@ -57,6 +57,8 @@ import functionCodeWaterSurface from '@/examples/weather/waterSurface/waterSurfa
import functionCodeConvertWGS84toECEF from '@/examples/builtInAlgorithm/convertWGS84toECEF/convertWGS84toECEF-function.js?raw' import functionCodeConvertWGS84toECEF from '@/examples/builtInAlgorithm/convertWGS84toECEF/convertWGS84toECEF-function.js?raw'
import functionCodeConvertECEFtoWGS84 from '@/examples/builtInAlgorithm/convertECEFtoWGS84/convertECEFtoWGS84-function.js?raw' import functionCodeConvertECEFtoWGS84 from '@/examples/builtInAlgorithm/convertECEFtoWGS84/convertECEFtoWGS84-function.js?raw'
import functionCodeConvertUTCtoJulianDate from '@/examples/builtInAlgorithm/convertUTCtoJulianDate/convertUTCtoJulianDate-function.js?raw' import functionCodeConvertUTCtoJulianDate from '@/examples/builtInAlgorithm/convertUTCtoJulianDate/convertUTCtoJulianDate-function.js?raw'
import functionCodeConvertJulianDatetoUTC from '@/examples/builtInAlgorithm/convertJulianDatetoUTC/convertJulianDatetoUTC-function.js?raw'
import functionCodeDistancePointToLine from '@/examples/builtInAlgorithm/distancePointToLine/distancePointToLine-funtion.js?raw'
import functionCodeDistanceTwoPoints from '@/examples/builtInAlgorithm/distanceTwoPoints/distanceTwoPoints-function.js?raw' import functionCodeDistanceTwoPoints from '@/examples/builtInAlgorithm/distanceTwoPoints/distanceTwoPoints-function.js?raw'
const functionCodeMap = { const functionCodeMap = {
...@@ -119,6 +121,8 @@ const functionCodeMap = { ...@@ -119,6 +121,8 @@ const functionCodeMap = {
经纬高转地固XYZ: functionCodeConvertWGS84toECEF, 经纬高转地固XYZ: functionCodeConvertWGS84toECEF,
地固XYZ转经纬高: functionCodeConvertECEFtoWGS84, 地固XYZ转经纬高: functionCodeConvertECEFtoWGS84,
UTC时间转JulianDate: functionCodeConvertUTCtoJulianDate, UTC时间转JulianDate: functionCodeConvertUTCtoJulianDate,
JulianDateUTC时间: functionCodeConvertJulianDatetoUTC,
计算点到直线的距离: functionCodeDistancePointToLine,
计算两点间距离: functionCodeDistanceTwoPoints, 计算两点间距离: functionCodeDistanceTwoPoints,
} }
......
export function changeTime(viewer){
let jd = Cesium.JulianDate.fromDate(new Date()); //获取一个julianDate时间
let utcDate = Cesium.JulianDate.toDate(jd); //将julianDatt时间转换为UTC时间(世界协调时)
console.log(utcDate)
}
\ No newline at end of file
<template>
<div id="cesiumContainer" style="width: 100vw; height: 100vh"></div>
<div class="itemClass">
<button @click="changeTime(viewer)">点击转换现在的时间</button>
</div>
</template>
<script setup>
import { onMounted } from "vue";
import { changeTime } from './function.js';
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,
});
};
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 scoped>
.itemClass {
position: absolute;
top: 10px;
left: 10px;
}
</style>
\ No newline at end of file
function changeTime(){ export function changeTime(viewer){
let date = new Date(); // 获取当前时间 let date = new Date(); // 获取当前时间
let utcTime = date.toISOString(); // 将UTC 时间转换为 ISO 8601 格式字符串方便进行下一步转化 let utcTime = date.toISOString(); // 将UTC 时间转换为 ISO 8601 格式字符串方便进行下一步转化
let julianDate = Cesium.JulianDate.fromIso8601(utcTime); // 转换为 JulianDate时间 let julianDate = Cesium.JulianDate.fromIso8601(utcTime); // 转换为 JulianDate时间
......
<template> <template>
<div>
<button @click="changeTime">点击转换现在的时间</button>
</div>
<div id="cesiumContainer" style="width: 100vw; height: 100vh"></div> <div id="cesiumContainer" style="width: 100vw; height: 100vh"></div>
<div class="itemClass">
<button @click="changeTime(viewer)" style="margin: 1px">点击转换现在的时间</button>
</div>
</template> </template>
<script setup lang="js"> <script setup>
import { onMounted } from "vue"; import { onMounted } from "vue";
let viewer = null; import { changeTime } from './function.js';
let viewer;
onMounted(() => { onMounted(() => {
viewer = new Cesium.Viewer("cesiumContainer", { const script = document.createElement('script');
selectionIndicator: false, 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, infoBox: false,
terrain: Cesium.Terrain.fromWorldTerrain(),
}); });
};
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> </script>
<style scoped> <style scoped>
.itemClass {
position: absolute;
top: 10px;
left: 10px;
}
</style> </style>
\ No newline at end of file
export function addPoint(viewer) {
const polyline = viewer.entities.add({
polyline:{
positions:Cesium.Cartesian3.fromDegreesArray([120,20,121000,20]),
width:10,
material:Cesium.Color.WHITE,
clampToGround: true,
}
})
viewer.entities.add({
position:Cesium.Cartesian3.fromDegrees(90,35),
point: {
pixelSize: 3,
color: Cesium.Color.WHITE,
outlineColor: Cesium.Color.RED,
outlineWidth: 2,
disableDepthTestDistance: Number.POSITIVE_INFINITY,
},
})
let Point1 = new Cesium.Cartesian3.fromDegrees(120, 20);
let Point2 = new Cesium.Cartesian3.fromDegrees(121000, 20);
let lineDirection = Cesium.Cartesian3.subtract(Point2, Point1, new Cesium.Cartesian3());
Cesium.Cartesian3.normalize(lineDirection, lineDirection);
let point = new Cesium.Cartesian3.fromDegrees(90, 35);
let projection = Cesium.Cartesian3.multiplyByScalar(lineDirection, Cesium.Cartesian3.dot(point, lineDirection), new Cesium.Cartesian3());
let distance1 = Cesium.Cartesian3.distance(point, projection);
let distance = distance1.toFixed(4);
console.log('点到直线最近距离为:', distance + '米');
}
\ No newline at end of file
<template>
<div id="cesiumContainer" style="width: 100vw; height: 100vh"></div>
<div class="itemClass">
<button @click="addPoint(viewer)">按下添加点</button>
</div>
</template>
<script setup>
import { onMounted } from "vue";
import { addPoint } from "./function.js"
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,
});
};
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 scoped>
.itemClass {
position: absolute;
top: 10px;
left: 10px;
}
</style>
...@@ -200,9 +200,20 @@ export const elementAlgorithmMap = { ...@@ -200,9 +200,20 @@ export const elementAlgorithmMap = {
title: '地固XYZ转经纬高', title: '地固XYZ转经纬高',
pngUrl: '/src/assets/ConvertECEFtoWGS84.png' pngUrl: '/src/assets/ConvertECEFtoWGS84.png'
}, },
UTC时间转JulianDate: {
title: 'UTC时间转JulianDate',
pngUrl: '/src/assets/DistanceTwoPoints.png'
},
JulianDateUTC时间 : {
title: 'JulianDate转UTC时间 ',
pngUrl: '/src/assets/DistanceTwoPoints.png'
},
计算点到直线的距离: {
title: '计算点到直线的距离',
pngUrl: '/src/assets/DistanceTwoPoints.png'
},
计算两点间距离: { 计算两点间距离: {
title: '计算两点间距离', title: '计算两点间距离',
pngUrl: '/src/assets/DistanceTwoPoints.png' pngUrl: '/src/assets/DistanceTwoPoints.png'
}, },
} }
\ No newline at end of file
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