File indexing completed on 2025-09-17 08:32:21
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef BOOST_GEOMETRY_STRATEGIES_INTERSECTION_HPP
0015 #define BOOST_GEOMETRY_STRATEGIES_INTERSECTION_HPP
0016
0017
0018
0019
0020 #include <boost/geometry/policies/relate/intersection_policy.hpp>
0021
0022 #include <boost/geometry/strategies/intersection.hpp>
0023 #include <boost/geometry/strategies/intersection_result.hpp>
0024 #include <boost/geometry/strategies/side.hpp>
0025 #include <boost/geometry/strategies/cartesian/intersection.hpp>
0026 #include <boost/geometry/strategies/spherical/intersection.hpp>
0027 #include <boost/geometry/strategies/spherical/ssf.hpp>
0028
0029
0030 namespace boost { namespace geometry
0031 {
0032
0033
0034
0035
0036
0037
0038 template
0039 <
0040 typename Tag,
0041 typename Geometry1,
0042 typename Geometry2,
0043 typename IntersectionPoint,
0044 typename CalculationType = void
0045 >
0046 struct intersection_strategies
0047 {
0048 private :
0049 typedef segment_intersection_points
0050 <
0051 IntersectionPoint,
0052 typename segment_ratio_type<IntersectionPoint>::type
0053 > ip_type;
0054
0055 public:
0056 typedef policies::relate::segments_intersection_policy
0057 <
0058 ip_type
0059 > intersection_policy_type;
0060
0061 typedef typename strategy::intersection::services::default_strategy
0062 <
0063 Tag,
0064 CalculationType
0065 >::type segment_intersection_strategy_type;
0066 };
0067
0068
0069 }}
0070
0071
0072 #endif