Changed prefix of names of concepts Arrangement... => Aos...

This commit is contained in:
Efi Fogel 2024-08-28 21:34:54 +03:00
parent 0d72f17992
commit 24400d8226
23 changed files with 43 additions and 47 deletions

View File

@ -6,7 +6,7 @@ namespace CGAL {
* of concept `CircularKernel`. * of concept `CircularKernel`.
* It provides curves of type `CGAL::Circular_arc_2<CircularKernel>`. * It provides curves of type `CGAL::Circular_arc_2<CircularKernel>`.
* *
* \cgalModels{ArrangementTraits_2} * \cgalModels{AosTraits_2}
*/ */
template <typename CircularKernel> template <typename CircularKernel>
class Arr_circular_arc_traits_2 {}; class Arr_circular_arc_traits_2 {};

View File

@ -6,7 +6,7 @@ namespace CGAL {
* \f$x\f$-monotone curve. It is used by models geometry traits concept that * \f$x\f$-monotone curve. It is used by models geometry traits concept that
* handle boundary conditions. * handle boundary conditions.
* *
* \sa `ArrangementOpenBoundaryTraits_2` * \sa `AosOpenBoundaryTraits_2`
*/ */
enum Arr_curve_end { ARR_MIN_END, ARR_MAX_END }; enum Arr_curve_end { ARR_MIN_END, ARR_MAX_END };

View File

@ -6,7 +6,7 @@ namespace CGAL {
* model of concept `CircularKernel`. It provides curves of type * model of concept `CircularKernel`. It provides curves of type
* `CGAL::Line_arc_2<CircularKernel>`. * `CGAL::Line_arc_2<CircularKernel>`.
* *
* \cgalModels{ArrangementTraits_2} * \cgalModels{AosTraits_2}
*/ */
template <typename CircularKernel> template <typename CircularKernel>
class Arr_line_arc_traits_2 {}; class Arr_line_arc_traits_2 {};

View File

@ -3,11 +3,11 @@ namespace CGAL {
/*! \ingroup PkgArrangementOnSurface2TraitsClasses /*! \ingroup PkgArrangementOnSurface2TraitsClasses
* *
* The traits class `Arr_rational_function_traits_2` is a model of the * The traits class `Arr_rational_function_traits_2` is a model of the
* `ArrangementTraits_2` concept. It handles bounded and unbounded arcs of * `AosTraits_2` concept. It handles bounded and unbounded arcs of
* rational functions, referred to as <i>rational arcs</i> (in particular, such * rational functions, referred to as <i>rational arcs</i> (in particular, such
* an arc may correspond to the entire graph of a rational function). It * an arc may correspond to the entire graph of a rational function). It
* supports bounded and unbounded arcs. Thus, it is also a model of the concept * supports bounded and unbounded arcs. Thus, it is also a model of the concept
* `ArrangementOpenBoundaryTraits_2`. The traits class enables the construction * `AosOpenBoundaryTraits_2`. The traits class enables the construction
* and maintenance of arrangements of such arcs. * and maintenance of arrangements of such arcs.
* *
* A rational function \f$y = \frac{P(x)}{Q(x)}\f$ is defined by two polynomials * A rational function \f$y = \frac{P(x)}{Q(x)}\f$ is defined by two polynomials
@ -19,7 +19,7 @@ namespace CGAL {
* functions are represented by the nested type `Curve_2`. Note that a rational * functions are represented by the nested type `Curve_2`. Note that a rational
* function may be not continuous since roots of \f$Q\f$ induce vertical * function may be not continuous since roots of \f$Q\f$ induce vertical
* asymptotes, which would contradict the notion of an \f$x\f$-monotone curve as * asymptotes, which would contradict the notion of an \f$x\f$-monotone curve as
* it is introduced by the `ArrangementTraits_2` concept. Thus, continuous * it is introduced by the `AosTraits_2` concept. Thus, continuous
* portions of rational functions are represented by the nested type * portions of rational functions are represented by the nested type
* `X_monotone_curve_2`, which is different from `Curve_2`. Constructors for * `X_monotone_curve_2`, which is different from `Curve_2`. Constructors for
* both classes are provided by the traits. A `Curve_2` may be split up into * both classes are provided by the traits. A `Curve_2` may be split up into
@ -43,12 +43,12 @@ namespace CGAL {
* cleans up the cache on demand. * cleans up the cache on demand.
* *
* While `Arr_rational_function_traits_2` models the concept * While `Arr_rational_function_traits_2` models the concept
* `ArrangementDirectionalXMonotoneTraits_2`, the implementation of the * `AosDirectionalXMonotoneTraits_2`, the implementation of the
* `Are_mergeable_2` operation does not enforce the input curves to have the * `Are_mergeable_2` operation does not enforce the input curves to have the
* same direction as a precondition. Moreover, `Arr_rational_function_traits_2` * same direction as a precondition. Moreover, `Arr_rational_function_traits_2`
* supports the merging of curves of opposite directions. * supports the merging of curves of opposite directions.
* *
* \cgalModels{ArrangementTraits_2,ArrangementDirectionalXMonotoneTraits_2,ArrangementOpenBoundaryTraits_2} * \cgalModels{AosTraits_2,AosDirectionalXMonotoneTraits_2,AosOpenBoundaryTraits_2}
*/ */
template <typename AlgebraicKernel_d_1> template <typename AlgebraicKernel_d_1>
class Arr_rational_function_traits_2 { class Arr_rational_function_traits_2 {

View File

@ -17,7 +17,7 @@ namespace CGAL {
* \sa `Arr_closed_side_tag` * \sa `Arr_closed_side_tag`
* \sa `Arr_contracted_side_tag` * \sa `Arr_contracted_side_tag`
* \sa `Arr_identified_side_tag` * \sa `Arr_identified_side_tag`
* \sa `ArrangementBasicTraits_2` * \sa `AosBasicTraits_2`
*/ */
struct Arr_oblivious_side_tag {}; struct Arr_oblivious_side_tag {};

View File

@ -75,7 +75,7 @@ public:
typedef typename Algebraic_kernel_d_2::Polynomial_2 Polynomial_2; typedef typename Algebraic_kernel_d_2::Polynomial_2 Polynomial_2;
/// public types for ArrangementTraits_2 /// public types for AosTraits_2
typedef typename Algebraic_kernel_d_2::Curve_analysis_2 Curve_2; typedef typename Algebraic_kernel_d_2::Curve_analysis_2 Curve_2;

View File

@ -36,7 +36,7 @@
namespace CGAL { namespace CGAL {
/*! \class /*! \class
* A model of the ArrangementTraits_2 concept that counts the methods invoked. * A model of the AosTraits_2 concept that counts the methods invoked.
*/ */
template <typename Base_traits> template <typename Base_traits>
class Arr_counting_traits_2 : public Base_traits { class Arr_counting_traits_2 : public Base_traits {

View File

@ -22,10 +22,10 @@ namespace CGAL {
/*! \class /*! \class
* A model of the following concepts: * A model of the following concepts:
* 1. ArrangementBasicTraits_2, * 1. AosBasicTraits_2,
* 2. ArrangementDirectionalXMonotoneTraits_2, * 2. AosDirectionalXMonotoneTraits_2,
* 4. ArrangementConstructXMonotoneCurveTraits_2, and * 4. AosConstructXMonotoneCurveTraits_2, and
* 3. ArrangementOpenBoundaryTraits_2 * 3. AosOpenBoundaryTraits_2
* It handles linear curves. * It handles linear curves.
*/ */
template <class Kernel_T> template <class Kernel_T>
@ -43,7 +43,7 @@ public:
Arr_directional_non_caching_segment_basic_traits_2() : Base() {} Arr_directional_non_caching_segment_basic_traits_2() : Base() {}
/// \name Types and functors inherited from the base, required by the /// \name Types and functors inherited from the base, required by the
// ArrangementBasicTraits_2 concept. // AosBasicTraits_2 concept.
//@{ //@{
// Traits types: // Traits types:

View File

@ -25,7 +25,7 @@
/*! \file The basic non-caching segment traits-class for the arrangement /*! \file The basic non-caching segment traits-class for the arrangement
* package. This traits class handles x-monotone non-intersecting segments. * package. This traits class handles x-monotone non-intersecting segments.
* It is a model of the ArrangementBasicTraits_2 concept. The class is * It is a model of the AosBasicTraits_2 concept. The class is
* templated by a kernel and inherits from it all the types and many of the * templated by a kernel and inherits from it all the types and many of the
* functors required by the concept it models. * functors required by the concept it models.
*/ */
@ -41,7 +41,7 @@
namespace CGAL { namespace CGAL {
/*! \class /*! \class
* A model of the ArrangementBasicTraits_2 concept that handles x-monotone * A model of the AosBasicTraits_2 concept that handles x-monotone
* non-intersecting line segments. * non-intersecting line segments.
*/ */
template <class T_Kernel> template <class T_Kernel>

View File

@ -20,10 +20,10 @@
/*! \file The non-caching segment traits-class for the arrangement package. /*! \file The non-caching segment traits-class for the arrangement package.
* This traits class handles general segments. It is a model of the * This traits class handles general segments. It is a model of the
* ArrangementTraits_2 concept, a refinement of the ArrangementBasicTraits_2 * AosTraits_2 concept, a refinement of the AosBasicTraits_2
* concept. The class is templated by a kernel and inherits from the * concept. The class is templated by a kernel and inherits from the
* Arr_non_caching_segment_basic_traits_2 class instantiated with the kernel - * Arr_non_caching_segment_basic_traits_2 class instantiated with the kernel -
* a model of the ArrangementBasicTraits_2 concept. It defined a few additional * a model of the AosBasicTraits_2 concept. It defined a few additional
* functors required by the concept it models. * functors required by the concept it models.
*/ */
@ -38,7 +38,7 @@
namespace CGAL { namespace CGAL {
/*! \class /*! \class
* A model of the ArrangementTraits_2 concept that handles general * A model of the AosTraits_2 concept that handles general
* line segments. * line segments.
*/ */
template <typename Kernel_T = Exact_predicates_exact_constructions_kernel> template <typename Kernel_T = Exact_predicates_exact_constructions_kernel>

View File

@ -1037,7 +1037,7 @@ public:
//@} //@}
/// \name Types and functors defined here, required by the /// \name Types and functors defined here, required by the
// ArrangementDirectionalXMonotoneTraits_2 concept. // AosDirectionalXMonotoneTraits_2 concept.
//@{ //@{
Compare_endpoints_xy_2 compare_endpoints_xy_2_object() const Compare_endpoints_xy_2 compare_endpoints_xy_2_object() const

View File

@ -35,7 +35,7 @@
namespace CGAL { namespace CGAL {
/*! \class /*! \class
* A model of the ArrangementTraits_2 concept that counts the methods invoked. * A model of the AosTraits_2 concept that counts the methods invoked.
*/ */
template <typename Base_traits> template <typename Base_traits>
class Arr_tracing_traits_2 : public Base_traits { class Arr_tracing_traits_2 : public Base_traits {

View File

@ -2177,7 +2177,7 @@ public:
CGAL_precondition(is_in_x_range(xcv1, xcv2)); CGAL_precondition(is_in_x_range(xcv1, xcv2));
/* The traits class which the basic traits adaptor accepts as a template /* The traits class which the basic traits adaptor accepts as a template
* parameter is a model of the ArrangementBasicTraits_2 concept so it * parameter is a model of the AosBasicTraits_2 concept so it
* needs not to support intersections at all, therefore it is complicated * needs not to support intersections at all, therefore it is complicated
* to check if the x-curves are disjoint in their interiors. Moreover, * to check if the x-curves are disjoint in their interiors. Moreover,
* compare_y_position functor is called only from the arrangement class * compare_y_position functor is called only from the arrangement class

View File

@ -64,7 +64,7 @@ public:
BaseCKvA::Curved_kernel_via_analysis_2> Functor_base; BaseCKvA::Curved_kernel_via_analysis_2> Functor_base;
}; };
//!\name Embedded types to fulfill \c ArrangementTraits_2 concept //!\name Embedded types to fulfill \c AosTraits_2 concept
//! type of curve that can be analyzed //! type of curve that can be analyzed
typedef typename Curve_kernel_2::Curve_analysis_2 Curve_2; typedef typename Curve_kernel_2::Curve_analysis_2 Curve_2;
@ -245,14 +245,14 @@ public:
}; };
public: public:
//!\name Embedded types to fulfill \c ArrangementTraits_2 concept //!\name Embedded types to fulfill \c AosTraits_2 concept
//!@{ //!@{
typedef internal::Point_2< Self > Point_2; typedef internal::Point_2< Self > Point_2;
typedef internal::Arc_2< Self > Arc_2; typedef internal::Arc_2< Self > Arc_2;
//! type of weakly x-monotone arc for \c ArrangementTraits_2 //! type of weakly x-monotone arc for \c AosTraits_2
typedef Arc_2 X_monotone_curve_2; typedef Arc_2 X_monotone_curve_2;
//!@} //!@}

View File

@ -716,7 +716,7 @@ public:
//! type of an arc on generic curve //! type of an arc on generic curve
typedef internal::Arc_2< Self > Arc_2; typedef internal::Arc_2< Self > Arc_2;
//! type of weakly x-monotone arc for \c ArrangementTraits_2 //! type of weakly x-monotone arc for \c AosTraits_2
typedef Arc_2 X_monotone_curve_2; typedef Arc_2 X_monotone_curve_2;
//!@} //!@}

View File

@ -18,7 +18,7 @@ public:
Splits the arc `ca` into `x`-monotone arcs that are returned through the Splits the arc `ca` into `x`-monotone arcs that are returned through the
output iterator. Note that, to ensure an easy interface with the output iterator. Note that, to ensure an easy interface with the
`Arrangement_2` package, the arcs are returned as `CGAL::Object`'s `Arrangement_2` package, the arcs are returned as `CGAL::Object`'s
(see the `ArrangementTraits_2` concept). (see the `AosTraits_2` concept).
*/ */
template < class OutputIterator > template < class OutputIterator >
OutputIterator OutputIterator
@ -27,4 +27,3 @@ operator()(const CircularKernel::Circular_arc_2 &ca, OutputIterator oit);
/// @} /// @}
}; /* end CircularKernel::MakeXMonotone_2 */ }; /* end CircularKernel::MakeXMonotone_2 */

View File

@ -18,7 +18,7 @@ public:
Splits the arc `ca` into `y`-monotone arcs that are returned through the Splits the arc `ca` into `y`-monotone arcs that are returned through the
output iterator. Note that, to ensure an easy interface with the output iterator. Note that, to ensure an easy interface with the
`Arrangement_2` package, the arcs are returned as `CGAL::Object`'s `Arrangement_2` package, the arcs are returned as `CGAL::Object`'s
(see the `ArrangementTraits_2` concept). (see the `AosTraits_2` concept).
*/ */
template < class OutputIterator > template < class OutputIterator >
OutputIterator OutputIterator
@ -27,4 +27,3 @@ operator()(const CircularKernel::Circular_arc_2 &ca, OutputIterator oit);
/// @} /// @}
}; /* end CircularKernel::MakeXYMonotone_2 */ }; /* end CircularKernel::MakeXYMonotone_2 */

View File

@ -11,9 +11,9 @@ time, and the space needed to store the diagram class is linear in the
complexity of the envelope. complexity of the envelope.
The envelope-diagram class is parameterized by a traits class, which is a The envelope-diagram class is parameterized by a traits class, which is a
model of the `ArrangementXMonotoneTraits_2` concept, in case we handle model of the `AosXMonotoneTraits_2` concept, in case we handle
only envelopes of \f$ x\f$-monotone curves, or of the refined only envelopes of \f$ x\f$-monotone curves, or of the refined
`ArrangementTraits_2` concept in case we handle arbitrary planar curves. `AosTraits_2` concept in case we handle arbitrary planar curves.
\cgalModels{EnvelopeDiagram_1} \cgalModels{EnvelopeDiagram_1}

View File

@ -48,7 +48,7 @@ The lower envelope is represented using the output minimization diagram `diag`.
\tparam InputIterator must be an input iterator with value type `EnvelopeDiagram::X_monotone_curve_2`. \tparam InputIterator must be an input iterator with value type `EnvelopeDiagram::X_monotone_curve_2`.
\tparam EnvelopeDiagram must be a model of the concept `EnvelopeDiagram_1`. \tparam EnvelopeDiagram must be a model of the concept `EnvelopeDiagram_1`.
\tparam Traits must be a model of the concept `ArrangementXMonotoneTraits_2`. \tparam Traits must be a model of the concept `AosXMonotoneTraits_2`.
*/ */
template<class InputIterator, class EnvelopeDiagram, class Traits> template<class InputIterator, class EnvelopeDiagram, class Traits>
void lower_envelope_x_monotone_2 void lower_envelope_x_monotone_2
@ -107,7 +107,7 @@ The upper envelope is represented using the output maximization diagram `diag`.
\tparam InputIterator must be an input iterator with value type `EnvelopeDiagram::X_monotone_curve_2`. \tparam InputIterator must be an input iterator with value type `EnvelopeDiagram::X_monotone_curve_2`.
\tparam EnvelopeDiagram must be a model of the concept `EnvelopeDiagram_1`. \tparam EnvelopeDiagram must be a model of the concept `EnvelopeDiagram_1`.
\tparam Traits must be a model of the concept `ArrangementXMonotoneTraits_2`. \tparam Traits must be a model of the concept `AosXMonotoneTraits_2`.
*/ */
template<class InputIterator, class EnvelopeDiagram, class Traits> template<class InputIterator, class EnvelopeDiagram, class Traits>
void upper_envelope_x_monotone_2 void upper_envelope_x_monotone_2

View File

@ -136,11 +136,11 @@ Any model of the `EnvelopeDiagram_1` concept must define a geometric
traits class, which in turn defines the `Point_2` and traits class, which in turn defines the `Point_2` and
`X_monotone_curve_2` types defined with the diagram features. `X_monotone_curve_2` types defined with the diagram features.
The geometric traits class must be a model of the The geometric traits class must be a model of the
`ArrangementXMonotoneTraits_2` concept in case we construct `AosXMonotoneTraits_2` concept in case we construct
envelopes of \f$ x\f$-monotone curves. If we are interested in handling envelopes of \f$ x\f$-monotone curves. If we are interested in handling
arbitrary (not necessarily \f$ x\f$-monotone) curves, the traits class arbitrary (not necessarily \f$ x\f$-monotone) curves, the traits class
must be a model of the `ArrangementTraits_2` concept. This must be a model of the `AosTraits_2` concept. This
concepts refined the `ArrangementXMonotoneTraits_2` concept; concepts refined the `AosXMonotoneTraits_2` concept;
a traits class that models this concepts must also defines a a traits class that models this concepts must also defines a
`Curve_2` type, representing an arbitrary planar curve, and `Curve_2` type, representing an arbitrary planar curve, and
provide a functor for subdividing such curves into \f$ x\f$-monotone provide a functor for subdividing such curves into \f$ x\f$-monotone
@ -199,4 +199,3 @@ that compute envelopes of arbitrary curves.
*/ */
} /* namespace CGAL */ } /* namespace CGAL */

View File

@ -3,7 +3,7 @@
* *
* This concept defines the minimal set of geometric predicates and operations * This concept defines the minimal set of geometric predicates and operations
* needed to compute the envelope of a set of arbitrary surfaces in \f$ * needed to compute the envelope of a set of arbitrary surfaces in \f$
* \mathbb{R}^3\f$. It refines the `ArrangementXMonotoneTraits_2` concept. In * \mathbb{R}^3\f$. It refines the `AosXMonotoneTraits_2` concept. In
* addition to the `Point_2` and `X_monotone_curve_2` types and the * addition to the `Point_2` and `X_monotone_curve_2` types and the
* `Has_boundary_category` category tag listed in the base concept, it also * `Has_boundary_category` category tag listed in the base concept, it also
* lists the `Surface_3` and `Xy_monotone_surface_3` types, which represent * lists the `Surface_3` and `Xy_monotone_surface_3` types, which represent
@ -12,7 +12,7 @@
* operations usually involve the projection of 3D objects onto the \f$ * operations usually involve the projection of 3D objects onto the \f$
* xy\f$-plane. * xy\f$-plane.
* *
* \cgalRefines{ArrangementXMonotoneTraits_2} * \cgalRefines{AosXMonotoneTraits_2}
* *
* \cgalHasModelsBegin * \cgalHasModelsBegin
* \cgalHasModels{CGAL::Env_triangle_traits_3<Kernel, ArrLinearTraits>} * \cgalHasModels{CGAL::Env_triangle_traits_3<Kernel, ArrLinearTraits>}

View File

@ -9,7 +9,7 @@ the free function \ref CGAL::snap_rounding_2() `CGAL::snap_rounding_2<Traits,Inp
The list includes the nested types of the geometric primitives used in this class and The list includes the nested types of the geometric primitives used in this class and
some function object types for the required predicates on those primitives. some function object types for the required predicates on those primitives.
\cgalRefines{ArrangementTraits_2} \cgalRefines{AosTraits_2}
\cgalHasModelsBegin \cgalHasModelsBegin
\cgalHasModels{CGAL::Snap_rounding_traits_2<Kernel>} \cgalHasModels{CGAL::Snap_rounding_traits_2<Kernel>}

View File

@ -27,7 +27,7 @@ input curves. When the flag `report_endpoints` is `true`,
this function reports all the curve endpoints as well. If a curve this function reports all the curve endpoints as well. If a curve
endpoint is also an intersection point, it is reported once (regardless endpoint is also an intersection point, it is reported once (regardless
of the value of the `report_endpoints` flag). The `Traits` type of the value of the `report_endpoints` flag). The `Traits` type
must be a model of the `ArrangementTraits_2` concept, such that the must be a model of the `AosTraits_2` concept, such that the
value-type of `InputIterator` is `Traits::Curve_2`, and the value-type of `InputIterator` is `Traits::Curve_2`, and the
value-type of `OutputIterator` is `Traits::Point_2`. value-type of `OutputIterator` is `Traits::Point_2`.
The output points are reported in an increasing \f$ xy\f$-lexicographical order. The output points are reported in an increasing \f$ xy\f$-lexicographical order.
@ -64,7 +64,7 @@ disjoint in their interior, as induced by the input curves.
If the flag `multiple_overlaps` is `true`, then a subcurve that If the flag `multiple_overlaps` is `true`, then a subcurve that
represents an overlap of \f$ k\f$ input curves is reported \f$ k\f$ times; otherwise, represents an overlap of \f$ k\f$ input curves is reported \f$ k\f$ times; otherwise,
each subcurve is reported only once. The `Traits` type must be a model each subcurve is reported only once. The `Traits` type must be a model
of the `ArrangementTraits_2` concept, such that the value-type of of the `AosTraits_2` concept, such that the value-type of
`InputIterator` is `Traits::Curve_2`, and the value-type of `InputIterator` is `Traits::Curve_2`, and the value-type of
`OutputIterator` is `Traits::X_monotone_curve_2`. `OutputIterator` is `Traits::X_monotone_curve_2`.
*/ */
@ -94,7 +94,7 @@ Given a range of curves, check whether there is at least one pair of curves
that intersect in their interior. The function returns `true` if such that intersect in their interior. The function returns `true` if such
a pair is found, and `false` if all curves are pairwise disjoint in a pair is found, and `false` if all curves are pairwise disjoint in
their interior. The `Traits` type must be a model their interior. The `Traits` type must be a model
of the `ArrangementTraits_2` concept, such that the value-type of of the `AosTraits_2` concept, such that the value-type of
`InputIterator` is `Traits::Curve_2`. `InputIterator` is `Traits::Curve_2`.
*/ */
template <class InputIterator, class Traits> template <class InputIterator, class Traits>
@ -103,4 +103,3 @@ bool do_curves_intersect (InputIterator curves_begin,
Traits traits = Default_traits()); Traits traits = Default_traits());
} /* namespace CGAL */ } /* namespace CGAL */