CGAL 6.0 - Fast Intersection and Distance Computation (AABB Tree)
Loading...
Searching...
No Matches
CGAL::AABB_traits_2< GeomTraits, AABBPrimitive, BboxMap > Class Template Reference

#include <CGAL/AABB_traits_2.h>

Definition

template<typename GeomTraits, typename AABBPrimitive, typename BboxMap = Default>
class CGAL::AABB_traits_2< GeomTraits, AABBPrimitive, BboxMap >

This traits class handles any type of 2D geometric primitives provided that the proper intersection tests and constructions are implemented.

It handles points, rays, lines and segments as query types for intersection detection and computations, and it handles points as query type for distance queries.

Is model of
AABBTraits
AABBRayIntersectionTraits
Template Parameters
GeomTraitsmust be a model of the concept AABBGeomTraits_2, and provide the geometric types as well as the intersection tests and computations.
Primitiveprovide the type of primitives stored in the AABB_tree. It is a model of the concept AABBPrimitive or AABBPrimitiveWithSharedData.
BboxMapmust be a model of ReadablePropertyMap that has as key type a primitive id, and as value type a Bounding_box. If the type is Default the Datum must have the member function bbox() that returns the bounding box of the primitive.

If the argument GeomTraits is a model of the concept AABBRayIntersectionGeomTraits_2, this class is also a model of AABBRayIntersectionTraits.

See also
AABBTraits
AABB_tree
AABBPrimitive
AABBPrimitiveWithSharedData
Examples
AABB_tree/AABB_indexed_triangle_2_example.cpp, AABB_tree/AABB_polyline_segment_2_example.cpp, AABB_tree/AABB_segment_2_example.cpp, and AABB_tree/AABB_triangle_2_example.cpp.

Classes

class  Do_intersect
 Function object using GeomTraits::Do_intersect. More...
 
struct  Intersection_and_primitive_id
 Intersection_and_primitive_id<Query>::Type::first_type is found according to the result type of GeomTraits::Intersect_2::operator(). More...
 

Public Member Functions

 AABB_traits_2 ()
 Default constructor.
 

Types

typedef GeomTraits::Point_2 Point
 point type
 
typedef GeomTraits::Iso_rectangle_2 Iso_rectangle_2
 additional types for the search tree, required by the RangeSearchTraits concept
 
typedef CGAL::Bbox_2 Bounding_box
 Bounding box type.
 

Member Typedef Documentation

◆ Iso_rectangle_2

template<typename GeomTraits , typename AABBPrimitive , typename BboxMap = Default>
typedef GeomTraits::Iso_rectangle_2 CGAL::AABB_traits_2< GeomTraits, AABBPrimitive, BboxMap >::Iso_rectangle_2

additional types for the search tree, required by the RangeSearchTraits concept