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.