Re: [postgis-users] Trouble with ST_ShortestLine: the returned line DOES NOT start in g1 and end in g2

2022-02-16 Thread Martin Davis
Paul's comment about constructed points not necessarily lying on lines due to numerical rounding is 100% correct. However, in this particular case it turns out that the fact that ST_Intersects reports false is a bug in GEOS. See: https://github.com/libgeos/geos/issues/565 The good news is

Re: [postgis-users] Trouble with ST_ShortestLine: the returned line DOES NOT start in g1 and end in g2

2022-02-09 Thread Jorge Gustavo Rocha
Hi Paul, Thanks for the feedback. I would expect, as a assertion: ST_Intersects( ST_ClosestPoint(line, point), line) = true In our current implementation, the ST_ClosestPoint(geometry g1, geometry g2) can return a point that is not on g1. If ST_ClosestPoint is returning a point that is not

Re: [postgis-users] Trouble with ST_ShortestLine: the returned line DOES NOT start in g1 and end in g2

2022-02-09 Thread Paul Ramsey
If the shortest line runs vertext-to-vertext I would expect it to touch both lines. If on the other hand it runs vertex-to-midsegment I would expect it is possible it would not touch. Check the distance of the shortest line to the two parent lines. It should be zero or very very very small.

[postgis-users] Trouble with ST_ShortestLine: the returned line DOES NOT start in g1 and end in g2

2022-02-09 Thread Jorge Gustavo Rocha
Hi, Help needed :-) I'm having trouble with lines returned by ST_ShortestLine function. The computed lines *should* start and end on the geometries [1], but it is not happening. In fact, the computed geometry sometimes crosses the original geometries or does not touch the geometries at