CGAL 6.1 - Point Set Processing

Loading...
Searching...
No Matches
Namespaces | Classes | Functions
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 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>
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 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<class PointRange , class OutputIterator , class NamedParameters = parameters::Default_named_parameters>
void | poisson_eliminate (const PointRange &points, std::size_t number_of_points, OutputIterator output, const NamedParameters &np=parameters::default_values())
| performs Poisson disk elimination with a desired output size.
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

  os | output stream.
  points | input point range.
  properties | parameter pack of property handlers