Skip to content

Commit

Permalink
Add support for interval-free Epeck when -DCGAL_HAS_NO_INTERVAL_SUPPORT
Browse files Browse the repository at this point in the history
  • Loading branch information
ochafik committed Mar 9, 2022
1 parent 8ab3b8f commit 77bfe78
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,14 @@ typedef internal::Exact_field_selector<double>::Type Epeck_ft;
// The following are redefined kernels instead of simple typedefs in order to shorten
// template name length (for error messages, mangling...).


#ifdef CGAL_HAS_NO_INTERVAL_SUPPORT

class Epeck : public Type_equality_wrapper<Simple_cartesian<Epeck_ft>::Base<Epeck>::Type, Epeck> {};
typedef Epeck Exact_predicates_exact_constructions_kernel;

#else

#ifdef CGAL_DONT_USE_LAZY_KERNEL

// Equivalent to Filtered_kernel<Simple_cartesian<Lazy_exact_nt<Epeck_ft> > >
Expand Down Expand Up @@ -70,6 +78,8 @@ struct Triangulation_structural_filtering_traits<Epeck> {
typedef Tag_true Use_structural_filtering_tag;
};

#endif // CGAL_HAS_NO_INTERVAL_SUPPORT

} //namespace CGAL

#endif // CGAL_EXACT_PREDICATES_EXACT_CONSTRUCTIONS_KERNEL_H
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,7 @@ class Intersection_nodes<TriangleMesh, VertexPointMap1, VertexPointMap2, true, f

void add_new_node(const Exact_kernel::Point_3& p)
{
#ifndef CGAL_DONT_USE_LAZY_KERNEL
const Exact_kernel::Approximate_kernel::Point_3& p_approx=p.approx();
const double precision =
Lazy_exact_nt<Exact_kernel::FT>::get_relative_precision_of_to_double();
Expand All @@ -221,6 +222,7 @@ class Intersection_nodes<TriangleMesh, VertexPointMap1, VertexPointMap2, true, f
{
p.exact();
}
#endif
enodes.push_back(p);
}

Expand Down

0 comments on commit 77bfe78

Please sign in to comment.