添加地图上移动围栏的功能

This commit is contained in:
hm
2022-05-18 18:04:15 +08:00
parent 0574b2d49e
commit af95cccf82
12 changed files with 418 additions and 29 deletions
+25
View File
@@ -2090,6 +2090,9 @@ void OPMapWidget::addCircle()
//生成一个⚪
geoFencecircle *c = new geoFencecircle(fenceCount,inclusion,version,internals::PointLatLng(lat,lng),radius,QColor("#FF8000"),map);
emit createFenceCircle(fenceCount++,radius,inclusion,lat,lng);
connect(c,SIGNAL(updateFenceCircle(int,qreal,bool,qreal,qreal)),
this,SIGNAL(updateFenceCircle(int,qreal,bool,qreal,qreal)));
}
void OPMapWidget::addPolygon()
@@ -2126,10 +2129,15 @@ void OPMapWidget::addPolygon()
geoFenceitem *polyitem = new geoFenceitem(fenceCount,inclusion,version,center,QColor("#FF8000"),map);
polyitem->setPoints(points);
emit createFencePolygon(fenceCount++,latlng.size(),inclusion,latlng);
connect(polyitem,SIGNAL(updateFencePolygon(int,qreal,bool,QList<QPointF>)),
this,SIGNAL(updateFencePolygon(int,qreal,bool,QList<QPointF>)));
}
void OPMapWidget::delFence(int group)
@@ -2226,6 +2234,9 @@ void OPMapWidget::WPLoad(QString path)//带文件目录参数
polyitem->setPoints(points);
emit createFencePolygon(fenceCount++,points.size(),inclusion,latlng);
connect(polyitem,SIGNAL(updateFencePolygon(int,qreal,bool,QList<QPointF>)),
this,SIGNAL(updateFencePolygon(int,qreal,bool,QList<QPointF>)));
}
QJsonArray circlesArray = json.value("geoFence").toObject().value("circles").toArray();
@@ -2246,6 +2257,9 @@ void OPMapWidget::WPLoad(QString path)//带文件目录参数
geoFencecircle *c = new geoFencecircle(fenceCount,inclusion,version,internals::PointLatLng(lat,lng),radius,QColor("#FF8000"),map);
emit createFenceCircle(fenceCount++,radius,inclusion,lat,lng);
connect(c,SIGNAL(updateFenceCircle(int,qreal,bool,qreal,qreal)),
this,SIGNAL(updateFenceCircle(int,qreal,bool,qreal,qreal)));
}
@@ -2941,6 +2955,9 @@ void OPMapWidget::receivedPoint(float param1,float param2,float param3,float par
emit createFencePolygon(fenceCount++,PolygonPoints.size(),inclusion,latlng);
connect(polyitem,SIGNAL(updateFencePolygon(int,qreal,bool,QList<QPointF>)),
this,SIGNAL(updateFencePolygon(int,qreal,bool,QList<QPointF>)));
PolygonCount = 0;
PolygonPoints.clear();
}
@@ -2985,6 +3002,9 @@ void OPMapWidget::receivedPoint(float param1,float param2,float param3,float par
emit createFencePolygon(fenceCount++,PolygonPoints.size(),inclusion,latlng);
connect(polyitem,SIGNAL(updateFencePolygon(int,qreal,bool,QList<QPointF>)),
this,SIGNAL(updateFencePolygon(int,qreal,bool,QList<QPointF>)));
PolygonCount = 0;
PolygonPoints.clear();
}
@@ -2997,6 +3017,8 @@ void OPMapWidget::receivedPoint(float param1,float param2,float param3,float par
geoFencecircle *c = new geoFencecircle(fenceCount++,inclusion,0,internals::PointLatLng(x * 10e-8,y * 10e-8),radius,QColor("#FF8000"),map);
emit createFenceCircle(0,radius,inclusion,x * 10e-8,y * 10e-8);
connect(c,SIGNAL(updateFenceCircle(int,qreal,bool,qreal,qreal)),
this,SIGNAL(updateFenceCircle(int,qreal,bool,qreal,qreal)));
}
else if(command == MAV_CMD_NAV_FENCE_CIRCLE_EXCLUSION )
{
@@ -3005,6 +3027,9 @@ void OPMapWidget::receivedPoint(float param1,float param2,float param3,float par
geoFencecircle *c = new geoFencecircle(fenceCount++,inclusion,0,internals::PointLatLng(x * 10e-8,y * 10e-8),radius,QColor("#FF8000"),map);
emit createFenceCircle(0,radius,inclusion,x * 10e-8,y * 10e-8);
connect(c,SIGNAL(updateFenceCircle(int,qreal,bool,qreal,qreal)),
this,SIGNAL(updateFenceCircle(int,qreal,bool,qreal,qreal)));
}
else if(command == MAV_CMD_NAV_RALLY_POINT )
{