besides a math way to define/add new elements
a other way
is to generate random elements and add them ONLY after they
passed a collision test with all other existing elements.
it turned out to be tricky as we needed to break loops on timeout.
we play something like this with rectangles here.
the restriction by the outer shape must be added,
also change rect with circle collision.