class Chime extends Audio{ float volume, frequency, decay; int tempo; //----------- Chime(float f, float d, int t){ super(); volume = 1; frequency = f; decay = d; tempo = t; control = new GUIControl[4]; control[0] = new GUIControl("volume",0,0,1,volume); control[1] = new GUIControl("frequency",1,0.005,0.1,frequency); control[2] = new GUIControl("decay",2,0.00001,0.0001,decay); control[3] = new GUIControl("tempo",3,10000,200000,tempo); } //----------- float get(int i){ return volume*exp(-decay*(i%tempo))*cos( i*frequency ); } //----------- void mouseInput(float mx,float my){ super.mouseInput(mx,my); volume = control[0].getValue(); frequency = control[1].getValue(); decay = control[2].getValue(); tempo = (int)control[3].getValue(); } //----------- void drawChild(){ strokeWeight(3); stroke(128); fill(128,128); ellipse(0,0,2*radius,2*radius); timer++; strokeWeight(1); noFill(); beginShape(); for(int i=-radius ; i