Tests whether two AABB trees contain intersecting primitives.
Computes all self-intersecting primitive pairs in a single AABB tree.
Computes all intersecting primitive pairs between two AABB trees.
Pierre Alliez, Stéphane Tayeb, and Camille Wormser
The AABB (axis-aligned bounding box) tree component offers a static data structure and algorithms to perform efficient intersection and distance queries on sets of finite 2D and 3D geometric objects.
Concepts
Classes
Primitives
CGAL::AABB_triangle_primitive_2<GeomTraits, Iterator, CacheDatum>
CGAL::AABB_indexed_triangle_primitive_2<GeomTraits, IndexIterator, PointRange, CacheDatum, PointMap>
CGAL::AABB_segment_primitive_2<GeomTraits, Iterator, CacheDatum>
CGAL::AABB_polyline_segment_primitive_2<GeomTraits, Iterator, PointRange, CacheDatum, PointMap>
CGAL::AABB_triangle_primitive<GeomTraits, Iterator, CacheDatum> (deprecated, use CGAL::AABB_triangle_primitive_3<GeomTraits, Iterator, CacheDatum>)
CGAL::AABB_triangle_primitive_3<GeomTraits, Iterator, CacheDatum>
CGAL::AABB_segment_primitive<GeomTraits, Iterator, CacheDatum> (deprecated, use CGAL::AABB_segment_primitive_3<GeomTraits, Iterator, CacheDatum>)
CGAL::AABB_segment_primitive_3<GeomTraits, Iterator, CacheDatum>
CGAL::AABB_primitive<Id,ObjectPropertyMap,PointPropertyMap,ExternalPropertyMaps,CacheDatum>
CGAL::AABB_halfedge_graph_segment_primitive<HalfedgeGraph,Vpm,OneHalfedgeGraphPerTree,CacheDatum>
CGAL::AABB_face_graph_triangle_primitive<FaceGraph,Vpm,OneFaceGraphPerTree,CacheDatum>
Functions
CGAL::AABB_trees::do_intersect()
CGAL::AABB_trees::all_pairs_of_intersecting_primitives()
Returns true if at least one primitive of tree1 intersects a primitive of tree2, and false otherwise.
Traverses both trees and outputs all pairs of primitives that intersect. Each output element is a pair (id1, id2) where:
id1 is the ID of a primitive from tree1
id2 is the ID of a primitive from tree2
- Template Parameters
-
- See also
- do_intersect()
Intersections of a primitive with itself are not reported, and each intersecting pair of distinct primitives is reported only once.
|
| class | CGAL::AABB_face_graph_triangle_primitive< FaceGraph, VertexPointPMap, OneFaceGraphPerTree, CacheDatum > |
| | Primitive type for a facet of a polyhedral surface. More...
|
| |
| class | CGAL::AABB_halfedge_graph_segment_primitive< HalfedgeGraph, VertexPointPMap, OneHalfedgeGraphPerTree, CacheDatum > |
| | Primitive type for an edge of a polyhedral surface. More...
|
| |
| class | CGAL::AABB_indexed_triangle_primitive_2< GeomTraits, IndexIterator, PointRange, CacheDatum, PointMap > |
| | Primitive type that uses as identifier an iterator with a range of three indices as value_type. More...
|
| |
| class | CGAL::AABB_polyline_segment_primitive_2< GeomTraits, Iterator, PointRange, CacheDatum, PointMap > |
| | Primitive type that uses as identifier an iterator with a 2D point as value_type. More...
|
| |
| struct | CGAL::AABB_primitive< Id, ObjectPropertyMap, PointPropertyMap, ExternalPropertyMaps, CacheDatum > |
| | Generic primitive type. More...
|
| |
| class | CGAL::AABB_segment_primitive_2< GeomTraits, Iterator, CacheDatum > |
| | Primitive type that uses as identifier an iterator with a 2D segment as value_type. More...
|
| |
| class | CGAL::AABB_segment_primitive_3< GeomTraits, Iterator, CacheDatum > |
| | Primitive type that uses as identifier an iterator with a 3D segment as value_type. More...
|
| |
| class | CGAL::AABB_tree< AABBTraits > |
| | Static data structure for efficient intersection and distance computations in 2D and 3D. More...
|
| |
| 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. More...
|
| |
| struct | CGAL::AABB_traits_2< GeomTraits, AABBPrimitive, BboxMap >::Intersection_and_primitive_id< Query > |
| | Intersection_and_primitive_id<Query>::Type::first_type is found according to the result type of GeomTraits::Intersect_2::operator(). More...
|
| |
| class | CGAL::AABB_traits_2< GeomTraits, AABBPrimitive, BboxMap >::Do_intersect |
| | Function object using GeomTraits::Do_intersect. More...
|
| |
| class | CGAL::AABB_traits_3< GeomTraits, AABBPrimitive, BboxMap > |
| | This traits class handles any type of 3D geometric primitives provided that the proper intersection tests and constructions are implemented. More...
|
| |
| struct | CGAL::AABB_traits_3< GeomTraits, AABBPrimitive, BboxMap >::Intersection_and_primitive_id< Query > |
| | Intersection_and_primitive_id<Query>::Type::first_type is found according to the result type of GeomTraits::Intersect_3::operator(). More...
|
| |
| class | CGAL::AABB_traits_3< GeomTraits, AABBPrimitive, BboxMap >::Do_intersect |
| | Function object using GeomTraits::Do_intersect. More...
|
| |
| class | CGAL::AABB_triangle_primitive_2< GeomTraits, Iterator, CacheDatum > |
| | Primitive type that uses as identifier an iterator with a 2D triangle as value_type. More...
|
| |
| class | CGAL::AABB_triangle_primitive_3< GeomTraits, Iterator, CacheDatum > |
| | Primitive type that uses as identifier an iterator with a 3D triangle as value_type. More...
|
| |
|
|
template<class GeomTraits , class Iterator , class CacheDatum = Tag_false> |
| using | CGAL::AABB_segment_primitive = AABB_segment_primitive_3< GeomTraits, Iterator, CacheDatum > |
| | template alias for backward compatibility
|
| |
|
template<typename GeomTraits , typename AABBPrimitive , typename BboxMap = Default> |
| using | CGAL::AABB_traits = AABB_traits_3< GeomTraits, AABBPrimitive, BboxMap > |
| | template alias for backward compatibility
|
| |
|
template<class GeomTraits , class Iterator , class CacheDatum = Tag_false> |
| using | CGAL::AABB_triangle_primitive = AABB_triangle_primitive_3< GeomTraits, Iterator, CacheDatum > |
| | template alias for backward compatibility
|
| |
|
|
| CGAL::AABB_traits_2< GeomTraits, AABBPrimitive, BboxMap >::AABB_traits_2 () |
| | Default constructor.
|
| |
|
| CGAL::AABB_traits_3< GeomTraits, AABBPrimitive, BboxMap >::AABB_traits_3 () |
| | Default constructor.
|
| |
|
|
typedef GeomTraits::Point_3 | CGAL::AABB_traits_3< GeomTraits, AABBPrimitive, BboxMap >::Point |
| | Point type.
|
| |
|
typedef GeomTraits::Point_3 | CGAL::AABB_traits_3< GeomTraits, AABBPrimitive, BboxMap >::Point_3 |
| | Deprecated point type.
|
| |
| typedef GeomTraits::Iso_cuboid_3 | CGAL::AABB_traits_3< GeomTraits, AABBPrimitive, BboxMap >::Iso_cuboid_3 |
| | additional types for the search tree, required by the RangeSearchTraits concept
|
| |
|
typedef CGAL::Bbox_3 | CGAL::AABB_traits_3< GeomTraits, AABBPrimitive, BboxMap >::Bounding_box |
| | Bounding box type.
|
| |
◆ Iso_cuboid_3
template<typename GeomTraits , typename
AABBPrimitive , typename BboxMap = Default>
◆ Iso_rectangle_2
template<typename GeomTraits , typename
AABBPrimitive , typename BboxMap = Default>