{"id":66407,"date":"2021-09-25T18:38:12","date_gmt":"2021-09-25T22:38:12","guid":{"rendered":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/?p=66407"},"modified":"2021-09-25T18:38:12","modified_gmt":"2021-09-25T22:38:12","slug":"project-4-string-art-2","status":"publish","type":"post","link":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/2021\/09\/25\/project-4-string-art-2\/","title":{"rendered":"Project 4: String Art"},"content":{"rendered":"<!DOCTYPE html PUBLIC \"-\/\/W3C\/\/DTD HTML 4.0 Transitional\/\/EN\" \"http:\/\/www.w3.org\/TR\/REC-html40\/loose.dtd\">\n<html><body><div class=\"wp-block-file\"><a class=\"p5_sketch_link\" data-width=\"400\" data-height=\"300\" href=\"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-content\/uploads\/2021\/09\/sketch-170.js\">string art<\/a><iframe src=\"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-content\/plugins\/p5-embedder\/p5_iframe.html\" class=\"p5_exampleFrame\" width=\"400\" height=\"300\"><\/iframe><pre class=\"language-javascript\"><code class=\"p5_editor language-javascript\">var dx1;\nvar dy1;\nvar dx2;\nvar dy2;\nvar dx3;\nvar dy3;\nvar dx4;\nvar dy4;\nvar dx5;\nvar dy5; \nvar dx6;\nvar dy6;\nvar dx7;\nvar dy7;\nvar dx8;\nvar dy8;\nvar dx9;\nvar dy9;\nvar dx10;\nvar dy10;\nvar lines = 120; \/\/for the left & right strings \nvar lines2 = 100; \/\/for the top-&gt; bottom & left -> right strings\nvar lines3 = 20; \/\/for center strings\n\nfunction setup() {\n    createCanvas(400, 300);\n    background(220);\n   \n    \/\/left blue+green strings\n    line(0, 0, 0, 300); \/\/initial line\n    line(0, 300, 400, 0); \/\/ending line\n    dx1 = (0-0)\/lines;\n    dy1 = (300-0)\/lines;\n    dx2 = (400-0)\/lines;\n    dy2 = (0-300)\/lines;\n\n    \/\/right blue+red strings\n    line(0, 300, 400, 0); \/\/initial line\n    line(400, 0, 400, 300); \/\/ending line\n    dx3 = 400\/lines;\n    dy3 = -300\/lines;\n    dx4 = 0\/lines;\n    dy4 = 300\/lines;\n\n    \/\/top -&gt; bottom strings \n    line(0, 0, 400, 0); \/\/initial line\n    line(0, 300, 400, 300); \/\/ending line\n    dx5 = 400\/lines2;\n    dy5 = 0\/lines2;\n    dx6 = 400\/lines2;\n    dy6 = 0\/lines2;\n\n    \/\/left -&gt; right strings \n    line(0, 0, 0, 300); \/\/initial line\n    line(400, 0, 400, 300); \/\/ending line\n    dx7 = 0\/lines2;\n    dy7 = 300\/lines2;\n    dx8 = 0\/lines2;\n    dy8 = 300\/lines2;\n\n    \/\/center piece\n    dx9 = 100\/lines3;\n    dy9 = 150\/lines3;\n    dx10 = 100\/lines3;\n    dy10 = 150\/lines3;\n    \n}\n\nfunction draw() {\n\n    \/\/left -&gt; right strings initial points\n    var x7 = 0;\n    var y7 = 0;\n    var x8 = 400;\n    var y8 = 300;\n\n    \/\/draw left -&gt; right strings \n    for (var i = 0; i &lt;= lines2; i += 1) {\n        stroke(255, 95, 90); \/\/red\n        line(x7, y7, x8, y8);\n        x7 += dx7;\n        y7 += dy7;\n        x8 -= dx8;\n        y8 -= dy8;\n    }\n\n\n    \/\/top -&gt; bottom strings initial points\n    var x5 = 0;\n    var y5 = 0;\n    var x6 = 400;\n    var y6 = 300;\n\n    \/\/draw top -&gt; bottom strings \n    for (var i = 0; i &lt;= lines2; i += 1) {\n        stroke(255, 105, 0); \/\/orange\n        line(x5, y5, x6, y6);\n        x5 += dx5;\n        y5 += dy5;\n        x6 -= dx6;\n        y6 -= dy6;\n    }\n\n    \/\/left blue+green strings initial points\n    var x1 = 0; \n    var y1 = 0;\n    var x2 = 0;\n    var y2 = 300;\n\n    \/\/draw blue+green strings\n    for (var i = 0; i &lt;= lines; i+= 1) { \n        stroke(0, random(50, 160), random(100, 200)); \/\/pick random color from green & blue\n        line(x1, y1, x2, y2);\n        x1 += dx1;\n        y1 += dy1;\n        x2 += dx2;\n        y2 += dy2;\n    }\n\n    \/\/right blue+red strings initial points\n    var x3 = 0;\n    var y3 = 300;\n    var x4 = 400;\n    var y4 = 0;\n\n    \/\/draw blue+red strings\n    for (var i = 0; i &lt;= lines; i+= 1) { \n        stroke(random(80, 150), 0, random(100, 200)); \/\/pick random color from red & blue\n        line(x3, y3, x4, y4);\n        x3 += dx3;\n        y3 += dy3;\n        x4 += dx4;\n        y4 += dy4;\n    }\n\n    \/\/center piece initial points\n    var x9 = 100;\n    var y9 = 150;\n    var x10 = 300;\n    var y10 = 150;\n\n    \/\/draw center piece\n    for (var i = 0; i &lt;= lines3; i += 1) {\n        stroke(225, 210, 225); \/\/white\n        line(x9, y9, x10, y10);\n        x9 += dx9;\n        y9 += dy9;\n        x10 -= dx10;\n        y10 -= dy10;\n\n    }\n\n    noLoop();\n}\n<\/code><\/pre><\/div>\n\n\n<p>I found it a bit challenging to visualize the way the strings would work in my head, and so the drafting part was quite difficult. However, I really liked how the strings overlapping created dimension in the piece. <\/p><\/body><\/html>\n","protected":false},"excerpt":{"rendered":"<p>string art var dx1; var dy1; var dx2; var dy2; var dx3; var dy3; var dx4; var dy4; var dx5; var dy5; var dx6; var dy6; var dx7; var dy7; var dx8; var dy8; var dx9; var dy9; var dx10; var dy10; var lines = 120; \/\/for the left &#038; right strings var lines2 = &hellip; <a href=\"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/2021\/09\/25\/project-4-string-art-2\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Project 4: String Art&#8221;<\/span><\/a><\/p>\n","protected":false},"author":671,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[102,56],"tags":[],"_links":{"self":[{"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/posts\/66407"}],"collection":[{"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/users\/671"}],"replies":[{"embeddable":true,"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/comments?post=66407"}],"version-history":[{"count":2,"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/posts\/66407\/revisions"}],"predecessor-version":[{"id":66410,"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/posts\/66407\/revisions\/66410"}],"wp:attachment":[{"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/media?parent=66407"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/categories?post=66407"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/courses.ideate.cmu.edu\/15-104\/f2021\/wp-json\/wp\/v2\/tags?post=66407"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}