double dx = 0.0, dy = 0.0;

if (point->x < box->low.x)
   dx = box->low.x - point->x;
if (point->x > box->high.x)
   dx = point->x - box->high.x;
if (point->y < box->low.y)
   dy = box->low.y - point->y;
if (point->y > box->high.y)
   dy = point->y - box->high.y;
return HYPOT(dx, dy);

I feel myself quite tangled.
Could anybody clarify it for me? Did I miss something? Thanks.

ISTM that you miss the projection on the segment if dx=0 or dy=0.

--
Fabien.


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to