mirror of
https://github.com/boostorg/geometry.git
synced 2026-02-14 00:42:09 +00:00
Merge branch 'develop' of github.com:boostorg/geometry into develop
This commit is contained in:
@@ -1,6 +1,11 @@
|
||||
// Boost.Geometry (aka GGL, Generic Geometry Library)
|
||||
|
||||
// Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.
|
||||
// Copyright (c) 2007-2015 Barend Gehrels, Amsterdam, the Netherlands.
|
||||
|
||||
// This file was modified by Oracle on 2015.
|
||||
// Modifications copyright (c) 2015 Oracle and/or its affiliates.
|
||||
|
||||
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
|
||||
|
||||
// Use, modification and distribution is subject to the Boost Software License,
|
||||
// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
|
||||
@@ -160,10 +165,12 @@ template
|
||||
typename OutputLinestring,
|
||||
typename OutputIterator,
|
||||
typename Range,
|
||||
typename RobustPolicy,
|
||||
typename Box,
|
||||
typename Strategy
|
||||
>
|
||||
OutputIterator clip_range_with_box(Box const& b, Range const& range,
|
||||
RobustPolicy const&,
|
||||
OutputIterator out, Strategy const& strategy)
|
||||
{
|
||||
if (boost::begin(range) == boost::end(range))
|
||||
|
||||
@@ -410,13 +410,13 @@ struct intersection_insert
|
||||
template <typename RobustPolicy, typename OutputIterator, typename Strategy>
|
||||
static inline OutputIterator apply(Linestring const& linestring,
|
||||
Box const& box,
|
||||
RobustPolicy const& ,
|
||||
RobustPolicy const& robust_policy,
|
||||
OutputIterator out, Strategy const& )
|
||||
{
|
||||
typedef typename point_type<GeometryOut>::type point_type;
|
||||
strategy::intersection::liang_barsky<Box, point_type> lb_strategy;
|
||||
return detail::intersection::clip_range_with_box
|
||||
<GeometryOut>(box, linestring, out, lb_strategy);
|
||||
<GeometryOut>(box, linestring, robust_policy, out, lb_strategy);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -488,7 +488,7 @@ struct intersection_insert
|
||||
template <typename RobustPolicy, typename OutputIterator, typename Strategy>
|
||||
static inline OutputIterator apply(Segment const& segment,
|
||||
Box const& box,
|
||||
RobustPolicy const& ,// TODO: propagate to clip_range_with_box
|
||||
RobustPolicy const& robust_policy,
|
||||
OutputIterator out, Strategy const& )
|
||||
{
|
||||
geometry::segment_view<Segment> range(segment);
|
||||
@@ -496,7 +496,7 @@ struct intersection_insert
|
||||
typedef typename point_type<GeometryOut>::type point_type;
|
||||
strategy::intersection::liang_barsky<Box, point_type> lb_strategy;
|
||||
return detail::intersection::clip_range_with_box
|
||||
<GeometryOut>(box, range, out, lb_strategy);
|
||||
<GeometryOut>(box, range, robust_policy, out, lb_strategy);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -60,8 +60,8 @@ struct project_inverse_transformer
|
||||
{
|
||||
// Latlong (LL -> XY) will be projected, rest will be copied.
|
||||
// So first copy third or higher dimensions
|
||||
geometry::detail::convert::point_to_point<Cartesian, LatLong, 2,
|
||||
geometry::dimension<Cartesian>::value> ::copy(p1, p2);
|
||||
geometry::detail::conversion::point_to_point<Cartesian, LatLong, 2,
|
||||
geometry::dimension<Cartesian>::value> ::apply(p1, p2);
|
||||
return m_prj->inverse(p1, p2);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user