vector initialPos; float t = 0; // parameter, tracing out circle in radians float r0 = 0.5; // minor radius, in meters float r1 = 2; // major radius, in meters float inc = 0.1; // increment in radians default { touch_start(integer n) { initialPos = llGetPos(); llSetTimerEvent(0.01); } timer() // revolve in circular orbit { llSetPos( + initialPos); t = t+inc; } }