Adding Overlapping Nodes Intentionally

Hi there

(I’m hoping that there isn’t an obvious solution to my issue that I’ve overlooked)

I’m hoping to find a way to quickly (either through a script/hotkey) to add nodes that overlap, so that I can get masters to be compatible – without going through the fairly laboursome task of slicing the path at the node, deleting handles and then moving the nodes back to overlap.

To show what I mean, here are the 2 shapes I’m wanting to interpolate between (they are 2 different masters):

And my ideal solution would result in the structure on the right, without any handles between each pair of overlapping nodes:

Please let me know if there’s any other way to quickly achieve this, or if anyone would be willing to help me with a script or other workaround.

Seb M

Select the nodes you want to duplicate, and run this script in Macro panel:

for i in range(len(Layer.paths)-1,-1,-1):
	p = Layer.paths[i]
	for j in range(len(p.nodes)-1,-1,-1):
		n = p.nodes[j]
		if n.selected and n.type!=GSOFFCURVE:
1 Like

Or like this:

for n in Layer.selection:
	if isinstance(n, GSNode) and n.type != OFFCURVE:
		newNode = n.copy()
		newNode.type = LINE
		n.parent.nodes.insert(n.index + 1, newNode)

Hey mekka and Georg

Thanks very much for the help, both options worked really well!


Hey everyone,

What about adding nodes intentionally but with its handles (overlaping)?
I need this for a weird font I’m doing. :slight_smile:

You mean you want to duplicate a node, and insert handles “between” the two resulting nodes as well?


Principally nothing wrong with it. TT conversion may be tricky. Can you show a screenshot?

This is why I need not only nodes to be overlapped but also handles.
We are working on a VF with width axis. This are the “C” in 2 of the masters.

Thanks Rainer, we just changed to Glyphs in the studio :slight_smile: loving it!

You might need some alternate layers to get a decent transition between the round and strait shapes.

You can simply scale them back into the vanishing point, best with the grey info box: turn the lock on, set the appropriate transform origin, and set width or height to zero.

There is a Duplicate Nodes filter available in the plug-in manager, which may be useful for you.