Point Cloud Library (PCL) 1.14.0
Loading...
Searching...
No Matches
Classes | Functions
pcl::geometry Namespace Reference

Classes

struct  DefaultMeshTraits
 The mesh traits are used to set up compile time settings for the mesh. More...
 
class  FaceAroundFaceCirculator
 Circulates clockwise around a face and returns an index to the face of the outer half-edge (the target). More...
 
class  FaceAroundVertexCirculator
 Circulates counter-clockwise around a vertex and returns an index to the face of the outgoing half-edge (the target). More...
 
class  IncomingHalfEdgeAroundVertexCirculator
 Circulates counter-clockwise around a vertex and returns an index to the incoming half-edge (the target). More...
 
class  InnerHalfEdgeAroundFaceCirculator
 Circulates clockwise around a face and returns an index to the inner half-edge (the target). More...
 
class  MeshBase
 Base class for the half-edge mesh. More...
 
class  MeshIO
 Read / write the half-edge mesh from / to a file. More...
 
struct  NoData
 No data is associated with the vertices / half-edges / edges / faces. More...
 
class  OuterHalfEdgeAroundFaceCirculator
 Circulates clockwise around a face and returns an index to the outer half-edge (the target). More...
 
class  OutgoingHalfEdgeAroundVertexCirculator
 Circulates counter-clockwise around a vertex and returns an index to the outgoing half-edge (the target). More...
 
class  PolygonMesh
 General half-edge mesh that can store any polygon with a minimum number of vertices of 3. More...
 
struct  PolygonMeshTag
 Tag describing the type of the mesh. More...
 
class  QuadMesh
 Half-edge mesh that can only store quads. More...
 
struct  QuadMeshTag
 Tag describing the type of the mesh. More...
 
class  TriangleMesh
 Half-edge mesh that can only store triangles. More...
 
struct  TriangleMeshTag
 Tag describing the type of the mesh. More...
 
class  Vertex
 A vertex is a node in the mesh. More...
 
class  VertexAroundFaceCirculator
 Circulates clockwise around a face and returns an index to the terminating vertex of the inner half-edge (the target). More...
 
class  VertexAroundVertexCirculator
 Circulates counter-clockwise around a vertex and returns an index to the terminating vertex of the outgoing half-edge (the target). More...
 

Functions

template<typename PointT >
float distance (const PointT &p1, const PointT &p2)
 
template<typename PointT >
float squaredDistance (const PointT &p1, const PointT &p2)
 
template<typename PointT , typename NormalT >
void project (const PointT &point, const PointT &plane_origin, const NormalT &plane_normal, PointT &projected)
 
void project (const Eigen::Vector3f &point, const Eigen::Vector3f &plane_origin, const Eigen::Vector3f &plane_normal, Eigen::Vector3f &projected)
 
Eigen::Vector3f projectedAsUnitVector (Eigen::Vector3f const &point, Eigen::Vector3f const &plane_origin, Eigen::Vector3f const &plane_normal)
 Given a plane defined by plane_origin and plane_normal, find the unit vector pointing from plane_origin to the projection of point on the plane.
 
Eigen::Vector3f randomOrthogonalAxis (Eigen::Vector3f const &axis)
 Define a random unit vector orthogonal to axis.
 
template<class MeshT >
void getBoundBoundaryHalfEdges (const MeshT &mesh, std::vector< typename MeshT::HalfEdgeIndices > &boundary_he_collection, const std::size_t expected_size=3)
 Get a collection of boundary half-edges for the input mesh.
 
template<class HalfEdgeMeshT >
void toFaceVertexMesh (const HalfEdgeMeshT &half_edge_mesh, pcl::PolygonMesh &face_vertex_mesh)
 Convert a half-edge mesh to a face-vertex mesh.
 
template<class HalfEdgeMeshT >
int toHalfEdgeMesh (const pcl::PolygonMesh &face_vertex_mesh, HalfEdgeMeshT &half_edge_mesh)
 Convert a face-vertex mesh to a half-edge mesh.
 

Function Documentation

◆ distance()

template<typename PointT >
float pcl::geometry::distance ( const PointT p1,
const PointT p2 
)
inline
Returns
the euclidean distance between 2 points

Definition at line 60 of file geometry.h.

◆ project() [1/2]

void pcl::geometry::project ( const Eigen::Vector3f &  point,
const Eigen::Vector3f &  plane_origin,
const Eigen::Vector3f &  plane_normal,
Eigen::Vector3f &  projected 
)
inline
Returns
the point projection on a plane defined by its origin and normal vector
Parameters
[in]pointPoint to be projected
[in]plane_originThe plane origin
[in]plane_normalThe plane normal
[out]projectedThe returned projected point

Definition at line 97 of file geometry.h.

◆ project() [2/2]

template<typename PointT , typename NormalT >
void pcl::geometry::project ( const PointT point,
const PointT plane_origin,
const NormalT plane_normal,
PointT projected 
)
inline
Returns
the point projection on a plane defined by its origin and normal vector
Parameters
[in]pointPoint to be projected
[in]plane_originThe plane origin
[in]plane_normalThe plane normal
[out]projectedThe returned projected point

Definition at line 81 of file geometry.h.

Referenced by pcl::ShapeContext3DEstimation< PointInT, PointNT, PointOutT >::computePoint(), pcl::UniqueShapeContext< PointInT, PointOutT, PointRFT >::computePointDescriptor(), and projectedAsUnitVector().

◆ squaredDistance()

template<typename PointT >
float pcl::geometry::squaredDistance ( const PointT p1,
const PointT p2 
)
inline
Returns
the squared euclidean distance between 2 points

Definition at line 68 of file geometry.h.