38 #ifndef PCL_SURFACE_EAR_CLIPPING_H_
39 #define PCL_SURFACE_EAR_CLIPPING_H_
41 #include <pcl/point_types.h>
42 #include <pcl/surface/processing.h>
56 typedef boost::shared_ptr<EarClipping>
Ptr;
57 typedef boost::shared_ptr<const EarClipping>
ConstPtr;
91 area (
const std::vector<uint32_t>& vertices);
100 isEar (
int u,
int v,
int w,
const std::vector<uint32_t>& vertices);
109 isInsideTriangle (
const Eigen::Vector3f& u,
110 const Eigen::Vector3f& v,
111 const Eigen::Vector3f& w,
112 const Eigen::Vector3f& p);
119 crossProduct (
const Eigen::Vector2f& p1,
const Eigen::Vector2f& p2)
const
121 return p1[0]*p2[1] - p1[1]*p2[0];
128 #endif // #ifndef PCL_SURFACE_EAR_CLIPPING_H_
float crossProduct(const Eigen::Vector2f &p1, const Eigen::Vector2f &p2) const
Compute the cross product between 2D vectors.
boost::shared_ptr< PointCloud< PointT > > Ptr
MeshProcessing represents the base class for mesh processing algorithms.
This file defines compatibility wrappers for low level I/O functions.
EarClipping()
Empty constructor.
Describes a set of vertices in a polygon mesh, by basically storing an array of indices.
boost::shared_ptr< const EarClipping > ConstPtr
pcl::PolygonMeshConstPtr input_mesh_
Input polygonal mesh.
boost::shared_ptr< EarClipping > Ptr
virtual bool initCompute()
Initialize computation.
The ear clipping triangulation algorithm.