//Ty Van de Zande
//Section B
//ctv@andrew.cmu.edu
//Project-04
var mx;
function setup() {
createCanvas(400, 300);
background(23, 95, 171);
}
function draw() {
//redraws background every frame
background(23, 95, 171);
//creates a list that places the lines on the x-axis
for(i = 0; i < 500; i+=5 ) {
p1 = {x: i, y: 0};
stroke(255);
strokeWeight(2);
curve(p1.x, p1.y, p1.x, p1.y, p1.x, height, p1.x, height);
}
//creates lines that are pretty much the same as above, but rotated
push();
rotate(radians(2));
for(i = 0; i < 500; i+=5 ) {
p1 = {x: i, y: 0};
stroke(255, 95, 171);
strokeWeight(.25);
curve(p1.x, p1.y, p1.x, p1.y, p1.x, height, p1.x, height);
}
pop();
//draws lines in an upside down triangle, maps mouseY to bottom position
for(i = 0; i < 20; i++ ) {
noFill();
p1 = {x: i*20, y: 10};
stroke(255);
strokeWeight(1);
curve(p1.x, p1.y, p1.x, p1.y, mouseY, height, width/2, height);
}
//rotates a bunch of lines based on mouseX position
for(i = 0; i < 50; i++ ) {
p1 = {x: i*15, y: -1110};
push();
translate(0, 0);
rotate(radians(mouseX/10));
stroke(255);
strokeWeight(1);
curve(p1.x, p1.y, p1.x, p1.y, p1.x, height, p1.x, height);
pop();
}
}
For this project, I was inspired by moiré patterns created with lines. The interference of lines that overlap create bizarre, superimposed patterns. This sense of confusion continues through the person’s mouse interactions with the piece. the mouse x, y axis is mapped to unintuitive movements of specific points. this was done to pair with the neat moirés.