FYI, changing the PopGeo ‘N’ (Count) input from 100 to 200 ups the compute time closer to half an hour! But look at the panel on the far right listing the lengths of the “naked edges”. Now down to only six, two of which are both 4.86773 units long; likely a matched pair, visible at the bottom of the image. The other four are very short.
By far, the dominant pain factor in this model is that gaping irregular hole in the shell. The Voronoi cells around that edge require two forms of special treatment that are complex and somewhat arbitrary. While the code in those two areas is somewhat interesting and educational, perhaps applicable to other similar problems, I’ve reached the conclusion that for a goal like this, it would be WAY BETTER instead to do it this way:
- Use a shell with no holes for the .PopGeo and Voronoi³ step.
- Use one or more “attractors” (points or curves on the surface) to cull Voronoi cells to create a hole (or holes) in the structure.
There might still be issues around the edge of any resulting gaps in the Voronoi structure but at least you won’t be dealing with partial Voronoi cells caused by arbitrary gaps that cut across them.