On Wed, Jul 30, 2014 at 4:06 PM, Fabien COELHO <coe...@cri.ensmp.fr> wrote:
> 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.
I don't need to find projection itself, I need only distance. When dx = 0
then nearest point is on horizontal line of box, so distance to it is dy.
Same when dy = 0. When both of them are 0 then point is in the box.
With best regards,