提交 c538d864 作者: 翁进城

feat: 无人机界面上部数据展示条

上级 d2c7ec7b
流水线 #10695 已失败 于阶段
......@@ -84,6 +84,7 @@
:show-close="false"
:close-on-click-modal="false"
style="margin-top: 20vh"
custom-class="mmc"
>
<div class="endrenwu guideFlight">
<div class="tishiyu">引导飞行确认</div>
......@@ -398,7 +399,7 @@ export default {
</script>
<style lang="scss" scoped>
.nset_control_box {
.nset_control_box::v-deep {
min-height: 111px;
background: #222222;
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
......@@ -575,20 +576,21 @@ export default {
color: #fff;
}
/* /deep/ .el-dialog__header {
.el-dialog__header {
margin-left: 0;
padding: 0;
background: #3c3c3c;
}
/deep/ .el-dialog__body {
.el-dialog__body {
padding: 0;
z-index: 2023 !important;
}
/deep/ .el-dialog {
.el-dialog {
z-index: 2022 !important;
background: transparent !important;
} */
}
.filter {
cursor: no-drop;
filter: grayscale(100%);
......
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>编组 72</title>
<g id="套用鹰视改" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="驾驶中心-无人机应用4-AI人脸" transform="translate(-924.000000, -74.000000)">
<g id="编组-47备份-4" transform="translate(520.000000, 56.000000)">
<g id="编组-71" transform="translate(16.000000, 8.000000)">
<g id="编组-72" transform="translate(388.000000, 10.000000)">
<rect id="矩形" stroke="#979797" fill="#D8D8D8" opacity="0" x="0.5" y="0.5" width="23" height="23"></rect>
<g id="编组-60" transform="translate(2.000000, 2.000000)" fill="#FFFFFF">
<g id="编组-56">
<path d="M10,0 C12.4706729,0 14.7320746,0.895996462 16.4769953,2.38077947 L15.2936794,3.5637466 C14.0556926,2.54435143 12.5184903,1.87519059 10.8336529,1.70784444 L10.8339517,3.3849886 C12.0593645,3.53791164 13.1814721,4.02341643 14.1070908,4.74831919 L12.917304,5.93883138 C12.3104752,5.50215172 11.6018026,5.19812257 10.833743,5.06920078 L10.8334879,6.77172103 C11.1477708,6.85262802 11.4441136,6.97821882 11.7153398,7.14131703 L9.41074435,9.44543648 L10.834,10.869 L10.8344668,11.4430401 C10.9533764,11.3741297 11.0629822,11.2909435 11.1609396,11.1958264 L12.3390567,12.3748535 C11.9273414,12.7804013 11.4106683,13.0796933 10.8334879,13.228279 L10.833743,14.9307992 C11.8720764,14.7565109 12.8018734,14.2621945 13.5182347,13.5527494 L14.6962604,14.7317635 C13.6770391,15.7433851 12.3327677,16.4279695 10.8339517,16.6150114 L10.8336529,18.2921556 C12.7938374,18.0974606 14.5541888,17.2235287 15.876003,15.9090639 L17.0540446,17.0880504 C15.2457616,18.8877119 12.7527752,20 10,20 C4.4771525,20 0,15.5228475 0,10 C0,4.4771525 4.4771525,0 10,0 Z M9.16634708,1.70784444 C4.95539803,2.12609615 1.66666667,5.67898589 1.66666667,10 C1.66666667,14.3210141 4.95539803,17.8739038 9.16634708,18.2921556 L9.16604828,16.6150114 C5.87775468,16.2046551 3.33333333,13.3994683 3.33333333,10 C3.33333333,6.60053172 5.87775468,3.79534489 9.16604828,3.3849886 L9.16634708,1.70784444 Z M9.16625701,5.06920078 C6.80169745,5.4661013 5,7.52264616 5,10 C5,12.4773538 6.80169745,14.5338987 9.16625701,14.9307992 L9.16651209,13.228279 C7.72890118,12.8581896 6.66666667,11.5531439 6.66666667,10 C6.66666667,8.44685614 7.72890118,7.14181045 9.16651209,6.77172103 L9.16625701,5.06920078 Z M9.16553321,8.55695993 C8.66799053,8.84529542 8.33333333,9.38356602 8.33333333,10 C8.33333333,10.616434 8.66799053,11.1547046 9.16553321,11.4430401 L9.16553321,8.55695993 Z" id="形状结合" fill-rule="nonzero"></path>
<circle id="椭圆形" fill-opacity="0" cx="10" cy="10" r="6.66666667"></circle>
</g>
<path d="M17.3151455,3.14847917 C20.8949515,6.72828517 20.8949515,12.5322975 17.3151455,16.1121035 L10.8333333,9.63029133 Z M16.5592233,8 C15.6387488,8 14.8925567,8.74619208 14.8925567,9.66666667 C14.8925567,10.5871412 15.6387488,11.3333333 16.5592233,11.3333333 C17.4796979,11.3333333 18.22589,10.5871412 18.22589,9.66666667 C18.22589,8.74619208 17.4796979,8 16.5592233,8 Z" id="形状结合"></path>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>编组 75</title>
<g id="套用鹰视改" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="驾驶中心-无人机应用4-AI人脸" transform="translate(-1174.000000, -74.000000)">
<g id="编组-47备份-4" transform="translate(520.000000, 56.000000)">
<g id="编组-71" transform="translate(16.000000, 8.000000)">
<g id="编组-75" transform="translate(638.000000, 10.000000)">
<rect id="矩形" stroke="#979797" fill="#D8D8D8" opacity="0" x="0.5" y="0.5" width="23" height="23"></rect>
<g id="接管记录备份" transform="translate(2.000000, 2.000000)">
<rect id="矩形" x="0" y="0" width="20" height="20"></rect>
<g id="编组" transform="translate(0.000000, 0.714286)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M1.14285714,12.8103849 C0.843537414,12.8103849 0.590986394,12.7094749 0.385204081,12.5076549 C0.179421769,12.3058349 0.0765306121,12.052031 0.0765306121,11.7462431 L0.0765306121,10.3701976 C0.0765306121,10.0888728 0.179421769,9.8442425 0.385204081,9.63630671 C0.590986394,9.428371 0.843537414,9.32440307 1.14285714,9.32440307 L14.8554421,9.32440307 C14.9552154,9.32440307 15.0549886,9.34275036 15.1547619,9.37944493 C14.6558957,9.4406025 14.1788549,9.5659755 13.7236394,9.755564 C13.2684241,9.9451525 12.8537415,10.1897828 12.4795919,10.4894549 C12.1054421,10.7891271 11.7780612,11.1377252 11.497449,11.5352495 C11.2168367,11.9327737 10.9954649,12.3578189 10.8333334,12.8103849 L1.14285714,12.8103849 Z M10.5527211,13.9846104 C10.5402494,14.0824625 10.5340136,14.1741989 10.5340136,14.2598195 L10.5340136,14.5166813 C10.5340136,15.0670995 10.6150794,15.5869389 10.7772109,16.0761995 C10.9393424,16.5654601 11.1638322,17.0180261 11.4506803,17.4338976 L1.14285714,17.4338976 C0.843537414,17.4338976 0.590986394,17.3329876 0.385204081,17.1311676 C0.179421769,16.9293476 0.0765306121,16.6816595 0.0765306121,16.3881031 L0.0765306121,15.0120576 C0.0765306121,14.7307328 0.179421769,14.4891604 0.385204081,14.2873404 C0.590986394,14.0855204 0.843537414,13.9846104 1.14285714,13.9846104 L10.5527211,13.9846104 L10.5527211,13.9846104 Z M3.46258504,8.16852493 C3.17573696,8.16852493 2.92942177,8.06761493 2.72363946,7.86579493 C2.51785714,7.66397493 2.41496599,7.41628671 2.41496599,7.12273037 L2.41496599,5.85676855 C2.41496599,5.56321219 2.51785714,5.31246612 2.72363946,5.10453036 C2.92942177,4.89659461 3.17573696,4.79262673 3.46258504,4.79262673 L17.6989796,4.79262673 C17.9858276,4.79262673 18.2321429,4.89659461 18.4379251,5.10453036 C18.6437075,5.31246612 18.7465986,5.56321219 18.7465986,5.85676855 L18.7465986,7.12273037 C18.7465986,7.41628671 18.6437075,7.66397493 18.4379251,7.86579493 C18.2321429,8.06761493 17.9858276,8.16852493 17.6989796,8.16852493 L3.46258504,8.16852493 Z M1.04761905,3.37589819 C0.760770979,3.37589819 0.514455782,3.27498819 0.308673469,3.07316819 C0.102891156,2.87134819 0,2.62366001 0,2.33010364 L0,1.06414182 C0,0.770585457 0.102891156,0.519839395 0.308673469,0.311903637 C0.514455782,0.103967879 0.760770979,0 1.04761905,0 L15.2840136,0 C15.5708616,0 15.8171769,0.103967879 16.0229592,0.311903637 C16.2287415,0.519839395 16.3316326,0.770585457 16.3316326,1.06414182 L16.3316326,2.33010364 C16.3316326,2.62366001 16.2287415,2.87134819 16.0229592,3.07316819 C15.8171769,3.27498819 15.5708616,3.37589819 15.2840136,3.37589819 L1.04761905,3.37589819 Z M15.8843537,10.5169759 C16.4455782,10.5169759 16.9756236,10.6240016 17.4744898,10.8380531 C17.973356,11.0521046 18.4098639,11.3395452 18.7840136,11.7003749 C19.1581633,12.0612046 19.4543651,12.4862498 19.6726191,12.9755104 C19.890873,13.464771 20,13.9846104 20,14.5350286 C20,15.0976783 19.890873,15.6236334 19.6726191,16.112894 C19.4543651,16.6021546 19.1581633,17.0302576 18.7840136,17.3972031 C18.4098639,17.7641486 17.973356,18.0515891 17.4744898,18.2595249 C16.9756236,18.4674607 16.4455782,18.5714286 15.8843537,18.5714286 C15.3231293,18.5714286 14.7930839,18.4674607 14.2942177,18.2595249 C13.7953515,18.0515891 13.3588436,17.7641486 12.9846939,17.3972031 C12.6105442,17.0302576 12.3143424,16.6021546 12.0960884,16.112894 C11.8778345,15.6236334 11.7687075,15.0976783 11.7687075,14.5350286 C11.7687075,13.9846104 11.8778345,13.464771 12.0960884,12.9755104 C12.3143424,12.4862498 12.6105442,12.0612046 12.9846939,11.7003749 C13.3588436,11.3395452 13.7953515,11.0521046 14.2942177,10.8380531 C14.7930839,10.6240016 15.3231293,10.5169759 15.8843537,10.5169759 Z M18.2040816,15.1955304 C18.3287982,15.1955304 18.4316894,15.1313149 18.5127551,15.002884 C18.5938209,14.8744531 18.6343537,14.7246171 18.6343537,14.5533759 C18.6343537,14.3821346 18.5938209,14.2384143 18.5127551,14.1222149 C18.4316894,14.0060155 18.3287982,13.9479159 18.2040816,13.9479159 L16.4455782,13.9479159 L16.4455782,12.3333559 C16.4455782,12.2355037 16.3925737,12.1498831 16.2865646,12.076494 C16.1805556,12.0031049 16.0340136,11.9664104 15.8469388,11.9664104 C15.6473923,11.9664104 15.5008504,12.0031049 15.4073129,12.076494 C15.3137755,12.1498831 15.2670068,12.2355037 15.2670068,12.3333559 L15.2670068,14.3515559 C15.2670068,14.3882504 15.2638889,14.4218871 15.2576531,14.4524659 C15.2514172,14.4830446 15.2482993,14.5166813 15.2482993,14.5533759 C15.2482993,14.7246171 15.2888322,14.8744531 15.3698979,15.002884 C15.4509637,15.1313149 15.5538549,15.1955304 15.6785714,15.1955304 L18.2040816,15.1955304 L18.2040816,15.1955304 Z" id="形状"></path>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>编组 77</title>
<g id="套用鹰视改" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="驾驶中心-无人机应用4-AI人脸" transform="translate(-1246.000000, -74.000000)">
<g id="编组-47备份-4" transform="translate(520.000000, 56.000000)">
<g id="编组-71" transform="translate(16.000000, 8.000000)">
<g id="编组-77" transform="translate(710.000000, 10.000000)">
<rect id="矩形" stroke="#979797" fill="#D8D8D8" opacity="0" x="0.5" y="0.5" width="23" height="23"></rect>
<g id="编组-6" transform="translate(1.000000, 1.000000)">
<rect id="矩形" x="0" y="0" width="22" height="22"></rect>
<g id="批量控制_active" transform="translate(11.000000, 11.366667) rotate(-270.000000) translate(-11.000000, -11.366667) translate(0.733333, 0.733333)" fill-rule="nonzero">
<g id="编组" transform="translate(10.266667, 10.633333) rotate(-90.000000) translate(-10.266667, -10.633333) translate(-0.366667, 0.366667)">
<path d="M15.5184731,1.1006884 C18.0846588,1.1006884 20.1649632,3.24209967 20.1649632,5.88366435 C20.1649632,8.52522902 18.0846588,10.6666403 15.5184731,10.6666403 C12.9522875,10.6666403 10.871983,8.52522902 10.871983,5.88366435 C10.871983,3.24209967 12.9522875,1.1006884 15.5184731,1.1006884 Z M16.8638021,2.96347656 L16.3716146,2.96347656 L16.3716146,8.70566406 L16.8638021,8.70566406 L16.8638021,5.11386719 C17.3794271,5.54746094 17.8442708,5.95566406 18.2583333,6.33847656 L18.5923177,5.90488281 C18.1548177,5.54550781 17.6567708,5.14902344 17.0981771,4.71542969 L16.8638021,4.97910156 L16.8638021,2.96347656 Z M13.9809896,2.91660156 C13.6880208,4.04941406 13.2505208,5.05917969 12.6684896,5.94589844 C12.7700521,6.11777344 12.8598958,6.28378906 12.9380208,6.44394531 C13.3716146,5.77988281 13.7251302,5.10214844 13.9985677,4.41074219 L15.3052083,4.41074219 C15.2348958,5.06308594 15.0786458,5.64121094 14.8364583,6.14511719 C14.6020833,5.96152344 14.3188802,5.74863281 13.986849,5.50644531 L13.6880208,5.86386719 C14.0278646,6.10214844 14.3345052,6.33652344 14.6079427,6.56699219 C14.2016927,7.24277344 13.6196615,7.80527344 12.861849,8.25449219 C12.9829427,8.40292969 13.0845052,8.54160156 13.1665365,8.67050781 C14.7134115,7.76425781 15.5903646,6.34042969 15.7973958,4.39902344 L15.7973958,3.96542969 L14.1684896,3.96542969 C14.2700521,3.67246094 14.3677083,3.36777344 14.4614583,3.05136719 L13.9809896,2.91660156 Z" id="形状结合" fill="#FFFFFF"></path>
<path d="M7.42079689,4.4594665 C6.28170576,4.4594665 5.35826664,3.50897169 5.35818343,2.33642094 C5.35810022,1.1638702 6.28140443,0.213236552 7.42049555,0.213065216 C8.55958666,0.212893879 9.48316072,1.16324972 9.48341046,2.33580045 C9.48353033,2.8989889 9.26627283,3.43915287 8.87944477,3.83743089 C8.4926167,4.23570892 7.96791435,4.4594665 7.42079689,4.4594665 L7.42079689,4.4594665 Z" id="路径" fill="#FF9600"></path>
<path d="M3.7074596,8.28141381 C2.56830961,8.28141381 1.64484608,7.33082449 1.64484608,6.15821315 C1.64484608,4.98560181 2.56830961,4.0350125 3.7074596,4.0350125 C4.84660958,4.0350125 5.77007311,4.98560181 5.77007311,6.15821315 C5.77007311,7.33082449 4.84660958,8.28141381 3.7074596,8.28141381 L3.7074596,8.28141381 Z" id="路径" fill="#FF9600"></path>
<path d="M10.3989721,16.903135 L13.1117474,16.903135 C13.3614515,16.903135 13.5638766,17.1115061 13.5638766,17.368545 C13.5638766,17.6255839 13.3614515,17.8339551 13.1117474,17.8339551 L10.3989721,17.8339551 C10.149268,17.8339551 9.94684285,17.6255839 9.94684285,17.368545 C9.94684285,17.1115061 10.149268,16.903135 10.3989721,16.903135 L10.3989721,16.903135 Z" id="路径" fill="#22B3F1"></path>
<path d="M12.1170631,14.7157077 L12.6596182,14.7157077 C13.4112188,14.7859857 13.9934864,15.4229174 14.0160058,16.199435 C14.0147949,16.3595724 13.9932105,16.5188566 13.9518035,16.6732224 C15.5469154,16.9571225 16.6157488,17.4686082 16.6157488,18.054094 C16.6143315,18.1018663 16.6051625,18.1490583 16.5886211,18.193717 C16.3987268,17.86793 15.1829514,18.054094 13.4852061,17.9172634 C13.3172315,18.0627519 13.1056341,18.1441235 12.8861349,18.1476414 L9.72123036,18.1476414 C9.48458522,18.1442624 9.25739222,18.0515108 9.08282389,17.8870118 C7.17076941,18.0103455 5.77097735,17.8404708 5.56616284,18.1941824 C5.54964596,18.1495165 5.54047773,18.1023288 5.53903509,18.0545594 C5.53903509,17.4169476 6.80499689,16.8672984 8.63883301,16.6038763 C8.6081525,16.4710172 8.59192675,16.3350569 8.59045517,16.1985041 C8.59045517,15.378917 9.09638777,14.7147769 9.72077825,14.7147769 L11.3276455,14.7147769 L13.337812,11.669599 C13.1805772,11.6129244 13.0258037,11.5492585 12.8739274,11.4787808 C12.8540337,11.4699381 12.8336879,11.4624915 12.8137942,11.4531833 C12.6722778,11.3866296 12.5361869,11.3135603 12.4019045,11.2353714 C12.3747767,11.2200129 12.3471969,11.2060506 12.3205212,11.1888304 C12.1932816,11.1120974 12.0690021,11.030278 11.9479668,10.9435593 C11.9185784,10.9226158 11.8882857,10.9030686 11.8575409,10.8816597 C11.7408916,10.7960243 11.6314763,10.7048039 11.5198004,10.6107911 C11.4899599,10.5851935 11.4592151,10.5600614 11.4293745,10.5339984 C11.3245248,10.4402607 11.2231747,10.342454 11.1255437,10.2407901 L11.0351179,10.1477081 C10.9415271,10.0467141 10.8542662,9.94246228 10.7638404,9.83541796 C10.7349041,9.79958137 10.7059678,9.76374482 10.6779358,9.72697741 C10.5959497,9.62055365 10.517882,9.51195797 10.4437329,9.40119038 C10.4157008,9.35930348 10.3885731,9.31741657 10.3614453,9.27506427 C10.2918174,9.16460694 10.2256559,9.05228798 10.1629606,8.93810737 C10.1367371,8.89156638 10.1114179,8.84083666 10.0860986,8.79150321 C10.0284956,8.67919803 9.97421516,8.56512011 9.92333213,8.44942682 C9.89891715,8.39357762 9.87811922,8.33679758 9.85415636,8.28001758 C9.80894344,8.16738833 9.7637305,8.05429369 9.72756019,7.93840659 C9.71242991,7.87295723 9.69508775,7.80807069 9.6755653,7.7438652 C9.64204896,7.63300435 9.61189242,7.52109664 9.58513948,7.40830457 C9.56795856,7.33430437 9.55439468,7.25937334 9.53992654,7.18444231 C9.51867645,7.07693259 9.4974264,6.96942287 9.48205402,6.85865529 C9.47029865,6.77348525 9.46351671,6.68738438 9.45537838,6.60174894 C9.44543155,6.50028954 9.4341283,6.39929557 9.4291549,6.29643994 C9.4241815,6.19358431 9.42689424,6.09817526 9.4291549,5.99857752 C9.4291549,5.9054955 9.42644212,5.81567137 9.4291549,5.72305478 C9.43458045,5.60297899 9.4490486,5.4824378 9.4617082,5.36189657 C9.46939441,5.28836177 9.47301142,5.21529241 9.48341041,5.14175761 C9.51099028,4.94675079 9.54761274,4.75081317 9.59463419,4.55534095 C9.96564527,3.01070926 10.9180597,1.68130799 12.242007,0.860078925 C13.5659544,0.0388498641 15.1527823,-0.20681121 16.6528234,0.177228642 C16.675882,0.183278961 16.6980363,0.192121775 16.721095,0.198637493 C16.7441536,0.205153211 16.7604302,0.204687812 16.7798718,0.209807334 C19.9116602,0.972570184 21.8497798,4.20430294 21.108783,7.42808447 C20.3677861,10.651866 17.2282733,12.6469158 14.0964848,11.884153 L12.1170631,14.7157077 Z M9.72077825,15.7735848 C9.34641525,15.7735848 9.04258442,15.7065657 9.04258442,16.1985041 C9.04258442,16.6904425 9.34641525,16.6234235 9.72077825,16.6234235 L12.8856828,16.6234235 C13.2600458,16.6234235 13.5638766,16.6904426 13.5638766,16.1985041 C13.5638766,15.7065657 13.2600458,15.7735848 12.8856828,15.7735848 L9.72077825,15.7735848 L9.72077825,15.7735848 Z M15.3271806,0.977268515 C13.3704801,0.977268515 11.606449,2.19057916 10.8576522,4.0514356 C10.1088553,5.91229204 10.5227555,8.05423045 11.9063516,9.4784683 C13.2899478,10.9027062 15.3707644,11.3287642 17.1785199,10.5579722 C18.9862754,9.78718022 20.1649632,7.9713325 20.1649632,5.95715601 C20.1649632,3.20684009 17.9990141,0.977268515 15.3271806,0.977268515 L15.3271806,0.977268515 Z M7.23406751,12.9471496 C6.60980734,12.9471496 6.10374451,12.4262216 6.10374451,11.7836244 C6.10374451,11.1410273 6.60980737,10.6200993 7.23406754,10.6200993 C7.8583277,10.6200993 8.36439059,11.1410272 8.36439059,11.7836244 C8.36439059,12.0922105 8.24530333,12.3881576 8.03332663,12.6063609 C7.82134994,12.8245642 7.53384783,12.9471496 7.23406751,12.9471496 L7.23406751,12.9471496 Z M5.19948602,10.8528043 C4.57522585,10.8528043 4.06916302,10.3318764 4.06916302,9.68927921 C4.06916302,9.04668205 4.57522588,8.52575412 5.19948604,8.52575412 C5.82374621,8.52575412 6.32980909,9.04668203 6.32980909,9.68927919 C6.32980909,9.99786525 6.21072184,10.2938124 5.99874514,10.5120157 C5.78676844,10.730219 5.49926634,10.8528043 5.19948602,10.8528043 Z M3.16490453,12.9471496 C2.54064436,12.9471496 2.03458152,12.4262216 2.03458152,11.7836244 C2.03458152,11.1410273 2.54064438,10.6200993 3.16490455,10.6200993 C3.78916472,10.6200993 4.2952276,11.1410272 4.2952276,11.7836244 C4.2952276,12.0922105 4.17614035,12.3881576 3.96416365,12.6063609 C3.75218695,12.8245642 3.46468485,12.9471496 3.16490453,12.9471496 L3.16490453,12.9471496 Z M5.19948602,12.7144445 C5.8237462,12.7144445 6.32980906,13.2353725 6.32980906,13.8779696 C6.32980906,14.5205668 5.8237462,15.0414947 5.19948602,15.0414947 C4.57522584,15.0414947 4.06916298,14.5205668 4.06916298,13.8779696 C4.06916298,13.2353725 4.57522584,12.7144445 5.19948602,12.7144445 L5.19948602,12.7144445 Z M18.4102497,18.7996809 C18.2367122,19.0815037 18.131717,19.4022294 18.1041582,19.7346897 C16.1916516,19.5652804 13.7487974,19.4628902 11.0771659,19.4628902 C5.32336945,19.4628902 0.596810571,19.9329544 0.0542555064,20.5333333 C0.0220986944,20.4789522 0.00346356089,20.4172484 -6.50423484e-14,20.353685 C-6.50423484e-14,19.2064493 4.95940541,18.2760946 11.0771659,18.2760946 C13.5309544,18.2567809 15.98255,18.4318262 18.4102497,18.7996809 L18.4102497,18.7996809 Z" id="形状" fill="#FFFFFF"></path>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<template>
<div class="control-top">
<div class="ct-date">
<div>{{date}}</div>
<div>{{week}} {{time}}</div>
</div>
<div class="ct-weather">
<img class="ctw-icon" src="./assets/images/weather/icon/day/00.png" />
<div class="ctw-wind">
<div class="ctww-line1">
<img src="./assets/images/wind.png" />
<div>东北风</div>
</div>
<div>0.2~0.6m/s</div>
</div>
</div>
<div class="ct-take-off">适宜起飞</div>
<div class="ct-info">
<!-- 避障雷达 -->
<el-tooltip
class="item"
:class="{invalid: !uavRealTimeData.obstacle || !uavRealTimeData.obstacle.enable }"
effect="dark"
:content="uavRealTimeData.obstacle && uavRealTimeData.obstacle.enable ? '避障中' : '避障未开启'"
placement="bottom"
>
<img src="./assets/images/radar.svg" />
</el-tooltip>
<!-- 网络信号 -->
<el-tooltip class="item" effect="dark" content="网络信号" placement="bottom">
<img :src="networkImg" />
</el-tooltip>
<!-- 传输方式 -->
<el-dropdown @command="onNetworkChange">
<span class="el-dropdown-link">
{{network}}
<i class="el-icon-arrow-down el-icon--right"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="2">专网</el-dropdown-item>
<el-dropdown-item :command="3">公网</el-dropdown-item>
<el-dropdown-item :command="0">自动</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
<div class="ct-info">
<!-- 降落伞 -->
<el-tooltip class="item" effect="dark" :content="parachuteState.content" placement="bottom">
<img :src="parachuteState.img" />
</el-tooltip>
<!-- gps信号 -->
<el-tooltip class="item" effect="dark" content="gps信号" placement="bottom">
<img :src="gpsImg" />
</el-tooltip>
<!-- 搜星数 -->
<el-tooltip class="item" effect="dark" content="搜星数" placement="bottom">
<div>
<img src="./assets/images/satellite.png" />
<div class="s-count">{{ satelliteCount }}</div>
</div>
</el-tooltip>
</div>
<div class="ct-info">
<!-- 接管记录 -->
<el-tooltip class="item" effect="dark" content="接管记录" placement="bottom">
<img src="./assets/images/record.svg" />
</el-tooltip>
<!-- 遥控器连接状态 -->
<el-tooltip
class="item"
effect="dark"
:content="`遥控器${uavRealTimeData.isRcConnecting == 1 ? '已连接' : '未连接'}`"
placement="bottom"
>
<img :src="controlImg" />
</el-tooltip>
<!-- 内外场权限 -->
<el-tooltip
class="item"
effect="dark"
:content="uavRealTimeData.rcState == 1 ? '内场权限' : '外场权限' "
placement="bottom"
>
<img :src="outInImg" />
</el-tooltip>
<!-- 模式选择 -->
<el-dropdown trigger="click" @command="onModeChange">
<el-button style="background: none; color: #fff;" plain type size="small">
{{ flightMode }}
<i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item
v-for="item in modeList"
v-show="!item.disabled"
:key="item.id"
:command="item.data"
>{{ item.label }}</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
</div>
</template>
<script>
import dayjs from "dayjs";
import { mapState } from "vuex";
export default {
name: "ControlTop",
data() {
return {
date: "",
week: "",
time: "",
timeHandler: null,
modeList: [
// 模型列表
{ id: 0, data: "UNKNOWN", label: "离线状态", disabled: true },
{ id: 1, data: "MANUAL", label: "手动模式", disabled: true },
{ id: 2, data: "ALTITUDE", label: "定高模式", disabled: false },
{ id: 3, data: "POSITION", label: "定点模式", disabled: false },
{ id: 4, data: "AUTO_MISSION", label: "航线模式", disabled: false },
{ id: 5, data: "ACRO", label: "特技模式", disabled: true },
{ id: 6, data: "OFF_BOARD", label: "版外模式", disabled: true },
{ id: 7, data: "STABILIZED", label: "自稳模式", disabled: true },
{ id: 8, data: "HOLD", label: "保持模式", disabled: false },
{ id: 9, data: "LAND", label: "降落模式", disabled: true },
{ id: 10, data: "TAKE_OFF", label: "起飞模式", disabled: true },
{ id: 11, data: "AUTO_RTL", label: "返航模式", disabled: false },
{
id: 12,
data: "AUTO_FOLLOW_TARGET",
label: "跟随模式",
disabled: false,
},
],
// 摇杆状态
rcChannelStateList: {
0: "摇杆中位",
"-98": "摇杆外场权限",
"-99": "摇杆未连接",
1: "俯仰偏前",
"-1": "俯仰偏后",
"-2": "横滚偏左",
2: "横滚偏右",
3: "油门偏高",
"-3": "油门偏低",
4: "航向偏右",
"-4": "航向偏左",
},
};
},
computed: {
...mapState("MMCFlightControlCenter/uav", ["uavRealTimeData"]),
// 网络判断 公网|专网
network() {
let { uavRealTimeData } = this;
let name = null;
if (uavRealTimeData && uavRealTimeData.link) {
for (let i = 0; i < uavRealTimeData.link.length; i++) {
const k = uavRealTimeData.link[i];
if (k.priority == 2 && k.using) {
return "专网";
} else if (k.priority == 3 && k.using) {
return "公网";
} else if (k.priority == 1 && k.using) {
return "图传";
}
}
}
return name || "离线";
},
/**
* 网络信号
*/
networkSignal() {
let { uavRealTimeData } = this;
if (this.network === "公网") {
if (
uavRealTimeData &&
uavRealTimeData.signal &&
uavRealTimeData.signal.sqe45
) {
if (uavRealTimeData.signal.sqe45 === -1) {
return 0;
}
return uavRealTimeData.signal.sqe45;
}
return 0;
} else if (this.network === "专网") {
if (
uavRealTimeData &&
uavRealTimeData.signal &&
uavRealTimeData.signal.sqe14
) {
if (uavRealTimeData.signal.sqe14 === -1) {
return 0;
}
return uavRealTimeData.signal.sqe14;
}
return 0;
}
},
networkImg() {
let { uavRealTimeData } = this;
if (this.network === "公网") {
return require(`./assets/images/5g-${this.networkSignal}.png`);
} else if (this.network === "专网") {
return require(`./assets/images/1.4g-${this.networkSignal}.png`);
} else {
return require(`./assets/images/5g-0.png`);
}
},
/**
* gps信号号
*/
gpsSignalCount() {
let { uavRealTimeData } = this;
if (uavRealTimeData && uavRealTimeData.gps.satelliteCount) {
let count = parseInt(uavRealTimeData.gps.satelliteCount / 6);
if (count >= 5) {
count = 5;
} else {
count += 1;
}
return uavRealTimeData.gps.satelliteCount ? count : 0;
}
return 0;
},
gpsImg() {
return require(`./assets/images/GPS-${this.gpsSignalCount}.png`);
},
/**
* 降落伞状态
*/
parachuteState() {
let { uavRealTimeData } = this;
let parachuteState = uavRealTimeData?.parachuteState || 0;
let parachute = uavRealTimeData?.parachute || 1;
let content1 = [
"正常",
"降落伞未启用",
"降落伞控制器不在线",
"降落伞伞包未连接",
"降落伞故障",
];
let content2 = ["", "降落伞进入警戒", "降落伞退出警戒", "降落伞开伞"];
if (parachute == 0) {
return {
img: require(`./assets/images/parachute-${parachuteState}.png`),
content: content2[parachuteState],
};
} else {
return {
img: require(`./assets/images/parachute-0.png`),
content: content1[parachute],
};
}
},
/**
* 搜星数
*/
satelliteCount() {
let { uavRealTimeData } = this;
if (uavRealTimeData) {
if (
uavRealTimeData.rtk &&
uavRealTimeData.rtk.type == 19 &&
uavRealTimeData.rtk.isMainSensor
) {
return uavRealTimeData?.rtk?.satelliteCount;
} else {
return uavRealTimeData?.gps?.satelliteCount || 0;
}
}
return 0;
},
/**
* 飞行模式
*/
flightMode() {
let { uavRealTimeData, modeList } = this;
let flightMode = modeList.find(
(e) => e.data == uavRealTimeData?.flightMode
);
return flightMode?.label || "离线状态";
},
controlImg() {
return this.uavRealTimeData.isRcConnecting == 1
? require("./assets/images/control-on.png")
: require("./assets/images/control-off.png");
},
outInImg() {
return this.uavRealTimeData.rcState == 1
? require("./assets/images/in.png")
: require("./assets/images/out.png");
},
},
created() {
this.updateTime();
this.timeHandler = setInterval(() => {
this.updateTime();
}, 1000);
},
beforeDestroy() {
clearInterval(this.timeHandler);
},
methods: {
updateTime() {
this.date = dayjs().format("YYYY/MM/DD");
this.time = dayjs().format("HH:mm:ss");
let week = dayjs().day();
let map = ["日", "一", "二", "三", "四", "五", "六"];
this.week = "周" + map[week];
},
/**
* 网络切换
*/
onNetworkChange(id) {
let { uavRealTimeData } = this;
if (id == 0) {
this.$store.dispatch("MMCFlightControlCenter/uav/networkChange", id);
return this.$message.success("改为自动切换模式");
} else if (id == 2) {
// 专网
if (uavRealTimeData?.link.length > 0) {
let item = uavRealTimeData?.link.filter((item) => item.priority == 2);
if (item.length > 0) {
this.$store.dispatch(
"MMCFlightControlCenter/uav/networkChange",
id
);
} else {
return this.$message.warning("暂无专网环境");
}
} else {
return this.$message.warning("暂未链接无人机");
}
} else if (id == 3) {
// 公网
if (uavRealTimeData?.link.length > 0) {
let item = uavRealTimeData?.link.filter((item) => item.priority == 3);
if (item.length > 0) {
this.$store.dispatch(
"MMCFlightControlCenter/uav/networkChange",
id
);
} else {
return this.$message.warning("暂无公网环境");
}
} else {
return this.$message.warning("暂未链接无人机");
}
}
},
/**
* 模式切换
*/
async onModeChange(data, flag) {
// 查看是否有权限接管无人机
let res = await this.$store.dispatch(
"MMCFlightControlCenter/uav/isTakeOver"
);
// 判断当前状态 true为一接管
if (res == false) {
return;
}
if (this.flightMode == "离线状态") {
return this.$message.warning("处于离线状态,不可切换模式!");
}
let mode = this.modeList.find((item) => item.data === data);
if (
mode.label == "定高模式" ||
mode.label == "定点模式" ||
mode.label == "保持模式"
) {
if (this.rcChannelState !== 0 || this.rcChannelState !== "-99") {
await this.$confirm(
`请确定是否进行${mode.label}切换,目前无人机处于${
this.rcChannelStateList[this.uavRealTimeData.rcChannelState]
}状态`,
"提示",
{
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
}
);
} else {
}
} else {
}
if (mode) {
this.$store.dispatch("MMCFlightControlCenter/uav/modeChange", {
id: mode.data,
callback: () => {
this.$message.success("操作成功");
},
});
}
},
},
};
</script>
<style lang="scss" scoped>
.control-top {
position: absolute;
top: 0;
left: 50%;
transform: translate(-50%, 0);
height: 58px;
background: #222222;
border-radius: 0px 0px 2px 2px;
backdrop-filter: blur(1px);
display: flex;
align-items: center;
font-family: MicrosoftYaHei;
font-size: 16px;
color: #ffffff;
line-height: 21px;
padding: 0 4px;
> div {
position: relative;
padding: 0 12px;
&::after {
content: "";
position: absolute;
right: 0;
top: 50%;
transform: translate(-50%, -50%);
width: 1px;
height: 32px;
background: linear-gradient(
180deg,
rgba(255, 255, 255, 0) 0%,
#ffffff 47%,
rgba(255, 255, 255, 0) 100%
);
}
}
div:nth-last-child(1) {
&::after {
display: none;
}
}
.ct-weather {
display: flex;
gap: 12px;
.ctw-icon {
width: 36px;
height: 36px;
}
.ctw-wind {
.ctww-line1 {
display: flex;
gap: 18px;
align-items: center;
img {
width: 19px;
height: 19px;
}
}
}
}
.ct-take-off {
font-family: YouSheBiaoTiHei;
font-size: 24px;
color: #6aff64;
line-height: 32px;
}
.ct-info {
display: flex;
gap: 12px;
align-items: center;
position: relative;
img {
width: 24px;
height: 24px;
}
.s-count {
position: absolute;
font-size: 10px;
right: 12px;
top: -6px;
}
}
}
.el-dropdown-link {
cursor: pointer;
color: #fff;
}
.el-icon-arrow-down {
font-size: 12px;
margin-left: 0;
}
.invalid {
opacity: 0.7;
}
</style>
\ No newline at end of file
......@@ -7,6 +7,8 @@
<ControlRight></ControlRight>
<!-- 任务 智能识别 -->
<ControlLeft></ControlLeft>
<!-- 顶部信息 -->
<ControlTop></ControlTop>
</div>
</template>
......@@ -16,6 +18,7 @@ import Moment from "moment";
import ControlBottom from "./components/controlBottom";
import ControlRight from "./components/controlRight";
import ControlLeft from "./components/controlLeft";
import ControlTop from './components/controlTop';
export default {
name: "ControlPanel",
......@@ -23,6 +26,7 @@ export default {
ControlBottom,
ControlRight,
ControlLeft,
ControlTop
},
data() {
return {
......
......@@ -159,6 +159,19 @@ const uavRealTimeData = {
text: "",
},
msgList: [], // 飞控应答消息记录
signal: null, //基站信号值
/* {
sqe14 1.4G基站信号质量,详见如下RSRP表 1.4G信号质量,详见如下RSRP-1.4G(dBm)
sqe45 4/5G基站信号质量,详见如下RSRP表 5G信号质量,详见如下RSRP-45G(dBm)
type45 公网信号值类型 5G信号类型,"4G"、"5G"
signal14 1.4G基站信号信息 List<Map<String,String>>
signal45 4/5G基站信号信息 List<Map<String,String>>
up14Link 1.4G上行速率,单位字节/秒 Long
down14Link 1.4G下行速率。单位字节/秒 Long
up45Link 4/5G上行速率,单位字节/秒 Long
down45Link 4/5G下行速率,单位字节/秒 Long
} */
flightMode: 'UNKNOWN'
};
const state = {
......@@ -300,7 +313,9 @@ const actions = {
if (type270) {
type270.timestamp = data[270].timestamp;
let findMsg = msgList.find((item) => item.timestamp === type270.timestamp);
let findMsg = msgList.find(
(item) => item.timestamp === type270.timestamp
);
if (!findMsg) {
msgList.push({
...type270,
......@@ -433,7 +448,11 @@ const actions = {
positions.push(UAVDataParser(state.uavRealTimeData).position);
}
if (state.uavRealTimeData.locationCoordinate3D.longitude !== defaultPos.longitude && !state.uavModelEntity) {
if (
state.uavRealTimeData.locationCoordinate3D.longitude !==
defaultPos.longitude &&
!state.uavModelEntity
) {
dispatch("createUavModel");
dispatch("createAirline");
dispatch("flyToUavModel");
......@@ -450,7 +469,8 @@ const actions = {
window.$mmc.$store.dispatch("MMCMQTT/subscribe", {
topic: "PX4/RECEIVE/" + state.uav.deviceId,
callback(ok) {
ok && console.log("mqtt订阅主题", "PX4/RECEIVE/" + state.uav.deviceId);
ok &&
console.log("mqtt订阅主题", "PX4/RECEIVE/" + state.uav.deviceId);
},
});
} else {
......@@ -496,7 +516,10 @@ const actions = {
topic: "PX4/RECEIVE/" + state.uav.deviceId,
callback(ok) {
ok &&
console.log("mqtt取消订阅主题", "PX4/RECEIVE/" + state.uav.deviceId);
console.log(
"mqtt取消订阅主题",
"PX4/RECEIVE/" + state.uav.deviceId
);
},
});
} else {
......@@ -875,7 +898,30 @@ const actions = {
throw "地面站链路不支持指点移动";
}
},
/**
* 模式切换
* @param {*} param0
* @param {object} data
* @param {number} data.id 模式id
* @param {function} data.callback
*/
modeChange({ state }, data){
if (state.uav.network == 2) {
window.$mmc.$store.dispatch("MMCMQTT/publish", {
topic: "PX4/OBTAIN/" + state.uav.deviceId,
data: {
type: window.$mmc.$store.state.MMCMQTT.orders.无人机模式切换,
data: data.id,
},
callback() {
data?.callback && data.callback(true);
},
});
} else {
// 地面站链路
data?.callback && data.callback(true);
}
},
/**
* 手动模式
*/
......@@ -1190,12 +1236,32 @@ const actions = {
* @param { Number } data.id 无人机id
*/
async isTakeOver({ state }, data) {
let res = await Control_API.getDeviceDetail({ id: data?.id || state.uav.id });
if (res.data.currentOperator === window.$mmc.$store.state.MMCFlightControlCenter.userInfo.userId) {
let res = await Control_API.getDeviceDetail({
id: data?.id || state.uav.id,
});
if (
res.data.currentOperator ===
window.$mmc.$store.state.MMCFlightControlCenter.userInfo.userId
) {
return true;
}
return false;
},
/**
* 网络切换
* @param {*} param0
* @param {*} data 网络类型 0自动切换,1图传、2专网,3公网
*/
networkChange({ state }, data) {
window.$mmc.$store.dispatch("MMCMQTT/publish", {
topic: "PX4/OBTAIN/" + state.uav.deviceId,
data: {
type: window.$mmc.$store.state.MMCMQTT.orders.链路切换,
data
},
callback() {},
});
},
};
export default {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论