Using many sets of noise generations and multiplying them renders a interesting cell like structure. As is visible in the code, there are many parameters available to adjust. Also see the animation of this pattern, here.
cd = CellDataStruct(this, 1, at, cn.EUCLIDEAN);
...
cn.noise(cd)
double sum = 1;
for (int i = 0; i < 4; i++) {
at[0] = 0.01*(i*2+1) * (x + 20);
at[1] = 0.01*(i*2+1) * (y + 700);
cd.at = at;
cn.noise(cd);
sum *= (cd.F[0]);
}
pixels[x + y*width] = color((float)(sum)*255);
The complete code is available here, along with most of the other examples in the gallery. To be able to run it in Processing, you'll have to download the CellNoise library from the download page.
|