1#if TATOOINE_CGAL_AVAILABLE || defined(TATOOINE_DOC_ONLY)
3#ifndef TATOOINE_CGAL_NATURAL_NEIGHBOR_COORDINATES_H
4#define TATOOINE_CGAL_NATURAL_NEIGHBOR_COORDINATES_H
6#include <CGAL/natural_neighbor_coordinates_2.h>
7#include <CGAL/natural_neighbor_coordinates_3.h>
16template <std::size_t NumDimensions,
typename Traits,
17 typename TriangulationDataStructure>
18requires(NumDimensions == 2)
21 TriangulationDataStructure>
const &triangulation,
23 TriangulationDataStructure>::Point
const
25 auto nnc = std::vector<std::pair<
27 NumDimensions, Traits, TriangulationDataStructure>::Vertex_handle,
28 typename Traits::FT>>{};
30 CGAL::natural_neighbor_coordinates_2(
31 triangulation, query, std::back_inserter(nnc),
32 CGAL::Identity<
typename std::decay_t<
decltype(nnc)>
::value_type>{}),
36template <std::size_t NumDimensions,
typename Traits,
37 typename TriangulationDataStructure>
38requires(NumDimensions == 3)
41 TriangulationDataStructure>
const &triangulation,
43 TriangulationDataStructure>::Point
const
45 auto nnc = std::vector<std::pair<
47 NumDimensions, Traits, TriangulationDataStructure>::Vertex_handle,
48 typename Traits::FT>>{};
49 auto norm_coeff_sibson =
typename Traits::FT{};
51 CGAL::sibson_natural_neighbor_coordinates_3(
52 triangulation, query, std::back_inserter(nnc), norm_coeff_sibson),
typename delaunay_triangulation_impl< NumDimensions, Traits, TriangulationDataStructure >::type delaunay_triangulation
Definition: delaunay_triangulation.h:40
Definition: delaunay_triangulation.h:14
auto natural_neighbor_coordinates(delaunay_triangulation< NumDimensions, Traits, TriangulationDataStructure > const &triangulation, typename delaunay_triangulation< NumDimensions, Traits, TriangulationDataStructure >::Point const &query)
Definition: natural_neighbor_coordinates.h:19
typename value_type_impl< T >::type value_type
Definition: type_traits.h:280