|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r80948 - in trunk/boost/geometry: algorithms algorithms/detail/overlay multi/algorithms
From: bruno.lalande_at_[hidden]
Date: 2012-10-10 18:46:47
Author: bruno.lalande
Date: 2012-10-10 18:46:46 EDT (Wed, 10 Oct 2012)
New Revision: 80948
URL: http://svn.boost.org/trac/boost/changeset/80948
Log:
Moved more template params to function level in dispatch::intersection_insert.
Text files modified:
trunk/boost/geometry/algorithms/detail/overlay/intersection_insert.hpp | 118 ++++++++++++++++-------------------
trunk/boost/geometry/algorithms/difference.hpp | 2
trunk/boost/geometry/algorithms/intersection.hpp | 37 ++++------
trunk/boost/geometry/algorithms/sym_difference.hpp | 4
trunk/boost/geometry/multi/algorithms/intersection.hpp | 134 +++++++++++++++++----------------------
5 files changed, 133 insertions(+), 162 deletions(-)
Modified: trunk/boost/geometry/algorithms/detail/overlay/intersection_insert.hpp
==============================================================================
--- trunk/boost/geometry/algorithms/detail/overlay/intersection_insert.hpp (original)
+++ trunk/boost/geometry/algorithms/detail/overlay/intersection_insert.hpp 2012-10-10 18:46:46 EDT (Wed, 10 Oct 2012)
@@ -41,14 +41,14 @@
namespace detail { namespace intersection
{
-template
-<
- typename Segment1, typename Segment2,
- typename OutputIterator, typename PointOut
->
+template <typename PointOut>
struct intersection_segment_segment_point
{
- template <typename Strategy>
+ template
+ <
+ typename Segment1, typename Segment2,
+ typename OutputIterator, typename Strategy
+ >
static inline OutputIterator apply(Segment1 const& segment1,
Segment2 const& segment2, OutputIterator out,
Strategy const& )
@@ -77,14 +77,14 @@
}
};
-template
-<
- typename Linestring1, typename Linestring2,
- typename OutputIterator, typename PointOut
->
+template <typename PointOut>
struct intersection_linestring_linestring_point
{
- template <typename Strategy>
+ template
+ <
+ typename Linestring1, typename Linestring2,
+ typename OutputIterator, typename Strategy
+ >
static inline OutputIterator apply(Linestring1 const& linestring1,
Linestring2 const& linestring2, OutputIterator out,
Strategy const& )
@@ -112,21 +112,12 @@
*/
template
<
- typename LineString, typename Areal,
bool ReverseAreal,
- typename OutputIterator, typename LineStringOut,
+ typename LineStringOut,
overlay_type OverlayType
>
struct intersection_of_linestring_with_areal
{
- typedef detail::overlay::follow
- <
- LineStringOut,
- LineString,
- Areal,
- OverlayType
- > follower;
-
#if defined(BOOST_GEOMETRY_DEBUG_FOLLOW)
template <typename Turn, typename Operation>
static inline void debug_follow(Turn const& turn, Operation op,
@@ -144,7 +135,11 @@
}
#endif
- template <typename Strategy>
+ template
+ <
+ typename LineString, typename Areal,
+ typename OutputIterator, typename Strategy
+ >
static inline OutputIterator apply(LineString const& linestring, Areal const& areal,
OutputIterator out,
Strategy const& )
@@ -154,6 +149,14 @@
return out;
}
+ typedef detail::overlay::follow
+ <
+ LineStringOut,
+ LineString,
+ Areal,
+ OverlayType
+ > follower;
+
typedef typename point_type<LineStringOut>::type point_type;
typedef detail::overlay::traversal_turn_info<point_type> turn_info;
@@ -228,7 +231,6 @@
// real types
typename Geometry1, typename Geometry2,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator,
typename GeometryOut,
overlay_type OverlayType
>
@@ -247,7 +249,6 @@
typename TagIn1, typename TagIn2, typename TagOut,
typename Geometry1, typename Geometry2,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator,
typename GeometryOut,
overlay_type OverlayType
>
@@ -257,7 +258,7 @@
true, true, true,
Geometry1, Geometry2,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::overlay::overlay
<Geometry1, Geometry2, Reverse1, Reverse2, ReverseOut, GeometryOut, OverlayType>
@@ -270,7 +271,6 @@
typename TagIn, typename TagOut,
typename Geometry, typename Box,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator,
typename GeometryOut,
overlay_type OverlayType
>
@@ -280,7 +280,7 @@
true, true, true,
Geometry, Box,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::overlay::overlay
<Geometry, Box, Reverse1, Reverse2, ReverseOut, GeometryOut, OverlayType>
@@ -291,7 +291,7 @@
<
typename Segment1, typename Segment2,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -300,13 +300,9 @@
false, false, false,
Segment1, Segment2,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
- > : detail::intersection::intersection_segment_segment_point
- <
- Segment1, Segment2,
- OutputIterator, GeometryOut
- >
+ > : detail::intersection::intersection_segment_segment_point<GeometryOut>
{};
@@ -314,7 +310,7 @@
<
typename Linestring1, typename Linestring2,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -323,13 +319,9 @@
false, false, false,
Linestring1, Linestring2,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
- > : detail::intersection::intersection_linestring_linestring_point
- <
- Linestring1, Linestring2,
- OutputIterator, GeometryOut
- >
+ > : detail::intersection::intersection_linestring_linestring_point<GeometryOut>
{};
@@ -337,7 +329,7 @@
<
typename Linestring, typename Box,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -346,11 +338,11 @@
false, true, false,
Linestring, Box,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
{
- template <typename Strategy>
+ template <typename OutputIterator, typename Strategy>
static inline OutputIterator apply(Linestring const& linestring,
Box const& box, OutputIterator out, Strategy const& )
{
@@ -366,7 +358,7 @@
<
typename Linestring, typename Polygon,
bool ReverseLinestring, bool ReversePolygon, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -375,13 +367,12 @@
false, true, false,
Linestring, Polygon,
ReverseLinestring, ReversePolygon, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::intersection_of_linestring_with_areal
<
- Linestring, Polygon,
ReversePolygon,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
{};
@@ -391,7 +382,7 @@
<
typename Linestring, typename Ring,
bool ReverseLinestring, bool ReverseRing, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -400,13 +391,12 @@
false, true, false,
Linestring, Ring,
ReverseLinestring, ReverseRing, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::intersection_of_linestring_with_areal
<
- Linestring, Ring,
ReverseRing,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
{};
@@ -415,7 +405,7 @@
<
typename Segment, typename Box,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -424,11 +414,11 @@
false, true, false,
Segment, Box,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
{
- template <typename Strategy>
+ template <typename OutputIterator, typename Strategy>
static inline OutputIterator apply(Segment const& segment,
Box const& box, OutputIterator out, Strategy const& )
{
@@ -447,7 +437,7 @@
bool Areal1, bool Areal2,
typename Geometry1, typename Geometry2,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator, typename PointOut,
+ typename PointOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -456,11 +446,11 @@
Areal1, Areal2, false,
Geometry1, Geometry2,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, PointOut,
+ PointOut,
OverlayType
>
{
- template <typename Strategy>
+ template <typename OutputIterator, typename Strategy>
static inline OutputIterator apply(Geometry1 const& geometry1,
Geometry2 const& geometry2, OutputIterator out, Strategy const& )
{
@@ -490,12 +480,12 @@
bool Areal1, bool Areal2, bool ArealOut,
typename Geometry1, typename Geometry2,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert_reversed
{
- template <typename Strategy>
+ template <typename OutputIterator, typename Strategy>
static inline OutputIterator apply(Geometry1 const& g1,
Geometry2 const& g2, OutputIterator out,
Strategy const& strategy)
@@ -506,7 +496,7 @@
Areal2, Areal1, ArealOut,
Geometry2, Geometry1,
Reverse2, Reverse1, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>::apply(g2, g1, out, strategy);
}
@@ -552,7 +542,7 @@
overlay::do_reverse<geometry::point_order<Geometry1>::value>::value,
overlay::do_reverse<geometry::point_order<Geometry2>::value, ReverseSecond>::value,
overlay::do_reverse<geometry::point_order<GeometryOut>::value>::value,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>,
geometry::dispatch::intersection_insert
@@ -567,7 +557,7 @@
geometry::detail::overlay::do_reverse<geometry::point_order<Geometry1>::value>::value,
geometry::detail::overlay::do_reverse<geometry::point_order<Geometry2>::value, ReverseSecond>::value,
geometry::detail::overlay::do_reverse<geometry::point_order<GeometryOut>::value>::value,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
>::type::apply(geometry1, geometry2, out, strategy);
Modified: trunk/boost/geometry/algorithms/difference.hpp
==============================================================================
--- trunk/boost/geometry/algorithms/difference.hpp (original)
+++ trunk/boost/geometry/algorithms/difference.hpp 2012-10-10 18:46:46 EDT (Wed, 10 Oct 2012)
@@ -66,7 +66,7 @@
geometry::detail::overlay::do_reverse<geometry::point_order<Geometry1>::value>::value,
geometry::detail::overlay::do_reverse<geometry::point_order<Geometry2>::value, true>::value,
geometry::detail::overlay::do_reverse<geometry::point_order<GeometryOut>::value>::value,
- OutputIterator, GeometryOut,
+ GeometryOut,
overlay_difference
>::apply(geometry1, geometry2, out, strategy);
}
Modified: trunk/boost/geometry/algorithms/intersection.hpp
==============================================================================
--- trunk/boost/geometry/algorithms/intersection.hpp (original)
+++ trunk/boost/geometry/algorithms/intersection.hpp 2012-10-10 18:46:46 EDT (Wed, 10 Oct 2012)
@@ -22,14 +22,14 @@
namespace detail { namespace intersection
{
-template
-<
- typename Box1, typename Box2,
- std::size_t Dimension, std::size_t DimensionCount
->
+template <std::size_t Dimension, std::size_t DimensionCount>
struct intersection_box_box
{
- template <typename BoxOut, typename Strategy>
+ template
+ <
+ typename Box1, typename Box2, typename BoxOut,
+ typename Strategy
+ >
static inline bool apply(Box1 const& box1,
Box2 const& box2, BoxOut& box_out,
Strategy const& strategy)
@@ -49,22 +49,19 @@
set<min_corner, Dimension>(box_out, min1 < min2 ? min2 : min1);
set<max_corner, Dimension>(box_out, max1 > max2 ? max2 : max1);
- return intersection_box_box
- <
- Box1, Box2,
- Dimension + 1, DimensionCount
- >::apply(box1, box2, box_out, strategy);
+ return intersection_box_box<Dimension + 1, DimensionCount>
+ ::apply(box1, box2, box_out, strategy);
}
};
-template
-<
- typename Box1, typename Box2,
- std::size_t DimensionCount
->
-struct intersection_box_box<Box1, Box2, DimensionCount, DimensionCount>
+template <std::size_t DimensionCount>
+struct intersection_box_box<DimensionCount, DimensionCount>
{
- template <typename BoxOut, typename Strategy>
+ template
+ <
+ typename Box1, typename Box2, typename BoxOut,
+ typename Strategy
+ >
static inline bool apply(Box1 const&, Box2 const&, BoxOut&, Strategy const&)
{
return true;
@@ -97,7 +94,6 @@
GeometryOut& geometry_out,
Strategy const& strategy)
{
- typedef std::back_insert_iterator<GeometryOut> output_iterator;
typedef typename boost::range_value<GeometryOut>::type OneOut;
intersection_insert
@@ -110,7 +106,7 @@
detail::overlay::do_reverse<geometry::point_order<Geometry1>::value, false>::value,
detail::overlay::do_reverse<geometry::point_order<Geometry2>::value, false>::value,
detail::overlay::do_reverse<geometry::point_order<OneOut>::value>::value,
- output_iterator, OneOut,
+ OneOut,
overlay_intersection
>::apply(geometry1, geometry2, std::back_inserter(geometry_out), strategy);
@@ -161,7 +157,6 @@
Reverse
> : public detail::intersection::intersection_box_box
<
- Box1, Box2,
0, geometry::dimension<Box1>::value
>
{};
Modified: trunk/boost/geometry/algorithms/sym_difference.hpp
==============================================================================
--- trunk/boost/geometry/algorithms/sym_difference.hpp (original)
+++ trunk/boost/geometry/algorithms/sym_difference.hpp 2012-10-10 18:46:46 EDT (Wed, 10 Oct 2012)
@@ -69,7 +69,7 @@
geometry::detail::overlay::do_reverse<geometry::point_order<Geometry1>::value>::value,
geometry::detail::overlay::do_reverse<geometry::point_order<Geometry2>::value, true>::value,
geometry::detail::overlay::do_reverse<geometry::point_order<GeometryOut>::value>::value,
- OutputIterator, GeometryOut,
+ GeometryOut,
overlay_difference
>::apply(geometry1, geometry2, out, strategy);
out = geometry::dispatch::intersection_insert
@@ -84,7 +84,7 @@
geometry::detail::overlay::do_reverse<geometry::point_order<Geometry2>::value>::value,
geometry::detail::overlay::do_reverse<geometry::point_order<Geometry1>::value, true>::value,
geometry::detail::overlay::do_reverse<geometry::point_order<GeometryOut>::value>::value,
- OutputIterator, GeometryOut,
+ GeometryOut,
overlay_difference
>::apply(geometry2, geometry1, out, strategy);
return out;
Modified: trunk/boost/geometry/multi/algorithms/intersection.hpp
==============================================================================
--- trunk/boost/geometry/multi/algorithms/intersection.hpp (original)
+++ trunk/boost/geometry/multi/algorithms/intersection.hpp 2012-10-10 18:46:46 EDT (Wed, 10 Oct 2012)
@@ -36,14 +36,14 @@
{
-template
-<
- typename MultiLinestring1, typename MultiLinestring2,
- typename OutputIterator, typename PointOut
->
+template <typename PointOut>
struct intersection_multi_linestring_multi_linestring_point
{
- template <typename Strategy>
+ template
+ <
+ typename MultiLinestring1, typename MultiLinestring2,
+ typename OutputIterator, typename Strategy
+ >
static inline OutputIterator apply(MultiLinestring1 const& ml1,
MultiLinestring2 const& ml2, OutputIterator out,
Strategy const& strategy)
@@ -64,12 +64,8 @@
it2 != boost::end(ml2);
++it2)
{
- out = intersection_linestring_linestring_point
- <
- typename boost::range_value<MultiLinestring1>::type,
- typename boost::range_value<MultiLinestring2>::type,
- OutputIterator, PointOut
- >::apply(*it1, *it2, out, strategy);
+ out = intersection_linestring_linestring_point<PointOut>
+ ::apply(*it1, *it2, out, strategy);
}
}
@@ -78,14 +74,14 @@
};
-template
-<
- typename Linestring, typename MultiLinestring,
- typename OutputIterator, typename PointOut
->
+template <typename PointOut>
struct intersection_linestring_multi_linestring_point
{
- template <typename Strategy>
+ template
+ <
+ typename Linestring, typename MultiLinestring,
+ typename OutputIterator, typename Strategy
+ >
static inline OutputIterator apply(Linestring const& linestring,
MultiLinestring const& ml, OutputIterator out,
Strategy const& strategy)
@@ -97,12 +93,8 @@
it != boost::end(ml);
++it)
{
- out = intersection_linestring_linestring_point
- <
- Linestring,
- typename boost::range_value<MultiLinestring>::type,
- OutputIterator, PointOut
- >::apply(linestring, *it, out, strategy);
+ out = intersection_linestring_linestring_point<PointOut>
+ ::apply(linestring, *it, out, strategy);
}
return out;
@@ -114,14 +106,17 @@
// is second (above) or first (below) argument, it is not trivial to merge them.
template
<
- typename MultiLinestring, typename Areal,
bool ReverseAreal,
- typename OutputIterator, typename LineStringOut,
+ typename LineStringOut,
overlay_type OverlayType
>
struct intersection_of_multi_linestring_with_areal
{
- template <typename Strategy>
+ template
+ <
+ typename MultiLinestring, typename Areal,
+ typename OutputIterator, typename Strategy
+ >
static inline OutputIterator apply(MultiLinestring const& ml, Areal const& areal,
OutputIterator out,
Strategy const& strategy)
@@ -135,9 +130,7 @@
{
out = intersection_of_linestring_with_areal
<
- typename boost::range_value<MultiLinestring>::type,
- Areal, ReverseAreal,
- OutputIterator, LineStringOut, OverlayType
+ ReverseAreal, LineStringOut, OverlayType
>::apply(*it, areal, out, strategy);
}
@@ -149,37 +142,38 @@
// This one calls the one above with reversed arguments
template
<
- typename Areal, typename MultiLinestring,
bool ReverseAreal,
- typename OutputIterator, typename LineStringOut,
+ typename LineStringOut,
overlay_type OverlayType
>
struct intersection_of_areal_with_multi_linestring
{
- template <typename Strategy>
+ template
+ <
+ typename Areal, typename MultiLinestring,
+ typename OutputIterator, typename Strategy
+ >
static inline OutputIterator apply(Areal const& areal, MultiLinestring const& ml,
OutputIterator out,
Strategy const& strategy)
{
return intersection_of_multi_linestring_with_areal
<
- MultiLinestring, Areal, ReverseAreal,
- OutputIterator, LineStringOut,
- OverlayType
+ ReverseAreal, LineStringOut, OverlayType
>::apply(ml, areal, out, strategy);
}
};
-template
-<
- typename MultiLinestring, typename Box,
- typename OutputIterator, typename LinestringOut
->
+template <typename LinestringOut>
struct clip_multi_linestring
{
- template <typename Strategy>
+ template
+ <
+ typename MultiLinestring, typename Box,
+ typename OutputIterator, typename Strategy
+ >
static inline OutputIterator apply(MultiLinestring const& multi_linestring,
Box const& box, OutputIterator out, Strategy const& )
{
@@ -211,7 +205,7 @@
<
typename MultiLinestring1, typename MultiLinestring2,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -220,12 +214,11 @@
false, false, false,
MultiLinestring1, MultiLinestring2,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::intersection_multi_linestring_multi_linestring_point
<
- MultiLinestring1, MultiLinestring2,
- OutputIterator, GeometryOut
+ GeometryOut
>
{};
@@ -233,7 +226,7 @@
template
<
typename Linestring, typename MultiLinestring,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
bool Reverse1, bool Reverse2, bool ReverseOut,
overlay_type OverlayType
>
@@ -243,12 +236,11 @@
false, false, false,
Linestring, MultiLinestring,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::intersection_linestring_multi_linestring_point
<
- Linestring, MultiLinestring,
- OutputIterator, GeometryOut
+ GeometryOut
>
{};
@@ -257,7 +249,7 @@
<
typename MultiLinestring, typename Box,
bool Reverse1, bool Reverse2, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -266,12 +258,11 @@
false, true, false,
MultiLinestring, Box,
Reverse1, Reverse2, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::clip_multi_linestring
<
- MultiLinestring, Box,
- OutputIterator, GeometryOut
+ GeometryOut
>
{};
@@ -280,7 +271,7 @@
<
typename Linestring, typename MultiPolygon,
bool ReverseLinestring, bool ReverseMultiPolygon, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -289,13 +280,12 @@
false, true, false,
Linestring, MultiPolygon,
ReverseLinestring, ReverseMultiPolygon, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::intersection_of_linestring_with_areal
<
- Linestring, MultiPolygon,
ReverseMultiPolygon,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
{};
@@ -307,7 +297,7 @@
<
typename Polygon, typename MultiLinestring,
bool ReversePolygon, bool ReverseMultiLinestring, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -316,13 +306,12 @@
true, false, false,
Polygon, MultiLinestring,
ReversePolygon, ReverseMultiLinestring, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::intersection_of_areal_with_multi_linestring
<
- Polygon, MultiLinestring,
ReversePolygon,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
{};
@@ -332,7 +321,7 @@
<
typename MultiLinestring, typename Ring,
bool ReverseMultiLinestring, bool ReverseRing, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -341,13 +330,12 @@
false, true, false,
MultiLinestring, Ring,
ReverseMultiLinestring, ReverseRing, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::intersection_of_multi_linestring_with_areal
<
- MultiLinestring, Ring,
ReverseRing,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
{};
@@ -356,7 +344,7 @@
<
typename MultiLinestring, typename Polygon,
bool ReverseMultiLinestring, bool ReverseRing, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -365,13 +353,12 @@
false, true, false,
MultiLinestring, Polygon,
ReverseMultiLinestring, ReverseRing, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::intersection_of_multi_linestring_with_areal
<
- MultiLinestring, Polygon,
ReverseRing,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
{};
@@ -382,7 +369,7 @@
<
typename MultiLinestring, typename MultiPolygon,
bool ReverseMultiLinestring, bool ReverseMultiPolygon, bool ReverseOut,
- typename OutputIterator, typename GeometryOut,
+ typename GeometryOut,
overlay_type OverlayType
>
struct intersection_insert
@@ -391,13 +378,12 @@
false, true, false,
MultiLinestring, MultiPolygon,
ReverseMultiLinestring, ReverseMultiPolygon, ReverseOut,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
> : detail::intersection::intersection_of_multi_linestring_with_areal
<
- MultiLinestring, MultiPolygon,
ReverseMultiPolygon,
- OutputIterator, GeometryOut,
+ GeometryOut,
OverlayType
>
{};
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk