Hi all,
Good to see that so many people still care about snapping :-)
On 04/16/2012 07:54 PM, Johan Engelen wrote:
I think that snapping is inherently asymmetric. While you have control over what will snap (by putting the mouse close to it),
.. and by using (shift-)tab to cycle through all snap sources ... BTW, please remind that not everyone is using the "only use snap source closest to the pointer" option. Let alone that they have touched the slider to set the weighing for that option.
you have no quick control over what it will snap to.
I don't agree with that. You can control what it will snap too, buy moving your mouse towards your desired snap target. That's the whole idea of snapping ;-). If this doesn' t work for you, then you might have too many snap targets enabled.
I have learned over time though that everybody uses the snapping mechanisms in a different way. So my opinion, is just that: an opinion.
Would it be useful if I add (shift-)ctrl-tab cycling for the snap targets? You see, I'm an engineer: I try to solve problems by adding even more features ;-)
Enabling all snap sources is not very much different from enabling a few of them. Enable all snap targets will be uncontrollable. That's why I am in favor of an asymmetric interface.
Well, I have one technical argument against that: snapping can challenge even your brand new core i7. The number of possible combinations of sources and targets can grow quickly, for example when using a complex document (typically a large group of tiny objects from an imported pdf or dxf). In such a case it helps to disable as many snap targets and sources as possible. However, I also agree that this probably doesn't happen too often for our average user, while a cumbersome UI is something one simply cannot escape.
Example: to me it makes no sense to disable snapping of knots
It does! I tend to only use cusp nodes as a snap source, and not smooth nodes. Therefore I want to eliminate smooth nodes as a snap source, but if I hard code that then you will not be happy because you want to consider all as snap sources. They only way out of this is to make things configurable.
, because you can already quickly disable snapping while moving a knot by pressing shift.
Problem: press-shift-to-disable-snapping isn't implemented in all tools. That's my personal annoyance with Inkscape (more general: inconsistency of modifier keys).
You see, I don't mind changing the UI or snapping code (otherwise I wouldn't still be working on this after five years). It's hard however to make everyone perfectly happy.
As a side note: these are the things that are still on my list (among others which I forgot): - store the snapping preferences differently in the document (the current list of strings is becoming a little bit too verbose, e.g. inkscape:snap-bbox-edge-midpoints="true"). I'm thinking of using some hexadecimal encoding strings instead. Nobody edits these setting using a text editor, right? If you do this on a regular basis then please speak up now :-) - add more configurability, as requested for example by LucaDC. This means that you will be able to control each snap source and target individually (currently you can't. Much has been hidden already. We already have about 20 sources and 40 targets, but you won't have noticed because of the implicit snapping logic). But this maximum configurability will be slightly tucked away in the UI, to not bother other users too much which this. - Add tangential/perpendicular snapping when rotating selections
Regards,
Diederik