id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 11982,distance between point and linestring on spherical_equatorial ignores radius when using haversine.,anonymous,Barend Gehrels,"Distance between a point and a linestring is incorrect when using spherical_equatorial coordinates and haversine strategy. It looks like it is always using radius = 1.0. Example: {{{ #include #include namespace bg = boost::geometry; typedef bg::model::point > pt; typedef bg::model::linestring pt_line; int main() { const double earthRadius = 6371.0 * 1000.0; pt oslo(10.733557, 59.911923); pt sandvika(10.521812, 59.887214); pt trondheim(10.4, 63.43); // works correct double d1 = bg::distance(sandvika, trondheim, bg::strategy::distance::haversine(earthRadius)); double d2 = bg::distance(oslo, trondheim, bg::strategy::distance::haversine(earthRadius)); std::cout << ""Sandvika-Trondheim "" << d1 << std::endl; std::cout << ""Oslo-Trondheim "" << d2 << std::endl; pt_line ll; ll.push_back(oslo); ll.push_back(sandvika); // Does not work double d3 = bg::distance(trondheim, ll, bg::strategy::distance::haversine(earthRadius)); std::cout << ""Oslo-Sandvika - Trondheim "" << d3 << std::endl; return 0; } }}} Output: {{{ Sandvika-Trondheim 393992 Oslo-Trondheim 391587 Oslo-Sandvika - Trondheim 0.0614639 }}} Note that the last number differs with a factor of 6371000 from the correct 391587. It looks like distance/backward_compatibility.hpp is ignoring the incoming strategy in last argument to apply.",Bugs,new,To Be Determined,geometry,Boost 1.60.0,Problem,,,