@@ -56,6 +56,7 @@ DBReader::DBReader(const std::string & databasePath,
5656 int startMapId,
5757 int stopMapId,
5858 bool priorsIgnored,
59+ bool imuIgnored,
5960 const std::vector<Transform> & cameraLocalTransformOverrides) :
6061 Camera (frameRate),
6162 _paths (uSplit(databasePath, ' ;' )),
@@ -69,6 +70,7 @@ DBReader::DBReader(const std::string & databasePath,
6970 _landmarksIgnored (landmarksIgnored),
7071 _featuresIgnored (featuresIgnored),
7172 _priorsIgnored (priorsIgnored),
73+ _imuIgnored (imuIgnored),
7274 _startMapId (startMapId),
7375 _stopMapId (stopMapId),
7476 _cameraLocalTransformOverrides (cameraLocalTransformOverrides),
@@ -96,6 +98,7 @@ DBReader::DBReader(const std::list<std::string> & databasePaths,
9698 int startMapId,
9799 int stopMapId,
98100 bool priorsIgnored,
101+ bool imuIgnored,
99102 const std::vector<Transform> & cameraLocalTransformOverrides) :
100103 Camera (frameRate),
101104 _paths (databasePaths),
@@ -109,6 +112,7 @@ DBReader::DBReader(const std::list<std::string> & databasePaths,
109112 _landmarksIgnored (landmarksIgnored),
110113 _featuresIgnored (featuresIgnored),
111114 _priorsIgnored (priorsIgnored),
115+ _imuIgnored (imuIgnored),
112116 _startMapId (startMapId),
113117 _stopMapId (stopMapId),
114118 _cameraLocalTransformOverrides (cameraLocalTransformOverrides),
@@ -463,14 +467,17 @@ SensorData DBReader::getNextData(SensorCaptureInfo * info)
463467 }
464468
465469 Transform gravityTransform;
466- std::multimap<int , Link> gravityLinks;
467- _dbDriver->loadLinks (*_currentId, gravityLinks, Link::kGravity );
468- if ( gravityLinks.size () &&
469- !gravityLinks.begin ()->second .transform ().isNull () &&
470- gravityLinks.begin ()->second .infMatrix ().cols == 6 &&
471- gravityLinks.begin ()->second .infMatrix ().rows == 6 )
470+ if (!_imuIgnored)
472471 {
473- gravityTransform = gravityLinks.begin ()->second .transform ();
472+ std::multimap<int , Link> gravityLinks;
473+ _dbDriver->loadLinks (*_currentId, gravityLinks, Link::kGravity );
474+ if ( gravityLinks.size () &&
475+ !gravityLinks.begin ()->second .transform ().isNull () &&
476+ gravityLinks.begin ()->second .infMatrix ().cols == 6 &&
477+ gravityLinks.begin ()->second .infMatrix ().rows == 6 )
478+ {
479+ gravityTransform = gravityLinks.begin ()->second .transform ();
480+ }
474481 }
475482
476483 Landmarks landmarks;
0 commit comments