float radius = 500;

float radius2= 500;

float step_rad = 0.1;

int centX = 250;

int centY = 250;

void setup(){

size(500,500,P3D);

frameRate(30);

background(0);

strokeWeight(2);

smooth();

}

 void draw(){

 translate(width/3,height/3);

 rotateX(centY);

 rotateY(radius);

 stroke(255,10);

 noFill();

 ellipse(centX, centY, radius2*2.7, radius2*2.1);

 radius2 = radius2 - step_rad;

stroke(255,10);

float x,y;

float lastx = -999;

float lasty = -999;

for(float ang = 0; ang <= 1440; ang+=5){

  radius-=0.5;

  float rad = radians(ang);

  x = centX + (radius2 * cos(rad));

  y = centY + (radius2 * sin(rad));

  point(x,y);

}

}