Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
PointCloudDrawable Class Reference

#include <point_cloud_drawable.h>

Public Member Functions

const pcl::PointXYZ & aabbMaxModel () const
 
const pcl::PointXYZ & aabbMaxWorld () const
 
const pcl::PointXYZ & aabbMinModel () const
 
const pcl::PointXYZ & aabbMinWorld () const
 
float getMinHeight () const
 
rtabmap::Transform getPose () const
 
const glm::mat4getPoseGl () const
 
bool hasMesh () const
 
bool hasTexture () const
 
bool isVisible () const
 
 PointCloudDrawable (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud, const pcl::IndicesPtr &indices, float gainR=1.0f, float gainG=1.0f, float gainB=1.0f)
 
 PointCloudDrawable (const rtabmap::Mesh &mesh, bool createWireframe=false)
 
void Render (const glm::mat4 &projectionMatrix, const glm::mat4 &viewMatrix, bool meshRendering=true, float pointSize=3.0f, bool textureRendering=false, bool lighting=true, float distanceToCamSqr=0.0f, const GLuint &depthTexture=0, int screenWidth=0, int screenHeight=0, float nearClipPlane=0, float farClipPlane=0, bool packDepthToColorChannel=false, bool wireFrame=false) const
 
void setGains (float gainR, float gainG, float gainB)
 
void setPose (const rtabmap::Transform &pose)
 
void setVisible (bool visible)
 
void updateCloud (const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &cloud, const pcl::IndicesPtr &indices)
 
void updateMesh (const rtabmap::Mesh &mesh, bool createWireframe=false)
 
void updatePolygons (const std::vector< pcl::Vertices > &polygons, const std::vector< pcl::Vertices > &polygonsLowRes=std::vector< pcl::Vertices >(), bool createWireframe=false)
 
virtual ~PointCloudDrawable ()
 

Static Public Member Functions

static void createShaderPrograms ()
 
static void releaseShaderPrograms ()
 

Private Member Functions

template<class PointT >
void updateAABBMinMax (const PointT &pt, pcl::PointXYZ &min, pcl::PointXYZ &max)
 
void updateAABBWorld (const rtabmap::Transform &pose)
 

Private Attributes

pcl::PointXYZ aabbMaxModel_
 
pcl::PointXYZ aabbMaxWorld_
 
pcl::PointXYZ aabbMinModel_
 
pcl::PointXYZ aabbMinWorld_
 
float gainB_
 
float gainG_
 
float gainR_
 
bool hasNormals_
 
std::vector< GLuintindex_buffers_
 
std::vector< intindex_buffers_count_
 
float minHeight_
 
int nPoints_
 
std::vector< unsigned intorganizedToDenseIndices_
 
rtabmap::Transform pose_
 
glm::mat4 poseGl_
 
GLuint texture_
 
GLuint vertex_buffer_
 
bool visible_
 

Static Private Attributes

static std::vector< GLuintshaderPrograms_
 

Detailed Description

Definition at line 44 of file point_cloud_drawable.h.

Constructor & Destructor Documentation

◆ PointCloudDrawable() [1/2]

PointCloudDrawable::PointCloudDrawable ( const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &  cloud,
const pcl::IndicesPtr &  indices,
float  gainR = 1.0f,
float  gainG = 1.0f,
float  gainB = 1.0f 
)

Definition at line 306 of file point_cloud_drawable.cpp.

◆ PointCloudDrawable() [2/2]

PointCloudDrawable::PointCloudDrawable ( const rtabmap::Mesh mesh,
bool  createWireframe = false 
)

Definition at line 328 of file point_cloud_drawable.cpp.

◆ ~PointCloudDrawable()

PointCloudDrawable::~PointCloudDrawable ( )
virtual

Definition at line 347 of file point_cloud_drawable.cpp.

Member Function Documentation

◆ aabbMaxModel()

const pcl::PointXYZ& PointCloudDrawable::aabbMaxModel ( ) const
inline

Definition at line 77 of file point_cloud_drawable.h.

◆ aabbMaxWorld()

const pcl::PointXYZ& PointCloudDrawable::aabbMaxWorld ( ) const
inline

Definition at line 79 of file point_cloud_drawable.h.

◆ aabbMinModel()

const pcl::PointXYZ& PointCloudDrawable::aabbMinModel ( ) const
inline

Definition at line 76 of file point_cloud_drawable.h.

◆ aabbMinWorld()

const pcl::PointXYZ& PointCloudDrawable::aabbMinWorld ( ) const
inline

Definition at line 78 of file point_cloud_drawable.h.

◆ createShaderPrograms()

void PointCloudDrawable::createShaderPrograms ( )
static

Definition at line 269 of file point_cloud_drawable.cpp.

◆ getMinHeight()

float PointCloudDrawable::getMinHeight ( ) const
inline

Definition at line 75 of file point_cloud_drawable.h.

◆ getPose()

rtabmap::Transform PointCloudDrawable::getPose ( ) const
inline

Definition at line 70 of file point_cloud_drawable.h.

◆ getPoseGl()

const glm::mat4& PointCloudDrawable::getPoseGl ( ) const
inline

Definition at line 71 of file point_cloud_drawable.h.

◆ hasMesh()

bool PointCloudDrawable::hasMesh ( ) const
inline

Definition at line 73 of file point_cloud_drawable.h.

◆ hasTexture()

bool PointCloudDrawable::hasTexture ( ) const
inline

Definition at line 74 of file point_cloud_drawable.h.

◆ isVisible()

bool PointCloudDrawable::isVisible ( ) const
inline

Definition at line 72 of file point_cloud_drawable.h.

◆ releaseShaderPrograms()

void PointCloudDrawable::releaseShaderPrograms ( )
static

Definition at line 297 of file point_cloud_drawable.cpp.

◆ Render()

void PointCloudDrawable::Render ( const glm::mat4 projectionMatrix,
const glm::mat4 viewMatrix,
bool  meshRendering = true,
float  pointSize = 3.0f,
bool  textureRendering = false,
bool  lighting = true,
float  distanceToCamSqr = 0.0f,
const GLuint depthTexture = 0,
int  screenWidth = 0,
int  screenHeight = 0,
float  nearClipPlane = 0,
float  farClipPlane = 0,
bool  packDepthToColorChannel = false,
bool  wireFrame = false 
) const

Definition at line 997 of file point_cloud_drawable.cpp.

◆ setGains()

void PointCloudDrawable::setGains ( float  gainR,
float  gainG,
float  gainB 
)
inline

Definition at line 69 of file point_cloud_drawable.h.

◆ setPose()

void PointCloudDrawable::setPose ( const rtabmap::Transform pose)

Definition at line 959 of file point_cloud_drawable.cpp.

◆ setVisible()

void PointCloudDrawable::setVisible ( bool  visible)
inline

Definition at line 68 of file point_cloud_drawable.h.

◆ updateAABBMinMax()

template<class PointT >
void PointCloudDrawable::updateAABBMinMax ( const PointT &  pt,
pcl::PointXYZ &  min,
pcl::PointXYZ &  max 
)
inlineprivate

Definition at line 105 of file point_cloud_drawable.h.

◆ updateAABBWorld()

void PointCloudDrawable::updateAABBWorld ( const rtabmap::Transform pose)
private

Definition at line 972 of file point_cloud_drawable.cpp.

◆ updateCloud()

void PointCloudDrawable::updateCloud ( const pcl::PointCloud< pcl::PointXYZRGB >::Ptr &  cloud,
const pcl::IndicesPtr &  indices 
)

Definition at line 467 of file point_cloud_drawable.cpp.

◆ updateMesh()

void PointCloudDrawable::updateMesh ( const rtabmap::Mesh mesh,
bool  createWireframe = false 
)

Definition at line 621 of file point_cloud_drawable.cpp.

◆ updatePolygons()

void PointCloudDrawable::updatePolygons ( const std::vector< pcl::Vertices > &  polygons,
const std::vector< pcl::Vertices > &  polygonsLowRes = std::vector<pcl::Vertices>(),
bool  createWireframe = false 
)

Definition at line 375 of file point_cloud_drawable.cpp.

Member Data Documentation

◆ aabbMaxModel_

pcl::PointXYZ PointCloudDrawable::aabbMaxModel_
private

Definition at line 135 of file point_cloud_drawable.h.

◆ aabbMaxWorld_

pcl::PointXYZ PointCloudDrawable::aabbMaxWorld_
private

Definition at line 137 of file point_cloud_drawable.h.

◆ aabbMinModel_

pcl::PointXYZ PointCloudDrawable::aabbMinModel_
private

Definition at line 134 of file point_cloud_drawable.h.

◆ aabbMinWorld_

pcl::PointXYZ PointCloudDrawable::aabbMinWorld_
private

Definition at line 136 of file point_cloud_drawable.h.

◆ gainB_

float PointCloudDrawable::gainB_
private

Definition at line 132 of file point_cloud_drawable.h.

◆ gainG_

float PointCloudDrawable::gainG_
private

Definition at line 131 of file point_cloud_drawable.h.

◆ gainR_

float PointCloudDrawable::gainR_
private

Definition at line 130 of file point_cloud_drawable.h.

◆ hasNormals_

bool PointCloudDrawable::hasNormals_
private

Definition at line 126 of file point_cloud_drawable.h.

◆ index_buffers_

std::vector<GLuint> PointCloudDrawable::index_buffers_
private

Definition at line 120 of file point_cloud_drawable.h.

◆ index_buffers_count_

std::vector<int> PointCloudDrawable::index_buffers_count_
private

Definition at line 121 of file point_cloud_drawable.h.

◆ minHeight_

float PointCloudDrawable::minHeight_
private

Definition at line 128 of file point_cloud_drawable.h.

◆ nPoints_

int PointCloudDrawable::nPoints_
private

Definition at line 122 of file point_cloud_drawable.h.

◆ organizedToDenseIndices_

std::vector<unsigned int> PointCloudDrawable::organizedToDenseIndices_
private

Definition at line 127 of file point_cloud_drawable.h.

◆ pose_

rtabmap::Transform PointCloudDrawable::pose_
private

Definition at line 123 of file point_cloud_drawable.h.

◆ poseGl_

glm::mat4 PointCloudDrawable::poseGl_
private

Definition at line 124 of file point_cloud_drawable.h.

◆ shaderPrograms_

std::vector< GLuint > PointCloudDrawable::shaderPrograms_
staticprivate

Definition at line 50 of file point_cloud_drawable.h.

◆ texture_

GLuint PointCloudDrawable::texture_
private

Definition at line 119 of file point_cloud_drawable.h.

◆ vertex_buffer_

GLuint PointCloudDrawable::vertex_buffer_
private

Definition at line 118 of file point_cloud_drawable.h.

◆ visible_

bool PointCloudDrawable::visible_
private

Definition at line 125 of file point_cloud_drawable.h.


The documentation for this class was generated from the following files:


rtabmap
Author(s): Mathieu Labbe
autogenerated on Thu Jul 25 2024 02:50:26