/usr/include/boost/polygon
NameSizeModeActions
detail/-0755rm
gmp_override.hpp32450644editdlrm
gtl.hpp6960644editdlrm
interval_concept.hpp259930644editdlrm
interval_data.hpp27010644editdlrm
interval_traits.hpp13640644editdlrm
isotropy.hpp175710644editdlrm
point_concept.hpp127430644editdlrm
point_data.hpp32520644editdlrm
point_traits.hpp13280644editdlrm
polygon.hpp24180644editdlrm
polygon_45_data.hpp23300644editdlrm
polygon_45_set_concept.hpp193930644editdlrm
polygon_45_set_data.hpp783300644editdlrm
polygon_45_set_traits.hpp62160644editdlrm
polygon_45_with_holes_data.hpp35100644editdlrm
polygon_90_data.hpp28880644editdlrm
polygon_90_set_concept.hpp269230644editdlrm
polygon_90_set_data.hpp445010644editdlrm
polygon_90_set_traits.hpp164510644editdlrm
polygon_90_with_holes_data.hpp39940644editdlrm
polygon_data.hpp22180644editdlrm
polygon_set_concept.hpp265700644editdlrm
polygon_set_data.hpp402510644editdlrm
polygon_set_traits.hpp53850644editdlrm
polygon_traits.hpp741800644editdlrm
polygon_with_holes_data.hpp34580644editdlrm
rectangle_concept.hpp508980644editdlrm
rectangle_data.hpp21200644editdlrm
rectangle_traits.hpp13490644editdlrm
segment_concept.hpp200860644editdlrm
segment_data.hpp27720644editdlrm
segment_traits.hpp14630644editdlrm
segment_utils.hpp49630644editdlrm
transform.hpp150040644editdlrm
voronoi.hpp45110644editdlrm
voronoi_builder.hpp196720644editdlrm
voronoi_diagram.hpp194890644editdlrm
voronoi_geometry_type.hpp14070644editdlrm
Edit: /usr/include/boost/polygon/voronoi.hpp (4511B)
// Boost.Polygon library voronoi.hpp header file // Copyright Andrii Sydorchuk 2010-2012. // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) // See http://www.boost.org for updates, documentation, and revision history. #ifndef BOOST_POLYGON_VORONOI #define BOOST_POLYGON_VORONOI #include "isotropy.hpp" #include "point_concept.hpp" #include "segment_concept.hpp" #include "voronoi_builder.hpp" #include "voronoi_diagram.hpp" // Public methods to compute Voronoi diagram of a set of points and segments. // Coordinates of the points and of the endpoints of the segments should belong // to the 32-bit signed integer range [-2^31, 2^31-1]. To use wider input // coordinate range voronoi_builder configuration via coordinate type traits // is required. // Complexity - O(N*logN), memory usage - O(N), N - number of input objects. namespace boost { namespace polygon { template typename enable_if< typename gtl_if< typename is_point_concept< typename geometry_concept::type >::type >::type, std::size_t >::type insert(const Point& point, VB* vb) { return vb->insert_point(x(point), y(point)); } template typename enable_if< typename gtl_if< typename is_point_concept< typename geometry_concept< typename std::iterator_traits::value_type >::type >::type >::type, void >::type insert(const PointIterator first, const PointIterator last, VB* vb) { for (PointIterator it = first; it != last; ++it) { insert(*it, vb); } } template typename enable_if< typename gtl_if< typename is_segment_concept< typename geometry_concept::type >::type >::type, std::size_t >::type insert(const Segment& segment, VB* vb) { return vb->insert_segment( x(low(segment)), y(low(segment)), x(high(segment)), y(high(segment))); } template typename enable_if< typename gtl_if< typename is_segment_concept< typename geometry_concept< typename std::iterator_traits::value_type >::type >::type >::type, void >::type insert(const SegmentIterator first, const SegmentIterator last, VB* vb) { for (SegmentIterator it = first; it != last; ++it) { insert(*it, vb); } } template typename enable_if< typename gtl_if< typename is_point_concept< typename geometry_concept< typename std::iterator_traits::value_type >::type >::type >::type, void >::type construct_voronoi(const PointIterator first, const PointIterator last, VD* vd) { default_voronoi_builder builder; insert(first, last, &builder); builder.construct(vd); } template typename enable_if< typename gtl_if< typename is_segment_concept< typename geometry_concept< typename std::iterator_traits::value_type >::type >::type >::type, void >::type construct_voronoi(const SegmentIterator first, const SegmentIterator last, VD* vd) { default_voronoi_builder builder; insert(first, last, &builder); builder.construct(vd); } template typename enable_if< typename gtl_and< typename gtl_if< typename is_point_concept< typename geometry_concept< typename std::iterator_traits::value_type >::type >::type >::type, typename gtl_if< typename is_segment_concept< typename geometry_concept< typename std::iterator_traits::value_type >::type >::type >::type >::type, void >::type construct_voronoi(const PointIterator p_first, const PointIterator p_last, const SegmentIterator s_first, const SegmentIterator s_last, VD* vd) { default_voronoi_builder builder; insert(p_first, p_last, &builder); insert(s_first, s_last, &builder); builder.construct(vd); } } // polygon } // boost #endif // BOOST_POLYGON_VORONOI