Project 4: String Art

wpf-string-art
//Patrick Fisher Section B

var dx1;
var dy1;
var dx2;
var dy2;
var numLines = 50;

function setup() {
    createCanvas(400, 300);
    background(50);
    fill(10);
    rectMode(CENTER);
    rect(200,150,250,250)
    dx1 = (275-25)/numLines;
    dy1 = (275-25)/numLines;
    dx2 = (25-275)/numLines;
    dy2 = (25-275)/numLines;
}

function draw() {
    var x1 = 75;
    var y1 = 25;
    var x2 = 275;
    var y2 = 275;
    stroke(255,0,0,200);
    for (var i = 0; i <= numLines; i += 1) { //crates x design that goes from upper left to bottom right
        line(x1, y1, x2, y2);
        x1 += dx1;
        y1 += dy1;
        x2 += dx2;
        y2 += dy2;

    }

    x1 = 375;
    y1 = 25;
    x2 = 75;
    y2 = 275;
    for ( i = 0; i <= numLines; i += 1) { //creates x design that goes from lower left to upper right
        line(x1, y1, x2, y2);
        x1 += -dx1;
        y1 += dy1;
        x2 += -dx2;
        y2 += dy2;
    }

    dx1 = (325-25)/numLines;
    dy1 = (75-25)/numLines;
    dx2 = (25-275)/numLines;
    dy2 = (25-0)/numLines;

    x1 = 75;
    y1 = 25;
    x2 = 325;
    y2 = 75;
    stroke(0,0,255,200);
    for ( i = 0; i <= numLines; i += 1) { //creates the blue pattern at the top
        line(x1, y1, x2, y2);
        x1 += dx1;
        y1 += dy1;
        x2 += dx2;
        y2 += dy2;

    
    }



    x1 = 325;
    y1 = 75;
    x2 = 75;
    y2 = 25;
    for ( i = 0; i <= numLines; i += 1) { //creates the second half of the top blue pattern
        line(x1, y1, x2, y2);
        x1 += -dx1;
        y1 += -dy1;
        x2 += -dx2;
        y2 += -dy2;

    
    }

    x1 = 325;
    y1 = 175;
    x2 = 75;
    y2 = 250;
    stroke(0,0,255,200);
    for ( i = 0; i <= numLines; i += 1) { //creates the botom blue pattern
        line(x1, y1, x2, y2);
        x1 += -dx1;
        y1 += dy1;
        x2 += -dx2;
        y2 += dy2;   
    }

    x1 = 75;
    y1 = 250;
    x2 = 325;
    y2 = 175;
    stroke(0,0,255,200);
    for ( i = 0; i <= numLines; i += 1) { //creates the top half of the bottom blue pattern
        line(x1, y1, x2, y2);
        x1 += dx1;
        y1 += -dy1;
        x2 += dx2;
        y2 += -dy2;

    }
    noLoop();
}

I really struggled with this project, both creatively and technically. I had to take the sample code and finger with it mostly randomly to create anything that I was remotely satisfied with it.

Leave a Reply