3D Rendering: Added option to show graph's frustums, added option to filter floor and/or ceiling.

This commit is contained in:
matlabbe
2017-02-09 18:32:44 -05:00
parent e4629cc740
commit 0d0577a886
10 changed files with 1324 additions and 1048 deletions

View File

@@ -196,13 +196,15 @@ public:
void addOrUpdateFrustum(
const std::string & id,
const Transform & transform,
const Transform & localTransform,
double scale,
const QColor & color = QColor());
bool updateFrustumPose(
const std::string & id,
const Transform & pose);
void removeFrustum(const std::string & id);
void removeAllFrustums();
void removeAllFrustums(bool exceptCameraReference = false);
const QMap<std::string, Transform> & getAddedFrustums() const {return _frustums;}
void addOrUpdateGraph(
const std::string & id,
@@ -327,7 +329,7 @@ private:
std::set<std::string> _coordinates;
std::set<std::string> _texts;
std::set<std::string> _lines;
std::set<std::string> _frustums;
QMap<std::string, Transform> _frustums;
pcl::PointCloud<pcl::PointXYZ>::Ptr _trajectory;
unsigned int _maxTrajectorySize;
float _frustumScale;

View File

@@ -296,6 +296,7 @@ private:
std::map<int, std::string> _currentLabels; // <nodeId, label>
std::map<int, std::pair<pcl::PointCloud<pcl::PointXYZRGB>::Ptr, pcl::IndicesPtr> > _cachedClouds;
long _createdCloudsMemoryUsage;
std::set<int> _cachedEmptyClouds;
std::pair<int, std::pair<std::pair<pcl::PointCloud<pcl::PointXYZRGB>::Ptr, pcl::PointCloud<pcl::PointXYZRGBNormal>::Ptr>, pcl::IndicesPtr> > _previousCloud; // used for subtraction
std::map<int, cv::Mat> _createdScans;

View File

@@ -155,10 +155,14 @@ public:
bool isGroundTruthAligned() const;
bool isGraphsShown() const;
bool isFrustumsShown() const;
bool isLabelsShown() const;
double getMapVoxel() const;
double getMapNoiseRadius() const;
int getMapNoiseMinNeighbors() const;
double getVoxel() const;
double getNoiseRadius() const;
int getNoiseMinNeighbors() const;
double getCeilingFilteringHeight() const;
double getFloorFilteringHeight() const;
int getNormalKSearch() const;
bool isCloudsShown(int index) const; // 0=map, 1=odom
bool isOctomapUpdated() const;
bool isOctomapShown() const;
@@ -190,8 +194,6 @@ public:
int getSubtractFilteringMinPts() const;
double getSubtractFilteringRadius() const;
double getSubtractFilteringAngle() const;
int getNormalKSearch() const;
bool gainCompensation() const;
bool getGridMapShown() const;
double getGridMapResolution() const;;