Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::geometry::strategy::within::franklin< Point, PointOfSegment, CalculationType > Class Template Reference

Within detection using cross counting. More...

#include <point_in_poly_franklin.hpp>

Public Types

typedef Point point_type
 
typedef PointOfSegment segment_point_type
 
typedef crossings state_type
 

Static Public Member Functions

static bool apply (Point const &point, PointOfSegment const &seg1, PointOfSegment const &seg2, crossings &state)
 
static int result (crossings const &state)
 

Detailed Description

template<typename Point, typename PointOfSegment = Point, typename CalculationType = void>
class boost::geometry::strategy::within::franklin< Point, PointOfSegment, CalculationType >

Within detection using cross counting.

Template Parameters
Point
PointOfSegment
CalculationType
Author
adapted from Randolph Franklin algorithm
Barend and Maarten, 1995
Revised for templatized library, Barend Gehrels, 2007
Returns
true if point is in ring, works for closed rings in both directions
Note
Does NOT work correctly for point ON border

{ [heading See also] [link geometry.reference.algorithms.within.within_3_with_strategy within (with strategy)] }

Member Typedef Documentation

template<typename Point , typename PointOfSegment = Point, typename CalculationType = void>
typedef Point boost::geometry::strategy::within::franklin< Point, PointOfSegment, CalculationType >::point_type
template<typename Point , typename PointOfSegment = Point, typename CalculationType = void>
typedef PointOfSegment boost::geometry::strategy::within::franklin< Point, PointOfSegment, CalculationType >::segment_point_type
template<typename Point , typename PointOfSegment = Point, typename CalculationType = void>
typedef crossings boost::geometry::strategy::within::franklin< Point, PointOfSegment, CalculationType >::state_type

Member Function Documentation

template<typename Point , typename PointOfSegment = Point, typename CalculationType = void>
static bool boost::geometry::strategy::within::franklin< Point, PointOfSegment, CalculationType >::apply ( Point const &  point,
PointOfSegment const &  seg1,
PointOfSegment const &  seg2,
crossings &  state 
)
inlinestatic
template<typename Point , typename PointOfSegment = Point, typename CalculationType = void>
static int boost::geometry::strategy::within::franklin< Point, PointOfSegment, CalculationType >::result ( crossings const &  state)
inlinestatic

The documentation for this class was generated from the following file: