Voronoi distribution control

It would be need if the user had more control over the Voronoi generator’s point distribution. Quite often, I find myself having some very odd and uneven distribution of, especially, cells (see image 1), which is often an unwanted effect and it is not really possible to counteract it. I therefore would really like to have controls over the point generation on which the tessellation is based. This also creates an opportunity to create a more intricate device (hint: Voronoi cells basing their heights of a heightmap!).

Controls to be added:

  • Distribution deviation/spread. This lets you determine how much the points should “shuffle” around. In order for this to work, I think it is best to have an internal representation of each point with a “direction” and “speed/distance” parameter. The first one determining the direction of movement and the second how fast the point deviates.
  • Distribution pattern. This allows the user to select from a range of patterns from which the tessellation will derived. I think the following patterns will do nicely: Triangular, Grid (square based) and Hexagonal. The Hexagonal pattern will very much look like the Triangular pattern, but differs in that the Triangular pattern will have a point at the center of a hexagon whereas the Hexagonal pattern would not (see image 2).
  • If we want to go even crazier, replace the Shape parameter with two parameters, one for the point’s direction and one for the point’s speed/distance. Sliding the parameter will then transform either of those to properties of each point, giving you tight control over the distribution.

Image 1

Image 2

4 Likes