Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
NormalSpaceDataPointsFilter< T > Struct Template Reference

#include <NormalSpace.h>

Inheritance diagram for NormalSpaceDataPointsFilter< T >:
Inheritance graph
[legend]

Public Types

typedef PM::DataPoints DataPoints
 
typedef PM::DataPointsFilter DataPointsFilter
 
typedef DataPoints::Index Index
 
typedef PointMatcher< T >::DataPoints::InvalidField InvalidField
 
typedef Parametrizable::InvalidParameter InvalidParameter
 
typedef PointMatcherSupport::Parametrizable P
 
typedef Parametrizable::ParameterDoc ParameterDoc
 
typedef Parametrizable::Parameters Parameters
 
typedef Parametrizable::ParametersDoc ParametersDoc
 
typedef PointMatcherSupport::Parametrizable Parametrizable
 
typedef PointMatcher< T > PM
 
- Public Types inherited from PointMatcherSupport::Parametrizable
typedef bool(* LexicalComparison) (std::string a, std::string b)
 A function that returns whether a is smaller than b. More...
 
typedef std::string Parameter
 alias More...
 
typedef std::map< std::string, ParameterParameters
 Parameters stored as a map of string->string. More...
 
typedef std::vector< ParameterDocParametersDoc
 The documentation of all parameters. More...
 
typedef std::set< std::string > ParametersUsed
 Parameters whose value has been read. More...
 

Public Member Functions

virtual DataPoints filter (const DataPoints &input)
 Apply filters to input point cloud. This is the non-destructive version and returns a copy. More...
 
virtual void inPlaceFilter (DataPoints &cloud)
 Apply these filters to a point cloud without copying. More...
 
 NormalSpaceDataPointsFilter (const Parameters &params=Parameters())
 
virtual ~NormalSpaceDataPointsFilter ()
 
- Public Member Functions inherited from PointMatcher< T >::DataPointsFilter
 DataPointsFilter ()
 Construct without parameter. More...
 
 DataPointsFilter (const std::string &className, const ParametersDoc paramsDoc, const Parameters &params)
 Construct with parameters. More...
 
virtual void init ()
 Init this filter. More...
 
virtual ~DataPointsFilter ()
 virtual destructor More...
 
- Public Member Functions inherited from PointMatcherSupport::Parametrizable
template<typename S >
get (const std::string &paramName)
 Return the value of paramName, lexically-casted to S. More...
 
std::string getParamValueString (const std::string &paramName)
 Get the value of a parameter, as a string. More...
 
 Parametrizable ()
 Construct a documentation of parameters from a description in the source. More...
 
 Parametrizable (const std::string &className, const ParametersDoc paramsDoc, const Parameters &params)
 Construct with documented parameters. More...
 
virtual ~Parametrizable ()
 Virtual destructor, do nothing. More...
 

Static Public Member Functions

static const ParametersDoc availableParameters ()
 
static const std::string description ()
 
- Static Public Member Functions inherited from PointMatcherSupport::Parametrizable
template<typename S >
static bool Comp (std::string a, std::string b)
 Return whether a < b, lexically casted to S. More...
 

Public Attributes

const T epsilon
 
const std::size_t nbSample
 
const std::size_t seed
 
- Public Attributes inherited from PointMatcherSupport::Parametrizable
const std::string className
 name of the class More...
 
Parameters parameters
 parameters with their values encoded in string More...
 
const ParametersDoc parametersDoc
 documentation of parameters More...
 
ParametersUsed parametersUsed
 parameters whose value has actually been read More...
 

Private Member Functions

std::size_t bucketIdx (T theta, T phi) const
 

Private Attributes

const std::size_t nbBucket
 

Detailed Description

template<typename T>
struct NormalSpaceDataPointsFilter< T >

Definition at line 40 of file NormalSpace.h.

Member Typedef Documentation

◆ DataPoints

template<typename T >
typedef PM::DataPoints NormalSpaceDataPointsFilter< T >::DataPoints

Definition at line 44 of file NormalSpace.h.

◆ DataPointsFilter

Definition at line 45 of file NormalSpace.h.

◆ Index

template<typename T >
typedef DataPoints::Index NormalSpaceDataPointsFilter< T >::Index

Definition at line 54 of file NormalSpace.h.

◆ InvalidField

Definition at line 56 of file NormalSpace.h.

◆ InvalidParameter

Definition at line 52 of file NormalSpace.h.

◆ P

Definition at line 48 of file NormalSpace.h.

◆ ParameterDoc

Definition at line 50 of file NormalSpace.h.

◆ Parameters

Definition at line 49 of file NormalSpace.h.

◆ ParametersDoc

Definition at line 51 of file NormalSpace.h.

◆ Parametrizable

Definition at line 47 of file NormalSpace.h.

◆ PM

template<typename T >
typedef PointMatcher<T> NormalSpaceDataPointsFilter< T >::PM

Definition at line 43 of file NormalSpace.h.

Constructor & Destructor Documentation

◆ NormalSpaceDataPointsFilter()

template<typename T >
NormalSpaceDataPointsFilter< T >::NormalSpaceDataPointsFilter ( const Parameters params = Parameters())

Definition at line 47 of file NormalSpace.cpp.

◆ ~NormalSpaceDataPointsFilter()

template<typename T >
virtual NormalSpaceDataPointsFilter< T >::~NormalSpaceDataPointsFilter ( )
inlinevirtual

Definition at line 82 of file NormalSpace.h.

Member Function Documentation

◆ availableParameters()

template<typename T >
static const ParametersDoc NormalSpaceDataPointsFilter< T >::availableParameters ( )
inlinestatic

Definition at line 63 of file NormalSpace.h.

◆ bucketIdx()

template<typename T >
std::size_t NormalSpaceDataPointsFilter< T >::bucketIdx ( theta,
phi 
) const
inlineprivate

Definition at line 169 of file NormalSpace.cpp.

◆ description()

template<typename T >
static const std::string NormalSpaceDataPointsFilter< T >::description ( )
inlinestatic

Definition at line 58 of file NormalSpace.h.

◆ filter()

template<typename T >
PointMatcher< T >::DataPoints NormalSpaceDataPointsFilter< T >::filter ( const DataPoints input)
virtual

Apply filters to input point cloud. This is the non-destructive version and returns a copy.

Implements PointMatcher< T >::DataPointsFilter.

Definition at line 59 of file NormalSpace.cpp.

◆ inPlaceFilter()

template<typename T >
void NormalSpaceDataPointsFilter< T >::inPlaceFilter ( DataPoints cloud)
virtual

Apply these filters to a point cloud without copying.

(1) put all points of the data into buckets based on their normal direction

(2) uniformly pick points from all the buckets until the desired number of points is selected

(3) A point is randomly picked in a bucket that contains multiple points

(4) Sample the point cloud

Implements PointMatcher< T >::DataPointsFilter.

Definition at line 69 of file NormalSpace.cpp.

Member Data Documentation

◆ epsilon

template<typename T >
const T NormalSpaceDataPointsFilter< T >::epsilon

Definition at line 75 of file NormalSpace.h.

◆ nbBucket

template<typename T >
const std::size_t NormalSpaceDataPointsFilter< T >::nbBucket
private

Definition at line 90 of file NormalSpace.h.

◆ nbSample

template<typename T >
const std::size_t NormalSpaceDataPointsFilter< T >::nbSample

Definition at line 73 of file NormalSpace.h.

◆ seed

template<typename T >
const std::size_t NormalSpaceDataPointsFilter< T >::seed

Definition at line 74 of file NormalSpace.h.


The documentation for this struct was generated from the following files:


libpointmatcher
Author(s):
autogenerated on Sat May 27 2023 02:38:03