feat: 在轨道生成演示中添加确认提示,增强用户交互体验
This commit is contained in:
@ -24,6 +24,7 @@ export async function demoOrbitGeneration(viewer: Viewer) {
|
|||||||
// 当前时间
|
// 当前时间
|
||||||
const now = new Date();
|
const now = new Date();
|
||||||
|
|
||||||
|
await new Promise((resolve) => setTimeout(resolve, 500));
|
||||||
// 计算一条完整的轨道
|
// 计算一条完整的轨道
|
||||||
for (let i = 0; i < totalMinutes; i += timeStepInMinutes) {
|
for (let i = 0; i < totalMinutes; i += timeStepInMinutes) {
|
||||||
// 创建时间点
|
// 创建时间点
|
||||||
@ -69,8 +70,8 @@ export async function demoOrbitGeneration(viewer: Viewer) {
|
|||||||
Math.sqrt(p.x * p.x + p.y * p.y + p.z * p.z) * 1000, // 转换为米
|
Math.sqrt(p.x * p.x + p.y * p.y + p.z * p.z) * 1000, // 转换为米
|
||||||
);
|
);
|
||||||
|
|
||||||
// 创建轨道线
|
await PromiseConfirmationService({ message: '创建轨道线' });
|
||||||
const orbitPath = viewer.entities.add({
|
viewer.entities.add({
|
||||||
name: `${satelliteName} Orbit`,
|
name: `${satelliteName} Orbit`,
|
||||||
polyline: {
|
polyline: {
|
||||||
positions: pointsArray,
|
positions: pointsArray,
|
||||||
@ -82,6 +83,7 @@ export async function demoOrbitGeneration(viewer: Viewer) {
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
await PromiseConfirmationService({ message: '添加卫星实体' });
|
||||||
// 添加卫星实体
|
// 添加卫星实体
|
||||||
const satellite = viewer.entities.add({
|
const satellite = viewer.entities.add({
|
||||||
name: satelliteName,
|
name: satelliteName,
|
||||||
@ -109,10 +111,6 @@ export async function demoOrbitGeneration(viewer: Viewer) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// 将相机定位到卫星
|
// 将相机定位到卫星
|
||||||
|
await PromiseConfirmationService({ message: '飞向卫星' });
|
||||||
viewer.flyTo(satellite, { duration: 3 });
|
viewer.flyTo(satellite, { duration: 3 });
|
||||||
|
|
||||||
return {
|
|
||||||
orbitPath,
|
|
||||||
satellite,
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user