# How to iteratively offset 2D curves with Geo Nodes, similar to Inset Face?

Meaning, I'd like to take a pre-drawn curve shape and create several offset duplicates of equal distance from the first. Essentially filling that original curve with equal ripples of itself until the shape is filled to capacity with said ripples.

Any ideas how i would do this?

The main idea of this solution is to move the inset curve along the normal. To get good normal we have to resample the curve.

But as we do this overlapping appears, to get rid of those we use Raycast and Geometry Proximity to create a mask.

In order to be efficient this mask have to use a threshold (Epsilon) that depend of the definition of the Curve Resample.

I hope it help.

Edit & update :

Because I wanted to update by using the Repeat Zone, I came across some defaults in the node three results, when islands are forming there is lines between them...

In order to get rid of it a solution is to transforming the curve in mesh by using Fill Curve on N-gons and to get rid of the overlapping points. But it create new lines so we use a Delete Geometry on Lines. Then use a Merge by Distance in order to close the mesh. But few smalls edges appear on the sharps angles, some Delete Geometry on a Vertex Neighbors will do the trick.

I hope it help.

• Not tested, but at first glance: nicely solved! Jan 1, 2023 at 17:20
• @quellenform: Thank you. Jan 1, 2023 at 17:23
• oh wow! yeas this makes sense to me and i'm eager to test it. Thank you so much! Jan 2, 2023 at 21:33