synfig / synfig

This is the Official source code repository of the Synfig project
https://synfig.org
GNU General Public License v3.0
1.85k stars 326 forks source link

Feature request: Better vertices and tangents handling #2644

Open yoSachinkr opened 2 years ago

yoSachinkr commented 2 years ago

As of now, working with vertices and tangents is a bit of a chore in synfig. It drastically slows down the process of creating artwork within the application. Function like splitting the tangents radius/angle on the fly while creating paths, which are present in other vector based apps e.g. inkscape, is non existent in synfig. Rather it requires an extra step of opening the context menu and selecting the split tangents option. ( imagine doing this over and over again with hundreds of vertices in a complex artwork and i'm sure you can feel the pain too) Another issue that must be sorted is when you create a point (vertex) with zero tangent radius, and then later if you want to bring out those tangent handles, there's no easy way to do so. Either you'll have to fiddle with the path joining the vertex to get those handle pop out or go to parameters panel to manually put values to the tangent radius. (hovering the mouse over the vertex does nothing to indicate the tangent handles. So I'd request devs to make vertices and tangents handling a bit more in line with other vector based apps as it would help everyone tremendously.

Gilraiser commented 2 years ago

Hello, cordial greeting. Looking in other programs I find these options:

node-options-3 node-options-2 node-options

The truth is that the editing of vector graphics in Synfig seems to me to be one of the best I've seen. However it would be a great improvement if the size of the handles could be increased and if the options of the images that I attached above were in the transformation tool options.

node-options-final

yoSachinkr commented 2 years ago

In my opinion, GIMP's way of handling vertices and tangents seems quite intuitive to me.

https://user-images.githubusercontent.com/50204208/169980567-3778b3e1-916f-49dc-888b-a47a01b29119.mp4

If you observe this video carefully, you'll notice that when i create a vertex and drag the mouse, the tangent handles drag equally in opposite directions, then when i lift the mouse and grab one of the tangent handles to move, i can do it easily in any direction independent of the opposite tangent handle as the tangents are split by default. But when I shift+click on the tangent, the tangent angle is joined as long as I hold shift key and manipulate the tangent handle. To complete the loop, I have to ctrl + click the first vertex.

In the whole process, I had never have to open the context menu even for once.

A behaviour similar to this would definitely ease out the process of art creation in synfig.

rodolforg commented 2 years ago

Another issue that must be sorted is when you create a point (vertex) with zero tangent radius, and then later if you want to bring out those tangent handles, there's no easy way to do so.

Simpler than your options is this way: Peek 29-05-2022 11-04

:)

A while ago I was thinking about implement something like https://bezier.method.ac/ and https://helpx.adobe.com/photoshop/using/editing-paths.html

yoSachinkr commented 2 years ago

@rodolforg I've used the adobe's pen tool, but to be honest, I think GIMP has nailed the pen tool implementation. I find it very intuitive and handy.

rodolforg commented 2 years ago

Did you see bezier game I linked? :)

Gimp vs Synfig is all about tangents?

yoSachinkr commented 2 years ago

Did you see bezier game I linked? :)

Yes, I did. 😀 It's just like using pen tool in photoshop/inkscape.

Gimp vs Synfig is all about tangents?

Obviously not. Both have different use cases. But when it comes to path handling, both the apps have different approaches. And these differences can be felt while using pen tool in each of them. Since, in synfig, path creation is one of the most import part of creating a composition, so I felt the need to put this issue forth. I did some preliminary research and found GIMP's handling of paths much more intuitive as you can see in the video above. In fact, I'd request you to try it yourself and I'm sure you'll appreciate it too.

rodolforg commented 2 years ago

Obviously not.

Sorry, I meant when we are drawing path. :)

The difference is that you can split tangents after drawing a path segment and adjust bézier while drawing.

Synfig also misses how to continue to draw from the selected vertex by using the Bline Tool.

Anything else?

yoSachinkr commented 2 years ago

I think that's it. 🤔