MyCircle c1; float circleX = 250; float circleY = 250; // Position of circle int circleSize = 50; // Diameter of circle void setup() { ellipseMode(CENTER); size(500, 500); fill(255,150); noStroke(); c1 = new MyCircle(circleX, circleY, circleSize); smooth(); } void draw() { fill(255,150); background(0); c1.display(); c1.move(mouseX, mouseY, 40); } class MyCircle { float xpos; // xposition float ypos ; // yposition int d; MyCircle(float ixp, float iyp, int id) { xpos = ixp; ypos = iyp; d = id; } void move (float posX, float posY, float damping) { float dif = ypos - posY; if (abs(dif) > 1) { ypos -= dif/damping; } dif = xpos - posX; if (abs(dif) > 1) { xpos -= dif/damping; } } void display() { ellipse(xpos, ypos, d, d); } }