Ticket #11982: test_distance.cc

File test_distance.cc, 1002 bytes (added by anonymous, 7 years ago)

Example program.

Line 
1#include <iostream>
2#include <boost/geometry.hpp>
3
4namespace bg = boost::geometry;
5typedef bg::model::point<double, 2, bg::cs::spherical_equatorial<bg::degree> > pt;
6typedef bg::model::linestring<pt> pt_line;
7
8int main()
9{
10 const double earthRadius = 6371.0 * 1000.0;
11 pt oslo(10.733557, 59.911923);
12 pt sandvika(10.521812, 59.887214);
13 pt trondheim(10.4, 63.43);
14
15 // works correct
16 double d1 = bg::distance(sandvika, trondheim, bg::strategy::distance::haversine<double>(earthRadius));
17 double d2 = bg::distance(oslo, trondheim, bg::strategy::distance::haversine<double>(earthRadius));
18 std::cout << "Sandvika-Trondheim " << d1 << std::endl;
19 std::cout << "Oslo-Trondheim " << d2 << std::endl;
20
21 pt_line ll;
22 ll.push_back(oslo);
23 ll.push_back(sandvika);
24
25 // Does not work
26 double d3 = bg::distance(trondheim, ll, bg::strategy::distance::haversine<double>(earthRadius));
27 std::cout << "Oslo-Sandvika - Trondheim " << d3 << std::endl;
28
29 return 0;
30}
31