Hello everyone, I have a very specific problem that I haven't been able to solve. I hope someone with experience in graphics applications has the patience to offer some suggestions.
In short, I wrote an application that allows you to draw diagrams, consisting of nodes and connections of various shapes, ending with an arrow. Specifically, I decided to also implement connections that are circular arcs, with three control points—that is, three points through which the circular arcs must pass. Functionally, everything works correctly, but an annoying phenomenon occurs when you move one of the three control points with the mouse to modify the arc. When you move the mouse, the tip of the arrow sometimes deviates, even by a few pixels, from the end of the arc.
I don't know if this problem is due to rounding errors or has more purely graphical causes. In any case, I've created a small demo program, which I'm attaching, that allows you to reproduce the problem outside of my application.
EDIT:
In the demo, in draw mode, the program allows you to set the three points. In move mode, it allows you to move them and modify the arc accordingly.
Thanks in advance.