Another JS prototype I have been working on is a vector path editor.
I had been using the freely available Wick Animation Program which has a path editor function that makes a straight line curved using a "magnetic type push/pull drag action"
I have prototyped something similar in P5js, but my version has a variable bend radius bend mode and a straighten curve mode (yes you can make a bent curve totally straight). Then I extended the JS prototype code to have undo levels, coloured lines, line widths, rotation about a moveable centroid point, scale by bounding box and a translate/move function.
The attached screenshot shows the rotation mode.
The middle line was also curved, but I straightened it out with the straighten function.
The other 2 lines shows how paths can be freedrawn and then curved.
Hoping to eventually convert this JavaScript prototype to a Lazarus Vector editor.
Anyhow, I thought I would illustrate another prototyping example that I have been tinkering with, possibly to give other Lazarus programmers some ideas in inventing/implementing some functions in their own Lazarus programs.