## Water color effect

At the rose garden was an experiment with the ideas presented by artist Tyler Hobbs in his article A generative approach to simulating watercolor paints. The idea of the algorithm is to draw a polygon, for example a decahedron, and replace each side AB with two new segments, AC' and C'B, where C' is a point around the midpoint C between A an B. Taylor uses the Gaussian distribution to determine C' from C, meaning most points will be very close to C, and a few will be very distant from C, causing an organic feel to the distortion.

*How the algorithm works. Images (C) Tyler Hobbs

The `deformBlob()` method is one possible implementation of the algorithm above.

```# java

ArrayList<PVector> deformBlob(ArrayList<PVector> basePolygon, int iterations) {

ArrayList<PVector> blob = new ArrayList<PVector>();

blob.clear();

for (int j=0, si=basePolygon.size(); j<si; j++) {

}

for (int i = 1; i < iterations; i++) {

vertices = new ArrayList<PVector>();

for (int v =0, l = blob.size(); v<l; v++) {

PVector A = blob.get((v%l));

PVector B = blob.get((v+1)%l);

PVector C = PVector.lerp(A, B, 0.5); //medium point

// Get a gaussian random number w/ mean of 0 and standard deviation of m

// moves point B by adding to the Gaussian number

float m = A.dist(B);

C.x +=randomGaussian() * m * .25;

C.y +=randomGaussian() * m * .25;

//"B" is "A" in the next iteration of "i"

}

blob.clear();

for (int j=0, si=vertices.size(); j<si; j++) {