fixed sending goal command

This commit is contained in:
matlabbe
2015-08-04 14:16:29 -04:00
parent e7e55cf904
commit 235ff77337
4 changed files with 12 additions and 9 deletions

View File

@@ -73,7 +73,7 @@ public:
kCmdResume, kCmdResume,
kCmdGoal, // params: [string] label or [int] location ID kCmdGoal, // params: [string] label or [int] location ID
kCmdCancelGoal, kCmdCancelGoal,
kCmdLabel // params: [string] label or [int] location ID kCmdLabel // params: [string] label, [int] location ID
}; };
public: public:
RtabmapEventCmd(Cmd cmd, const ParametersMap & parameters = ParametersMap()) : RtabmapEventCmd(Cmd cmd, const ParametersMap & parameters = ParametersMap()) :

View File

@@ -434,10 +434,11 @@ void RtabmapThread::handleEvent(UEvent* event)
else if(cmd == RtabmapEventCmd::kCmdLabel) else if(cmd == RtabmapEventCmd::kCmdLabel)
{ {
ULOGGER_DEBUG("CMD_LABEL"); ULOGGER_DEBUG("CMD_LABEL");
UASSERT(rtabmapEvent->value1().isStr() || rtabmapEvent->value1().isInt() || rtabmapEvent->value1().isUInt()); UASSERT(rtabmapEvent->value1().isStr());
UASSERT(rtabmapEvent->value2().isUndef() || rtabmapEvent->value2().isInt() || rtabmapEvent->value2().isUInt());
ParametersMap param; ParametersMap param;
param.insert(ParametersPair("label", rtabmapEvent->value1().isStr()?rtabmapEvent->value1().toStr():"")); param.insert(ParametersPair("label", rtabmapEvent->value1().toStr()));
param.insert(ParametersPair("id", !rtabmapEvent->value1().isStr()?rtabmapEvent->value1().toStr():"0")); param.insert(ParametersPair("id", rtabmapEvent->value2().isUndef()?"0":rtabmapEvent->value2().toStr()));
pushNewState(kStateLabelling, param); pushNewState(kStateLabelling, param);
} }
else else

View File

@@ -168,7 +168,6 @@ private slots:
void changeDetectionRateSetting(); void changeDetectionRateSetting();
void changeTimeLimitSetting(); void changeTimeLimitSetting();
void changeMappingMode(); void changeMappingMode();
void captureScreen();
void setAspectRatio(int w, int h); void setAspectRatio(int w, int h);
void setAspectRatio16_9(); void setAspectRatio16_9();
void setAspectRatio16_10(); void setAspectRatio16_10();
@@ -224,6 +223,7 @@ private:
void saveFigures(); void saveFigures();
void loadFigures(); void loadFigures();
void exportPoses(int format); void exportPoses(int format);
QString captureScreen();
pcl::PointCloud<pcl::PointXYZRGB>::Ptr getAssembledCloud( pcl::PointCloud<pcl::PointXYZRGB>::Ptr getAssembledCloud(
const std::map<int, Transform> & poses, const std::map<int, Transform> & poses,

View File

@@ -2555,7 +2555,7 @@ void MainWindow::changeMappingMode()
emit mappingModeChanged(_ui->actionSLAM_mode->isChecked()); emit mappingModeChanged(_ui->actionSLAM_mode->isChecked());
} }
void MainWindow::captureScreen() QString MainWindow::captureScreen()
{ {
QString targetDir = _preferencesDialog->getWorkingDirectory() + QDir::separator() + "ScreensCaptured"; QString targetDir = _preferencesDialog->getWorkingDirectory() + QDir::separator() + "ScreensCaptured";
QDir dir; QDir dir;
@@ -2577,6 +2577,8 @@ void MainWindow::captureScreen()
QString msg = tr("Screen captured \"%1\"").arg(targetDir + name); QString msg = tr("Screen captured \"%1\"").arg(targetDir + name);
_ui->statusbar->showMessage(msg, _preferencesDialog->getTimeLimit()*500); _ui->statusbar->showMessage(msg, _preferencesDialog->getTimeLimit()*500);
_ui->widget_console->appendMsg(msg); _ui->widget_console->appendMsg(msg);
return targetDir + name;
} }
void MainWindow::beep() void MainWindow::beep()
@@ -3832,7 +3834,7 @@ void MainWindow::sendGoal()
{ {
_ui->graphicsView_graphView->setGlobalPath(std::vector<std::pair<int, Transform> >()); // clear _ui->graphicsView_graphView->setGlobalPath(std::vector<std::pair<int, Transform> >()); // clear
UINFO("Posting event with goal %d", id); UINFO("Posting event with goal %d", id);
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGoal, "", id)); this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGoal, id));
} }
} }
@@ -4106,7 +4108,7 @@ void MainWindow::selectScreenCaptureFormat(bool checked)
void MainWindow::takeScreenshot() void MainWindow::takeScreenshot()
{ {
this->captureScreen(); QDesktopServices::openUrl(QUrl::fromLocalFile(this->captureScreen()));
} }
void MainWindow::setAspectRatio(int w, int h) void MainWindow::setAspectRatio(int w, int h)
@@ -5184,7 +5186,7 @@ void MainWindow::changeState(MainWindow::State newState)
_ui->actionDump_the_memory->setVisible(!monitoring); _ui->actionDump_the_memory->setVisible(!monitoring);
_ui->actionDump_the_prediction_matrix->setVisible(!monitoring); _ui->actionDump_the_prediction_matrix->setVisible(!monitoring);
_ui->actionGenerate_map->setVisible(!monitoring); _ui->actionGenerate_map->setVisible(!monitoring);
_ui->menuExport_poses->setEnabled(!monitoring); _ui->menuExport_poses->menuAction()->setVisible(!monitoring);
_ui->actionOpen_working_directory->setVisible(!monitoring); _ui->actionOpen_working_directory->setVisible(!monitoring);
_ui->actionData_recorder->setVisible(!monitoring); _ui->actionData_recorder->setVisible(!monitoring);
_ui->menuSelect_source->menuAction()->setVisible(!monitoring); _ui->menuSelect_source->menuAction()->setVisible(!monitoring);