[Boost-bugs] [Boost C++ Libraries] #8393: polygon model doesn't adhere to stated Polygon concept rules.

Subject: [Boost-bugs] [Boost C++ Libraries] #8393: polygon model doesn't adhere to stated Polygon concept rules.
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-04-04 15:08:54


#8393: polygon model doesn't adhere to stated Polygon concept rules.
---------------------------------------------------+------------------------
 Reporter: bmccart@… | Owner: barendgehrels
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: geometry
  Version: Boost 1.53.0 | Severity: Problem
 Keywords: polygon concept rule outer inner ring |
---------------------------------------------------+------------------------
 In the rules section for the Polygon concept it states that:[[BR]]

 "If the polygons underlying ring_type is defined as clockwise, the
 exterior ring must have the clockwise orientation, and any interior ring
 must be counter clockwise. If the ring_type is defined counter clockwise,
 it is vice versa."[[BR]]

 However, it would appear that the supplied polygon model does not adhere
 to this rule, since the same type is used for inner and outer rings. From
 the source:
 (http://svn.boost.org/svn/boost/trunk/boost/geometry/geometries/polygon.hpp)
 [[BR]]

 {{{

     bool ClockWise = true,
     ...
     template<typename, typename> class RingList = std::vector,
     ...
     typedef ring<Point, ClockWise, Closed, PointList, PointAlloc>
 ring_type;
     typedef RingList<ring_type , RingAlloc<ring_type > >
 inner_container_type;

     inline ring_type const& outer() const { return m_outer; }
     inline inner_container_type const& inners() const { return m_inners; }
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8393>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:12 UTC