Boost.Geometry    Boost C++ Libraries
Classes | Public Types | Static Public Member Functions
boost::geometry::strategy::within::crossings_multiply< Point, PointOfSegment, CalculationType > Class Template Reference

Within detection using cross counting,. More...

List of all members.

Classes

class  flags

Public Types

typedef Point point_type
typedef PointOfSegment segment_point_type
typedef flags state_type

Static Public Member Functions

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

Detailed Description

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

Within detection using cross counting,.

Template Parameters:
PointAny type fulfilling a Point Concept
PointOfSegmentsegment point type
CalculationTypenumeric type for calculation (e.g. high precision); if [*void] then it is extracted automatically from the coordinate type and (if necessary) promoted to floating point
See also:
http://tog.acm.org/resources/GraphicsGems/gemsiv/ptpoly_haines/ptinpoly.c
Note:
Does NOT work correctly for point ON border

Member Typedef Documentation

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

Member Function Documentation

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

April 2, 2011

Copyright © 2007-2011 Barend Gehrels, Amsterdam, the Netherlands
Copyright © 2008-2011 Bruno Lalande, Paris, France
Copyright © 2009-2010 Mateusz Loskot, London, UK
Documentation is generated by Doxygen