CGAL 6.0 - Point Set Processing
Loading...
Searching...
No Matches
CGAL Namespace Reference

Namespaces

namespace  IO
 
namespace  OpenGR
 
namespace  Point_set_processing_3
 
namespace  pointmatcher
 

Classes

class  Point_set_with_structure
 A 3D point set with structure information based on a set of detected planes. More...
 

Functions

template<typename ConcurrencyTag , typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
double bilateral_smooth_point_set (PointRange &points, unsigned int k, const NamedParameters &np=parameters::default_values())
 This function smooths an input point set by iteratively projecting each point onto the implicit surface patch fitted over its nearest neighbors.
 
template<typename PointRange , typename ClusterMap , typename NamedParameters = parameters::Default_named_parameters>
std::size_t cluster_point_set (PointRange &points, ClusterMap cluster_map, const NamedParameters &np=parameters::default_values())
 Identifies connected components on a nearest neighbor graph built using a query sphere of fixed radius centered on each point.
 
template<typename ConcurrencyTag , typename PointRange , typename NamedParameters = CGAL::parameters::Default_named_parameters>
FT compute_average_spacing (const PointRange &points, unsigned int k, const NamedParameters &np=parameters::default_values())
 Computes average spacing from k nearest neighbors.
 
template<typename ConcurrencyTag , typename PointRange , typename OutputIterator , typename NamedParameters = parameters::Default_named_parameters>
OutputIterator edge_aware_upsample_point_set (const PointRange &points, OutputIterator output, const NamedParameters &np=parameters::default_values())
 This method progressively upsamples the point set while approaching the edge singularities (detected by normal variation), which generates a denser point set from an input point set.
 
template<typename PointRange , typename QueryPointRange , typename OutputIterator , typename NamedParameters = parameters::Default_named_parameters>
OutputIterator estimate_local_k_neighbor_scales (const PointRange &points, const QueryPointRange &queries, OutputIterator output, const NamedParameters &np=parameters::default_values())
 Estimates the local scale in a K nearest neighbors sense on a set of user-defined query points.
 
template<typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
std::size_t estimate_global_k_neighbor_scale (const PointRange &points, const NamedParameters &np=parameters::default_values())
 Estimates the global scale in a K nearest neighbors sense.
 
template<typename PointRange , typename QueryPointRange , typename OutputIterator , typename NamedParameters = parameters::Default_named_parameters>
OutputIterator estimate_local_range_scales (const PointRange &points, const QueryPointRange &queries, OutputIterator output, const NamedParameters &np=parameters::default_values())
 Estimates the local scale in a range sense on a set of user-defined query points.
 
template<typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
FT estimate_global_range_scale (const PointRange &points, const NamedParameters &np=parameters::default_values())
 Estimates the global scale in a range sense.
 
template<typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
PointRange::iterator grid_simplify_point_set (PointRange &points, double epsilon, const NamedParameters &np=parameters::default_values())
 Merges points which belong to the same cell of a grid of cell size = epsilon.
 
template<typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
PointRange::iterator hierarchy_simplify_point_set (PointRange &points, const NamedParameters &np=parameters::default_values())
 Recursively split the point set in smaller clusters until the clusters have fewer than size elements and until their variation factor is below var_max.
 
template<typename OutputIteratorValueType , typename OutputIterator , typename ... PropertyHandler>
bool read_las_points_with_properties (std::istream &is, OutputIterator output, PropertyHandler &&... properties)
 
template<typename OutputIteratorValueType , typename OutputIterator , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool read_las_points (std::istream &is, OutputIterator output, const NamedParameters &np=parameters::default_values())
 
template<typename OutputIteratorValueType , typename OutputIterator , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool read_off_points (std::istream &is, OutputIterator output, const NamedParameters &np=parameters::default_values())
 
template<typename OutputIteratorValueType , typename OutputIterator , typename ... PropertyHandler>
bool read_ply_points_with_properties (std::istream &is, OutputIterator output, PropertyHandler &&... properties)
 
template<typename OutputIteratorValueType , typename OutputIterator , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool read_ply_points (std::istream &is, OutputIterator output, const NamedParameters &np=parameters::default_values())
 
template<typename OutputIteratorValueType , typename OutputIterator , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool read_xyz_points (std::istream &is, OutputIterator output, const NamedParameters &np=parameters::default_values())
 
template<typename PointRange , typename PointMap , typename ... PropertyHandler>
bool write_las_points_with_properties (std::ostream &os, const PointRange &points, std::tuple< PointMap, IO::LAS_property::X, IO::LAS_property::Y, IO::LAS_property::Z > point_property, PropertyHandler &&... properties)
 
template<typename PointRange , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool write_las_points (std::ostream &os, const PointRange &points, const NamedParameters &np=parameters::default_values())
 
template<typename PointRange , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool write_off_points (std::ostream &os, const PointRange &points, const NamedParameters &np=parameters::default_values())
 
template<typename PointRange , typename ... PropertyHandler>
bool write_ply_points_with_properties (std::ostream &os, const PointRange &points, PropertyHandler &&... properties)
 
template<typename PointRange , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool write_ply_points (std::ostream &os, const PointRange &points, const NamedParameters &np=parameters::default_values())
 
template<typename PointRange , typename NamedParameters = CGAL::parameters::Default_named_parameters>
bool write_xyz_points (std::ostream &os, const PointRange &points, const NamedParameters &np=parameters::default_values())
 
template<typename ConcurrencyTag , typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
void jet_estimate_normals (PointRange &points, unsigned int k, const NamedParameters &np=parameters::default_values())
 Estimates normal directions of the range of points using jet fitting on the nearest neighbors.
 
template<typename ConcurrencyTag , typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
void jet_smooth_point_set (PointRange &points, unsigned int k, const NamedParameters &np=parameters::default_values())
 Smoothes the range of points using jet fitting on the nearest neighbors and reprojection onto the jet.
 
template<typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
PointRange::iterator mst_orient_normals (PointRange &points, unsigned int k, const NamedParameters &np=parameters::default_values())
 Orients the normals of the range of points using the propagation of a seed orientation through a minimum spanning tree of the Riemannian graph.
 
template<typename ConcurrencyTag , typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
void pca_estimate_normals (PointRange &points, unsigned int k, const NamedParameters &np=parameters::default_values())
 Estimates normal directions of the range of points by linear least squares fitting of a plane over the nearest neighbors.
 
template<typename PointRange >
PointRange::iterator random_simplify_point_set (PointRange &points, double removed_percentage)
 Randomly deletes a user-specified fraction of the input points.
 
template<typename ConcurrencyTag , typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
PointRange::iterator remove_outliers (PointRange &points, unsigned int k, const NamedParameters &np=parameters::default_values())
 Removes outliers:
 
template<typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
void scanline_orient_normals (PointRange &points, const NamedParameters &np=parameters::default_values())
 orients the normals of the range of points by estimating a line of sight and checking its consistency with the current normal orientation.
 
template<typename PointRange , typename PlaneRange , typename OutputIterator , typename NamedParameters >
OutputIterator structure_point_set (const PointRange &points, const PlaneRange &planes, OutputIterator output, double epsilon, const NamedParameters &np)
 This is an implementation of the Point Set Structuring algorithm.
 
template<class FT , class VCMTraits >
bool vcm_is_on_feature_edge (std::array< FT, 6 > &cov, double threshold, VCMTraits)
 determines if a point is on a sharp feature edge from a point set for which the Voronoi covariance Measures have been computed.
 
template<class FT >
bool vcm_is_on_feature_edge (std::array< FT, 6 > &cov, double threshold)
 
template<typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
void compute_vcm (const PointRange &points, std::vector< std::array< double, 6 > > &ccov, double offset_radius, double convolution_radius, const NamedParameters &np=parameters::default_values())
 computes the Voronoi Covariance Measure (VCM) of a point cloud, a construction that can be used for normal estimation and sharp feature detection.
 
template<typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
void vcm_estimate_normals (PointRange &points, double offset_radius, double convolution_radius, const NamedParameters &np=parameters::default_values())
 Estimates normal directions of the range of points using the Voronoi Covariance Measure with a radius for the convolution.
 
template<typename PointRange , typename NamedParameters = parameters::Default_named_parameters>
void vcm_estimate_normals (PointRange &points, double offset_radius, unsigned int k, const NamedParameters &np=parameters::default_values())
 Estimates normal directions of the range of points using the Voronoi Covariance Measure with a number of neighbors for the convolution.
 
template<typename ConcurrencyTag , typename PointRange , typename OutputIterator , typename NamedParameters = parameters::Default_named_parameters>
OutputIterator wlop_simplify_and_regularize_point_set (PointRange &points, OutputIterator output, const NamedParameters &np=parameters::default_values())
 This is an implementation of the Weighted Locally Optimal Projection (WLOP) simplification algorithm.
 

Function Documentation

◆ write_ply_points_with_properties()

template<typename PointRange , typename ... PropertyHandler>
bool CGAL::write_ply_points_with_properties ( std::ostream &  os,
const PointRange &  points,
PropertyHandler &&...  properties 
)
Parameters
osoutput stream.
pointsinput point range.
propertiesparameter pack of property handlers