26 #ifndef EDELSBRUNNER96_TRIANGULATION_H_
27 #define EDELSBRUNNER96_TRIANGULATION_H_
33 namespace edelsbrunner96 {
63 template<
class Traits>
65 typename Traits::Storage& storage,
66 std::initializer_list<typename Traits::PointRef> refs);
70 template <
class Traits>
71 typename Traits::SimplexRef
Maintain(
typename Traits::Storage& storage,
72 typename Traits::PointRef point_ref,
73 typename Traits::SimplexRef return_ref,
74 std::list<Facet<Traits>>& link_facets);
80 template<
class Traits>
81 typename Traits::SimplexRef
InsertOutside(
typename Traits::Storage& storage,
82 typename Traits::SimplexRef simplex_ref,
83 typename Traits::PointRef point_ref);
87 template <
class Traits>
89 typename Traits::Storage& storage,
typename Traits::SimplexRef simplex_ref,
90 typename Traits::PointRef point_ref);
94 template <
class Traits,
class Iterator>
96 typename Traits::Storage& storage,
97 typename Traits::PointRef point_ref,
98 Iterator S_begin, Iterator S_end);
102 template <
typename Traits>
104 typename Traits::Storage& storage,
const typename Traits::SimplexRef s_0,
105 const typename Traits::PointRef x_ref,
106 const typename Traits::Scalar epsilon);
110 #endif // EDELSBRUNNER96_TRIANGULATION_H_
Traits::SimplexRef Triangulate(typename Traits::Storage &storage, std::initializer_list< typename Traits::PointRef > refs)
Initialize a triangulation with NDim+1 points and return the simplex.
Traits::SimplexRef InsertOutside(typename Traits::Storage &storage, typename Traits::SimplexRef simplex_ref, typename Traits::PointRef point_ref)
Inserts a point outside of the hull of the current point set. Note that simplex_ref must point to a h...
Traits::SimplexRef InsertReplace(typename Traits::Storage &storage, typename Traits::PointRef point_ref, Iterator S_begin, Iterator S_end)
Inserts a point into the triangulation, replacing the given simplex set which intersect the new point...
Traits::SimplexRef InsertInside(typename Traits::Storage &storage, typename Traits::SimplexRef simplex_ref, typename Traits::PointRef point_ref)
Inserts a point into a simplex, performs 1-to-n+1 flip, and performs the delaunay maintenance on the ...
Traits::SimplexRef FuzzyWalkInsert(typename Traits::Storage &storage, const typename Traits::SimplexRef s_0, const typename Traits::PointRef x_ref, const typename Traits::Scalar epsilon)
Perform a fuzzy walk to get the set of simplices intersecting the query point, then insert the point ...
Traits::SimplexRef Maintain(typename Traits::Storage &storage, typename Traits::PointRef point_ref, typename Traits::SimplexRef return_ref, std::list< Facet< Traits >> &link_facets)
While the link of the specified point is not locally Delaunay, continue flipping locally non-Delaunay...