summaryrefslogtreecommitdiff
path: root/boost/geometry/algorithms/detail/expand/segment.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/geometry/algorithms/detail/expand/segment.hpp')
-rw-r--r--boost/geometry/algorithms/detail/expand/segment.hpp48
1 files changed, 29 insertions, 19 deletions
diff --git a/boost/geometry/algorithms/detail/expand/segment.hpp b/boost/geometry/algorithms/detail/expand/segment.hpp
index 0570e944d4..dddd3d2c7a 100644
--- a/boost/geometry/algorithms/detail/expand/segment.hpp
+++ b/boost/geometry/algorithms/detail/expand/segment.hpp
@@ -5,11 +5,12 @@
// Copyright (c) 2009-2015 Mateusz Loskot, London, UK.
// Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France.
-// This file was modified by Oracle on 2015, 2016.
-// Modifications copyright (c) 2015-2016, Oracle and/or its affiliates.
+// This file was modified by Oracle on 2015, 2016, 2017.
+// Modifications copyright (c) 2015-2017, Oracle and/or its affiliates.
// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
+// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
// Distributed under the Boost Software License, Version 1.0.
// (See accompanying file LICENSE_1_0.txt or copy at
@@ -77,48 +78,57 @@ namespace dispatch
template
<
typename Box, typename Segment,
- typename StrategyLess, typename StrategyGreater,
typename CSTagOut, typename CSTag
>
struct expand
<
Box, Segment,
- StrategyLess, StrategyGreater,
box_tag, segment_tag,
CSTagOut, CSTag
- > : detail::expand::expand_indexed
- <
- 0, dimension<Segment>::value, StrategyLess, StrategyGreater
- >
+ >
{
- BOOST_MPL_ASSERT_MSG((boost::is_same<CSTagOut, CSTag>::value),
- COORDINATE_SYSTEMS_MUST_BE_THE_SAME,
+ BOOST_MPL_ASSERT_MSG((false),
+ NOT_IMPLEMENTED_FOR_THESE_COORDINATE_SYSTEMS,
(types<CSTagOut, CSTag>()));
};
template
<
- typename Box, typename Segment,
- typename StrategyLess, typename StrategyGreater
+ typename Box, typename Segment
>
struct expand
<
Box, Segment,
- StrategyLess, StrategyGreater,
+ box_tag, segment_tag,
+ cartesian_tag, cartesian_tag
+ > : detail::expand::expand_indexed
+ <
+ 0, dimension<Segment>::value
+ >
+{};
+
+template <typename Box, typename Segment>
+struct expand
+ <
+ Box, Segment,
+ box_tag, segment_tag,
+ spherical_polar_tag, spherical_polar_tag
+ > : detail::expand::segment
+{};
+
+template <typename Box, typename Segment>
+struct expand
+ <
+ Box, Segment,
box_tag, segment_tag,
spherical_equatorial_tag, spherical_equatorial_tag
> : detail::expand::segment
{};
-template
-<
- typename Box, typename Segment,
- typename StrategyLess, typename StrategyGreater
->
+template <typename Box, typename Segment>
struct expand
<
Box, Segment,
- StrategyLess, StrategyGreater,
box_tag, segment_tag,
geographic_tag, geographic_tag
> : detail::expand::segment