|
Point Cloud Library (PCL)
1.7.2
|
The marching cubes surface reconstruction algorithm, using a signed distance function based on the distance from tangent planes, proposed by Hoppe et. More...
#include <pcl/surface/marching_cubes_hoppe.h>
Inheritance diagram for pcl::MarchingCubesHoppe< PointNT >:
Collaboration diagram for pcl::MarchingCubesHoppe< PointNT >:Public Types | |
| typedef boost::shared_ptr < MarchingCubesHoppe< PointNT > > | Ptr |
| typedef boost::shared_ptr < const MarchingCubesHoppe < PointNT > > | ConstPtr |
| typedef pcl::PointCloud < PointNT >::Ptr | PointCloudPtr |
| typedef pcl::KdTree< PointNT > | KdTree |
| typedef pcl::KdTree< PointNT >::Ptr | KdTreePtr |
Public Types inherited from pcl::MarchingCubes< PointNT > | |
| typedef boost::shared_ptr < MarchingCubes< PointNT > > | Ptr |
| typedef boost::shared_ptr < const MarchingCubes< PointNT > > | ConstPtr |
| typedef pcl::PointCloud < PointNT >::Ptr | PointCloudPtr |
| typedef pcl::KdTree< PointNT > | KdTree |
| typedef pcl::KdTree< PointNT >::Ptr | KdTreePtr |
Public Types inherited from pcl::SurfaceReconstruction< PointNT > | |
| typedef boost::shared_ptr < SurfaceReconstruction < PointNT > > | Ptr |
| typedef boost::shared_ptr < const SurfaceReconstruction < PointNT > > | ConstPtr |
Public Types inherited from pcl::PCLSurfaceBase< PointNT > | |
| typedef boost::shared_ptr < PCLSurfaceBase< PointNT > > | Ptr |
| typedef boost::shared_ptr < const PCLSurfaceBase < PointNT > > | ConstPtr |
| typedef pcl::search::Search < PointNT > | KdTree |
| typedef pcl::search::Search < PointNT >::Ptr | KdTreePtr |
Public Types inherited from pcl::PCLBase< PointNT > | |
| typedef pcl::PointCloud< PointNT > | PointCloud |
| typedef PointCloud::Ptr | PointCloudPtr |
| typedef PointCloud::ConstPtr | PointCloudConstPtr |
| typedef boost::shared_ptr < PointIndices > | PointIndicesPtr |
| typedef boost::shared_ptr < PointIndices const > | PointIndicesConstPtr |
Public Member Functions | |
| MarchingCubesHoppe () | |
| Constructor. More... | |
| ~MarchingCubesHoppe () | |
| Destructor. More... | |
| void | voxelizeData () |
| Convert the point cloud into voxel data. More... | |
Public Member Functions inherited from pcl::MarchingCubes< PointNT > | |
| MarchingCubes () | |
| Constructor. More... | |
| virtual | ~MarchingCubes () |
| Destructor. More... | |
| void | setIsoLevel (float iso_level) |
| Method that sets the iso level of the surface to be extracted. More... | |
| float | getIsoLevel () |
| Method that returns the iso level of the surface to be extracted. More... | |
| void | setGridResolution (int res_x, int res_y, int res_z) |
| Method that sets the marching cubes grid resolution. More... | |
| void | getGridResolution (int &res_x, int &res_y, int &res_z) |
| Method to get the marching cubes grid resolution. More... | |
| void | setPercentageExtendGrid (float percentage) |
| Method that sets the parameter that defines how much free space should be left inside the grid between the bounding box of the point cloud and the grid limits. More... | |
| float | getPercentageExtendGrid () |
| Method that gets the parameter that defines how much free space should be left inside the grid between the bounding box of the point cloud and the grid limits, as a percentage of the bounding box. More... | |
Public Member Functions inherited from pcl::SurfaceReconstruction< PointNT > | |
| SurfaceReconstruction () | |
| Constructor. More... | |
| virtual | ~SurfaceReconstruction () |
| Destructor. More... | |
| virtual void | reconstruct (pcl::PolygonMesh &output) |
| Base method for surface reconstruction for all points given in <setInputCloud (), setIndices ()> More... | |
| virtual void | reconstruct (pcl::PointCloud< PointNT > &points, std::vector< pcl::Vertices > &polygons) |
| Base method for surface reconstruction for all points given in <setInputCloud (), setIndices ()> More... | |
Public Member Functions inherited from pcl::PCLSurfaceBase< PointNT > | |
| PCLSurfaceBase () | |
| Empty constructor. More... | |
| virtual | ~PCLSurfaceBase () |
| Empty destructor. More... | |
| void | setSearchMethod (const KdTreePtr &tree) |
| Provide an optional pointer to a search object. More... | |
| KdTreePtr | getSearchMethod () |
| Get a pointer to the search method used. More... | |
Public Member Functions inherited from pcl::PCLBase< PointNT > | |
| PCLBase () | |
| Empty constructor. More... | |
| PCLBase (const PCLBase &base) | |
| Copy constructor. More... | |
| virtual | ~PCLBase () |
| Destructor. More... | |
| virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
| Provide a pointer to the input dataset. More... | |
| PointCloudConstPtr const | getInputCloud () const |
| Get a pointer to the input point cloud dataset. More... | |
| virtual void | setIndices (const IndicesPtr &indices) |
| Provide a pointer to the vector of indices that represents the input data. More... | |
| virtual void | setIndices (const IndicesConstPtr &indices) |
| Provide a pointer to the vector of indices that represents the input data. More... | |
| virtual void | setIndices (const PointIndicesConstPtr &indices) |
| Provide a pointer to the vector of indices that represents the input data. More... | |
| virtual void | setIndices (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols) |
| Set the indices for the points laying within an interest region of the point cloud. More... | |
| IndicesPtr const | getIndices () |
| Get a pointer to the vector of indices used. More... | |
| IndicesConstPtr const | getIndices () const |
| Get a pointer to the vector of indices used. More... | |
| const PointNT & | operator[] (size_t pos) const |
| Override PointCloud operator[] to shorten code. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from pcl::MarchingCubes< PointNT > | |
| void | interpolateEdge (Eigen::Vector3f &p1, Eigen::Vector3f &p2, float val_p1, float val_p2, Eigen::Vector3f &output) |
| Interpolate along the voxel edge. More... | |
| void | createSurface (std::vector< float > &leaf_node, Eigen::Vector3i &index_3d, pcl::PointCloud< PointNT > &cloud) |
| Calculate out the corresponding polygons in the leaf node. More... | |
| void | getBoundingBox () |
| Get the bounding box for the input data points. More... | |
| virtual float | getGridValue (Eigen::Vector3i pos) |
| Method that returns the scalar value at the given grid position. More... | |
| void | getNeighborList1D (std::vector< float > &leaf, Eigen::Vector3i &index3d) |
| Method that returns the scalar values of the neighbors of a given 3D position in the grid. More... | |
| std::string | getClassName () const |
| Class get name method. More... | |
| virtual void | performReconstruction (pcl::PolygonMesh &output) |
| Extract the surface. More... | |
| virtual void | performReconstruction (pcl::PointCloud< PointNT > &points, std::vector< pcl::Vertices > &polygons) |
| Extract the surface. More... | |
Protected Member Functions inherited from pcl::PCLBase< PointNT > | |
| bool | initCompute () |
| This method should get called before starting the actual computation. More... | |
| bool | deinitCompute () |
| This method should get called after finishing the actual computation. More... | |
Protected Attributes inherited from pcl::MarchingCubes< PointNT > | |
| std::vector< float > | grid_ |
| The data structure storing the 3D grid. More... | |
| int | res_x_ |
| The grid resolution. More... | |
| int | res_y_ |
| int | res_z_ |
| Eigen::Vector4f | min_p_ |
| Min and max data points. More... | |
| Eigen::Vector4f | max_p_ |
| float | percentage_extend_grid_ |
| Parameter that defines how much free space should be left inside the grid between the bounding box of the point cloud and the grid limits, as a percentage of the bounding box. More... | |
| float | iso_level_ |
| The iso level to be extracted. More... | |
Protected Attributes inherited from pcl::SurfaceReconstruction< PointNT > | |
| bool | check_tree_ |
| A flag specifying whether or not the derived reconstruction algorithm needs the search object tree. More... | |
Protected Attributes inherited from pcl::PCLSurfaceBase< PointNT > | |
| KdTreePtr | tree_ |
| A pointer to the spatial search object. More... | |
Protected Attributes inherited from pcl::PCLBase< PointNT > | |
| PointCloudConstPtr | input_ |
| The input point cloud dataset. More... | |
| IndicesPtr | indices_ |
| A pointer to the vector of point indices to use. More... | |
| bool | use_indices_ |
| Set to true if point indices are used. More... | |
| bool | fake_indices_ |
| If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More... | |
The marching cubes surface reconstruction algorithm, using a signed distance function based on the distance from tangent planes, proposed by Hoppe et.
al. in: Hoppe H., DeRose T., Duchamp T., MC-Donald J., Stuetzle W., "Surface reconstruction from unorganized points", SIGGRAPH '92
Definition at line 52 of file marching_cubes_hoppe.h.
| typedef boost::shared_ptr<const MarchingCubesHoppe<PointNT> > pcl::MarchingCubesHoppe< PointNT >::ConstPtr |
Definition at line 56 of file marching_cubes_hoppe.h.
| typedef pcl::KdTree<PointNT> pcl::MarchingCubesHoppe< PointNT >::KdTree |
Definition at line 69 of file marching_cubes_hoppe.h.
| typedef pcl::KdTree<PointNT>::Ptr pcl::MarchingCubesHoppe< PointNT >::KdTreePtr |
Definition at line 70 of file marching_cubes_hoppe.h.
| typedef pcl::PointCloud<PointNT>::Ptr pcl::MarchingCubesHoppe< PointNT >::PointCloudPtr |
Definition at line 67 of file marching_cubes_hoppe.h.
| typedef boost::shared_ptr<MarchingCubesHoppe<PointNT> > pcl::MarchingCubesHoppe< PointNT >::Ptr |
Definition at line 55 of file marching_cubes_hoppe.h.
| pcl::MarchingCubesHoppe< PointNT >::MarchingCubesHoppe | ( | ) |
Constructor.
Definition at line 47 of file marching_cubes_hoppe.hpp.
| pcl::MarchingCubesHoppe< PointNT >::~MarchingCubesHoppe | ( | ) |
Destructor.
Definition at line 54 of file marching_cubes_hoppe.hpp.
|
virtual |
Convert the point cloud into voxel data.
Implements pcl::MarchingCubes< PointNT >.
Definition at line 61 of file marching_cubes_hoppe.hpp.