float prevMouseX = 0;
float prevMouseY = 0;
float x = 0;
float y = 100;
float speed = 1;
PImage fish;
int l;
void setup() {
size (1000, 800);
background (#85DCBA);
fish = loadImage(“fished-clipart-clipar-4.png”);
}
void display() {
fish = loadImage(“fished-clipart-clipar-4.png”);
fish.resize(300, 200);
image(fish,x,y);
}
void draw(){
move();
display();
for (int l = 0; l < 800; l = l + 70) { //horizontal lines
line(1000, l, 0, l);
}
}
void mousePressed(){
prevMouseX = mouseX; //prevMouse makes circles follow mouse
prevMouseY = mouseY;
}
void move() {
x = x + speed;
if (x > width) {
x = 0;
}
}
void mouseDragged(){ //fish eye part starts here
float distanceX;
float distanceY;
distanceX = abs(mouseX – prevMouseX);
distanceY = abs(mouseY – prevMouseY);
float avDistance;
avDistance = (distanceX + distanceY)/2;
float colorChange = map (avDistance, 0, 200, 70, 300);
avDistance = map (avDistance, 0, 200, 2, 50);
stroke (0, colorChange);
strokeWeight (avDistance); //if you “//” this line, it turns has a Murakami-esque look
ellipse (mouseX, mouseY, avDistance, avDistance);
prevMouseX = mouseX; //”updates” variables, also makes the brush smooth
prevMouseY = mouseY;
}