CGAL 5.5  2D Arrangements

#include <CGAL/Arr_walk_along_line_point_location.h>
The Arr_walk_along_line_point_location
class implements a very simple pointlocation (and vertical rayshooting) strategy that improves the naive one. The algorithm considers an imaginary vertical ray emanating from the query point, and simulates a walk along the zone of this ray, starting from the unbounded face until reaching the query point. In dense arrangements this walk can considerably reduce the number of traversed arrangement edges, with respect to the naïve algorithm.
The walkalongaline pointlocation object (just like the naïve one) does not use any auxiliary data structures. Thus, attaching it to an existing arrangement takes constant time, and any ongoing updates to this arrangement do not affect the pointlocation object. It is therefore recommended to use the "walk" pointlocation strategy for arrangements that are constantly changing, especially if the number of issued queries is not large.