CGAL 5.1.1 - 3D Fast Intersection and Distance Computation (AABB Tree)
CGAL::AABB_triangle_primitive< GeomTraits, Iterator, CacheDatum > Class Template Reference

#include <CGAL/AABB_triangle_primitive.h>

Definition

template<class GeomTraits, class Iterator, class CacheDatum = Tag_false>
class CGAL::AABB_triangle_primitive< GeomTraits, Iterator, CacheDatum >

Primitive type that uses as identifier an iterator with a 3D triangle as value_type.

The iterator from which the primitive is built should not be invalided while the AABB tree holding the primitive is in use.

Is Model Of:
AABBPrimitive
Template Parameters
GeomTraitsis a traits class providing the nested type Point_3 and Triangle_3. It also provides the functor Construct_vertex_3 that has an operator taking a Triangle_3 and an integer as parameters and returning a triangle point as a type convertible to Point_3. In addition Construct_vertex_3 must support the result_of protocol.
Iteratoris a model of ForwardIterator with its value type convertible to GeomTraits::Triangle_3
CacheDatumis either CGAL::Tag_true or CGAL::Tag_false. In the former case, the datum is stored in the primitive, while in the latter it is constructed on the fly to reduce the memory footprint. The default is CGAL::Tag_false (datum is not stored).
See also
AABBPrimitive
AABB_primitive<Id,ObjectPropertyMap,PointPropertyMapPolyhedron,ExternalPropertyMaps,CacheDatum>
AABB_segment_primitive<Iterator,CacheDatum>
AABB_halfedge_graph_segment_primitive<HalfedgeGraph,OneHalfedgeGraphPerTree,CacheDatum>
AABB_face_graph_triangle_primitive<FaceGraph,OneFaceGraphPerTree,CacheDatum>
Examples:
AABB_tree/AABB_triangle_3_example.cpp.

Public Member Functions

 AABB_triangle_primitive (Iterator it)
 constructor from an iterator