CloudViewer: Added local transformation between base frame and camera frame (when they are not the same)

This commit is contained in:
matlabbe
2016-05-17 16:32:21 -04:00
parent 2db6b2ceef
commit 0ae131108d
4 changed files with 125 additions and 26 deletions

View File

@@ -142,7 +142,8 @@ public:
void removeOccupancyGridMap();
void updateCameraTargetPosition(
const Transform & pose);
const Transform & pose,
const Transform & localTransform = Transform::getIdentity());
void addOrUpdateCoordinate(
const std::string & id,
@@ -154,6 +155,14 @@ public:
void removeCoordinate(const std::string & id);
void removeAllCoordinates();
void addOrUpdateArrow(
const std::string & id,
const Transform & from,
const Transform & to,
const QColor & color);
void removeArrow(const std::string & id);
void removeAllArrows();
void addOrUpdateFrustum(
const std::string & id,
const Transform & transform,
@@ -282,6 +291,7 @@ private:
std::set<std::string> _graphes;
std::set<std::string> _coordinates;
std::set<std::string> _texts;
std::set<std::string> _arrows;
std::set<std::string> _frustums;
pcl::PointCloud<pcl::PointXYZ>::Ptr _trajectory;
unsigned int _maxTrajectorySize;

View File

@@ -229,7 +229,6 @@ private:
void update3DMapVisibility(bool cloudsShown, bool scansShown);
void updateMapCloud(
const std::map<int, Transform> & poses,
const Transform & pose,
const std::multimap<int, Link> & constraints,
const std::map<int, int> & mapIds,
const std::map<int, std::string> & labels,