How does the grasshopper array replicate different objects and place a shape

How does the grasshopper array copy out different objects and put out a shape, just like a picture, I think it can’t be solved for a long time.

See here

If the shapes are placed randomly it’s trivial. If they have to interlock in specific ways it’s incredibly difficult.

  1. generate points on some underlying surface.
  2. move points randomly using some sort of attractor scheme (motion distance varies with location).
  3. collapse nearby points to get a uniform density.
  4. copy (+scale?) objects to the remaining points.