[Boost-bugs] [Boost C++ Libraries] #10421: Wrong Pt/Box distance/comparable_distance results in spherical CS

Subject: [Boost-bugs] [Boost C++ Libraries] #10421: Wrong Pt/Box distance/comparable_distance results in spherical CS
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-08-29 12:12:39


#10421: Wrong Pt/Box distance/comparable_distance results in spherical CS
------------------------------+---------------------------
 Reporter: awulkiew | Owner: barendgehrels
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: geometry
  Version: Boost 1.56.0 | Severity: Problem
 Keywords: |
------------------------------+---------------------------
 distance(Pt, Box) and comparable_distance(Pt, Box) returns invalid results
 in some cases, or at least not-corresponding to the Pt/Pt versions. E.g.
 for:


 {{{
     point target(10.932501600000000, 59.922640600000001);
     point pt(10.7535660, 59.9131705);
     point pmin(10.187599199999999, 59.747306700000003);
     point pmax(10.753619700000000, 59.917844000000002);
     box bounding_box(pmin, pmax);

     bool target_inside_box = bg::covered_by(target, bounding_box);
     bool point_inside_box = bg::covered_by(pt, bounding_box);
     // the same for bg::comparable_distance()
     double dp = bg::distance(target, pt);
     double db = bg::distance(target, bounding_box);
     double dm = bg::distance(target, pmax);
 }}}

 The results are:

 {{{
     target inside box = FALSE
     point inside box = TRUE
     target to point = 0.00157408
     target to box = 0.178946
     target to max = 0.00156704
 }}}

 Since the point lies inside the box and target outside the box the
 distance from target to box should be smaller than from target to point.

 This bug affects the R-tree and is related with this ticket:
 [https://svn.boost.org/trac/boost/ticket/9759
 boost::geometry::index::rtree does not work properly
 spherical_equatorial].

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/10421>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:16 UTC