Vector Layer Stroke & Fill Incorrect Spline Interpolation

@feeef I noticed this bug since several builds ago, but I wanted to ask you if you were aware of it since you were refactoring the vector tools earlier, so I didn’t submit it to github just yet, but I wanted you to see it.

Let me know what you think or if I should submit it to Github :slight_smile:

Yes, you can fill a bug!

The bucket feature I have implemented is far from perfect and may need some re-thinking.

I had the problem of making it work well while not being too slow but the calculation of the shape to fill that I have implemented is not very good and can easily break.

Also, I have not done any work on painted area shapes and curves so it is something to do indeed!

This sort of touches on the polyline project that I’m working on.
There is a lot of weird stuff going on in that current code that needs some serious refactoring.
The code is attempting to do too many different things in the same object IMHO.

The master branch code as it now will basically produce straight-line object in bitmap and a bezier in vector mode. This makes no sense to me.

So far I’ve split up the code into separate objects, one for bezier and one for polyline. At this point I just have it in on my repo on a separate branch. It’s going to be while till anything is at a point where it’s ready to be used.

I’m thinking at some point there will be icons for a polyline and one for a bezier.

I envision the polyline being used to produce squares, triangles, stick figures, straighline elements etc… and the bezier will be for producing non circular arcs etc(basically what was going on back in December before the current version.)
These should work for both vector and bitmap mode. (bitmap mode won’t have editing functionality since the points will be lost when data is saved into the bitmap) (I see myself working mostly on the polyline for the foreseeable future since the bezier simply doesn’t itch my scratch at the moment)

Polyline data structure will be a different from the bezier, that will eventually be able to accommodate something more that more than a multi-line segment. Something like a stick figure for example.