Correct corner and smooth detection

It seems to have not come up before, but I have a long standing (and small) issue with the pen tool’s automatic detection of corner and smooth nodes which consistently makes mistakes. I think it’s the combination of clicking/dragging the last node and the new node that should determine the state of the node before the latest one you just placed.

drag+drag=first node is green
drag+click=first node is blue
click+drag=first node is blue
click+click=first node is blue
closing the node should always be blue unless a modifier key is pressed (by the way, pressing alt while closing doesn’t do anything, so I think you could assign alt to do this job) (322.9 KB)

Not sure why this post from over 8 months ago never got a reply, because it seems to make a very significant point.

In most respects I love the way the Glyphs Pen tool works, but it often trips me up when I am tracing a drawing, involving a corner between two curves.

Imagine two curved segments between nodes A, B and C, where B is a corner. The sequence is as follows

a) drag node A, unclick
b) drag in-handle of B, press Option, drag out-handle, Option up + unclick
c) drag node C

The issue is that with step b), unless either Option and mouse are released simultaneously, or Option is released first and there is absolutely no movement in the mouse, node B will revert to a smooth point when C is dragged.

I hate to cite AI, but is there any reason why Glyphs should not also allow Option to be released once the corner has been established, without the handles springing back into alignment if the mouse moves? This would make for much more relaxing and error-free drawing.

Tosche’s point about the closing node is also a good one.

Can you try the latest cutting edge version (active it in Preferences > Updates). I improved it a bit.

I think I’m on the cutting edge version Georg: 2.3.1 (905)?

It seems to have been fixed in 905.

Not sure which issue you are referring to Toshi. The sequence described 4 posts up, where it is possible but trickier than it should be to draw a corner between two curved segments, was using 905. The issue with closing points seems no different now than as described in your initial post.

When closing a path curve to curve using no modifier, you have full control over the angle of the closing segment (without affecting the angle of the opposite BCP), but you usually end up with an angled smooth point. Pressing Option during the closure correctly makes it a corner point, but you lose control over the closing angle. Both seem anomalous.

That works as expected for me.

Thanks Georg. Yes, that does work most of the time, but if there is any inadvertent mouse movement in b) between Option-up and unclick (or if unclick comes fractionally before Option-up), then the second node reverts to smooth. This isn’t a big deal, but it just requires more concentration and dexterity (and luck) than if it was ok to release Option as soon as it had converted the point to corner.

What are your views on the closing point “anomaly”?

That is just what one would expect. Just release the mouse before you release the option key. You can keep the option down as long as you like, not dexterity needed here.

It will not be smooth now.

That is just what one would expect. Just release the mouse before you release the option key. You can keep the option down as long as you like, not dexterity needed here.

Sorry to keep banging on Georg, but when I draw a corner point in a curve and leave Option down after mouse-up (which would be fine), as soon as I drag the next point, the corner I have just drawn reverts to smooth. Is this not happening for you?

No, it stays sharp. Only if I draw a line segment that is alined with the previous handle, then it sets it to smooth.

It will not be smooth now.

Thanks for that Georg.

And I am glad to say that I have nailed the issue with corner point reverting to smooth: it was an unambiguous conflict with BetterTouchTool, to be specific the Disable BTT while holding [Opt] setting. Uncheck this and corner behaviour in Glyphs is just as you describe. (Odd that this did not compromise exactly the same behaviour in FL or AI.)