From e26c6ade83e7fe5c91b9ecdfd7377784be98b009 Mon Sep 17 00:00:00 2001 From: Jane Tournois Date: Tue, 22 Apr 2025 18:37:17 +0200 Subject: [PATCH] wip triangulation traits --- ...ConstrainedDelaunayTriangulationTraits_3.h | 110 +++++++++++++++++- 1 file changed, 109 insertions(+), 1 deletion(-) diff --git a/Constrained_triangulation_3/doc/Constrained_triangulation_3/Concepts/ConformingConstrainedDelaunayTriangulationTraits_3.h b/Constrained_triangulation_3/doc/Constrained_triangulation_3/Concepts/ConformingConstrainedDelaunayTriangulationTraits_3.h index 4eb75159b61..667530d1c13 100644 --- a/Constrained_triangulation_3/doc/Constrained_triangulation_3/Concepts/ConformingConstrainedDelaunayTriangulationTraits_3.h +++ b/Constrained_triangulation_3/doc/Constrained_triangulation_3/Concepts/ConformingConstrainedDelaunayTriangulationTraits_3.h @@ -11,7 +11,7 @@ parameter `Triangulation_3` in the function template \cgalHasModelsBegin \cgalHasModels{CGAL::Exact_predicates_inexact_constructions_kernel (recommended)} -\cgalHasModelsBare{all %CGAL kernels} +\cgalHasModelsBare{All %CGAL kernels} \cgalHasModelsEnd \todo Add the requirements in the concept `ConformingConstrainedDelaunayTriangulationTraits_3`. @@ -19,4 +19,112 @@ parameter `Triangulation_3` in the function template */ class ConformingConstrainedDelaunayTriangulationTraits_3 { public: + /// \name Types + /// @{ + + /*! + * The number type + */ + using FT = unspecified_type; + + /*! + * The line type + */ + using Line_3 = unspecified_type; + + /*! + * The point type + */ + using Point_3 = unspecified_type; + + /*! + * The vector type + */ + using Vector_3 = unspecified_type; + + /*! + * The segment type + */ + using Segment_3 = unspecified_type; + + /*! + * The triangle type + */ + using Triangle_3 = unspecified_type; + + /*! + * The tetrahedron type + */ + using Tetrahedron_3 = unspecified_type; + + /*! + */ + using Construct_cross_product_vector_3 = unspecified_type; + + /*! + */ + using Construct_vector_3 = unspecified_type; + + /*! + */ + using Construct_sum_of_vectors_3 = unspecified_type; + + /*! + */ + using Construct_triangle_3 = unspecified_type; + + /*! + */ + using Construct_vertex_3 = unspecified_type; + + /*! + */ + using Orientation_3 = unspecified_type; + + /*! + * A predicate object that must provide the function operators: + + `bool operator()(Triangle_3 t)` + `bool operator()(Tetrahedron_3 t)` + + which return true iff the object is degenerate. + */ + using Is_degenerate_3 = unspecified_type; + + /// @} + + /// \name Operations + /// The following functions give access to the predicate and construction objects: + /// @{ + + /*! + */ + Construct_cross_product_vector_3 construct_cross_product_vector_3_object(); + + /*! + */ + Construct_vector_3 construct_vector_3_object(); + + /*! + */ + Construct_sum_of_vectors_3 construct_sum_of_vectors_3_object(); + + /*! + */ + Construct_triangle_3 construct_triangle_3_object(); + + /*! + */ + Construct_vertex_3 construct_vertex_3_object(); + + /*! + */ + Orientation_3 orientation_3_object(); + + /*! + */ + Is_degenerate_3 is_degenerate_3_object(); + + /// @} + };