void MoveRandomly(float &outAngle, float &outDistance ) { Draw(sBackgroundColor); const long kWiggle = 20L; float deltax = GetRandomLong(kWiggle) - 0.5*kWiggle; float deltay = GetRandomLong(kWiggle) - 0.5*kWiggle; deltax += lastx-centerx; deltay += lasty-centery; deltax *= 0.99; deltay *= 0.99; lastx = deltax+centerx; lasty = deltay+centery; CartesianToAngle(lastx, lasty, lastAngle ); Draw(mColor); outDistance = Distance(centerx,centery); outAngle = lastAngle; }
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // GetRandomLong // //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ UInt32 GetRandomLong(UInt32 inLowerLimit, UInt32 inUpperLimit ) { UInt32 value = GetRandomLong(inUpperLimit - inLowerLimit ); return value + inLowerLimit; }