How do I fit an array inside a shape so that it doesn’t truncate at the edges? See image below. I’ve tried with a bool, and it truncates. I don’t think fit to curve works for this?
Old school solution: You could use Instancing: Let's say you want to duplicate Suzanne. Create a tiny plane, array it on X and Y (Constant Offset mode), activate Object properties panel > Instancing > Faces, give it a Boolean (Intersect mode) with a cylinder as Object. Parent Suzanne to your plane. If there is a glitch when you scale the cylinder it's because the plane and the cylinder are intersecting, make sure that the plane is very small and it won't glitch.
node setup for 2.93:
node setup for 3.0 alpha:
New school solution:
Add a plane, subdivided it as much as you need it.
Add a cylinder as cutter object.
Apply boolean modifier to plane with cylinder as object -> intersect.
So you got this:
Add another cylinder as Instance object (scale it in edit mode as much as you need it).
Add yet another cylinder (you can hide it later) in the middle of your plane (will be used for midpoint calculation, but could also just calculate the distance from the position if your plane is on 0/0/0 anyway). This cylinder is called Cylinder.001 in my example. Of course you could also use a sphere here...
Add a geometry nodes modifier to your plane with this node setup:
by changing the threshold you can cut off the ugly edge vertices: