CGAL 6.2 - Homological Discrete Vector Fields
Loading...
Searching...
No Matches
CGAL::Homological_discrete_vector_field::Hdvf_traits_d< K > Struct Template Reference

#include <CGAL/HDVF/Hdvf_traits_d.h>

Definition

template<typename K>
struct CGAL::Homological_discrete_vector_field::Hdvf_traits_d< K >

The class Hdvf_traits_d implements the HDVFTraits concept for dD data, using a geometric kernel K.

Template Parameters
Ka geometric traits class. Must be either Epick_d or Epeck_d with a fixed dimension.
Is model of
HDVFTraits

Public Types

using Dimension = Dimension_tag< K::Dimension::value >
 
typedef K Kernel
 
typedef K::Point_d Point
 
typedef K::Vector_d Vector
 
typedef K::FT FT
 
typedef CGAL::Bbox_d< DimensionBbox
 
typedef Exact_predicates_inexact_constructions_kernel::Point_3 Point3
 

Static Public Member Functions

static std::function< typename Exact_predicates_inexact_constructions_kernel::Point_3(const typename K::Point_d &)> plane_projection_builder (typename K::Point_d p0, typename K::Vector_d d1, typename K::Vector_d d2, typename K::Vector_d d3)
 Builds a projector over an affine subspace of dimension 3.
 
static std::function< typename Exact_predicates_inexact_constructions_kernel::Point_3(const typename K::Point_d &)> pca_frame_builder (const std::vector< typename K::Point_d > &pts)
 Builds a projector over the affine subspace of dimension 3 given by the principal components analysis of a set of points.
 

Static Public Attributes

static std::function< Point3(const Point &p)> to_point3 = Hdvf_traits_d<K>::default_projection
 Converts a Point to a Point3 for VTK rendering.
 
static std::function< Point3(const Point &p)> default_projection
 Default projection operator.
 

Member Function Documentation

◆ pca_frame_builder()

template<typename K >
static std::function< typename Exact_predicates_inexact_constructions_kernel::Point_3(const typename K::Point_d &)> CGAL::Homological_discrete_vector_field::Hdvf_traits_d< K >::pca_frame_builder ( const std::vector< typename K::Point_d > &  pts)
static

Builds a projector over the affine subspace of dimension 3 given by the principal components analysis of a set of points.

Builds the projector over the affine space generated by the barycenter of pts points and three principal directions.

Parameters
ptsA vector of points.
Returns
The projector (performing dimension reduction) over the subspace of dimension 3 given by the PCA of the points.

◆ plane_projection_builder()

template<typename K >
static std::function< typename Exact_predicates_inexact_constructions_kernel::Point_3(const typename K::Point_d &)> CGAL::Homological_discrete_vector_field::Hdvf_traits_d< K >::plane_projection_builder ( typename K::Point_d  p0,
typename K::Vector_d  d1,
typename K::Vector_d  d2,
typename K::Vector_d  d3 
)
static

Builds a projector over an affine subspace of dimension 3.

Builds the projector over the affine space generated by the point p0 and an orthonormal basis d1, d2 and d3.

Parameters
p0A Point_d contained in the affine subspace.
d1First direction of the subspace.
d2Second direction of the subspace.
d3Third direction of the subspace.
Returns
The orthogonal projector of a Point onto this affine subspace of dimension 3.

Member Data Documentation

◆ default_projection

template<typename K >
std::function< typename Exact_predicates_inexact_constructions_kernel::Point_3(const typename K::Point_d &)> CGAL::Homological_discrete_vector_field::Hdvf_traits_d< K >::default_projection
static
Initial value:
=
[](const typename K::Point_d& p) { return typename Exact_predicates_inexact_constructions_kernel::Point_3(p[0], p[1], p[2]); }

Default projection operator.

Projects a dD point to its three first coordinates.

◆ to_point3

template<typename K >
std::function< typename Exact_predicates_inexact_constructions_kernel::Point_3(const typename K::Point_d &)> CGAL::Homological_discrete_vector_field::Hdvf_traits_d< K >::to_point3 = Hdvf_traits_d<K>::default_projection
static

Converts a Point to a Point3 for VTK rendering.

By default, this function is the default projection. Update it to change the projection for VTK rendering.

Parameters
pConstant reference over the projected point.
Returns
The projected Point3.