//basic circle with line
for (float a = 0; a < TWO_PI; a+=0.02) {
line((r)*cos(theta), (r)*sin(theta), 0, 0);
}
//added Perlin Noise
float xoff = 0;
for (float a = 0; a < TWO_PI; a+=0.02) {
float nn = map(noise(xoff), 0, 1, -40, 20);
line((r+nn)*cos(theta), (r+nn)*sin(theta), nn*0.5, 0);
vertex((r+nn)*cos(theta), (r+nn)*sin(theta));
xoff += 0.1;
}
//added translation
float xoff = 0;
for (float a = 0; a < TWO_PI*2.6; a+=0.02) {
translate(1, 0.5);
float nn = map(noise(xoff), 0, 1, -40, 20);
line((r+nn)*cos(theta), (r+nn)*sin(theta), nn*0.5, 0);
vertex((r+nn)*cos(theta), (r+nn)*sin(theta));
xoff += 0.1;
}