-
Hans Breuer authored
Without a 'pointy join' there is no point in calculating the overshot, actually this was growing the bounding box arbitrarily. (First line of bezier-extreme.dia) Also handle slightly degenerated bezier where the control point and the start or end point are in the same place. Now we are using the other control point to have a direction for add_arrow_rectangle() in bicubicbezier2D_bbox(). Otherwise there would be no bounding box contribution from line ends of this kind (see second line of bezier-extreme.dia) Having this fix also seems to be a precondition for properly behaving StdPath::move_handle(). Previously, e.g. with commit 14e05d51 it was possible to go over the constraints implemented, presumably due to bounding box miscalculations leading to wrong handle positions. Still with line-join round the bezier is drawn a bit outside of the box.
7ef29f3c