Mover mover; void setup() { size(200,200); smooth(); background(255); mover = new Mover(); } void draw() { noStroke(); fill(255,10); rect(0,0,width,height); mover.update(); mover.checkEdges(); mover.display(); } class Mover { PVector location; PVector velocity; Mover() { location = new PVector(width/2, height/2); velocity = new PVector(0, 0); } void update() { velocity = new PVector(random(-2,3),random(-2,3)); location.add(velocity); } void display() { stroke(0); fill(175); ellipse(location.x,location.y,16,16); } void checkEdges() { if (location.x > width) { location.x = 0; } else if (location.x < 0) { location.x = width; } if (location.y > height) { location.y = 0; } else if (location.y < 0) { location.y = height; } } }