Ticket #1459 (closed defect: fixed)

Opened 4 months ago

Last modified 4 months ago

A segment endpoint is not ST_DWithin the segment (0 tolerance)

Reported by: strk Owned by: pramsey
Priority: high Milestone: PostGIS 2.0.0
Component: postgis Version: trunk
Keywords: Cc:

Description

See this crazyness here:

strk=# select ST_DWithin(g, st_endpoint(g), 0), 
              ST_DWithin(g, st_startpoint(g), 0)
from ( select 
'LINESTRING(-0.2 0.4,-1e-08 0.4)'::geometry as g 
) f;
 st_dwithin | st_dwithin 
------------+------------
 f          | t
(1 row)

Change History

Changed 4 months ago by strk

Bug in liblwgeom, no bounding box caches involved: lwgeom_mindistance2d_tolerance affected

Changed 4 months ago by strk

r<0 and r>1 are checked, but not r==0 and r==1, which mean p==A and p==B in the distance(p, AB) operation... Working on a testcase.

Changed 4 months ago by strk

  • status changed from new to closed
  • resolution set to fixed

Fixed in r8790

Note: See TracTickets for help on using tickets.