#include <trgen.h>
#include "PlaygroundScene.h"
+#include "playgroundview.h"
#include "Robot.h"
+#include "Map.h"
#include <roboorte_robottype.h>
#include "trail.h"
#include "hokuyoscan.h"
class QSlider;
class QProgressBar;
class QFont;
+class QImage;
class RobomonAtlantis : public QWidget
{
void motionStatusReceivedSignal();
void actualPositionReceivedSignal();
void powerVoltageReceivedSignal();
-
+
public slots:
void showMap(bool show);
+ void useOpenGL(bool use);
void showTrails(bool show);
+ void showShapeDetect(bool show);
void resetTrails();
private slots:
/************************************************************
- * GUI actions
+ * GUI actions
************************************************************/
void setVoltage33(int state);
void setVoltage50(int state);
void setVoltage80(int state);
- void setLeftMotor(int value);
- void setRightMotor(int value);
- void stopMotors();
+/* void setLeftMotor(int value); */
+/* void setRightMotor(int value); */
+/* void stopMotors(); */
void paintMap();
void setSimulation(int state);
void setObstacleSimulation(int state);
void simulateObstaclesHokuyo();
void changeObstacle(QPointF position);
void sendStart(int plug);
+ void setTeamColor(int plug);
+ void changeStrategy_1();
+ void changeStrategy_0();
/************************************************************
- * ORTE
+ * ORTE
************************************************************/
void motionStatusReceived();
void actualPositionReceived();
void createRobots();
void createActions();
+ void createMap();
QVBoxLayout *leftLayout;
QVBoxLayout *rightLayout;
QGroupBox *miscGroupBox;
QGroupBox *debugGroupBox;
QGroupBox *actuatorsGroupBox;
- QGroupBox *enginesGroupBox;
QGroupBox *powerGroupBox;
QGroupBox *fsmGroupBox;
+public:
PlaygroundScene *playgroundScene;
- QGraphicsView *playgroundSceneView;
+private:
+ PlaygroundView *playgroundSceneView;
/* position state */
QLineEdit *actPosX;
bool debugWindowEnabled;
/* actuators */
- QSlider *leftMotorSlider;
- QSlider *rightMotorSlider;
- QCheckBox *bothMotorsCheckBox;
- QPushButton *stopMotorsPushButton;
+/* QSlider *leftMotorSlider; */
+/* QSlider *rightMotorSlider; */
+/* QCheckBox *bothMotorsCheckBox; */
+/* QPushButton *stopMotorsPushButton; */
+ //QDial *vidle;
/* power management */
QCheckBox *voltage33CheckBox;
QLabel *fsm_act_state;
QLabel *fsm_motion_state;
QCheckBox *startPlug;
- QCheckBox *puckInside;
+ QCheckBox *colorChoser;
+ QPushButton *strategyButton;
public:
/* robot */
Robot *robotRefPos;
Robot *robotEstPosBest;
Robot *robotEstPosIndepOdo;
Robot *robotEstPosOdo;
+
+ Map *mapImage;
private:
Trail *trailRefPos;
Trail *trailEstPosBest;
void openSharedMemory();
bool sharedMemoryOpened;
QTimer *mapTimer;
-
+
/* obstacle simulation */
double distanceToWallHokuyo(int beamnum);
double distanceToObstacleHokuyo(int beamnum, Point obstacle, double obstacleSize);
+ double distanceToCircularObstacleHokuyo(int beamnum, Point center, double diameter);
int simulationEnabled;
QTimer *obstacleSimulationTimer;
Point simulatedObstacle;
/************************************************************
- * ORTE
+ * ORTE
************************************************************/
void createOrte();