final int SIN = 0; final int COS = 1; Wave s; Wave m; void setup() { size(580,110); colorMode(RGB,255,255,255,100); s = new Wave(SIN,50,8,width,350); m = new Wave(SIN,50,8,width,350); } void draw() { fill(0,1); noStroke(); background(255, 204, 0); int esize = 8; int dotspace = 52; int thehour = hour(); if (hour() > 12) { thehour = hour()-12; } for (int i = 1; i<13; i++){ ellipseMode(CORNER); fill(255); if (i == thehour){ ellipse(dotspace-5, height/2 - 5, 16, 16); }else{ esize=8; } ellipse(dotspace, height/2, esize, esize); dotspace += 43; } dotspace = 52; s.calcWave(); m.calcMinWave(); translate(0,height/2); /*hmmm, this should be taken care of in the wave class itself think about better ways to deal with the relative positioning of a wave?*/ s.render(); m.renderMin(); }