Add AABBRayIntersectionGeomTraits_2.h and fix \sa

This commit is contained in:
Andreas Fabri 2024-03-13 14:26:37 +01:00
parent 2e4c5765ce
commit f9e528555d
4 changed files with 69 additions and 4 deletions

View File

@ -0,0 +1,66 @@
/*!
\ingroup PkgAABBTreeConcepts
\cgalConcept
The concept `AABBRayIntersectionGeomTraits_3` is a refinement of the
concept `AABBGeomTraits`. In addition to the types required by
`AABBGeomTraits` it also requires types and functors necessary to
define the Intersection_distance functor.
\cgalRefines{AABBGeomTraits}
\cgalHasModelsBegin
\cgalHasModelsBare{All models of the concept `Kernel`}
\cgalHasModelsEnd
\sa `CGAL::AABB_traits<AABBGeomTraits,AABBPrimitive>`
\sa `CGAL::AABB_tree<AABBTraits>`
\sa `AABBPrimitive`
*/
class AABBRayIntersectionGeomTraits_3 {
public:
/*!
Type of a 3D ray.
*/
typedef unspecified_type Ray_3;
/*!
Type of a 3D vector.
*/
typedef unspecified_type Vector_3;
/*!
A functor object to construct the source point of a ray. Provides the operator:
`Point_3 operator()(const Ray_3&);`
*/
typedef unspecified_type Construct_source_3;
/*!
*/
Construct_source_3 construct_source_3_object();
/*!
A model of `CartesianConstIterator3`.
*/
typedef unspecified_type Cartesian_const_iterator_3;
/*!
A model of `ConstructCartesianConstIterator3`.
*/
typedef unspecified_type Construct_cartesian_const_iterator_3;
/*!
*/
Construct_source_3 construct_cartesian_const_iterator_3_object();
/*!
A functor object to construct a vector giving the direction of a ray. Provides the operator:
`Vector_3 operator()(const Ray_3&);`
*/
typedef unspecified_type Construct_vector_3;
/*!
*/
Construct_source_3 construct_vector_3_object();
};

View File

@ -1,5 +1,3 @@
// Author(s) : Camille Wormser, Pierre Alliez
#include <iostream>
#include <vector>
#include <array>

View File

@ -141,7 +141,7 @@ class AABB_tree;
/// member function `bbox()` that returns the bounding box of the primitive.
///
/// If the argument `GeomTraits` is a model of the concept \ref
/// AABBRayIntersectionGeomTraits, this class is also a model of \ref
/// AABBRayIntersectionGeomTraits_2, this class is also a model of \ref
/// AABBRayIntersectionTraits.
///
/// \sa `AABBTraits`

View File

@ -215,7 +215,8 @@ public:
/// Point query type.
typedef typename GeomTraits::Point_3 Point_3;
typedef Point_3 Point; // AF: because the AABB_tree dimension agnostic
/// Poin type
typedef Point_3 Point; // because the AABB_tree is dimension agnostic
/// additional types for the search tree, required by the RangeSearchTraits concept
/// \bug This is not documented for now in the AABBTraits concept.