fixed DatabaseViewer Export's options

This commit is contained in:
Mathieu Labbe
2015-05-06 13:05:32 -04:00
parent 0d73a20c82
commit 1f8fc91f46
4 changed files with 43 additions and 13 deletions

View File

@@ -723,11 +723,29 @@ void DatabaseViewer::exportDatabase()
int id = ids.at(i);
Signature data = memory_->getSignatureData(id, true);
rtabmap::SensorData sensorData = data.toSensorData();
if(!dialog.isUserDataExported())
float rotVariance = 1.0f;
float transVariance = 1.0f;
if(dialog.isOdomExported())
{
sensorData.setUserData(std::vector<unsigned char>());
data.getPoseVariance(rotVariance, transVariance);
}
rtabmap::SensorData sensorData(
dialog.isDepth2dExported()?data.getLaserScanRaw():cv::Mat(),
dialog.isDepth2dExported()?data.getLaserScanMaxPts():0,
dialog.isRgbExported()?data.getImageRaw():cv::Mat(),
dialog.isDepthExported()?data.getDepthRaw():cv::Mat(),
dialog.isRgbExported() || dialog.isDepthExported()?data.getFx():0,
dialog.isRgbExported() || dialog.isDepthExported()?data.getFy():0,
dialog.isRgbExported() || dialog.isDepthExported()?data.getCx():0,
dialog.isRgbExported() || dialog.isDepthExported()?data.getCy():0,
dialog.isRgbExported() || dialog.isDepthExported()?data.getLocalTransform():Transform::getIdentity(),
dialog.isOdomExported()?data.getPose():Transform(),
rotVariance,
transVariance,
data.id(),
data.getStamp(),
dialog.isUserDataExported()?data.getUserData():std::vector<unsigned char>());
recorder.addData(sensorData);
progressDialog->appendText(tr("Exported node %1").arg(id));