Comment 11 for bug 188849

Revision history for this message
RM (rm-launchpad) wrote :

ok here's another crack at the patch.

this one is setup such that,

- while the line is being drawn, the only change is that all the points are stored in a new array and the interpolation in fit_and_split is done with a tolerance of 0.
- when the mouse is released, the initial curve is removed and a new curve is interpolated using all the points (using code similar to fit_and_split)

note:
- the old mechanism (using the 16 Point array) is basically unchanged and is used to draw the temporary curve as before. i don't really see a big need to change it.
- we use stl::vector<Geom::Point> to store all the mouse points (could use glib's stuff here though)
- the range of the GUI slider for the smoothing tolerance may need adjustment, since interpolation with all points results in a smoother curve at a given tolerance than on-the-fly interpolation.