surface.h
#ifndef SURFACE_H_
#define SURFACE_H_
#include <pcl/kdtree/kdtree_flann.h>
#include <pcl/surface/mls.h>
#include <pcl/surface/convex_hull.h>
#include <pcl/surface/concave_hull.h>
#include <pcl/surface/gp3.h>
#include <pcl/surface/marching_cubes_hoppe.h>
#include "typedefs.h"
class Mesh
{
public:
Mesh () : points (new PointCloud) {}
PointCloudPtr points;
std::vector<pcl::Vertices> faces;
};
typedef boost::shared_ptr<Mesh> MeshPtr;
PointCloudPtr
smoothPointCloud (const PointCloudPtr & input, float radius, int polynomial_order)
{
PointCloudPtr output (new PointCloud);
return (output);
}
SurfaceElementsPtr
computeSurfaceElements (const PointCloudPtr & input, float radius, int polynomial_order)
{
SurfaceElementsPtr surfels (new SurfaceElements);
return (surfels);
}
MeshPtr
computeConvexHull (const PointCloudPtr & input)
{
MeshPtr output (new Mesh);
return (output);
}
MeshPtr
computeConcaveHull (const PointCloudPtr & input, float alpha)
{
MeshPtr output (new Mesh);
return (output);
}
pcl::PolygonMesh::Ptr
greedyTriangulation (const SurfaceElementsPtr & surfels, float radius, float mu, int max_nearest_neighbors,
float max_surface_angle, float min_angle, float max_angle)
{
pcl::PolygonMesh::Ptr output (new pcl::PolygonMesh);
return (output);
}
pcl::PolygonMesh::Ptr
marchingCubesTriangulation (const SurfaceElementsPtr & surfels, float leaf_size, float iso_level)
{
pcl::PolygonMesh::Ptr output (new pcl::PolygonMesh);
return (output);
}
#endif
Mesh
Definition: surface.h:14
Mesh::points
PointCloudPtr points
Definition: surface.h:18
Mesh::Mesh
Mesh()
Definition: surface.h:17
Mesh::faces
std::vector< pcl::Vertices > faces
Definition: surface.h:19
pcl::PolygonMesh::Ptr
boost::shared_ptr< ::pcl::PolygonMesh > Ptr
Definition: PolygonMesh.h:28
pcl::PointCloud
PointCloud represents the base class in PCL for storing collections of 3D points. ...
Definition: projection_matrix.h:53
pcl::PolygonMesh
Definition: PolygonMesh.h:15