tMin = .25; //minimum segment duration tMax = .5; //maximum segment duration minVal = [-50,-50]; maxVal = [50,50]; start=0; end = 0; j = 0; while (time >= end){ j ++; seedRandom(j,true); start = end; end += random(tMin,tMax); } endVal = random(minVal,maxVal); seedRandom(j-1,true); dummy = random(); //this is a throw-away value startVal = random(minVal,maxVal); wig = ease(time,start,end,startVal,endVal); wig+value;