Browse Source

Merge branch 'experimental' into dev

QGC4.4
pixhawk 14 years ago
parent
commit
c88d83e84d
  1. 6
      qgroundcontrol.pro
  2. 2
      src/comm/MAVLinkSimulationLink.h
  3. 12
      src/comm/MAVLinkSwarmSimulationLink.cc
  4. 19
      src/comm/MAVLinkSwarmSimulationLink.h
  5. 9
      src/ui/MapWidget.cc
  6. 31
      src/ui/map/MAV2DIcon.cc
  7. 9
      src/ui/map3D/Pixhawk3DWidget.cc

6
qgroundcontrol.pro

@ -250,7 +250,8 @@ HEADERS += src/MG.h \ @@ -250,7 +250,8 @@ HEADERS += src/MG.h \
src/ui/SlugsPIDControl.h \
src/ui/SlugsVideoCamControl.h \
src/ui/SlugsPadCameraControl.h \
src/ui/QGCMainWindowAPConfigurator.h
src/ui/QGCMainWindowAPConfigurator.h \
src/comm/MAVLinkSwarmSimulationLink.h
contains(DEPENDENCIES_PRESENT, osg) {
message("Including headers for OpenSceneGraph")
@ -361,7 +362,8 @@ SOURCES += src/main.cc \ @@ -361,7 +362,8 @@ SOURCES += src/main.cc \
src/ui/SlugsPIDControl.cpp \
src/ui/SlugsVideoCamControl.cpp \
src/ui/SlugsPadCameraControl.cpp \
src/ui/QGCMainWindowAPConfigurator.cc
src/ui/QGCMainWindowAPConfigurator.cc \
src/comm/MAVLinkSwarmSimulationLink.cc
contains(DEPENDENCIES_PRESENT, osg) {
message("Including sources for OpenSceneGraph")

2
src/comm/MAVLinkSimulationLink.h

@ -85,7 +85,7 @@ public: @@ -85,7 +85,7 @@ public:
public slots:
void writeBytes(const char* data, qint64 size);
void readBytes();
void mainloop();
virtual void mainloop();
bool connectLink(bool connect);

12
src/comm/MAVLinkSwarmSimulationLink.cc

@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
#include "MAVLinkSwarmSimulationLink.h"
MAVLinkSwarmSimulationLink::MAVLinkSwarmSimulationLink(QObject *parent) :
MAVLinkSimulationLink()
{
}
void MAVLinkSwarmSimulationLink::mainloop()
{
}

19
src/comm/MAVLinkSwarmSimulationLink.h

@ -0,0 +1,19 @@ @@ -0,0 +1,19 @@
#ifndef MAVLINKSWARMSIMULATIONLINK_H
#define MAVLINKSWARMSIMULATIONLINK_H
#include "MAVLinkSimulationLink.h"
class MAVLinkSwarmSimulationLink : public MAVLinkSimulationLink
{
Q_OBJECT
public:
explicit MAVLinkSwarmSimulationLink(QObject *parent = 0);
signals:
public slots:
void mainloop();
};
#endif // MAVLINKSWARMSIMULATIONLINK_H

9
src/ui/MapWidget.cc

@ -593,21 +593,12 @@ void MapWidget::updateGlobalPosition(UASInterface* uas, double lat, double lon, @@ -593,21 +593,12 @@ void MapWidget::updateGlobalPosition(UASInterface* uas, double lat, double lon,
uasTrails.value(uas->getUASID())->addPoint(new qmapcontrol::Point(lat, lon, QString("lat: %1 lon: %2").arg(lat, lon)));
}
// points.append(new CirclePoint(8.275145, 50.016992, 15, "Wiesbaden-Mainz-Kastel, Johannes-Goßner-Straße", Point::Middle, pointpen));
// points.append(new CirclePoint(8.270476, 50.021426, 15, "Wiesbaden-Mainz-Kastel, Ruthof", Point::Middle, pointpen));
// // "Blind" Points
// points.append(new Point(8.266445, 50.025913, "Wiesbaden-Mainz-Kastel, Mudra Kaserne"));
// points.append(new Point(8.260378, 50.030345, "Wiesbaden-Mainz-Amoneburg, Dyckerhoffstraße"));
// Connect click events of the layer to this object
// connect(osmLayer, SIGNAL(geometryClicked(Geometry*, QPoint)),
// this, SLOT(geometryClicked(Geometry*, QPoint)));
// Sets the view to the interesting area
//QList<QPointF> view;
//view.append(QPointF(8.24764, 50.0319));
//view.append(QPointF(8.28412, 49.9998));
// mc->setView(view);
updatePosition(0, lat, lon);
}
}

31
src/ui/map/MAV2DIcon.cc

@ -14,7 +14,10 @@ MAV2DIcon::MAV2DIcon(qreal x, qreal y, QString name, Alignment alignment, QPen* @@ -14,7 +14,10 @@ MAV2DIcon::MAV2DIcon(qreal x, qreal y, QString name, Alignment alignment, QPen*
{
int radius = 10;
size = QSize(radius, radius);
if (pen)
{
drawIcon(pen);
}
}
MAV2DIcon::~MAV2DIcon()
@ -24,8 +27,11 @@ MAV2DIcon::~MAV2DIcon() @@ -24,8 +27,11 @@ MAV2DIcon::~MAV2DIcon()
void MAV2DIcon::setPen(QPen* pen)
{
if (pen)
{
mypen = pen;
drawIcon(pen);
}
}
/**
@ -38,6 +44,8 @@ void MAV2DIcon::setYaw(float yaw) @@ -38,6 +44,8 @@ void MAV2DIcon::setYaw(float yaw)
void MAV2DIcon::drawIcon(QPen* pen)
{
if (pen)
{
mypixmap = new QPixmap(radius+1, radius+1);
mypixmap->fill(Qt::transparent);
QPainter painter(mypixmap);
@ -54,17 +62,17 @@ void MAV2DIcon::drawIcon(QPen* pen) @@ -54,17 +62,17 @@ void MAV2DIcon::drawIcon(QPen* pen)
// Left point
poly.replace(2, QPointF(p.x()+waypointSize/2.0f, p.y() + waypointSize/2.0f));
// // Select color based on if this is the current waypoint
// if (list.at(i)->getCurrent())
// {
// color = QGC::colorCyan;//uas->getColor();
// pen.setWidthF(refLineWidthToPen(0.8f));
// }
// else
// {
// color = uas->getColor();
// pen.setWidthF(refLineWidthToPen(0.4f));
// }
// // Select color based on if this is the current waypoint
// if (list.at(i)->getCurrent())
// {
// color = QGC::colorCyan;//uas->getColor();
// pen.setWidthF(refLineWidthToPen(0.8f));
// }
// else
// {
// color = uas->getColor();
// pen.setWidthF(refLineWidthToPen(0.4f));
// }
//pen.setColor(color);
if (pen)
@ -80,4 +88,5 @@ void MAV2DIcon::drawIcon(QPen* pen) @@ -80,4 +88,5 @@ void MAV2DIcon::drawIcon(QPen* pen)
}
painter.setBrush(Qt::NoBrush);
painter.drawPolygon(poly);
}
}

9
src/ui/map3D/Pixhawk3DWidget.cc

@ -393,6 +393,15 @@ Pixhawk3DWidget::findVehicleModels(void) @@ -393,6 +393,15 @@ Pixhawk3DWidget::findVehicleModels(void)
// add Pixhawk Bravo model
nodes.push_back(PixhawkCheetahGeode::instance());
// add sphere of 0.05m radius
osg::ref_ptr<osg::Sphere> sphere = new osg::Sphere(osg::Vec3f(0.0f, 0.0f, 0.0f), 0.05f);
osg::ref_ptr<osg::ShapeDrawable> sphereDrawable = new osg::ShapeDrawable(sphere);
sphereDrawable->setColor(osg::Vec4f(0.5f, 0.0f, 0.5f, 1.0f));
osg::ref_ptr<osg::Geode> sphereGeode = new osg::Geode;
sphereGeode->addDrawable(sphereDrawable);
sphereGeode->setName("Sphere (0.1m)");
nodes.push_back(sphereGeode);
// add all other models in folder
for (int i = 0; i < files.size(); ++i)
{

Loading…
Cancel
Save