Feature request (add extremes)

Hi, I was wondering if the “add extremes” action (sorry I have the app in other language so the command might have a different name. I am talking about the command that adds the extreme points in curves), could have a similar behaviour to “remove overlaps” command. RemOver gives you the option of removing overlaps in shapes that are selected and doesn’t affect the rest of the shapes, while “add extremes” affects the hole glyph no matter if you have selected shapes or not.

I hope I explained myself well, thanks for the great job developing the app.

1 Like

If you want to add extremes to certain places, you can grab a pen tool and shift-click around where extrema should be. Glyphs will automatically find the right spot and places extrema for you.

I know, although that s not the solution I m looking for exactly, but something more automatic and quicker. This isn’t something that really bothers or disturbs me, I just think it makes sense for the tools to share general behaviour, don’t you think? Best

You can add a filter “AddExtremes” to the instances.

sorry, I think I didn t explain myself properly

Sometimes when I m drawing, specially italics, I tend to combine dots in orthogonal position with points with the same angle as the italics (this happens in the first drawing stages mainly). I have spotted that Remove Overlap action has the option of affecting selected shapes only (which I think makes total sense), while Add Extremes affects always all the shapes no matter what you have selected (which I think makes less sense; even less if compared with Remove Overlaps), so if I want to have orthogonal points only in some shapes I press “add extremes” and then I have to remove the undesired points that have been created automatically.

I think that equalizing behaviours in both tools would result in:

  • a bit better control in the creation of points for the user
  • a more harmonic and predictible drawing environment


1 Like

I like this idea, to add extremes only on the selected contour, not on the whole glyph.

But I’d also suggest taking it a step further. If part of a contour is selected, remove any overlaps there, or add extremes there, but not on any unselected parts. I often have overlaps on one part of a glyph that I want to remove, without affecting the overlaps on another part of the same contour. And I think adding extremes should work the same way.

1 Like

What we can do relatively easily in the current implementation is add extremes per selected path because the functions are already there and we would only need to implement it in the interface. You can try it with this snippet in Macro Window:

for thisPath in Layer.paths:
	if thisPath.selected:
  1. Double-click to select paths (hold down shift to add or remove paths).
  2. Run this code from the Macro Window

Is this what you imagine?

You mean this for self-intersections? Determining the selection can be very difficult in this case. E.g., only one or two points inside the overlap may not suffice to reliably determine the removal area.


This is the exact function I was talking about, my suggestion is that I think it would make much more sense for the tool “Add Extremes” to work like this as default since this is the exact same behaviour as “remove overlaps”. In this way, if you have a single shape selected and you press “add extremes” you get the extreme in that shape only and if you have nothing selected, you get the extremes everywhere. You give the user a bit more control in the points you create automatically.

I see. I tend to need to remove outside corners, while retaining overlapping paths. Would that be a possible option?

Do you mean adding as a Custom Parameter to instances?
I’m asking this because; when applying Slant/Cursify; I need to fix extremes afterwards.
The RMX® Slant by @TimAhrens provides fixed extremes results; Unfortunately it cannot be applied as a custom parameter neither it has the control options of axes.

The RMX slant keeps the extremes but distorts the shape much more than the cursify filter for slanting with more than a few degrees.