diff --git a/Packages/Curved_kernel/include/CGAL/Circular_kernel.h b/Packages/Curved_kernel/include/CGAL/Circular_kernel.h index 15de9eb401f..a0df7120a76 100644 --- a/Packages/Curved_kernel/include/CGAL/Circular_kernel.h +++ b/Packages/Curved_kernel/include/CGAL/Circular_kernel.h @@ -102,6 +102,8 @@ struct Curved_kernel Intersect_2; typedef CircularFunctors::Split_2 Split_2; + typedef CircularFunctors::Is_vertical_2 + Is_vertical_2; typedef CircularFunctors::Construct_circular_arc_2 Construct_circular_arc_2; typedef CircularFunctors::Construct_line_arc_2 @@ -188,6 +190,9 @@ struct Curved_kernel split_2_object() const { return Split_2(); } + Is_vertical_2 + is_vertical_2_object() const + { return Is_vertical_2(); } Construct_circular_arc_2 construct_circular_arc_2_object() const diff --git a/Packages/Curved_kernel/include/CGAL/Curved_kernel/function_objects_polynomial_circular.h b/Packages/Curved_kernel/include/CGAL/Curved_kernel/function_objects_polynomial_circular.h index 36a8e5e69bd..f5a32999f5d 100644 --- a/Packages/Curved_kernel/include/CGAL/Curved_kernel/function_objects_polynomial_circular.h +++ b/Packages/Curved_kernel/include/CGAL/Curved_kernel/function_objects_polynomial_circular.h @@ -354,6 +354,25 @@ namespace CircularFunctors { }; + template < class CK > + class Is_vertical_2 + { + typedef typename CK::Circular_arc_2 Circular_arc_2; + typedef typename CK::Line_arc_2 Line_arc_2; + + public: + typedef bool result_type; + + result_type + operator()(const Circular_arc_2 &A) const + { return is_vertical(A); } + + + result_type + operator()(const Line_arc_2 &A) const + { return is_vertical(A); } + + }; template < class CK >