CGAL 6.1 - Fast Intersection and Distance Computation (AABB Tree)

Loading...
Searching...
No Matches
List of all members | Public Member Functions
CGAL::AABB_indexed_triangle_primitive_2< GeomTraits, IndexIterator, PointRange, CacheDatum, PointMap > Class Template Reference
Reference Manual

`#include <CGAL/AABB_indexed_triangle_primitive_2.h>`

## Definition

template<class GeomTraits, class IndexIterator, class PointRange, class CacheDatum = Tag_false, class PointMap = Identity_property_map<typename PointRange::value_type>>
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`.

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

  GeomTraits | is a traits class providing the nested type `Point_2` and `Triangle_2`. It also provides the functor `Construct_triangle_2` that has an operator taking three `Point_2` as parameters and returns a `Triangle_2`
  IndexIterator | is a model of `ForwardIterator` with its value type being a `RandomAccessRange` of size 3 with an index type as `value_type`, e.g., `uint8_t`, `uint16_t` or int.
  PointRange | is a model of `RandomAccessRange`. Its value type needs to be compatible to `PointMap` or `Point_2` in the default case.
  CacheDatum | is 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).
  PointMap | is a model of `ReadablePropertyMap` with its key type being the value type of `PointRange` and the value type being a `Point_2`. The default is `CGAL::Identity_property_map`<PointRange::value_type>.

See also
  `AABBPrimitive`
  `AABB_primitive<Id,ObjectPropertyMap,PointPropertyMapPolyhedron,ExternalPropertyMaps,CacheDatum>`
  `AABB_segment_primitive_2<GeomTraits,Iterator,CacheDatum>`
  `AABB_triangle_primitive_2<GeomTraits,Iterator,CacheDatum>`
  `AABB_triangle_primitive_3<GeomTraits,Iterator,CacheDatum>`

Examples
  AABB_tree/AABB_indexed_triangle_2_example.cpp.

## Public Member Functions
| AABB_indexed_triangle_primitive_2 (IndexIterator it, PointRange &)
| constructor from an iterator