This commit is contained in:
2020-05-21 10:11:43 +08:00
parent 80a391dc96
commit 48cac640d5
4 changed files with 19 additions and 15 deletions
+2 -5
View File
@@ -170,17 +170,14 @@ MainWindow::MainWindow(QWidget *parent)
connect(map,SIGNAL(signal_WPUpload(uint8_t,uint8_t,uint32_t)),
dlink->mavlinknode->Mission,SLOT(WriteCmd(uint8_t,uint8_t,uint32_t)),Qt::DirectConnection);
//connect(dlink->mavlinknode->Mission,SIGNAL()
qRegisterMetaType<int32_t>("int32_t");
connect(dlink->mavlinknode->Mission,SIGNAL(receivedPoint(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),
map,SLOT(receivedPoint(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),Qt::DirectConnection);
connect(map,SIGNAL(WPProperty(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),
dlink->mavlinknode->Mission,SLOT(transmitPoint(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),Qt::DirectConnection);
//connect(map,SIGNAL(WPProperty(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),
// dlink->mavlinknode->Mission,SLOT(transmitPoint(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),Qt::DirectConnection);
+3 -2
View File
@@ -140,7 +140,8 @@ void MissionProcess::transmitPoint(float param1,float param2,float param3,float
foreach (mapcontrol::WayPointItem::_property item, items) {
qDebug() << item.param1
qDebug() << "transmit seq"
<< item.param1
<< item.param2
<< item.param3
<< item.param4
@@ -159,7 +160,7 @@ void MissionProcess::transmitPoint(float param1,float param2,float param3,float
}
qDebug() << "transmit" << seq;
}
+8 -5
View File
@@ -311,7 +311,7 @@ void OPMapWidget::mouseDoubleClickEvent(QMouseEvent *event)
WayPointItem *Item = WPCreate(LatLng,50);
WPLineCreate(WPFind(Item->Number() - 1),Item,Qt::green,false,2);
//qDebug() << "OPMapWidget" << Item->Number() <<QString::number(LatLng.Lat(),'f',8) << QString::number(LatLng.Lng(),'f',8);
}
}
emit MouseDoubleClickEvent(event);
@@ -699,10 +699,10 @@ void OPMapWidget::ConnectWP(WayPointItem *item)
connect(item,SIGNAL(WPChanged(int,double,double)),this,SIGNAL(WPChanged(int,double,double)));
connect(item, SIGNAL(WPProperty(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),
this, SIGNAL(WPProperty(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)));
this, SIGNAL(WPProperty(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),Qt::DirectConnection);
connect(this, SIGNAL(setWPProperty(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),
item, SLOT(setWPProperty(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)));
item, SLOT(setWPProperty(float,float,float,float,int32_t,int32_t,float,uint16_t,uint16_t,uint16_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t,uint8_t)),Qt::DirectConnection);
//生成后立即选中,并且把信息发给ui界面
@@ -911,16 +911,17 @@ void OPMapWidget::WPUpload(void)
WayPointItem *w = qgraphicsitem_cast<WayPointItem *>(i);
if (w) {
list.append(w);
w->emitWPProperty();
//w->emitWPProperty();
}
}
qDebug() << "WPUpload" << list.size();
emit signal_WPUpload(1,0,list.size());//直接发送全部航点到
//emit signal_WPUpload(1,0,list.size());//直接发送全部航点到
}
//这个有可能是其他线程运行,导致生成的航点不对
void OPMapWidget::receivedPoint(float param1,float param2,float param3,float param4,
int32_t x,int32_t y,float z,
uint16_t seq,
@@ -943,6 +944,7 @@ void OPMapWidget::receivedPoint(float param1,float param2,float param3,float par
WayPointItem *Item = WPCreate(LatLng,z);
/*
emit setWPProperty(param1,param2,param3,param4,
x,y,z,
seq,
@@ -954,6 +956,7 @@ void OPMapWidget::receivedPoint(float param1,float param2,float param3,float par
current,
autocontinue,
mission_type);
*/
WPLineCreate(WPFind(Item->Number() - 1),Item,Qt::green,false,2);
+6 -3
View File
@@ -544,6 +544,8 @@ void WayPointItem::setWPProperty(float param1,float param2,float param3,float pa
{
if(seq == property.seq)
{
qDebug() << seq << "set property";
property.param1 = param1;
property.param2 = param2;
property.param3 = param3;
@@ -558,9 +560,6 @@ void WayPointItem::setWPProperty(float param1,float param2,float param3,float pa
property.current = current;
property.autocontinue = autocontinue;
property.mission_type = mission_type;
qDebug() << seq << "set property";
}
}
@@ -568,6 +567,8 @@ void WayPointItem::setWPProperty(float param1,float param2,float param3,float pa
void WayPointItem::emitWPProperty(void)
{
//发送航点的属性
qDebug() << property.seq << "emit property";
emit WPProperty(property.param1,property.param2,property.param3,property.param4,
property.x,property.y,property.z,
property.seq,
@@ -579,6 +580,8 @@ void WayPointItem::emitWPProperty(void)
property.current,
property.autocontinue,
property.mission_type);
}
void WayPointItem::SetDefault(double lat,double lng,float alt,uint16_t seq)