Generate random not overlapping triangles

Not exactly. You just need to sample 3 equidistant points along the edges of the Voronoi cells and draw triangles with it. You can use the dividePLine function I used in this other sketch.

For example:

tri = dividePLine(vertices, 3, true);

where:

  • vertices is a list of the vertices of a single Voronoi cell
  • 3, the desired number of equidistant points
  • false/true, a boolean indicating whether the polyline (edges of the Voronoi cell) is closed or not