1 // Boost.Geometry
2
3 // Copyright (c) 2019, Oracle and/or its affiliates.
4
5 // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
6
7 // Licensed under the Boost Software License version 1.0.
8 // http://www.boost.org/users/license.html
9
10 #include "common.hpp"
11
12 #include <boost/geometry/algorithms/distance.hpp>
13
test_main(int,char * [])14 int test_main(int, char*[])
15 {
16 geom g;
17
18 bg::distance(g.pt, g.pt, bg::strategy::distance::pythagoras<>());
19 bg::distance(g.pt, g.pt, bg::strategy::distance::haversine<>());
20 bg::distance(g.pt, g.pt, bg::strategy::distance::geographic<>());
21 bg::distance(g.pt, g.mpt, bg::strategy::distance::pythagoras<>());
22 bg::distance(g.pt, g.mpt, bg::strategy::distance::haversine<>());
23 bg::distance(g.pt, g.mpt, bg::strategy::distance::geographic<>());
24 bg::distance(g.mpt, g.mpt, bg::strategy::distance::pythagoras<>());
25 bg::distance(g.mpt, g.mpt, bg::strategy::distance::haversine<>());
26 bg::distance(g.mpt, g.mpt, bg::strategy::distance::geographic<>());
27 bg::distance(g.pt, g.ls, bg::strategy::distance::projected_point<>());
28 bg::distance(g.pt, g.ls, bg::strategy::distance::cross_track<>());
29 bg::distance(g.pt, g.ls, bg::strategy::distance::geographic_cross_track<>());
30 bg::distance(g.pt, g.mls, bg::strategy::distance::projected_point<>());
31 bg::distance(g.pt, g.mls, bg::strategy::distance::cross_track<>());
32 bg::distance(g.pt, g.mls, bg::strategy::distance::geographic_cross_track<>());
33 bg::distance(g.mpt, g.ls, bg::strategy::distance::projected_point<>());
34 bg::distance(g.mpt, g.ls, bg::strategy::distance::cross_track<>());
35 bg::distance(g.mpt, g.ls, bg::strategy::distance::geographic_cross_track<>());
36 bg::distance(g.mpt, g.mls, bg::strategy::distance::projected_point<>());
37 bg::distance(g.mpt, g.mls, bg::strategy::distance::cross_track<>());
38 bg::distance(g.mpt, g.mls, bg::strategy::distance::geographic_cross_track<>());
39 bg::distance(g.ls, g.ls, bg::strategy::distance::projected_point<>());
40 bg::distance(g.ls, g.ls, bg::strategy::distance::cross_track<>());
41 bg::distance(g.ls, g.ls, bg::strategy::distance::geographic_cross_track<>());
42 bg::distance(g.ls, g.mls, bg::strategy::distance::projected_point<>());
43 bg::distance(g.ls, g.mls, bg::strategy::distance::cross_track<>());
44 bg::distance(g.ls, g.mls, bg::strategy::distance::geographic_cross_track<>());
45 bg::distance(g.mls, g.mls, bg::strategy::distance::projected_point<>());
46 bg::distance(g.mls, g.mls, bg::strategy::distance::cross_track<>());
47 bg::distance(g.mls, g.mls, bg::strategy::distance::geographic_cross_track<>());
48 bg::distance(g.pt, g.r, bg::strategy::distance::projected_point<>());
49 bg::distance(g.pt, g.r, bg::strategy::distance::cross_track<>());
50 bg::distance(g.pt, g.r, bg::strategy::distance::geographic_cross_track<>());
51 bg::distance(g.pt, g.po, bg::strategy::distance::projected_point<>());
52 bg::distance(g.pt, g.po, bg::strategy::distance::cross_track<>());
53 bg::distance(g.pt, g.po, bg::strategy::distance::geographic_cross_track<>());
54 bg::distance(g.pt, g.mpo, bg::strategy::distance::projected_point<>());
55 bg::distance(g.pt, g.mpo, bg::strategy::distance::cross_track<>());
56 bg::distance(g.pt, g.mpo, bg::strategy::distance::geographic_cross_track<>());
57 bg::distance(g.mpt, g.r, bg::strategy::distance::projected_point<>());
58 bg::distance(g.mpt, g.r, bg::strategy::distance::cross_track<>());
59 bg::distance(g.mpt, g.r, bg::strategy::distance::geographic_cross_track<>());
60 bg::distance(g.mpt, g.po, bg::strategy::distance::projected_point<>());
61 bg::distance(g.mpt, g.po, bg::strategy::distance::cross_track<>());
62 bg::distance(g.mpt, g.po, bg::strategy::distance::geographic_cross_track<>());
63 bg::distance(g.mpt, g.mpo, bg::strategy::distance::projected_point<>());
64 bg::distance(g.mpt, g.mpo, bg::strategy::distance::cross_track<>());
65 bg::distance(g.mpt, g.mpo, bg::strategy::distance::geographic_cross_track<>());
66 bg::distance(g.ls, g.r, bg::strategy::distance::projected_point<>());
67 bg::distance(g.ls, g.r, bg::strategy::distance::cross_track<>());
68 bg::distance(g.ls, g.r, bg::strategy::distance::geographic_cross_track<>());
69 bg::distance(g.ls, g.po, bg::strategy::distance::projected_point<>());
70 bg::distance(g.ls, g.po, bg::strategy::distance::cross_track<>());
71 bg::distance(g.ls, g.po, bg::strategy::distance::geographic_cross_track<>());
72 bg::distance(g.ls, g.mpo, bg::strategy::distance::projected_point<>());
73 bg::distance(g.ls, g.mpo, bg::strategy::distance::cross_track<>());
74 bg::distance(g.ls, g.mpo, bg::strategy::distance::geographic_cross_track<>());
75 bg::distance(g.mls, g.r, bg::strategy::distance::projected_point<>());
76 bg::distance(g.mls, g.r, bg::strategy::distance::cross_track<>());
77 bg::distance(g.mls, g.r, bg::strategy::distance::geographic_cross_track<>());
78 bg::distance(g.mls, g.po, bg::strategy::distance::projected_point<>());
79 bg::distance(g.mls, g.po, bg::strategy::distance::cross_track<>());
80 bg::distance(g.mls, g.po, bg::strategy::distance::geographic_cross_track<>());
81 bg::distance(g.mls, g.mpo, bg::strategy::distance::projected_point<>());
82 bg::distance(g.mls, g.mpo, bg::strategy::distance::cross_track<>());
83 bg::distance(g.mls, g.mpo, bg::strategy::distance::geographic_cross_track<>());
84 bg::distance(g.r, g.r, bg::strategy::distance::projected_point<>());
85 bg::distance(g.r, g.r, bg::strategy::distance::cross_track<>());
86 bg::distance(g.r, g.r, bg::strategy::distance::geographic_cross_track<>());
87 bg::distance(g.r, g.po, bg::strategy::distance::projected_point<>());
88 bg::distance(g.r, g.po, bg::strategy::distance::cross_track<>());
89 bg::distance(g.r, g.po, bg::strategy::distance::geographic_cross_track<>());
90 bg::distance(g.r, g.mpo, bg::strategy::distance::projected_point<>());
91 bg::distance(g.r, g.mpo, bg::strategy::distance::cross_track<>());
92 bg::distance(g.r, g.mpo, bg::strategy::distance::geographic_cross_track<>());
93 bg::distance(g.po, g.r, bg::strategy::distance::projected_point<>());
94 bg::distance(g.po, g.r, bg::strategy::distance::cross_track<>());
95 bg::distance(g.po, g.r, bg::strategy::distance::geographic_cross_track<>());
96 bg::distance(g.po, g.po, bg::strategy::distance::projected_point<>());
97 bg::distance(g.po, g.po, bg::strategy::distance::cross_track<>());
98 bg::distance(g.po, g.po, bg::strategy::distance::geographic_cross_track<>());
99 bg::distance(g.po, g.mpo, bg::strategy::distance::projected_point<>());
100 bg::distance(g.po, g.mpo, bg::strategy::distance::cross_track<>());
101 bg::distance(g.po, g.mpo, bg::strategy::distance::geographic_cross_track<>());
102 bg::distance(g.mpo, g.r, bg::strategy::distance::projected_point<>());
103 bg::distance(g.mpo, g.r, bg::strategy::distance::cross_track<>());
104 bg::distance(g.mpo, g.r, bg::strategy::distance::geographic_cross_track<>());
105 bg::distance(g.mpo, g.po, bg::strategy::distance::projected_point<>());
106 bg::distance(g.mpo, g.po, bg::strategy::distance::cross_track<>());
107 bg::distance(g.mpo, g.po, bg::strategy::distance::geographic_cross_track<>());
108 bg::distance(g.mpo, g.mpo, bg::strategy::distance::projected_point<>());
109 bg::distance(g.mpo, g.mpo, bg::strategy::distance::cross_track<>());
110 bg::distance(g.mpo, g.mpo, bg::strategy::distance::geographic_cross_track<>());
111
112 return 0;
113 }
114