diff --git a/Documentation/doc/resources/1.10.0/BaseDoxyfile.in b/Documentation/doc/resources/1.10.0/BaseDoxyfile.in index 9ce9ac906179..4763097da7f4 100644 --- a/Documentation/doc/resources/1.10.0/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.10.0/BaseDoxyfile.in @@ -213,7 +213,8 @@ ALIASES = "cgal=%CGAL" \ "cgalParamPrecondition{1}=
  • Precondition: \1
  • " \ "cgalBigO{1}=\f$O(\1)\f$" \ "cgalBigOLarge{1}=\f$O\left(\1\right)\f$" \ - "cgalInclude{1}=`#include<\1>`" + "cgalInclude{1}=`#include<\1>`" \ + "cgalEpicExact=
    Exactness
    This construction is trivial and therefore always exact in `Exact_predicates_inexact_constructions_kernel`.
    " # Doxygen selects the parser to use depending on the extension of the files it # parses. With this tag you can assign which parser to use for a given diff --git a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in index 4d4f4752d630..0dfdaebb15f0 100644 --- a/Documentation/doc/resources/1.8.13/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.8.13/BaseDoxyfile.in @@ -204,7 +204,8 @@ ALIASES = "cgal=%CGAL" \ "cgalParamPrecondition{1}=
  • Precondition: \1
  • " \ "cgalBigO{1}=\f$O(\1)\f$" \ "cgalBigOLarge{1}=\f$O\left(\1\right)\f$" \ - "cgalInclude{1}=\#`include<\1>`" + "cgalInclude{1}=\#`include<\1>`" \ + "cgalEpicExact=
    Exactness
    This construction is trivial and therefore always exact in `Exact_predicates_inexact_constructions_kernel`.
    " # Doxygen selects the parser to use depending on the extension of the files it # parses. With this tag you can assign which parser to use for a given diff --git a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in index 4c633ff493ac..c5e82c99de36 100644 --- a/Documentation/doc/resources/1.9.6/BaseDoxyfile.in +++ b/Documentation/doc/resources/1.9.6/BaseDoxyfile.in @@ -213,7 +213,8 @@ ALIASES = "cgal=%CGAL" \ "cgalParamPrecondition{1}=
  • Precondition: \1
  • " \ "cgalBigO{1}=\f$O(\1)\f$" \ "cgalBigOLarge{1}=\f$O\left(\1\right)\f$" \ - "cgalInclude{1}=`#include<\1>`" + "cgalInclude{1}=`#include<\1>`" \ + "cgalEpicExact=
    Exactness
    This construction is trivial and therefore always exact in `Exact_predicates_inexact_constructions_kernel`.
    " # Doxygen selects the parser to use depending on the extension of the files it # parses. With this tag you can assign which parser to use for a given diff --git a/Kernel_23/doc/Kernel_23/CGAL/Circle_2.h b/Kernel_23/doc/Kernel_23/CGAL/Circle_2.h index 0903e5152555..1c0b73fa526e 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Circle_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Circle_2.h @@ -28,6 +28,8 @@ It is initialized to the circle with center `center`, squared radius `squared_radius` and orientation `ori`. \pre `ori != COLLINEAR` and `squared_radius >= 0`. + +\cgalEpicExact */ Circle_2(const Point_2 ¢er, const Kernel::FT &squared_radius, @@ -64,6 +66,8 @@ It is initialized to the circle with center `center`, squared radius zero and orientation `ori`. \pre `ori != COLLINEAR`. \post `c.is_degenerate()` = `true`. + +\cgalEpicExact */ Circle_2( const Point_2 ¢er, const Orientation &ori = COUNTERCLOCKWISE); @@ -76,18 +80,21 @@ Circle_2( const Point_2 ¢er, /*! returns the center of `c`. +\cgalEpicExact */ const Point_2 ¢er( ) const; /*! returns the squared radius of `c`. +\cgalEpicExact */ const Kernel::FT& squared_radius( ) const; /*! returns the orientation of `c`. +\cgalEpicExact */ Orientation orientation( ) const; @@ -171,6 +178,7 @@ bool has_on_unbounded_side(const Point_2 &p) const; returns the circle with the same center and squared radius as `c` but with opposite orientation. +\cgalEpicExact */ Circle_2 opposite() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Circle_3.h b/Kernel_23/doc/Kernel_23/CGAL/Circle_3.h index 4624be59f351..3609ea797df0 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Circle_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Circle_3.h @@ -22,6 +22,8 @@ introduces a variable `c` of type `Circle_3`. It is initialized to the circle of center `center` and squared radius `sq_r` in plane `plane`. \pre `center` lies in `plane` and `sq_r >= 0`. + +\cgalEpicExact */ Circle_3(const Point_3 ¢er, const Kernel::FT &sq_r, @@ -60,7 +62,7 @@ It is initialized to the circle along which the sphere and the plane intersect. \pre The sphere and the plane intersect along a circle. */ - Circle_3(constSphere_3 & sphere, + Circle_3(const Sphere_3 & sphere, const Plane_3 & plane); /*! @@ -80,24 +82,28 @@ Circle_3(const Plane_3 & plane, /*! returns the center of `c`. +\cgalEpicExact */ const Point_3 & center( ) const; /*! returns the squared radius of `c`. +\cgalEpicExact */ const Kernel::FT & squared_radius( ) const; /*! returns the supporting plane of `c`. +\cgalEpicExact */ const Plane_3 & supporting_plane( ) const; /*! returns the diametral sphere of `c`. +\cgalEpicExact */ const Sphere_3 & diametral_sphere( ) const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Direction_2.h b/Kernel_23/doc/Kernel_23/CGAL/Direction_2.h index 241f39e64094..d3b7554e2723 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Direction_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Direction_2.h @@ -26,6 +26,7 @@ class Direction_2 { /*! introduces the direction `d` of vector `v`. +\cgalEpicExact */ Direction_2(const Vector_2 &v); @@ -47,6 +48,7 @@ Direction_2(const Segment_2 &s); /*! introduces a direction `d` passing through the origin and the point with %Cartesian coordinates \f$ (x, y)\f$. +\cgalEpicExact */ Direction_2(const Kernel::RT &x, const Kernel::RT &y); @@ -61,16 +63,20 @@ Direction_2(const Kernel::RT &x, const Kernel::RT &y); /*! returns values, such that `d``== Direction_2(delta(0),delta(1))`. \pre `0 <= i <= 1`. + +\cgalEpicExact */ Kernel::RT delta(int i) const; /*! returns `delta(0)`. +\cgalEpicExact */ Kernel::RT dx() const; /*! returns `delta(1)`. +\cgalEpicExact */ Kernel::RT dy() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Direction_3.h b/Kernel_23/doc/Kernel_23/CGAL/Direction_3.h index 34c8c55766d0..bf623b6a900a 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Direction_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Direction_3.h @@ -26,6 +26,7 @@ class Direction_3 { /*! introduces a direction `d` initialized with the direction of vector `v`. +\cgalEpicExact */ Direction_3(const Vector_3 &v); @@ -47,6 +48,7 @@ Direction_3(const Segment_3 &s); /*! introduces a direction `d` initialized with the direction from the origin to the point with %Cartesian coordinates \f$ (x, y, z)\f$. +\cgalEpicExact */ Direction_3(const Kernel::RT &x, const Kernel::RT &y, const Kernel::RT &z); @@ -58,21 +60,26 @@ Direction_3(const Kernel::RT &x, const Kernel::RT &y, const Kernel::RT &z); /*! returns values, such that `d``== Direction_3(delta(0),delta(1),delta(2))`. \pre `0 <= i <= 2`. + +\cgalEpicExact */ Kernel::RT delta(int i) const; /*! returns `delta(0)`. +\cgalEpicExact */ Kernel::RT dx() const; /*! returns `delta(1)`. +\cgalEpicExact */ Kernel::RT dy() const; /*! returns `delta(2)`. +\cgalEpicExact */ Kernel::RT dz() const; @@ -88,11 +95,13 @@ bool operator!=(const Direction_3 &e) const; /*! The direction opposite to `d`. +\cgalEpicExact */ Direction_3 operator-() const; /*! returns a vector that has the same direction as `d`. +\cgalEpicExact */ Vector_3 vector() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_inexact_constructions_kernel.h b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_inexact_constructions_kernel.h index d53f16093f08..ad3ba0e043ee 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_inexact_constructions_kernel.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Exact_predicates_inexact_constructions_kernel.h @@ -4,16 +4,212 @@ namespace CGAL { /*! \ingroup kernel_predef -A typedef to a kernel which has the following properties: +A typedef to a kernel that has the following properties:
    • It uses %Cartesian representation.
    • It supports constructions of points from `double` %Cartesian coordinates. -
    • It provides exact geometric predicates, but inexact geometric -constructions. +
    • It provides exact geometric predicates, but geometric +constructions are not exact in general.
    +
    Trivial Constructions
    +

    Some geometric constructions, however, are exact because they only +copy parameters and do not involve any computations that could lead to +roundoff errors. We call such a construction trivial. For +instance, all copy constructors, such as `Point_2::Point_2(const +Point_2&)`, are trivial constructions. In addition, the following +constructions in `CGAL::Exact_predicates_inexact_constructions_kernel` +are trivial:

    + +
      +
    • `Point_2::Point_2(FT, FT)` +
    • `Point_2::Point_2(Weighted_point_2)` +
    • `Point_2::Point_2(Origin)` +
    • `FT Point_2::x()` +
    • `FT Point_2::y()` +
    • `FT Point_2::cartesian(int)` +
    • `FT Point_2::operator[](int)` +
    • `Bbox_2 Point_2::bbox()` +
    • `Vector_2 operator-(Point_2, Origin)` +
    • `Vector_2 operator-(Origin, Point_2)` +
    • `Weighted_point_2::Weighted_point_2(FT, FT)` +
    • `Weighted_point_2::Weighted_point_2(Point_2, FT)` +
    • `Weighted_point_2::Weighted_point_2(Point_2)` +
    • `Weighted_point_2::Weighted_point_2(Origin)` +
    • `Point_2 Weighted_point_2::point()` +
    • `FT Weighted_point_2::weight()` +
    • `FT Weighted_point_2::x()` +
    • `FT Weighted_point_2::y()` +
    • `FT Weighted_point_2::cartesian(int)` +
    • `FT Weighted_point_2::operator[](int)` +
    • `Bbox_2 Weighted_point_2::bbox()` +
    • `Vector_2::Vector_2(FT, FT)` +
    • `FT Vector_2::x()` +
    • `FT Vector_2::y()` +
    • `FT Vector_2::cartesian(int)` +
    • `FT Vector_2::operator[](int)` +
    • `Direction_2 Vector_2::direction()` +
    • `Vector_2 Vector_2::operator-()` +
    • `Direction_2::Direction_2(FT, FT)` +
    • `Direction_2::Direction_2(Vector_2)` +
    • `RT Direction_2::delta(int)` +
    • `RT Direction_2::dx()` +
    • `RT Direction_2::dy()` +
    • `Direction_2 Direction_2::operator-()` +
    • `Vector_2 Direction_2::vector()` +
    • `Line_2::Line_2(RT, RT, RT)` +
    • `RT Line_2::a()` +
    • `RT Line_2::b()` +
    • `Line_2 Line_2::opposite()` +
    • `Ray_2::Ray_2(Point_2, Point_2)` +
    • `Point_2 Ray_2::source()` +
    • `Segment_2::Segment_2(Point_2, Point_2)` +
    • `Point_2 Segment_2::source()` +
    • `Point_2 Segment_2::target()` +
    • `Point_2 Segment_2::min()` +
    • `Point_2 Segment_2::max()` +
    • `Point_2 Segment_2::vertex(int)` +
    • `Point_2 Segment_2::point(int)` +
    • `Point_2 Segment_2::operator[](int)` +
    • `Segment_2 Segment_2::opposite()` +
    • `Bbox_2 Segment_2::bbox()` +
    • `Triangle_2::Triangle_2(Point_2, Point_2, Point_2)` +
    • `Point_2 Triangle_2::vertex(int)` +
    • `Point_2 Triangle_2::operator[](int)` +
    • `Triangle_2 Triangle_2::opposite()` +
    • `Bbox_2 Triangle_2::bbox()` +
    • `Iso_rectangle_2::Iso_rectangle_2(Point_2, Point_2)` +
    • `Iso_rectangle_2::Iso_rectangle_2(Point_2, Point_2, int)` +
    • `Iso_rectangle_2::Iso_rectangle_2(Point_2, Point_2, Point_2, Point_2)` +
    • `Iso_rectangle_2::Iso_rectangle_2(Bbox_2)` +
    • `Point_2 Iso_rectangle_2::vertex(int)` +
    • `Point_2 Iso_rectangle_2::operator[](int)` +
    • `Point_2 Iso_rectangle_2::min()` +
    • `Point_2 Iso_rectangle_2::max()` +
    • `FT Iso_rectangle_2::xmin()` +
    • `FT Iso_rectangle_2::ymin()` +
    • `FT Iso_rectangle_2::xmax()` +
    • `FT Iso_rectangle_2::ymax()` +
    • `FT Iso_rectangle_2::min_coord(int)` +
    • `FT Iso_rectangle_2::max_coord(int)` +
    • `Bbox_2 Iso_rectangle_2::bbox()` +
    • `Circle_2::Circle_2(Point_2, FT, Orientation)` +
    • `Circle_2::Circle_2(Point_2, Orientation)` +
    • `Point_2 Circle_2::center()` +
    • `FT Circle_2::squared_radius()` +
    • `Orientation Circle_2::orientation()` +
    • `Circle_2 Circle_2::opposite()` +
    • `Point_3::Point_3(FT, FT, FT)` +
    • `Point_3::Point_3(Weighted_point_3)` +
    • `Point_3::Point_3(Origin)` +
    • `FT Point_3::x()` +
    • `FT Point_3::y()` +
    • `FT Point_3::z()` +
    • `FT Point_3::cartesian(int)` +
    • `FT Point_3::operator[](int)` +
    • `Bbox_3 Point_3::bbox()` +
    • `Vector_3 operator-(Point_3, Origin)` +
    • `Vector_3 operator-(Origin, Point_3)` +
    • `Weighted_point_3::Weighted_point_3(FT, FT, FT)` +
    • `Weighted_point_3::Weighted_point_3(Point_3, FT)` +
    • `Weighted_point_3::Weighted_point_3(Point_3)` +
    • `Weighted_point_3::Weighted_point_3(Origin)` +
    • `Point_3 Weighted_point_3::point()` +
    • `FT Weighted_point_3::weight()` +
    • `FT Weighted_point_3::x()` +
    • `FT Weighted_point_3::y()` +
    • `FT Weighted_point_3::z()` +
    • `FT Weighted_point_3::cartesian(int)` +
    • `FT Weighted_point_3::operator[](int)` +
    • `Bbox_3 Weighted_point_3::bbox()` +
    • `Vector_3::Vector_3(FT, FT, FT)` +
    • `Vector_3::Vector_3(Null_vector)` +
    • `FT Vector_3::x()` +
    • `FT Vector_3::y()` +
    • `FT Vector_3::z()` +
    • `FT Vector_3::cartesian(int)` +
    • `FT Vector_3::operator[](int)` +
    • `Direction_3 Vector_3::direction()` +
    • `Vector_3 Vector_3::opposite()` +
    • `Direction_3::Direction_3(RT, RT, RT)` +
    • `Direction_3::Direction_3(Vector_3)` +
    • `RT Direction_3::delta(int)` +
    • `RT Direction_3::dx()` +
    • `RT Direction_3::dy()` +
    • `RT Direction_3::dz()` +
    • `Direction_3 Direction_3::opposite()` +
    • `Vector_3 Direction_3::vector()` +
    • `Line_3::Line_3(Point_3, Vector_3)` +
    • `Line_3::Line_3(Point_3, Direction_3)` +
    • `Line_3 Line_3::opposite()` +
    • `Vector_3 Line_3::to_vector()` +
    • `Direction_3 Line_3::direction()` +
    • `Plane_3::Plane_3(FT, FT, FT, FT)` +
    • `Plane_3::Plane_3(Circle_3)` +
    • `FT Plane_3::a()` +
    • `FT Plane_3::b()` +
    • `FT Plane_3::c()` +
    • `FT Plane_3::d()` +
    • `Plane_3 Plane_3::opposite()` +
    • `Vector_3 Plane_3::orthogonal_vector()` +
    • `Direction_3 Plane_3::orthogonal_direction()` +
    • `Circle_3::Circle_3(Point_3, FT, Plane_3)` +
    • `Point_3 Circle_3::center()` +
    • `FT Circle_3::squared_radius()` +
    • `FT Circle_3::supporting_plane()` +
    • `Sphere_3 Circle_3::diametral_sphere()` +
    • `Sphere_3::Sphere_3(Point_3, FT, Orientation)` +
    • `Sphere_3::Sphere_3(Point_3, Orientation)` +
    • `Sphere_3::Sphere_3(Circle_3)` +
    • `Point_3 Sphere_3::center()` +
    • `FT Sphere_3::squared_radius()` +
    • `Orientation Sphere_3::orientation()` +
    • `Sphere_3 Sphere_3::opposite()` +
    • `Ray_3::Ray_3(Point_3, Point_3)` +
    • `Point_3 Ray_3::source()` +
    • `Segment_3::Segment_3(Point_3, Point_3)` +
    • `Point_3 Segment_3::source()` +
    • `Point_3 Segment_3::target()` +
    • `Point_3 Segment_3::min()` +
    • `Point_3 Segment_3::max()` +
    • `Point_3 Segment_3::vertex(int)` +
    • `Point_3 Segment_3::point(int)` +
    • `Point_3 Segment_3::operator[](int)` +
    • `Segment_3 Segment_3::opposite()` +
    • `Bbox_3 Segment_3::bbox()` +
    • `Triangle_3::Triangle_3(Point_3, Point_3, Point_3)` +
    • `Point_3 Triangle_3::vertex(int)` +
    • `Point_3 Triangle_3::operator[](int)` +
    • `Bbox_3 Triangle_3::bbox()` +
    • `Tetrahedron_3::Tetrahedron_3(Point_3, Point_3, Point_3, Point_3)` +
    • `Point_3 Tetrahedron_3::vertex(int)` +
    • `Point_3 Tetrahedron_3::operator[](int)` +
    • `Bbox_3 Tetrahedron_3::bbox()` +
    • `Iso_cuboid_3::Iso_cuboid_3(Point_3, Point_3)` +
    • `Iso_cuboid_3::Iso_cuboid_3(Point_3, Point_3, int)` +
    • `Iso_cuboid_3::Iso_cuboid_3(Point_3, Point_3, Point_3, Point_3, Point_3, Point_3)` +
    • `Iso_cuboid_3::Iso_cuboid_3(Bbox_3)` +
    • `Point_3 Iso_cuboid_3::vertex(int)` +
    • `Point_3 Iso_cuboid_3::operator[](int)` +
    • `Point_3 Iso_cuboid_3::min()` +
    • `Point_3 Iso_cuboid_3::max()` +
    • `FT Iso_cuboid_3::xmin()` +
    • `FT Iso_cuboid_3::ymin()` +
    • `FT Iso_cuboid_3::zmin()` +
    • `FT Iso_cuboid_3::xmax()` +
    • `FT Iso_cuboid_3::ymax()` +
    • `FT Iso_cuboid_3::zmax()` +
    • `FT Iso_cuboid_3::min_coord(int)` +
    • `FT Iso_cuboid_3::max_coord(int)` +
    • `Bbox_3 Iso_cuboid_3::bbox()` +
    • `Point_2 min_vertex(Iso_rectangle_2)` +
    • `Point_2 min_vertex(Iso_cuboid_3)` +
    • `Point_2 max_vertex(Iso_rectangle_2)` +
    • `Point_2 max_vertex(Iso_cuboid_3)` +
    + \cgalModels{Kernel} \sa `CGAL::Exact_predicates_exact_constructions_kernel` diff --git a/Kernel_23/doc/Kernel_23/CGAL/Iso_cuboid_3.h b/Kernel_23/doc/Kernel_23/CGAL/Iso_cuboid_3.h index c98675c6ecf8..c2606d52caca 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Iso_cuboid_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Iso_cuboid_3.h @@ -30,6 +30,7 @@ class Iso_cuboid_3 { introduces an iso-oriented cuboid `c` with diagonal opposite vertices `p` and `q`. Note that the object is brought in the canonical form. +\cgalEpicExact */ Iso_cuboid_3(const Point_3 &p, const Point_3 &q); @@ -39,6 +40,8 @@ introduces an iso-oriented cuboid `c` with diagonal opposite vertices `p` and `q`. The `int` argument value is only used to distinguish the two overloaded functions. \pre `p.x()<=q.x()`, `p.y()<=q.y()` and `p.z()<=q.z()`. + +\cgalEpicExact */ Iso_cuboid_3(const Point_3 &p, const Point_3 &q, int); @@ -51,6 +54,7 @@ minimal \f$ y\f$ coordinate is the one of `bottom`, the maximal \f$ y\f$ coordinate is the one of `top`, the minimal \f$ z\f$ coordinate is the one of `far`, the maximal \f$ z\f$ coordinate is the one of `close`. +\cgalEpicExact */ Iso_cuboid_3(const Point_3 &left, const Point_3 &right, @@ -74,6 +78,7 @@ const Kernel::RT& hw = RT(1)); /*! If `Kernel::RT` is constructible from double, introduces an iso-oriented cuboid from `bbox`. +\cgalEpicExact */ Iso_cuboid_3(const Bbox_3& bbox); @@ -96,6 +101,7 @@ bool operator!=(const Iso_cuboid_3 &c2) const; /*! returns the i'th vertex modulo 8 of `c`. starting with the lower left vertex. +\cgalEpicExact */ Point_3 vertex(int i) const; @@ -103,52 +109,62 @@ Point_3 vertex(int i) const; returns `vertex(i)`, as indicated in the figure below: \image html IsoCuboid.png \image latex IsoCuboid.png + +\cgalEpicExact */ Point_3 operator[](int i) const; /*! returns the smallest vertex of `c` (= `vertex(0)`). +\cgalEpicExact */ Point_3 min() const; /*! returns the largest vertex of `c` (= `vertex(7)`). +\cgalEpicExact */ Point_3 max() const; /*! returns smallest %Cartesian \f$ x\f$-coordinate in `c`. +\cgalEpicExact */ Kernel::FT xmin() const; /*! returns smallest %Cartesian \f$ y\f$-coordinate in `c`. +\cgalEpicExact */ Kernel::FT ymin() const; /*! returns smallest %Cartesian \f$ z\f$-coordinate in `c`. +\cgalEpicExact */ Kernel::FT zmin() const; /*! returns largest %Cartesian \f$ x\f$-coordinate in `c`. +\cgalEpicExact */ Kernel::FT xmax() const; /*! returns largest %Cartesian \f$ y\f$-coordinate in `c`. +\cgalEpicExact */ Kernel::FT ymax() const; /*! returns largest %Cartesian \f$ z\f$-coordinate in `c`. +\cgalEpicExact */ Kernel::FT zmax() const; @@ -156,6 +172,8 @@ Kernel::FT zmax() const; returns `i`-th %Cartesian coordinate of the smallest vertex of `c`. \pre `0 <= i <= 2`. + +\cgalEpicExact */ Kernel::FT min_coord(int i) const; @@ -163,6 +181,8 @@ Kernel::FT min_coord(int i) const; returns `i`-th %Cartesian coordinate of the largest vertex of `c`. \pre `0 <= i <= 2`. + +\cgalEpicExact */ Kernel::FT max_coord(int i) const; @@ -212,6 +232,7 @@ Kernel::FT volume() const; /*! returns a bounding box containing `c`. +\cgalEpicExact */ Bbox_3 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Iso_rectangle_2.h b/Kernel_23/doc/Kernel_23/CGAL/Iso_rectangle_2.h index 106c019b0e2c..602cdc2386ea 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Iso_rectangle_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Iso_rectangle_2.h @@ -31,6 +31,7 @@ class Iso_rectangle_2 { introduces an iso-oriented rectangle `r` with diagonal opposite vertices `p` and `q`. Note that the object is brought in the canonical form. +\cgalEpicExact */ Iso_rectangle_2(const Point_2 &p, const Point_2 &q); @@ -40,6 +41,8 @@ introduces an iso-oriented rectangle `r` with diagonal opposite vertices `p` and `q`. The `int` argument value is only used to distinguish the two overloaded functions. \pre `p.x()<=q.x()` and `p.y()<=q.y()`. + +\cgalEpicExact */ Iso_rectangle_2(const Point_2 &p, const Point_2 &q, @@ -51,6 +54,7 @@ minimal \f$ x\f$ coordinate is the one of `left`, the maximal \f$ x\f$ coordinate is the one of `right`, the minimal \f$ y\f$ coordinate is the one of `bottom`, the maximal \f$ y\f$ coordinate is the one of `top`. +\cgalEpicExact */ Iso_rectangle_2(const Point_2 &left, const Point_2 &right, @@ -70,6 +74,7 @@ const Kernel::RT& hw = RT(1)); /*! If `Kernel::RT` is constructible from double, introduces an iso-oriented rectangle from `bbox`. +\cgalEpicExact */ Iso_rectangle_2(const Bbox_2& bbox); @@ -92,41 +97,49 @@ bool operator!=(const Iso_rectangle_2 &r2) const; /*! returns the i'th vertex modulo 4 of `r` in counterclockwise order, starting with the lower left vertex. +\cgalEpicExact */ Point_2 vertex(int i) const; /*! returns `vertex(i)`. +\cgalEpicExact */ Point_2 operator[](int i) const; /*! returns the lower left vertex of `r` (= `vertex(0)`). +\cgalEpicExact */ Point_2 min() const; /*! returns the upper right vertex of `r` (= `vertex(2)`). +\cgalEpicExact */ Point_2 max() const; /*! returns the \f$ x\f$ coordinate of lower left vertex of `r`. +\cgalEpicExact */ Kernel::FT xmin() const; /*! returns the \f$ y\f$ coordinate of lower left vertex of `r`. +\cgalEpicExact */ Kernel::FT ymin() const; /*! returns the \f$ x\f$ coordinate of upper right vertex of `r`. +\cgalEpicExact */ Kernel::FT xmax() const; /*! returns the \f$ y\f$ coordinate of upper right vertex of `r`. +\cgalEpicExact */ Kernel::FT ymax() const; @@ -134,6 +147,8 @@ Kernel::FT ymax() const; returns the `i`'th %Cartesian coordinate of the lower left vertex of `r`. \pre `0 <= i <= 1`. + +\cgalEpicExact */ Kernel::FT min_coord(int i) const; @@ -141,6 +156,8 @@ Kernel::FT min_coord(int i) const; returns the `i`'th %Cartesian coordinate of the upper right vertex of `r`. \pre `0 <= i <= 1`. + +\cgalEpicExact */ Kernel::FT max_coord(int i) const; @@ -190,6 +207,7 @@ Kernel::FT area() const; /*! returns a bounding box containing `r`. +\cgalEpicExact */ Bbox_2 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Kernel/global_functions.h b/Kernel_23/doc/Kernel_23/CGAL/Kernel/global_functions.h index 1b7099243c9e..243ca48a93e1 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Kernel/global_functions.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Kernel/global_functions.h @@ -2242,12 +2242,14 @@ const CGAL::Point_3& q); /*! computes the vertex with the lexicographically largest coordinates of the iso rectangle `ir`. +\cgalEpicExact */ template CGAL::Point_2 max_vertex( const CGAL::Iso_rectangle_2& ir ); /*! computes the vertex with the lexicographically largest coordinates of the iso cuboid `ic`. +\cgalEpicExact */ template CGAL::Point_3 max_vertex( const CGAL::Iso_cuboid_3& ic ); @@ -2292,12 +2294,14 @@ CGAL::Point_3 midpoint( const CGAL::Segment_3& s ); /*! computes the vertex with the lexicographically smallest coordinates of the iso rectangle `ir`. +\cgalEpicExact */ template CGAL::Point_2 min_vertex( const CGAL::Iso_rectangle_2& ir ); /*! computes the vertex with the lexicographically smallest coordinates of the iso cuboid `ic`. +\cgalEpicExact */ template CGAL::Point_3 min_vertex( const CGAL::Iso_cuboid_3& ic ); diff --git a/Kernel_23/doc/Kernel_23/CGAL/Line_2.h b/Kernel_23/doc/Kernel_23/CGAL/Line_2.h index 6d10a6efc622..2ef5b4fbd026 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Line_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Line_2.h @@ -47,6 +47,7 @@ class Line_2 { /*! introduces a line `l` with the line equation in %Cartesian coordinates \f$ ax +by +c = 0\f$. +\cgalEpicExact */ Line_2(const Kernel::RT &a, const Kernel::RT &b, const Kernel::RT &c); @@ -98,16 +99,19 @@ bool operator!=(const Line_2 &h) const; /*! returns the first coefficient of `l`. +\cgalEpicExact */ Kernel::RT a() const; /*! returns the second coefficient of `l`. +\cgalEpicExact */ Kernel::RT b() const; /*! returns the third coefficient of `l`. +\cgalEpicExact */ Kernel::RT c() const; @@ -205,6 +209,7 @@ Direction_2 direction() const; /*! returns the line with opposite direction. +\cgalEpicExact */ Line_2 opposite() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Line_3.h b/Kernel_23/doc/Kernel_23/CGAL/Line_3.h index 1760d5f6c2a2..878aef4c1a3a 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Line_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Line_3.h @@ -25,12 +25,14 @@ Line_3(const Point_3 &p, const Point_3 &q); /*! introduces a line `l` passing through point `p` with direction `d`. +\cgalEpicExact */ Line_3(const Point_3 &p, const Direction_3&d); /*! introduces a line `l` passing through point `p` and oriented by `v`. +\cgalEpicExact */ Line_3(const Point_3 &p, const Vector_3&v); @@ -100,16 +102,19 @@ Plane_3 perpendicular_plane(const Point_3 &p) const; /*! returns the line with opposite direction. +\cgalEpicExact */ Line_3 opposite() const; /*! returns a vector having the same direction as `l`. +\cgalEpicExact */ Vector_3 to_vector() const; /*! returns the direction of `l`. +\cgalEpicExact */ Direction_3 direction() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Plane_3.h b/Kernel_23/doc/Kernel_23/CGAL/Plane_3.h index 4496ea077dd8..44c0f888b1c5 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Plane_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Plane_3.h @@ -29,6 +29,7 @@ creates a plane `h` defined by the equation \f$ a\, px +b\, py +c\, pz + d = 0\f$. Notice that `h` is degenerate if \f$ a = b = c = 0\f$. +\cgalEpicExact */ Plane_3(const Kernel::RT &a, const Kernel::RT &b, @@ -84,6 +85,7 @@ const Point_3 &p); /*! introduces a plane `h` that is defined as the plane containing the circle. +\cgalEpicExact */ Plane_3(const Circle_3 &c); @@ -105,21 +107,25 @@ bool operator!=(const Plane_3 &h2) const; /*! returns the first coefficient of `h`. +\cgalEpicExact */ Kernel::RT a() const; /*! returns the second coefficient of `h`. +\cgalEpicExact */ Kernel::RT b() const; /*! returns the third coefficient of `h`. +\cgalEpicExact */ Kernel::RT c() const; /*! returns the fourth coefficient of `h`. +\cgalEpicExact */ Kernel::RT d() const; @@ -137,6 +143,7 @@ Point_3 projection(const Point_3 &p) const; /*! returns the plane with opposite orientation. +\cgalEpicExact */ Plane_3 opposite() const; @@ -148,12 +155,14 @@ Point_3 point() const; /*! returns a vector that is orthogonal to `h` and that is directed to the positive side of `h`. +\cgalEpicExact */ Vector_3 orthogonal_vector() const; /*! returns the direction that is orthogonal to `h` and that is directed to the positive side of `h`. +\cgalEpicExact */ Direction_3 orthogonal_direction() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Point_2.h b/Kernel_23/doc/Kernel_23/CGAL/Point_2.h index 7548bef24722..a0a6315a867b 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Point_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Point_2.h @@ -54,6 +54,7 @@ typedef unspecified_type Cartesian_const_iterator; /*! introduces a variable `p` with %Cartesian coordinates \f$ (0,0)\f$. +\cgalEpicExact */ Point_2(const Origin &ORIGIN); @@ -65,6 +66,7 @@ Point_2(int x, int y); /*! introduces a point `p` initialized to `(x,y)` provided `RT` supports construction from `double`. +\cgalEpicExact */ Point_2(double x, double y); @@ -76,11 +78,13 @@ Point_2(const Kernel::RT &hx, const Kernel::RT &hy, const Kernel::RT &hw = RT(1) /*! introduces a point `p` initialized to `(x,y)`. +\cgalEpicExact */ Point_2(const Kernel::FT &x, const Kernel::FT &y); /*! introduces a point from a weighted point. +\cgalEpicExact \warning The `explicit` keyword is used to avoid accidental implicit conversions between Point_2 and Weighted_point_2. @@ -140,11 +144,13 @@ Kernel::RT hw() const; /*! returns the %Cartesian \f$ x\f$ coordinate, that is `hx()`/`hw()`. +\cgalEpicExact */ Kernel::FT x() const; /*! returns the %Cartesian \f$ y\f$ coordinate, that is `hy()`/`hw()`. +\cgalEpicExact */ Kernel::FT y() const; @@ -165,12 +171,16 @@ Kernel::RT homogeneous(int i) const; /*! returns the i'th %Cartesian coordinate of `p`. \pre `0 <= i <= 1`. + +\cgalEpicExact */ Kernel::FT cartesian(int i) const; /*! returns `cartesian(i)`. \pre `0 <= i <= 1`. + +\cgalEpicExact */ Kernel::FT operator[](int i) const; @@ -193,6 +203,7 @@ int dimension() const; /*! returns a bounding box containing `p`. +\cgalEpicExact */ Bbox_2 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Point_3.h b/Kernel_23/doc/Kernel_23/CGAL/Point_3.h index 7bd6d26fddc7..d22c3589164a 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Point_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Point_3.h @@ -39,6 +39,7 @@ typedef unspecified_type Cartesian_const_iterator; /*! introduces a point with %Cartesian coordinates\f$ (0,0,0)\f$. +\cgalEpicExact */ Point_3(const Origin &ORIGIN); @@ -50,6 +51,7 @@ Point_3(int x, int y, int z); /*! introduces a point `p` initialized to `(x,y,z)` provided `RT` supports it. +\cgalEpicExact */ Point_3(double x, double y, double z); @@ -61,6 +63,7 @@ Point_3(const Kernel::RT &hx, const Kernel::RT &hy, const Kernel::RT &hz, const /*! introduces a point `p` initialized to `(x,y,z)`. +\cgalEpicExact */ Point_3(const Kernel::FT &x, const Kernel::FT &y, const Kernel::FT &z); @@ -69,6 +72,8 @@ introduces a point from a weighted point. \warning The `explicit` keyword is used to avoid accidental implicit conversions between Point_3 and Weighted_point_3. + +\cgalEpicExact */ explicit Point_3(const Kernel::Weighted_point_3 &wp); @@ -130,16 +135,19 @@ Kernel::RT hw() const; /*! returns the %Cartesian \f$ x\f$ coordinate, that is `hx()`/`hw()`. +\cgalEpicExact */ Kernel::FT x() const; /*! returns the %Cartesian \f$ y\f$ coordinate, that is `hy()`/`hw()`. +\cgalEpicExact */ Kernel::FT y() const; /*! returns the %Cartesian \f$ z\f$ coordinate, that is `hz()`/`hw()`. +\cgalEpicExact */ Kernel::FT z() const; @@ -160,12 +168,16 @@ Kernel::RT homogeneous(int i) const; /*! returns the i'th %Cartesian coordinate of `p`. \pre `0 <= i <= 2`. + +\cgalEpicExact */ Kernel::FT cartesian(int i) const; /*! returns `cartesian(i)`. \pre `0 <= i <= 2`. + +\cgalEpicExact */ Kernel::FT operator[](int i) const; @@ -188,6 +200,7 @@ int dimension() const; /*! returns a bounding box containing `p`. +\cgalEpicExact */ Bbox_3 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Ray_2.h b/Kernel_23/doc/Kernel_23/CGAL/Ray_2.h index 0e81f49852c0..bb32c5c771d9 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Ray_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Ray_2.h @@ -20,6 +20,7 @@ class Ray_2 { /*! introduces a ray `r` with source `p` and passing through point `q`. +\cgalEpicExact */ Ray_2(const Point_2 &p, const Point_2&q); @@ -59,6 +60,7 @@ bool operator!=(const Ray_2 &h) const; /*! returns the source of `r`. +\cgalEpicExact */ Point_2 source() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Ray_3.h b/Kernel_23/doc/Kernel_23/CGAL/Ray_3.h index 49f66ae47cc7..7f5e88c8de14 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Ray_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Ray_3.h @@ -20,6 +20,7 @@ class Ray_3 { /*! introduces a ray `r` with source `p` and passing through point `q`. +\cgalEpicExact */ Ray_3(const Point_3 &p, const Point_3 &q); @@ -59,6 +60,7 @@ bool operator!=(const Ray_3 &h) const; /*! returns the source of `r` +\cgalEpicExact */ Point_3 source() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Segment_2.h b/Kernel_23/doc/Kernel_23/CGAL/Segment_2.h index 0e7bc381ab15..42005d1e6081 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Segment_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Segment_2.h @@ -28,6 +28,7 @@ class Segment_2 { introduces a segment `s` with source `p` and target `q`. The segment is directed from the source towards the target. +\cgalEpicExact */ Segment_2(const Point_2 &p, const Point_2 &q); @@ -49,21 +50,25 @@ bool operator!=(const Segment_2 &q) const; /*! returns the source of `s`. +\cgalEpicExact */ Point_2 source() const; /*! returns the target of `s`. +\cgalEpicExact */ Point_2 target() const; /*! returns the point of `s` with lexicographically smallest coordinate. +\cgalEpicExact */ Point_2 min() const; /*! returns the point of `s` with lexicographically largest coordinate. +\cgalEpicExact */ Point_2 max() const; @@ -72,16 +77,19 @@ returns source or target of `s`: `vertex(0)` returns the source of `s`, `vertex(1)` returns the target of `s`. The parameter `i` is taken modulo 2, which gives easy access to the other vertex. +\cgalEpicExact */ Point_2 vertex(int i) const; /*! returns `vertex(i)`. +\cgalEpicExact */ Point_2 point(int i) const; /*! returns `vertex(i)`. +\cgalEpicExact */ Point_2 operator[](int i) const; @@ -102,6 +110,7 @@ Vector_2 to_vector() const; /*! returns a segment with source and target point interchanged. +\cgalEpicExact */ Segment_2 opposite() const; @@ -151,6 +160,7 @@ bool collinear_has_on(const Point_2 &p) const; /*! returns a bounding box containing `s`. +\cgalEpicExact */ Bbox_2 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Segment_3.h b/Kernel_23/doc/Kernel_23/CGAL/Segment_3.h index ffa862e7361f..948ecdbb4972 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Segment_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Segment_3.h @@ -28,6 +28,7 @@ class Segment_3 { introduces a segment `s` with source `p` and target `q`. It is directed from the source towards the target. +\cgalEpicExact */ Segment_3(const Point_3 &p, const Point_3 &q); @@ -49,21 +50,25 @@ bool operator!=(const Segment_3 &q) const; /*! returns the source of `s`. +\cgalEpicExact */ Point_3 source() const; /*! returns the target of `s`. +\cgalEpicExact */ Point_3 target() const; /*! returns the point of `s` with smallest coordinate (lexicographically). +\cgalEpicExact */ Point_3 min() const; /*! returns the point of `s` with largest coordinate (lexicographically). +\cgalEpicExact */ Point_3 max() const; @@ -72,16 +77,19 @@ returns source or target of `s`: `vertex(0)` returns the source, `vertex(1)` returns the target. The parameter `i` is taken modulo 2, which gives easy access to the other vertex. +\cgalEpicExact */ Point_3 vertex(int i) const; /*! returns `vertex(i)`. +\cgalEpicExact */ Point_3 point(int i) const; /*! returns `vertex(i)`. +\cgalEpicExact */ Point_3 operator[](int i) const; @@ -102,6 +110,7 @@ Direction_3 direction() const; /*! returns a segment with source and target interchanged. +\cgalEpicExact */ Segment_3 opposite() const; @@ -125,6 +134,7 @@ bool has_on(const Point_3 &p) const; /*! returns a bounding box containing `s`. +\cgalEpicExact */ Bbox_3 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Sphere_3.h b/Kernel_23/doc/Kernel_23/CGAL/Sphere_3.h index 2436276513e1..d3995efe2c1f 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Sphere_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Sphere_3.h @@ -28,6 +28,8 @@ It is initialized to the sphere with center `center`, squared radius `squared_radius` and orientation `orientation`. \pre `orientation != COPLANAR` and `squared_radius >= 0`. + +\cgalEpicExact */ Sphere_3( const Point_3 & center, const Kernel::FT & squared_radius, @@ -77,6 +79,8 @@ It is initialized to the sphere with center `center`, squared radius zero and orientation `orientation`. \pre `orientation != COPLANAR`. \post `c.is_degenerate()` = `true`. + +\cgalEpicExact */ Sphere_3( const Point_3 & center, const Orientation& orientation = COUNTERCLOCKWISE); @@ -85,6 +89,7 @@ Sphere_3( const Point_3 & center, introduces a variable `c` of type `Sphere_3`. It is initialized to the diametral sphere of the circle. +\cgalEpicExact */ Sphere_3( const Circle_3 & c ); @@ -96,18 +101,21 @@ Sphere_3( const Circle_3 & c ); /*! returns the center of `c`. +\cgalEpicExact */ const Point_3 & center( ) const; /*! returns the squared radius of `c`. +\cgalEpicExact */ Kernel::FT const& squared_radius( ) const; /*! returns the orientation of `c`. +\cgalEpicExact */ Orientation const& orientation( ) const; @@ -201,6 +209,7 @@ bool has_on(const Circle_3 &p) const; returns the sphere with the same center and squared radius as `c` but with opposite orientation. +\cgalEpicExact */ Sphere_3 opposite() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Tetrahedron_3.h b/Kernel_23/doc/Kernel_23/CGAL/Tetrahedron_3.h index 37af105fefe9..6af609250b87 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Tetrahedron_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Tetrahedron_3.h @@ -29,6 +29,7 @@ class Tetrahedron_3 { /*! introduces a tetrahedron `t` with vertices `p0`, `p1`, `p2` and `p3`. +\cgalEpicExact */ Tetrahedron_3(const Point_3 &p0, const Point_3 &p1, @@ -54,11 +55,13 @@ bool operator!=(const Tetrahedron_3 &t2) const; /*! returns the i'th vertex modulo 4 of `t`. +\cgalEpicExact */ Point_3 vertex(int i) const; /*! returns `vertex(int i)`. +\cgalEpicExact */ Point_3 operator[](int i) const; @@ -129,6 +132,7 @@ Kernel::FT volume() const; /*! returns a bounding box containing `t`. +\cgalEpicExact */ Bbox_3 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Triangle_2.h b/Kernel_23/doc/Kernel_23/CGAL/Triangle_2.h index 9004381fb117..11a9c5162698 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Triangle_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Triangle_2.h @@ -25,6 +25,7 @@ class Triangle_2 { /*! introduces a triangle `t` with vertices `p`, `q` and `r`. +\cgalEpicExact */ Triangle_2(const Point_2 &p, const Point_2 &q, @@ -49,11 +50,13 @@ bool operator!=(const Triangle_2 &t2) const; /*! returns the i'th vertex modulo 3 of `t`. +\cgalEpicExact */ Point_2 vertex(int i) const; /*! returns `vertex(i)`. +\cgalEpicExact */ Point_2 operator[](int i) const; @@ -127,6 +130,7 @@ bool has_on_unbounded_side(const Point_2 &p) const; returns a triangle where the boundary is oriented the other way round (this flips the positive and the negative side, but not the bounded and unbounded side). +\cgalEpicExact */ Triangle_2 opposite(); @@ -137,6 +141,7 @@ Kernel::FT area() const; /*! returns a bounding box containing `t`. +\cgalEpicExact */ Bbox_2 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Triangle_3.h b/Kernel_23/doc/Kernel_23/CGAL/Triangle_3.h index cc53d8ad29a4..4efcfac0752f 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Triangle_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Triangle_3.h @@ -20,6 +20,7 @@ class Triangle_3 { /*! introduces a triangle `t` with vertices `p`, `q` and `r`. +\cgalEpicExact */ Triangle_3(const Point_3 &p, const Point_3 &q, @@ -44,11 +45,13 @@ bool operator!=(const Triangle_3 &t2) const; /*! returns the i'th vertex modulo 3 of `t`. +\cgalEpicExact */ Point_3 vertex(int i) const; /*! returns `vertex(int i)`. +\cgalEpicExact */ Point_3 operator[](int i) const; @@ -86,6 +89,7 @@ Kernel::FT squared_area() const; /*! returns a bounding box containing `t`. +\cgalEpicExact */ Bbox_3 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h b/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h index bebeeeda3d93..5f77fcd9c845 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Vector_2.h @@ -65,6 +65,7 @@ Vector_2(int x, int y); /*! introduces a vector `v` initialized to `(x,y)`. +\cgalEpicExact */ Vector_2(double x, double y); @@ -76,6 +77,7 @@ Vector_2(const Kernel::RT &hx, const Kernel::RT &hy, const Kernel::RT &hw = RT(1 /*! introduces a vector `v` initialized to `(x,y)`. +\cgalEpicExact */ Vector_2(const Kernel::FT &x, const Kernel::FT &y); @@ -106,11 +108,13 @@ Kernel::RT hw() const; /*! returns the `x`-coordinate of `v`, that is `hx()`/`hw()`. +\cgalEpicExact */ Kernel::FT x() const; /*! returns the `y`-coordinate of `v`, that is `hy()`/`hw()`. +\cgalEpicExact */ Kernel::FT y() const; @@ -132,12 +136,16 @@ Kernel::RT homogeneous(int i) const; /*! returns the i'th %Cartesian coordinate of `v`. \pre `0 <= i <= 1`. + +\cgalEpicExact */ Kernel::FT cartesian(int i) const; /*! returns `cartesian(i)`. \pre `0 <= i <= 1`. + +\cgalEpicExact */ Kernel::FT operator[](int i) const; @@ -160,6 +168,7 @@ int dimension() const; /*! returns the direction which passes through `v`. +\cgalEpicExact */ Direction_2 direction() const; @@ -215,6 +224,7 @@ Vector_2& operator-=(const Vector_2 &w); /*! returns the opposite vector. +\cgalEpicExact */ Vector_2 operator-() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Vector_3.h b/Kernel_23/doc/Kernel_23/CGAL/Vector_3.h index 1e114bd44e3d..84c61818845f 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Vector_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Vector_3.h @@ -58,6 +58,7 @@ Vector_3(const Line_3 &l); /*! introduces a null vector `v`. +\cgalEpicExact */ Vector_3(const Null_vector &NULL_VECTOR); @@ -68,6 +69,7 @@ Vector_3(int x, int y, int z); /*! introduces a vector `v` initialized to `(x, y, z)`. +\cgalEpicExact */ Vector_3(double x, double y, double z); @@ -78,6 +80,7 @@ Vector_3(const Kernel::RT &hx, const Kernel::RT &hy, const Kernel::RT &hz, const /*! introduces a vector `v` initialized to `(x, y, z)`. +\cgalEpicExact */ Vector_3(const Kernel::FT &x, const Kernel::FT &y, const Kernel::FT &z); @@ -113,16 +116,19 @@ Kernel::RT hw() const; /*! returns the `x`-coordinate of `v`, that is `hx()`/`hw()`. +\cgalEpicExact */ Kernel::FT x() const; /*! returns the `y`-coordinate of `v`, that is `hy()`/`hw()`. +\cgalEpicExact */ Kernel::FT y() const; /*! returns the `z` coordinate of `v`, that is `hz()`/`hw()`. +\cgalEpicExact */ Kernel::FT z() const; @@ -143,12 +149,16 @@ Kernel::RT homogeneous(int i) const; /*! returns the i'th %Cartesian coordinate of `v`. \pre `0 <= i <= 2` + +\cgalEpicExact */ Kernel::FT cartesian(int i) const; /*! returns `cartesian(i)`. \pre `0 <= i <= 2` + +\cgalEpicExact */ Kernel::FT operator[](int i) const; @@ -176,6 +186,8 @@ Vector_3 transform(const Aff_transformation_3 &t) const; /*! returns the direction of `v`. + +\cgalEpicExact */ Direction_3 direction() const; @@ -219,6 +231,7 @@ Vector_3& operator-=(const Vector_3 &w); /*! Returns the opposite vector. +\cgalEpicExact */ Vector_3 operator-() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_2.h b/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_2.h index fa67214d5a86..f06e42222d31 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_2.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_2.h @@ -42,11 +42,13 @@ class Weighted_point_2 /*! introduces a weighted point with %Cartesian coordinates `(0,0)` and weight `0`. + \cgalEpicExact */ Weighted_point_2(const Origin &ORIGIN); /*! introduces a weighted point from point `p` and weight `0`. + \cgalEpicExact \warning The `explicit` keyword is used to avoid accidental implicit conversions between Point_2 and Weighted_point_2. @@ -55,11 +57,13 @@ class Weighted_point_2 /*! introduces a weighted point from point `p` and weight `w`. + \cgalEpicExact */ Weighted_point_2(const Point_2& p, Kernel::FT& w); /*! introduces a weighted point with coordinates `x`, `y`, and weight `0`. + \cgalEpicExact */ Weighted_point_2(const Kernel::FT& x, const Kernel::FT& y); @@ -70,11 +74,13 @@ class Weighted_point_2 /*! returns the point of the weighted point. + \cgalEpicExact */ Point_2 point() const; /*! returns the weight of the weighted point. + \cgalEpicExact */ Kernel::FT weight() const; /// @} @@ -128,11 +134,13 @@ class Weighted_point_2 /*! returns the %Cartesian \f$ x\f$ coordinate, that is `hx()`/`hw()`. + \cgalEpicExact */ Kernel::FT x() const; /*! returns the %Cartesian \f$ y\f$ coordinate, that is `hy()`/`hw()`. + \cgalEpicExact */ Kernel::FT y() const; @@ -153,12 +161,16 @@ class Weighted_point_2 /*! returns the i'th %Cartesian coordinate of `p`. \pre `0 <= i <= 1` + + \cgalEpicExact */ Kernel::FT cartesian(int i) const; /*! returns `cartesian(i)`. \pre `0 <= i <= 1` + + \cgalEpicExact */ Kernel::FT operator[](int i) const; @@ -181,6 +193,7 @@ class Weighted_point_2 /*! returns a bounding box containing `p`. + \cgalEpicExact */ Bbox_2 bbox() const; diff --git a/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_3.h b/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_3.h index 7765f44daa96..8a442b9fb8f1 100644 --- a/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_3.h +++ b/Kernel_23/doc/Kernel_23/CGAL/Weighted_point_3.h @@ -42,6 +42,7 @@ class Weighted_point_3 /*! introduces a weighted point with %Cartesian coordinates `(0,0,0)` and weight `0`. + \cgalEpicExact */ Weighted_point_3(const Origin &ORIGIN); @@ -50,16 +51,20 @@ class Weighted_point_3 \warning The `explicit` keyword is used to avoid accidental implicit conversions between Point_3 and Weighted_point_3. + + \cgalEpicExact */ explicit Weighted_point_3(const Point_3& p); /*! introduces a weighted point from point `p` and weight `w`. + \cgalEpicExact */ Weighted_point_3(const Point_3& p, Kernel::FT& w); /*! introduces a weighted point with coordinates `x`, `y`, `z` and weight `0`. + \cgalEpicExact */ Weighted_point_3(const Kernel::FT& x, const Kernel::FT& y, const Kernel::FT& z); @@ -70,11 +75,13 @@ class Weighted_point_3 /*! returns the point of the weighted point. + \cgalEpicExact */ Point_3 point() const; /*! returns the weight of the weighted point. + \cgalEpicExact */ Kernel::FT weight() const; /// @} @@ -133,16 +140,19 @@ class Weighted_point_3 /*! returns the %Cartesian \f$ x\f$ coordinate, that is `hx()`/`hw()`. + \cgalEpicExact */ Kernel::FT x() const; /*! returns the %Cartesian \f$ y\f$ coordinate, that is `hy()`/`hw()`. + \cgalEpicExact */ Kernel::FT y() const; /*! returns the %Cartesian \f$ z\f$ coordinate, that is `hz()`/`hw()`. + \cgalEpicExact */ Kernel::FT z() const; @@ -163,12 +173,16 @@ class Weighted_point_3 /*! returns the i'th %Cartesian coordinate of `p`. \pre `0 <= i <= 2` + + \cgalEpicExact */ Kernel::FT cartesian(int i) const; /*! returns `cartesian(i)`. \pre `0 <= i <= 2` + + \cgalEpicExact */ Kernel::FT operator[](int i) const; @@ -191,6 +205,7 @@ class Weighted_point_3 /*! returns a bounding box containing `p`. + \cgalEpicExact */ Bbox_3 bbox() const;