fix 1解决地图组件因为menu缩进按钮 造成的空白问题 包括所有使用地图组件的模块
2打印日志前 带上飞机名字前缀 3集群指点飞行 判断最矮飞机目标高度是不是小于0 即地面以下 打断 不发送mqtt命令
This commit is contained in:
parent
4f9017e59d
commit
bb032a81c2
@ -108,7 +108,7 @@ export default {
|
||||
// 实时更新所有飞机位置 和轨迹
|
||||
planePositions: {
|
||||
handler (allPositions) {
|
||||
// allPositions 是一个数组,每个元素是该飞机的 position 数组
|
||||
// allPositions 是一个数组,每个元素是该飞机的 position 数组
|
||||
allPositions.forEach((positions, idx) => {
|
||||
const n = positions.length
|
||||
if (n > 2) {
|
||||
@ -130,10 +130,19 @@ export default {
|
||||
deep: true
|
||||
},
|
||||
/**
|
||||
* @description: 侧边栏显隐
|
||||
* @description: 侧边栏缩进有变化时 地图重新自适应
|
||||
*/
|
||||
isCollapse () {
|
||||
return this.$store.state.app.isCollapse
|
||||
isCollapse: {
|
||||
handler (val) {
|
||||
if (val) {
|
||||
setTimeout(() => {
|
||||
this.$nextTick(() => {
|
||||
this.$refs.mapbox.handleResize()
|
||||
})
|
||||
}, 500)
|
||||
}
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
destroyed () {
|
||||
|
@ -43,10 +43,20 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
isCollapse (val) {
|
||||
if (val) {
|
||||
this.$refs.mapbox.handleResize()
|
||||
}
|
||||
/**
|
||||
* @description: 侧边栏缩进有变化时 地图重新自适应
|
||||
*/
|
||||
isCollapse: {
|
||||
handler (val) {
|
||||
if (val) {
|
||||
setTimeout(() => {
|
||||
this.$nextTick(() => {
|
||||
this.$refs.mapbox.handleResize()
|
||||
})
|
||||
}, 500)
|
||||
}
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -43,10 +43,20 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
isCollapse (val) {
|
||||
if (val) {
|
||||
this.$refs.mapbox.handleResize()
|
||||
}
|
||||
/**
|
||||
* @description: 侧边栏缩进有变化时 地图重新自适应
|
||||
*/
|
||||
isCollapse: {
|
||||
handler (val) {
|
||||
if (val) {
|
||||
setTimeout(() => {
|
||||
this.$nextTick(() => {
|
||||
this.$refs.mapbox.handleResize()
|
||||
})
|
||||
}, 500)
|
||||
}
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -290,11 +290,14 @@ export default {
|
||||
isCollapse: {
|
||||
handler (val) {
|
||||
if (val) {
|
||||
this.$nextTick(() => {
|
||||
this.$refs.mapbox.handleResize()
|
||||
})
|
||||
setTimeout(() => {
|
||||
this.$nextTick(() => {
|
||||
this.$refs.mapbox.handleResize()
|
||||
})
|
||||
}, 500)
|
||||
}
|
||||
}
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -202,6 +202,7 @@ export default {
|
||||
return
|
||||
}
|
||||
|
||||
let minTargetAlt = Infinity // 标记最矮飞机 的目标高度 初始化为正无穷大
|
||||
// 计算每架飞机相对于当前中心的偏移量
|
||||
const commands = this.planeList.map(p => {
|
||||
const pos = p?.planeState?.position
|
||||
@ -216,12 +217,22 @@ export default {
|
||||
const newLat = targetLat + offsetLat
|
||||
const newAlt = targetAlt + offsetAlt
|
||||
|
||||
if (newAlt < minTargetAlt) {
|
||||
minTargetAlt = newAlt
|
||||
}
|
||||
|
||||
return {
|
||||
macadd: p.macadd,
|
||||
cmd: `{guidedMode:{lon:${newLon.toFixed(7)},lat:${newLat.toFixed(7)},alt:${newAlt.toFixed(1)}}}`
|
||||
}
|
||||
}).filter(Boolean)
|
||||
|
||||
// 最矮的飞机小于地面高度 返回
|
||||
if (minTargetAlt < 0) {
|
||||
this.$message.warning(`指令已取消:最矮飞机将飞到地面以下(最低高度 ${minTargetAlt.toFixed(1)} 米)`)
|
||||
return
|
||||
}
|
||||
|
||||
// 发送控制指令
|
||||
commands.forEach(({ macadd, cmd }) => {
|
||||
mqtt.publishFun(`cmd/${macadd}`, cmd)
|
||||
@ -307,10 +318,19 @@ export default {
|
||||
deep: true
|
||||
},
|
||||
/**
|
||||
* @description: 侧边栏显隐
|
||||
* @description: 侧边栏缩进有变化时 地图重新自适应
|
||||
*/
|
||||
isCollapse () {
|
||||
return this.$store.state.app.isCollapse
|
||||
isCollapse: {
|
||||
handler (val) {
|
||||
if (val) {
|
||||
setTimeout(() => {
|
||||
this.$nextTick(() => {
|
||||
this.$refs.mapbox.handleResize()
|
||||
})
|
||||
}, 500)
|
||||
}
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -80,6 +80,12 @@ export default {
|
||||
*/
|
||||
routeList () {
|
||||
return this.$store.state.routeList
|
||||
},
|
||||
/**
|
||||
* @description: 侧边栏显隐
|
||||
*/
|
||||
isCollapse () {
|
||||
return this.$store.state.app.isCollapse
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@ -169,6 +175,21 @@ export default {
|
||||
watch: {
|
||||
routeList () {
|
||||
this.initPage()// 初始化页面
|
||||
},
|
||||
/**
|
||||
* @description: 侧边栏缩进有变化时 地图重新自适应
|
||||
*/
|
||||
isCollapse: {
|
||||
handler (val) {
|
||||
if (val) {
|
||||
setTimeout(() => {
|
||||
this.$nextTick(() => {
|
||||
this.$refs.mapbox.handleResize()
|
||||
})
|
||||
}, 500)
|
||||
}
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
created () {
|
||||
|
@ -220,7 +220,7 @@ export default {
|
||||
plane.planeState[key] = homePosition
|
||||
} else if (key === 'statusText') {
|
||||
/* 飞控信息 插入日志 */
|
||||
this.$store.dispatch('fetchLog', { content: jsonData[key], color: '#f57c00' })
|
||||
this.$store.dispatch('fetchLog', { content: `${plane.name}--${jsonData[key]}`, color: '#f57c00' })
|
||||
} else {
|
||||
plane.planeState[key] = jsonData[key] // 按订阅信息 刷新飞机状态
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user