I used Area ‘C’ (Centroid) of the circles from the .3dm file. In the last version with the parametric square grid, the only use for those 14K points was to get the perimeter curve using Convex Hull, which is all that’s needed now to generate the grid. So I suggest that perimeter curve be internalized and the 14K points be discarded, like this:
One more note… The white group that creates the grid could be simplified using Rectangular Array for the parametric square grid. It was done for version ‘c’ which precisely replicated the original “skewed grid” where columns and rows are parallel to two edges that are not square to each other.
I took a shortcut for the square grid, re-using bits that aren’t needed anymore. These flaws are not deliberate but they do provide opportunities to make improvements so you really “own” the code.