Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc > Class Template Reference

The polygon contains an outer ring and zero or more inner rings. More...

#include <polygon.hpp>

Public Types

typedef Point point_type
 
typedef ring< Point, ClockWise,
Closed, PointList, PointAlloc > 
ring_type
 
typedef RingList< ring_type,
RingAlloc< ring_type > > 
inner_container_type
 

Public Member Functions

ring_type const & outer () const
 
inner_container_type const & inners () const
 
ring_typeouter ()
 
inner_container_typeinners ()
 
void clear ()
 Utility method, clears outer and inner rings. More...
 

Detailed Description

template<typename Point, bool ClockWise = true, bool Closed = true, template< typename, typename > class PointList = std::vector, template< typename, typename > class RingList = std::vector, template< typename > class PointAlloc = std::allocator, template< typename > class RingAlloc = std::allocator>
class boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc >

The polygon contains an outer ring and zero or more inner rings.

Template Parameters
Pointpoint type
ClockWisetrue for clockwise direction, false for CounterClockWise direction
Closedtrue for closed polygons (last point == first point), false open points
PointListcontainer type for points, for example std::vector, std::list, std::deque
RingListcontainer type for inner rings, for example std::vector, std::list, std::deque
PointAlloccontainer-allocator-type, for the points
RingAlloccontainer-allocator-type, for the rings
Note
The container collecting the points in the rings can be different from the container collecting the inner rings. They all default to vector.

{before.synopsis, [heading Model of] [link geometry.reference.concepts.concept_polygon Polygon Concept] }

Member Typedef Documentation

template<typename Point, bool ClockWise = true, bool Closed = true, template< typename, typename > class PointList = std::vector, template< typename, typename > class RingList = std::vector, template< typename > class PointAlloc = std::allocator, template< typename > class RingAlloc = std::allocator>
typedef RingList<ring_type , RingAlloc<ring_type > > boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc >::inner_container_type
template<typename Point, bool ClockWise = true, bool Closed = true, template< typename, typename > class PointList = std::vector, template< typename, typename > class RingList = std::vector, template< typename > class PointAlloc = std::allocator, template< typename > class RingAlloc = std::allocator>
typedef Point boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc >::point_type
template<typename Point, bool ClockWise = true, bool Closed = true, template< typename, typename > class PointList = std::vector, template< typename, typename > class RingList = std::vector, template< typename > class PointAlloc = std::allocator, template< typename > class RingAlloc = std::allocator>
typedef ring<Point, ClockWise, Closed, PointList, PointAlloc> boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc >::ring_type

Member Function Documentation

template<typename Point, bool ClockWise = true, bool Closed = true, template< typename, typename > class PointList = std::vector, template< typename, typename > class RingList = std::vector, template< typename > class PointAlloc = std::allocator, template< typename > class RingAlloc = std::allocator>
void boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc >::clear ( )
inline

Utility method, clears outer and inner rings.

template<typename Point, bool ClockWise = true, bool Closed = true, template< typename, typename > class PointList = std::vector, template< typename, typename > class RingList = std::vector, template< typename > class PointAlloc = std::allocator, template< typename > class RingAlloc = std::allocator>
inner_container_type const& boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc >::inners ( ) const
inline
template<typename Point, bool ClockWise = true, bool Closed = true, template< typename, typename > class PointList = std::vector, template< typename, typename > class RingList = std::vector, template< typename > class PointAlloc = std::allocator, template< typename > class RingAlloc = std::allocator>
inner_container_type& boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc >::inners ( )
inline
template<typename Point, bool ClockWise = true, bool Closed = true, template< typename, typename > class PointList = std::vector, template< typename, typename > class RingList = std::vector, template< typename > class PointAlloc = std::allocator, template< typename > class RingAlloc = std::allocator>
ring_type const& boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc >::outer ( ) const
inline
template<typename Point, bool ClockWise = true, bool Closed = true, template< typename, typename > class PointList = std::vector, template< typename, typename > class RingList = std::vector, template< typename > class PointAlloc = std::allocator, template< typename > class RingAlloc = std::allocator>
ring_type& boost::geometry::model::polygon< Point, ClockWise, Closed, PointList, RingList, PointAlloc, RingAlloc >::outer ( )
inline

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