Imported Upstream version 1.72.0
[platform/upstream/boost.git] / boost / geometry / strategies / strategies.hpp
1 // Boost.Geometry (aka GGL, Generic Geometry Library)
2
3 // Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.
4 // Copyright (c) 2008-2012 Bruno Lalande, Paris, France.
5 // Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
6 // Copyright (c) 2017 Adam Wulkiewicz, Lodz, Poland.
7
8 // This file was modified by Oracle on 2014-2019.
9 // Modifications copyright (c) 2014-2019 Oracle and/or its affiliates.
10
11 // Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle
12 // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
13
14 // Parts of Boost.Geometry are redesigned from Geodan's Geographic Library
15 // (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.
16
17 // Use, modification and distribution is subject to the Boost Software License,
18 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
19 // http://www.boost.org/LICENSE_1_0.txt)
20
21 #ifndef BOOST_GEOMETRY_STRATEGIES_STRATEGIES_HPP
22 #define BOOST_GEOMETRY_STRATEGIES_STRATEGIES_HPP
23
24
25 #include <boost/geometry/strategies/tags.hpp>
26
27 #include <boost/geometry/strategies/area.hpp>
28 #include <boost/geometry/strategies/azimuth.hpp>
29 #include <boost/geometry/strategies/buffer.hpp>
30 #include <boost/geometry/strategies/centroid.hpp>
31 #include <boost/geometry/strategies/compare.hpp>
32 #include <boost/geometry/strategies/convex_hull.hpp>
33 #include <boost/geometry/strategies/covered_by.hpp>
34 #include <boost/geometry/strategies/densify.hpp>
35 #include <boost/geometry/strategies/disjoint.hpp>
36 #include <boost/geometry/strategies/distance.hpp>
37 #include <boost/geometry/strategies/envelope.hpp>
38 #include <boost/geometry/strategies/intersection.hpp>
39 #include <boost/geometry/strategies/intersection_strategies.hpp> // for backward compatibility
40 #include <boost/geometry/strategies/relate.hpp>
41 #include <boost/geometry/strategies/side.hpp>
42 #include <boost/geometry/strategies/transform.hpp>
43 #include <boost/geometry/strategies/within.hpp>
44
45 #include <boost/geometry/strategies/cartesian/area.hpp>
46 #include <boost/geometry/strategies/cartesian/azimuth.hpp>
47 #include <boost/geometry/strategies/cartesian/box_in_box.hpp>
48 #include <boost/geometry/strategies/cartesian/buffer_end_flat.hpp>
49 #include <boost/geometry/strategies/cartesian/buffer_end_round.hpp>
50 #include <boost/geometry/strategies/cartesian/buffer_join_miter.hpp>
51 #include <boost/geometry/strategies/cartesian/buffer_join_round.hpp>
52 #include <boost/geometry/strategies/cartesian/buffer_join_round_by_divide.hpp>
53 #include <boost/geometry/strategies/cartesian/buffer_point_circle.hpp>
54 #include <boost/geometry/strategies/cartesian/buffer_point_square.hpp>
55 #include <boost/geometry/strategies/cartesian/buffer_side_straight.hpp>
56 #include <boost/geometry/strategies/cartesian/centroid_average.hpp>
57 #include <boost/geometry/strategies/cartesian/centroid_bashein_detmer.hpp>
58 #include <boost/geometry/strategies/cartesian/centroid_weighted_length.hpp>
59 #include <boost/geometry/strategies/cartesian/densify.hpp>
60 #include <boost/geometry/strategies/cartesian/disjoint_segment_box.hpp>
61 #include <boost/geometry/strategies/cartesian/distance_pythagoras.hpp>
62 #include <boost/geometry/strategies/cartesian/distance_pythagoras_point_box.hpp>
63 #include <boost/geometry/strategies/cartesian/distance_pythagoras_box_box.hpp>
64 #include <boost/geometry/strategies/cartesian/distance_projected_point.hpp>
65 #include <boost/geometry/strategies/cartesian/distance_projected_point_ax.hpp>
66 #include <boost/geometry/strategies/cartesian/distance_segment_box.hpp>
67 #include <boost/geometry/strategies/cartesian/envelope_box.hpp>
68 #include <boost/geometry/strategies/cartesian/envelope_point.hpp>
69 #include <boost/geometry/strategies/cartesian/envelope_multipoint.hpp>
70 #include <boost/geometry/strategies/cartesian/envelope_segment.hpp>
71 #include <boost/geometry/strategies/cartesian/expand_box.hpp>
72 #include <boost/geometry/strategies/cartesian/expand_point.hpp>
73 #include <boost/geometry/strategies/cartesian/expand_segment.hpp>
74 #include <boost/geometry/strategies/cartesian/index.hpp>
75 #include <boost/geometry/strategies/cartesian/intersection.hpp>
76 #include <boost/geometry/strategies/cartesian/point_in_box.hpp>
77 #include <boost/geometry/strategies/cartesian/point_in_point.hpp>
78 #include <boost/geometry/strategies/cartesian/point_in_poly_franklin.hpp>
79 #include <boost/geometry/strategies/cartesian/point_in_poly_crossings_multiply.hpp>
80 #include <boost/geometry/strategies/cartesian/point_in_poly_winding.hpp>
81 #include <boost/geometry/strategies/cartesian/line_interpolate.hpp>
82 #include <boost/geometry/strategies/cartesian/side_by_triangle.hpp>
83
84 #include <boost/geometry/strategies/spherical/area.hpp>
85 #include <boost/geometry/strategies/spherical/azimuth.hpp>
86 #include <boost/geometry/strategies/spherical/densify.hpp>
87 #include <boost/geometry/strategies/spherical/disjoint_segment_box.hpp>
88 #include <boost/geometry/strategies/spherical/distance_haversine.hpp>
89 #include <boost/geometry/strategies/spherical/distance_cross_track.hpp>
90 #include <boost/geometry/strategies/spherical/distance_cross_track_box_box.hpp>
91 #include <boost/geometry/strategies/spherical/distance_cross_track_point_box.hpp>
92 #include <boost/geometry/strategies/spherical/distance_segment_box.hpp>
93 #include <boost/geometry/strategies/spherical/compare.hpp>
94 #include <boost/geometry/strategies/spherical/envelope_box.hpp>
95 #include <boost/geometry/strategies/spherical/envelope_point.hpp>
96 #include <boost/geometry/strategies/spherical/envelope_multipoint.hpp>
97 #include <boost/geometry/strategies/spherical/envelope_segment.hpp>
98 #include <boost/geometry/strategies/spherical/expand_box.hpp>
99 #include <boost/geometry/strategies/spherical/expand_point.hpp>
100 #include <boost/geometry/strategies/spherical/expand_segment.hpp>
101 #include <boost/geometry/strategies/spherical/index.hpp>
102 #include <boost/geometry/strategies/spherical/intersection.hpp>
103 #include <boost/geometry/strategies/spherical/point_in_point.hpp>
104 #include <boost/geometry/strategies/spherical/point_in_poly_winding.hpp>
105 #include <boost/geometry/strategies/spherical/line_interpolate.hpp>
106 #include <boost/geometry/strategies/spherical/ssf.hpp>
107
108 #include <boost/geometry/strategies/geographic/area.hpp>
109 #include <boost/geometry/strategies/geographic/azimuth.hpp>
110 #include <boost/geometry/strategies/geographic/buffer_point_circle.hpp>
111 #include <boost/geometry/strategies/geographic/densify.hpp>
112 #include <boost/geometry/strategies/geographic/disjoint_segment_box.hpp>
113 #include <boost/geometry/strategies/geographic/distance.hpp>
114 #include <boost/geometry/strategies/geographic/distance_andoyer.hpp>
115 #include <boost/geometry/strategies/geographic/distance_cross_track.hpp>
116 #include <boost/geometry/strategies/geographic/distance_cross_track_box_box.hpp>
117 #include <boost/geometry/strategies/geographic/distance_cross_track_point_box.hpp>
118 #include <boost/geometry/strategies/geographic/distance_segment_box.hpp>
119 #include <boost/geometry/strategies/geographic/distance_thomas.hpp>
120 #include <boost/geometry/strategies/geographic/distance_vincenty.hpp>
121 //#include <boost/geometry/strategies/geographic/distance_karney.hpp>
122 #include <boost/geometry/strategies/geographic/envelope_segment.hpp>
123 #include <boost/geometry/strategies/geographic/expand_segment.hpp>
124 #include <boost/geometry/strategies/geographic/index.hpp>
125 #include <boost/geometry/strategies/geographic/intersection.hpp>
126 //#include <boost/geometry/strategies/geographic/intersection_elliptic.hpp>
127 #include <boost/geometry/strategies/geographic/point_in_poly_winding.hpp>
128 #include <boost/geometry/strategies/geographic/line_interpolate.hpp>
129 #include <boost/geometry/strategies/geographic/side.hpp>
130 #include <boost/geometry/strategies/geographic/side_andoyer.hpp>
131 #include <boost/geometry/strategies/geographic/side_thomas.hpp>
132 #include <boost/geometry/strategies/geographic/side_vincenty.hpp>
133
134 #include <boost/geometry/strategies/agnostic/buffer_distance_symmetric.hpp>
135 #include <boost/geometry/strategies/agnostic/buffer_distance_asymmetric.hpp>
136 #include <boost/geometry/strategies/agnostic/hull_graham_andrew.hpp>
137 #include <boost/geometry/strategies/agnostic/point_in_box_by_side.hpp>
138 #include <boost/geometry/strategies/agnostic/point_in_point.hpp>
139 #include <boost/geometry/strategies/agnostic/point_in_poly_winding.hpp>
140 #include <boost/geometry/strategies/agnostic/simplify_douglas_peucker.hpp>
141
142 #include <boost/geometry/strategies/strategy_transform.hpp>
143
144 #include <boost/geometry/strategies/transform/matrix_transformers.hpp>
145 #include <boost/geometry/strategies/transform/map_transformer.hpp>
146 #include <boost/geometry/strategies/transform/inverse_transformer.hpp>
147
148
149 #endif // BOOST_GEOMETRY_STRATEGIES_STRATEGIES_HPP