Sol Lewitt Wall Drawing #11 (1969)
18 | A wall divided horizontally and vertically into four equal parts.
19 | Within each part, three of the four kinds of lines are superimposed.
20 |
21 | Click + Drag in the x direction changes grid width, in the y
22 | direction changes diagonal width. Press 'r' to reset
24 |
25 |
114 |
115 |
116 |
--------------------------------------------------------------------------------
/011/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #11 (1969)
2 |
3 | A wall divided horizontally and vertically into four equal parts. Within each part, three of the four kinds of lines are superimposed.
4 |
--------------------------------------------------------------------------------
/011/llimllib/index.html:
--------------------------------------------------------------------------------
1 |
6 |
7 | Sol LeWitt Wall Drawing #11
8 |
139 |
144 |
145 |
146 | ?
147 |
Sol Lewitt Wall Drawing #11 (1969)
148 |
149 | A wall divided horizontally and vertically into four equal parts.
150 | Within each part, three of the four kinds of lines are superimposed.
151 |
152 | Click + Drag in the x direction changes grid width, in the y
153 | direction changes diagonal width. Press 'r' to reset
Sol Lewitt Wall Drawing #16 (1969)
137 |
138 | Bands of lines 12 inches (30 cm) wide, in three directions
139 | (vertical, horizontal, diagonal right) intersecting.
140 |
141 | Try clicking and click-and-drag. The X and Y axes have
142 | different meanings when dragging.
143 |
144 |
--------------------------------------------------------------------------------
/016/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y_a_v_a ❤︎ Sol LeWitt • #16
4 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/017/Dusch4593/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y_a_v_a ❤︎ Sol LeWitt • #017
4 |
5 |
6 |
18 |
50 |
--------------------------------------------------------------------------------
/017/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #17 (1969)
2 |
3 | Four-part drawing with a different line direction in each part.
--------------------------------------------------------------------------------
/017/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y_a_v_a ❤︎ Sol LeWitt • #017
4 |
5 |
17 |
18 |
113 |
--------------------------------------------------------------------------------
/033/instructions.md:
--------------------------------------------------------------------------------
1 | # Wall Drawing #33 (1970)
2 |
3 | A one-inch (2.5cm) grid covering a square.
4 | Within each of the one-inch (2.5cm) squares:
5 | 1: Vertical black lines;
6 | 2: Horizontal yellow lines;
7 | 3: Diagonal right red lines;
8 | or 4: Diagonal left blue lines.
9 | As many lines as desired, but at least one line in each square.
--------------------------------------------------------------------------------
/045/OgAstorga/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
22 |
23 |
24 |
25 |
26 |
27 |
72 |
73 |
--------------------------------------------------------------------------------
/045/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #45 (1970)
2 |
3 | Straight lines 10" (25 cm) long, not touching, covering the wall evenly.
4 |
--------------------------------------------------------------------------------
/046/ashkan-sarlak/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/046/ashkan-sarlak/sketch.js:
--------------------------------------------------------------------------------
1 | function setup() {
2 | createCanvas(windowWidth, windowHeight);
3 | noLoop();
4 | strokeWeight(1.5);
5 | colorMode(HSB, 360, 100, 100);
6 | }
7 |
8 | function draw() {
9 | background(155, 90, 50);
10 | noFill();
11 | var h = map(mouseX, 0, width, 0, 360);
12 | stroke(35, 100, 100);
13 | for (var x=0; x
2 |
3 |
4 |
5 |
6 |
15 |
16 |
17 |
45 |
46 |
--------------------------------------------------------------------------------
/046/llimllib/index.html:
--------------------------------------------------------------------------------
1 |
6 |
7 | Sol LeWitt Wall Drawing #46
8 |
155 |
160 |
161 |
162 | ?
163 |
Sol LeWitt Wall Drawing #46 (1970)
164 |
165 | Vertical lines, not straight, not touching, covering the wall evenly.
166 |
167 | Clicking and dragging in the X changes the line spacing
168 | Clicking and dragging in the Y changes the stroke alpha
169 | Pres "r" to reset
170 |
171 |
172 |
--------------------------------------------------------------------------------
/046/ustina/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Solving Sol
6 |
7 |
8 |
9 |
20 |
21 |
22 |
23 |
54 |
55 |
56 |
57 |
58 |
59 |
--------------------------------------------------------------------------------
/049/diagram.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wholepixel/solving-sol/112ed0c82f0d830d91cc751b073c62c8d1161dcb/049/diagram.jpg
--------------------------------------------------------------------------------
/049/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #49 (1970)
2 |
3 | A wall divided equally into fifteen equal parts, each with a different line direction and color, and all combinations.
4 |
5 | Red, Yellow, Blue, Black pencil
6 |
7 | 
8 |
--------------------------------------------------------------------------------
/050A/instructions.md:
--------------------------------------------------------------------------------
1 | # Wall Drawing #50A (1970)
2 |
3 | A wall divided into four parts by lines drawn corner to corner. Each section with three different colors made of parallel lines superimposed. Color pencil.
--------------------------------------------------------------------------------
/051/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #51 (1970)
2 |
3 | All architectural points connected by straight lines.
4 |
5 | Blue snap lines
6 |
--------------------------------------------------------------------------------
/056/Soreine/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/056/Soreine/index.js:
--------------------------------------------------------------------------------
1 | /*
2 | Solving Sol #56 (1970)
3 |
4 | A square is divided horizontally and vertically into four equal parts, each with lines in four directions superimposed progressively.
5 | */
6 |
7 | function onResize(event) {
8 | draw();
9 | }
10 |
11 | // https://coolors.co/fffbe4-264653-2a9d8f-f4a261-ff5e5b
12 | var COLORS = "fffbe4-264653-2a9d8f-f4a261-ff5e5b".split("-").map(function(c) {
13 | return "#" + c;
14 | });
15 |
16 | var canvasBg = COLORS[0];
17 | var squareBg = canvasBg;
18 |
19 | function direction(angle) {
20 | return new Point(Math.cos(angle), Math.sin(angle));
21 | }
22 |
23 | function draw() {
24 | project.clear();
25 |
26 | // background
27 | new Path.Rectangle(view.bounds).fillColor = canvasBg;
28 |
29 | // Use golden ratio because art.
30 | var phi = (1 + Math.sqrt(5)) / 2;
31 | // Size of a small square
32 | var height = Math.min(view.size.width, view.size.height) / phi / 2;
33 |
34 | // Direction of lines for each square
35 | var directionSW = direction(Math.PI / 12);
36 | var directionNW = direction((2 * Math.PI) / 12);
37 | var directionNE = direction((3 * Math.PI) / 12);
38 | var directionSE = direction((4 * Math.PI) / 12);
39 |
40 | // Anchor of each square
41 | var topLeft = view.center - height;
42 | var pointSW = topLeft + new Point(0, height);
43 | var pointNW = topLeft + new Point(0, 0);
44 | var pointNE = topLeft + new Point(height, 0);
45 | var pointSE = topLeft + new Point(height, height);
46 |
47 | // Entire square
48 | var wholeSquare = new Path.Rectangle(new Rectangle(topLeft, height * 2));
49 | wholeSquare.fillColor = squareBg;
50 |
51 | // South West square
52 | fillSquareWithLines(pointSW, height, directionSW, COLORS[1]);
53 |
54 | // North West square
55 | fillSquareWithLines(pointNW, height, directionSW, COLORS[1]);
56 | fillSquareWithLines(pointNW, height, directionNW, COLORS[2]);
57 |
58 | // North East square
59 | fillSquareWithLines(pointNE, height, directionSW, COLORS[1]);
60 | fillSquareWithLines(pointNE, height, directionNW, COLORS[2]);
61 | fillSquareWithLines(pointNE, height, directionNE, COLORS[3]);
62 |
63 | // South East square
64 | fillSquareWithLines(pointSE, height, directionSW, COLORS[1]);
65 | fillSquareWithLines(pointSE, height, directionNW, COLORS[2]);
66 | fillSquareWithLines(pointSE, height, directionNE, COLORS[3]);
67 | fillSquareWithLines(pointSE, height, directionSE, COLORS[4]);
68 | }
69 |
70 | /**
71 | * Draw a line of given width (a strip) so that it can be used
72 | * in boolean operations with to other shapes.
73 | */
74 | function strip(start, end, width) {
75 | var direction = end - start;
76 | var orthogonal = new Point(direction.y, -direction.x).normalize();
77 | var stripPath = new Path();
78 | stripPath.add(start + (orthogonal * width) / 2);
79 | stripPath.add(end + (orthogonal * width) / 2);
80 | stripPath.add(end - (orthogonal * width) / 2);
81 | stripPath.add(start - (orthogonal * width) / 2);
82 | stripPath.closed = true;
83 |
84 | return stripPath;
85 | }
86 |
87 | /**
88 | * Draw a square and fill it with lines in given direction and given color.
89 | */
90 | function fillSquareWithLines(
91 | corner, // Point
92 | height, // Number
93 | direction, // Vector (Point),
94 | color
95 | ) {
96 | // The ratio between line width and line spacing
97 | var RATIO = 1 / 3;
98 | var LINE_COUNT = 12;
99 | // Width of lines
100 | var strokeWidth = (RATIO * height) / LINE_COUNT;
101 | // Spacing between lines
102 | var spacing = ((1 - RATIO) * height) / LINE_COUNT;
103 |
104 | var square = new Rectangle(corner, new Size(height, height));
105 |
106 | // Use length of diagonal as upper bound when filling the square with lines.
107 | var diagonalLength = Math.sqrt(2) * height * 2;
108 | // Orthogonal to the line direction
109 | var orthogonal = new Point(direction.y, -direction.x).normalize();
110 | // Center of the square
111 | var center = corner + height / 2;
112 |
113 | var squarePath = new Path.Rectangle(square);
114 |
115 | // Draw one strip at given offset orthogonally to the direction of lines
116 | function drawStrip(offset) {
117 | var lineCenter = center + orthogonal * offset;
118 | var lineStart = lineCenter - direction.normalize(diagonalLength / 2);
119 | var lineEnd = lineCenter + direction.normalize(diagonalLength / 2);
120 |
121 | var stripPath = strip(lineStart, lineEnd, strokeWidth);
122 | var segmentPath = stripPath.intersect(squarePath);
123 | segmentPath.fillColor = color;
124 | }
125 |
126 | var i = 0;
127 | do {
128 | var offset = i * (spacing + strokeWidth);
129 | drawStrip(offset);
130 | drawStrip(-offset);
131 | i++;
132 | } while (offset <= diagonalLength / 2);
133 |
134 | // Draw the square contour
135 | var contour = new Path.Rectangle(square);
136 | contour.strokeWidth = strokeWidth;
137 | contour.strokeColor = COLORS[1];
138 | }
139 |
--------------------------------------------------------------------------------
/056/cagrimmett/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Sol LeWitt Wall Drawing 56
4 |
5 |
6 |
7 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
116 |
117 |
--------------------------------------------------------------------------------
/056/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #56 (1970)
2 |
3 | A square is divided horizontally and vertically into four equal parts, each with lines in four directions superimposed progressively.
--------------------------------------------------------------------------------
/056/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y_a_v_a ❤︎ Sol LeWitt • #056
4 |
5 |
19 |
20 |
101 |
--------------------------------------------------------------------------------
/065/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #65 (1971)
2 |
3 | Lines not short, not straight, crossing and touching, drawn at random, using four colors, uniformly dispersed with maximum density, covering the entire surface of the wall.
--------------------------------------------------------------------------------
/065/lwiiii/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Sol Lewitt. Wall Drawing #65. by Max Kolyanov
4 |
5 |
13 |
14 |
15 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/085/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #85 (1971)
2 |
3 | A wall is divided into four horizontal parts. In the top row are four equal divisions, each with lines in a different direction. In the second row, six double combinations; in the third row, four triple combinations; in the bottom row, all four combinations superimposed.
--------------------------------------------------------------------------------
/085/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y_a_v_a ❤︎ Sol LeWitt • #85
4 |
33 |
34 |
85 |
86 |
25 |
26 |
160 |
161 |
--------------------------------------------------------------------------------
/087/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #87 (1971)
2 |
3 | A square divided horizontally and vertically into four equal parts, each with lines and colors in four directions superimposed progressively.
--------------------------------------------------------------------------------
/087/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y_a_v_a ❤︎ Sol LeWitt • #087
4 |
5 |
18 |
19 |
111 |
--------------------------------------------------------------------------------
/088/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #88 (1971)
2 |
3 | A 6-inch (15 cm) grid covering the wall. Within each square, not straight lines in either of four directions. Only one direction in each square but as many as desired, and at least one line in each square.
--------------------------------------------------------------------------------
/088/sgallese/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
13 |
14 | Solving Sol
15 |
16 |
17 |
18 |
29 |
30 |
31 |
32 |
144 |
145 |
146 |
147 |
148 |
--------------------------------------------------------------------------------
/091/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #91 (1971)
2 |
3 | A six-inch (15 cm) grid covering the wall. Within each square, not straight lines from side to side, using red, yellow and blue pencils. Each square contains at least one line of each color.
--------------------------------------------------------------------------------
/097/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #97 (1971)
2 |
3 | Within an 80 inch (200cm) square, 10,000 straight lines. Next to it is an 80 inch (200 cm) square with 10,000 not straight lines.
--------------------------------------------------------------------------------
/097/nitriques/097-canvas.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 097 - nitriques - canvas
6 |
7 |
8 |
46 |
47 |
48 |
52 |
53 |
54 |
55 |
229 |
230 |
--------------------------------------------------------------------------------
/097/y-a-v-a/PerlinNoise.js:
--------------------------------------------------------------------------------
1 | // as taken from https://github.com/processing-js/processing-js/blob/master/src/P5Functions/Math.js
2 | function PerlinNoise(seed) {
3 | var rnd = seed !== undefined ? new Marsaglia(seed) : Marsaglia.createRandomized();
4 | var i, j;
5 | var perm = new Uint8Array(512);
6 | for (i = 0; i < 256; ++i) perm[i] = i;
7 | for (i = 0; i < 256; ++i) {
8 | var t = perm[j = rnd.nextInt() & 255];
9 | perm[j] = perm[i];
10 | perm[i] = t
11 | }
12 | for (i = 0; i < 256; ++i) perm[i + 256] = perm[i];
13 |
14 | function grad3d(i, x, y, z) {
15 | var h = i & 15;
16 | var u = h < 8 ? x : y,
17 | v = h < 4 ? y : h === 12 || h === 14 ? x : z;
18 | return ((h & 1) === 0 ? u : -u) + ((h & 2) === 0 ? v : -v)
19 | }
20 | function grad2d(i, x, y) {
21 | var v = (i & 1) === 0 ? x : y;
22 | return (i & 2) === 0 ? -v : v
23 | }
24 | function grad1d(i, x) {
25 | return (i & 1) === 0 ? -x : x
26 | }
27 | function lerp(t, a, b) {
28 | return a + t * (b - a)
29 | }
30 | this.noise3d = function(x, y, z) {
31 | var X = Math.floor(x) & 255,
32 | Y = Math.floor(y) & 255,
33 | Z = Math.floor(z) & 255;
34 | x -= Math.floor(x);
35 | y -= Math.floor(y);
36 | z -= Math.floor(z);
37 | var fx = (3 - 2 * x) * x * x,
38 | fy = (3 - 2 * y) * y * y,
39 | fz = (3 - 2 * z) * z * z;
40 | var p0 = perm[X] + Y,
41 | p00 = perm[p0] + Z,
42 | p01 = perm[p0 + 1] + Z,
43 | p1 = perm[X + 1] + Y,
44 | p10 = perm[p1] + Z,
45 | p11 = perm[p1 + 1] + Z;
46 | return lerp(fz, lerp(fy, lerp(fx, grad3d(perm[p00], x, y, z), grad3d(perm[p10], x - 1, y, z)), lerp(fx, grad3d(perm[p01], x, y - 1, z), grad3d(perm[p11], x - 1, y - 1, z))), lerp(fy, lerp(fx, grad3d(perm[p00 + 1], x, y, z - 1), grad3d(perm[p10 + 1], x - 1, y, z - 1)), lerp(fx, grad3d(perm[p01 + 1], x, y - 1, z - 1), grad3d(perm[p11 + 1], x - 1, y - 1, z - 1))))
47 | };
48 | this.noise2d = function(x, y) {
49 | const X = Math.floor(x) & 255;
50 | const Y = Math.floor(y) & 255;
51 | x -= Math.floor(x);
52 | y -= Math.floor(y);
53 | const fx = (3 - 2 * x) * x * x;
54 | const fy = (3 - 2 * y) * y * y;
55 | const p0 = perm[X] + Y;
56 | const p1 = perm[X + 1] + Y;
57 |
58 | return lerp(fy, lerp(fx, grad2d(perm[p0], x, y), grad2d(perm[p1], x - 1, y)), lerp(fx, grad2d(perm[p0 + 1], x, y - 1), grad2d(perm[p1 + 1], x - 1, y - 1)))
59 | };
60 | this.noise1d = function(x) {
61 | let X = Math.floor(x) & 255;
62 | x -= Math.floor(x);
63 | const fx = (3 - 2 * x) * x * x;
64 | return lerp(fx, grad1d(perm[X], x), grad1d(perm[X + 1], x - 1))
65 | }
66 | }
67 |
68 | function Marsaglia(i1, i2) {
69 | var z = i1 || 362436069,
70 | w = i2 || 521288629;
71 | var nextInt = function() {
72 | z = 36969 * (z & 65535) + (z >>> 16) & 4294967295;
73 | w = 18E3 * (w & 65535) + (w >>> 16) & 4294967295;
74 | return ((z & 65535) << 16 | w & 65535) & 4294967295
75 | };
76 | this.nextDouble = function() {
77 | var i = nextInt() / 4294967296;
78 | return i < 0 ? 1 + i : i
79 | };
80 | this.nextInt = nextInt
81 | }
82 | Marsaglia.createRandomized = function() {
83 | var now = Date.now();
84 | return new Marsaglia(now / 6E4 & 4294967295, now & 4294967295)
85 | };
86 |
--------------------------------------------------------------------------------
/097/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y_a_v_a ❤︎ Sol LeWitt • #097
4 |
5 |
17 |
18 |
19 |
20 |
21 |
119 |
--------------------------------------------------------------------------------
/1136/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #1136 (2004)
2 |
3 | The actual letter of instruction is unavailable, but the Tate provides this
4 | information:
5 |
6 | The work is composed of both curved and straight solid bands of colour that are
7 | painted directly onto the surface of a wall using every primary (red, yellow,
8 | blue) and secondary (green, orange, purple) colour plus grey. The curve, made up
9 | of nine interlocking bands in these seven colours (there are two bands each of
10 | red and green), snakes along the wall, touching the top and bottom of the wall
11 | at various points. The same seven colours reappear, in an irregular sequence,
12 | as vertical bands that serve as a background pattern for the curve. Every band
13 | in the wall drawing is of the same width and there is no area left empty of
14 | colour.
15 |
16 | Vertical lines of equal width cover the wall, in this order:
17 |
18 | GYBOP ERBYG ERPGY BOERB GYPOB GRPEY BGOPY BERPO GBYPR EOGYB OERPB YOPGE BRYBE OPRGB EYRGP OBRGO YEBRG OPYBE RGORB EYBOP GRBPE YBRPE OGBYE PORGE BPYRG OPEYG POREB YPGBR OGYBR
19 |
20 | On top of the vertical lines is a curve, with colors top to bottom: POGREBGR
21 |
22 | G Green Y Yellow B Blue O Orange P Purple E Grey R Red
23 |
--------------------------------------------------------------------------------
/118/amiccolis/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Solving Sol #118
5 |
6 |
16 |
17 |
18 |
19 |
20 |
88 |
89 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/118/eesur/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/118/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #118 (1971)
2 | On a wall surface, any continuous stretch of wall, using a hard pencil, place fifty points at random. The points should be evenly distributed over the area of the wall. All of the points should be connected by straight lines.
--------------------------------------------------------------------------------
/118/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y_a_v_a ❤︎ Sol LeWitt • #118
4 |
5 |
17 |
18 |
92 |
--------------------------------------------------------------------------------
/1180/OgAstorga/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
21 |
22 |
23 |
24 |
25 |
26 |
118 |
119 |
--------------------------------------------------------------------------------
/1180/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #1180 (2005)
2 |
3 | Within a circle, draw 10,000 black straight lines and 10,000 black not straight lines. All lines are randomly spaced and equally distributed.
4 |
--------------------------------------------------------------------------------
/122/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #122 (1972)
2 |
3 | All combinations of two lines crossing, placed at random, using arcs from corners and sides, straight, not straight and broken lines.
--------------------------------------------------------------------------------
/122/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | y_a_v_a ❤︎ Sol LeWitt • #122
5 |
6 |
7 |
12 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/130/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #130 (1972)
2 |
3 | Grid and arcs from four corners.
--------------------------------------------------------------------------------
/130/llimllib/index.html:
--------------------------------------------------------------------------------
1 |
5 |
6 | Sol LeWitt Wall Drawing #130
7 |
121 |
126 |
127 |
128 | ?
129 |
Sol Lewitt Wall Drawing #130 (1972)
130 |
131 | Grid and arcs from four corners.
132 |
133 | Clicking and dragging in the X changes the grid width
134 | Clicking and dragging in the Y changes the arc width
135 | Pres "r" to reset
136 |
137 |
138 |
--------------------------------------------------------------------------------
/132/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #132 (1972)
2 |
3 | A 36 in. (90 cm) grid covering the wall. All two-part combinations of arcs from corners and sides, straight and not straight lines, systematically.
4 |
--------------------------------------------------------------------------------
/138/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #138 (1972)
2 |
3 | Circles and arcs from the midpoints of four sides.
4 |
5 |
--------------------------------------------------------------------------------
/138/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y-a-v-a ❤︎ sol lewitt • #138
4 |
5 |
17 |
18 |
55 |
--------------------------------------------------------------------------------
/146/OgAstorga/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
21 |
22 |
23 |
24 |
25 |
26 |
106 |
107 |
--------------------------------------------------------------------------------
/146/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #146 (1972)
2 |
3 | All two-part combinations of blue arcs from corners and sides, and blue straight, not straight, and broken lines.
4 |
--------------------------------------------------------------------------------
/164/instructions.md:
--------------------------------------------------------------------------------
1 | # Wall Drawing #164 (1973)
2 |
3 | A black outlined square with a red horizontal line centered on the axis between the midpoint of the left side and the midpoint of the right side and a red diagonal line centered on the axis between the lower left and upper right corners.
--------------------------------------------------------------------------------
/164/pavellishin/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | pavellishin - Sol LeWitt - #164
6 |
7 |
15 |
16 |
17 |
18 |
19 |
20 |
61 |
62 |
63 |
--------------------------------------------------------------------------------
/232/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #232 (1975)
2 |
3 | A square, each side of which is equal to a tenth of the total length of three lines, the first of which is drawn from a point halfway between the center of the wall and a point halfway between the center of the wall and the upper left corner and the midpoint of the left side to a point halfway between the center of the wall and a point halfway between the center of the wall and the midpoint of the bottom side; the second line is drawn from a point halfway between the start of the first line and a point halfway between the center of the wall and the upper right corner and the midpoint of the top side to the start of the first line; the third line is drawn from a point halfway between a point equidistant from the end of the first line, the start of the second line and a point halfway between a point halfway between the center of the wall and the midpoint of the right side and a point halfway between the center of the wall and the upper right corner and the midpoint of the top side to the point where the first line starts and the second line ends; the right side is located on the axis of, and equidistant from two points, the first of which is located at a point halfway between a point halfway between the center of the wall and the midpoint of the right side and the lower right corner to a point halfway between a point halfway between the midpoint of the top side and the upper right corner and the start of the third line.
4 |
--------------------------------------------------------------------------------
/237/instructions.md:
--------------------------------------------------------------------------------
1 | # Wall Drawing #237 (1974)
2 |
3 | The location of a trapezoid.
--------------------------------------------------------------------------------
/238/instructions.md:
--------------------------------------------------------------------------------
1 | # Wall Drawing #237 (1974)
2 |
3 | The location of a parallelogram.
--------------------------------------------------------------------------------
/273/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #273 (1975)
2 |
3 | Lines to points on a grid. A six-inch (15 cm) grid covering the wall. Lines from the corners, sides, and center of the walls to random points on the grid. Composite (seventh wall): red lines from the midpoints of four sides, blue lines from four corners, yellow lines from the center.
--------------------------------------------------------------------------------
/273/matthewlein/273.js:
--------------------------------------------------------------------------------
1 | var wall = document.getElementById('wall');
2 | var ctx = wall.getContext('2d');
3 |
4 | wall.width = 1200;
5 | wall.height = 500;
6 |
7 | // global values
8 | ctx.lineWidth = 1;
9 |
10 | var blue = 'rgba(0, 0, 255, 0.4)';
11 | var red = 'rgba(255, 0, 0, 0.4)';
12 | var yellow = 'rgba(255, 230, 78, 0.4)';
13 | var grey = 'rgba(0, 0, 0, 0.05)';
14 |
15 | var midpoints = [
16 | // top
17 | {
18 | x : wall.width/2,
19 | y : 0
20 | },
21 | // right
22 | {
23 | x : wall.width,
24 | y : wall.height/2
25 | },
26 | // bottom
27 | {
28 | x : wall.width/2,
29 | y : wall.height
30 | },
31 | // left
32 | {
33 | x : 0,
34 | y : wall.height/2
35 | }
36 | ];
37 |
38 | var corners = [
39 | // NW
40 | {
41 | x : 0,
42 | y : 0
43 | },
44 | // NE
45 | {
46 | x : wall.width,
47 | y : 0
48 | },
49 | // SE
50 | {
51 | x : wall.width,
52 | y : wall.height
53 | },
54 | // NW
55 | {
56 | x : 0,
57 | y : wall.height
58 | }
59 | ];
60 |
61 | var center = {
62 | x : wall.width/2,
63 | y : wall.height/2
64 | };
65 |
66 | // random range
67 | function randomRange(low, high) {
68 | return Math.floor( Math.random() * (1 + high - low) ) + low;
69 | }
70 |
71 |
72 | var gridSpacing = 50;
73 | var gridCols = wall.width / gridSpacing;
74 | var gridRows = wall.height / gridSpacing;
75 |
76 | function createGrid() {
77 |
78 | ctx.save();
79 | ctx.strokeStyle = grey;
80 |
81 | for (var x = 0; x < gridCols; x++) {
82 | ctx.beginPath();
83 | ctx.moveTo(x * gridSpacing, 0);
84 | ctx.lineTo(x * gridSpacing, wall.height);
85 | ctx.closePath();
86 | ctx.stroke();
87 | }
88 | for (var y = 0; y < gridRows; y++) {
89 | ctx.beginPath();
90 | ctx.moveTo(0, y * gridSpacing);
91 | ctx.lineTo(wall.width, y * gridSpacing);
92 | ctx.closePath();
93 | ctx.stroke();
94 | }
95 |
96 | ctx.restore();
97 |
98 | }
99 |
100 |
101 | // point object
102 | var Point = function(x, y) {
103 | this.x = x;
104 | this.y = y;
105 | };
106 |
107 | var points = [];
108 |
109 | var pointsCount = 20;
110 |
111 | function createPoints() {
112 | var x;
113 | var y;
114 | for (var i = pointsCount - 1; i >= 0; i--) {
115 | x = randomRange(0, gridCols) * gridSpacing;
116 | y = randomRange(0, gridRows) * gridSpacing;
117 | points.push( new Point(x, y) );
118 | }
119 | }
120 |
121 |
122 | function cornerLines() {
123 | ctx.save();
124 | ctx.strokeStyle = blue;
125 | corners.forEach(function(corner) {
126 |
127 | points.forEach(function(point) {
128 | ctx.beginPath();
129 | ctx.moveTo(corner.x, corner.y);
130 | ctx.lineTo(point.x, point.y);
131 | ctx.closePath();
132 | ctx.stroke();
133 | });
134 |
135 | });
136 | ctx.restore();
137 | }
138 | function midpointLines() {
139 | ctx.save();
140 | ctx.strokeStyle = red;
141 | midpoints.forEach(function(midpoint) {
142 |
143 | points.forEach(function(point) {
144 | ctx.beginPath();
145 | ctx.moveTo(midpoint.x, midpoint.y);
146 | ctx.lineTo(point.x, point.y);
147 | ctx.closePath();
148 | ctx.stroke();
149 | });
150 |
151 | });
152 | ctx.restore();
153 | }
154 | function centerLines() {
155 | ctx.save();
156 | ctx.strokeStyle = yellow;
157 | points.forEach(function(point) {
158 | ctx.beginPath();
159 | ctx.moveTo(center.x, center.y);
160 | ctx.lineTo(point.x, point.y);
161 | ctx.closePath();
162 | ctx.stroke();
163 | });
164 | ctx.restore();
165 | }
166 |
167 |
168 | // ------------------------------------------------------------------------- //
169 | // Init
170 | // ------------------------------------------------------------------------- //
171 |
172 | function init() {
173 | createPoints();
174 | createGrid();
175 | cornerLines();
176 | midpointLines();
177 | centerLines();
178 | }
179 |
180 | init();
--------------------------------------------------------------------------------
/273/matthewlein/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 273 - Matthew Lein
6 |
7 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/289/cagrimmett/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Sol LeWitt Wall Drawing 289
6 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
209 |
210 |
--------------------------------------------------------------------------------
/289/grahamalama/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Wall Drawing 289
8 |
9 |
10 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/289/grahamalama/index.js:
--------------------------------------------------------------------------------
1 | const GRID_SIZE = 0.05;
2 |
3 | const randOnGrid = (cnv, extent) => {;
4 | choices = []
5 | for (let i = 0; i < 1; i+= GRID_SIZE) {
6 | choices.push(i)
7 | }
8 | return extent * cnv.random(choices)
9 | };
10 |
11 | const midpoint = cnv => {
12 | const { width, height } = cnv;
13 | const origin = {
14 | x: width / 2,
15 | y: height / 2
16 | };
17 | for (let i = 0; i < 24; i++) {
18 | cnv.line(
19 | origin.x,
20 | origin.y,
21 | randOnGrid(cnv, width),
22 | randOnGrid(cnv, height)
23 | );
24 | }
25 | };
26 |
27 | const corners = cnv => {
28 | const { width, height } = cnv;
29 | for (let i = 0; i < 12; i++) {
30 | cnv.line(0, 0, randOnGrid(cnv, width), randOnGrid(cnv, height));
31 | cnv.line(width, 0, randOnGrid(cnv, width), randOnGrid(cnv, height));
32 | cnv.line(width, height, randOnGrid(cnv, width), randOnGrid(cnv, height));
33 | cnv.line(0, height, randOnGrid(cnv, width), randOnGrid(cnv, height));
34 | }
35 | };
36 |
37 | const sides = cnv => {
38 | const { width, height } = cnv;
39 | const origin = {
40 | x: width / 2,
41 | y: height / 2
42 | };
43 | for (let i = 0; i < 12; i++) {
44 | cnv.line(origin.x, 0, randOnGrid(cnv, width), randOnGrid(cnv, height));
45 | cnv.line(width, origin.y, randOnGrid(cnv, width), randOnGrid(cnv, height));
46 | cnv.line(origin.x, height, randOnGrid(cnv, width), randOnGrid(cnv, height));
47 | cnv.line(0, origin.y, randOnGrid(cnv, width), randOnGrid(cnv, height));
48 | }
49 | };
50 |
51 | const createWall = (wall, drawFuncs) => canvas => {
52 | const getWallDimensions = (canvas, wall) => {
53 | let { width, height } = canvas.select(`#${wall}`);
54 | return { width, height };
55 | };
56 |
57 | canvas.setup = () => {
58 | let { width, height } = getWallDimensions(canvas, wall);
59 | canvas.createCanvas(width, height);
60 | canvas.noLoop();
61 | };
62 |
63 | canvas.draw = () => {
64 | canvas.randomSeed(123);
65 | canvas.stroke(255);
66 | drawFuncs.forEach(func => {
67 | func(canvas);
68 | });
69 | };
70 |
71 | canvas.windowResized = () => {
72 | let { width, height } = getWallDimensions(canvas, wall);
73 | canvas.resizeCanvas(width, height);
74 | };
75 | };
76 |
77 | const wall1 = new p5(createWall("wall1", [midpoint]), "wall1");
78 | const wall2 = new p5(createWall("wall2", [sides]), "wall2");
79 | const wall3 = new p5(createWall("wall3", [corners]), "wall3");
80 | const wall4 = new p5(
81 | createWall("wall4", [midpoint, corners, sides]),
82 | "wall4"
83 | );
84 |
--------------------------------------------------------------------------------
/289/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #289 (1976)
2 |
3 | A six-inch (15cm) grid covering each of the four black walls. White lines to points on the grid.
4 | 1st wall: 24 lines from the center;
5 | 2nd wall: 12 lines from the midpoint of each of the sides;
6 | 3rd wall: 12 lines from each corner;
7 | 4th wall: 24 lines from the center, 12 lines from the midpoint of each of the sides, 12 lines from each corner.
--------------------------------------------------------------------------------
/295/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #295 (1976)
2 |
3 | Six white geometric figures (outlines) superimposed on a black wall.
4 |
--------------------------------------------------------------------------------
/295/pavellishin/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | pavellishin - Sol LeWitt - #164
6 |
7 |
17 |
18 |
19 |
20 |
21 |
22 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/295/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y-a-v-a ❤︎ sol lewitt • #295
4 |
5 |
18 |
19 |
127 |
--------------------------------------------------------------------------------
/328/amiccolis/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Solving Sol #328
6 |
7 |
18 |
19 |
20 |
21 |
22 |
98 |
99 |
102 |
103 |
104 |
105 |
--------------------------------------------------------------------------------
/328/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #328 (1980)
2 |
3 | On a black wall, a white circle within which are white vertical parallel lines, and a white parallelogram within which are white horizontal parallel lines. The vertical lines within the circle do not enter the parallelogram, and the horizontal lines within the parallelogram do not enter the circle.
4 |
--------------------------------------------------------------------------------
/335/OgAstorga/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
121 |
122 |
--------------------------------------------------------------------------------
/335/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #335 (1980)
2 |
3 | On four black walls, white vertical parallel lines, and in the center of the walls, eight geometric figures (including cross, X) within which are white horizontal parallel lines. The vertical lines do not enter the figures.
--------------------------------------------------------------------------------
/340/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #340 (1980)
2 |
3 | Six-part drawing. The wall is divided horizontally and vertically into six equal parts. 1st part: On red, blue horizontal parallel lines, and in the center, a circle within which are yellow vertical parallel lines; 2nd part: On yellow, red horizontal parallel lines, and in the center, a square within which are blue vertical parallel lines; 3rd part: On blue, yellow horizontal parallel lines, and in the center, a triangle within which are red vertical parallel lines; 4th part: On red, yellow horizontal parallel lines, and in the center, a rectangle within which are blue vertical parallel lines; 5th part: On yellow, blue horizontal parallel lines, and in the center, a trapezoid within which are red vertical parallel lines; 6th part: On blue, red horizontal parallel lines, and in the center, a parallelogram within which are yellow vertical parallel lines. The horizontal lines do not enter the figures.
--------------------------------------------------------------------------------
/349/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #349 (1981)
2 |
3 | Ten geometric figures in black india ink on walls painted red, yellow, blue, white.
4 |
--------------------------------------------------------------------------------
/349/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 | y-a-v-a.org ❤ sol lewitt • wall drawing #349
3 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
--------------------------------------------------------------------------------
/366/diagram.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wholepixel/solving-sol/112ed0c82f0d830d91cc751b073c62c8d1161dcb/366/diagram.png
--------------------------------------------------------------------------------
/366/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #366 (1982)
2 |
3 | Black arcs using the height of the wall as a radius, and black arcs using the midpoints of the wall as a radius. The arcs are filled in solid and drawn in India ink.
4 |
5 | 
6 |
--------------------------------------------------------------------------------
/391/cagrimmett/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Sol LeWitt Wall Drawing 391
4 |
5 |
6 |
7 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
177 |
178 |
179 |
--------------------------------------------------------------------------------
/391/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #391 (1983)
2 |
3 | Two-part drawing. The two walls are each divided horizontally and vertically into four equal parts. First wall: 12-inch (30 cm) bands of lines in four directions, one direction in each part, drawn in black India ink. Second wall: Same, but with four colors drawn in India ink and color ink washes.
--------------------------------------------------------------------------------
/392/1wheel/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Sol Lewitt - Wall Drawing #392
4 |
21 |
22 |
23 |
24 |
100 |
--------------------------------------------------------------------------------
/392/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #392 (1983)
2 |
3 | A 12" (30 cm) grid covering the black wall. Within each 12" (30 cm) square, a vertical, horizontal, diagonal right or diagonal left line bisecting the square. All squares are filled. (The direction of the line in each square is determined by the drafter)
--------------------------------------------------------------------------------
/392/mcshiz/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Solving Sol #392
5 |
6 |
26 |
27 |
28 |
29 |
30 |
98 |
99 |
--------------------------------------------------------------------------------
/396/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing 396 (1983)
2 |
3 | A black five-pointed star, a yellow six-pointed star, a red seven-pointed star, and a blue eight-pointed star, drawn in color and India ink washes.
--------------------------------------------------------------------------------
/396/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y-a-v-a ❤︎ sol lewitt • #396
4 |
5 |
17 |
87 |
--------------------------------------------------------------------------------
/415D/alicepiva/415D preview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wholepixel/solving-sol/112ed0c82f0d830d91cc751b073c62c8d1161dcb/415D/alicepiva/415D preview.png
--------------------------------------------------------------------------------
/415D/alicepiva/415D.js:
--------------------------------------------------------------------------------
1 | // Double Drawing. Right: Isometric Figure (Cube) with progressively darker graduations of gray on each of three planes; Left: Isometric figure with red, yellow, and blue superimposed progressively on each of the three planes. The background is gray.
2 |
3 | function setup() {
4 | createCanvas(750,500);
5 | noStroke ();
6 | angleMode (DEGREES);
7 | }
8 |
9 | function draw() {
10 | background(240);
11 | //plane A1
12 | fill (250);
13 | quad (450,185,550,240,550,360,450,300);
14 | //plane A2
15 | fill (220);
16 | quad (550,240,650,185,650,300,550,360);
17 | //plane A3
18 | fill (200);
19 | quad (450,185,550,240,650,185,550,125);
20 | //plane B1
21 | fill (255,0,0,170);
22 | quad (100,185,200,240,200,360,100,300);
23 | //plane B2
24 | fill (0,255,0,170);
25 | quad (200,240,300,185,300,300,200,360);
26 | //plane B3
27 | fill (255,255,0,170);
28 | quad (100,185,200,240,300,185,200,125);
29 | }
30 |
--------------------------------------------------------------------------------
/415D/alicepiva/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | 415D
8 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/415D/alicepiva/readme.md:
--------------------------------------------------------------------------------
1 | since I'm a p5/JS newbie, here is a link to an online code previewer (that works) in case the files I uploaded are messed up
2 | (https://editor.p5js.org/alicepiva/present/Gk4LzIngl)
3 |
--------------------------------------------------------------------------------
/541/541.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wholepixel/solving-sol/112ed0c82f0d830d91cc751b073c62c8d1161dcb/541/541.jpg
--------------------------------------------------------------------------------
/541/instructions.md:
--------------------------------------------------------------------------------
1 | ##Wall Drawing #541 (1987)
2 |
3 | On each of four walls, a tilted form with color ink washes superimposed.
4 |
5 | Color ink wash
6 |
7 | A First wall: The background is GG -Left plane: YRY; right plane: YBY; bottom plane: BRB
8 |
9 | B Second wall: The background is YY. Left plane: GBG; right plane: RGG; top plane: YGR
10 |
11 | C third wall: The background is RR. Left plane: GBB; right plane: RYG; bottom plane: GGY;
12 |
13 | D The background is BB. Left plane: GYB. right plane: GRR; top plane: YGY
14 |
15 | Key: Red = R; Yellow = Y; Blue = B; Gray = G
16 |
17 | 
18 |
--------------------------------------------------------------------------------
/579/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #579 (1988)
2 |
3 | Three concentric arches. The outside one is blue; the middle red; and the inside one is yellow.
4 |
--------------------------------------------------------------------------------
/579/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | y_a_v_a ❤︎ Sol LeWitt • #579
4 |
5 |
9 |
45 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/614/cagrimmett/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Sol LeWitt Wall Drawing 614
7 |
24 |
25 |
26 |
27 |
98 |
99 |
--------------------------------------------------------------------------------
/614/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #614 (1989)
2 |
3 | Rectangles formed by 3-inch (8 cm) wide India ink bands, meeting at right angles.
--------------------------------------------------------------------------------
/614/pavellishin/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | pavellishin - Sol LeWitt - #164
6 |
7 |
17 |
18 |
19 |
20 |
21 |
22 |
67 |
68 |
69 |
--------------------------------------------------------------------------------
/630/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #630 (1990)
2 |
3 | A wall is divided horizontally into two equal parts. Top: alternating horizontal black and white 8-inch (20 cm) bands. Bottom: alternating vertical black and white 8-inch (20 cm) bands.
--------------------------------------------------------------------------------
/630/kevinleedrum/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Solving Sol #630
5 |
41 |
42 |
43 |
76 |
77 |
78 |
79 |
80 |
81 |
--------------------------------------------------------------------------------
/766/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #766 (1994)
2 |
3 | Twenty-one isometric cubes of varying sizes, each with color ink washes superimposed.
--------------------------------------------------------------------------------
/766/karanmhatre1/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Sol LeWitt Wall Draving No 766
8 |
9 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
--------------------------------------------------------------------------------
/797/doolittle/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
24 |
25 |
26 |
27 |
147 |
148 |
149 |
150 |
151 |
--------------------------------------------------------------------------------
/797/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #797 (1995)
2 |
3 | The first drafter has a black marker and makes an irregular horizontal line near the top of the wall. Then the second drafter tries to copy it (without touching it) using a red marker. The third drafter does the same, using a yellow marker. The fourth drafter does the same using a blue marker. Then the second drafter followed by the third and fourth copies the last line drawn until the bottom of the wall is reached.
--------------------------------------------------------------------------------
/852/cagrimmett/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Sol LeWitt 852
4 |
5 |
6 |
7 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/852/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #852 (1998)
2 |
3 | A wall divided from the upper left to the lower right by a curvy line; left: glossy yellow; right: glossy purple.
--------------------------------------------------------------------------------
/852/y-a-v-a/index.html:
--------------------------------------------------------------------------------
1 |
2 | wall drawing #852 • _y_a_v_a_ ❤︎ sol lewitt
3 |
21 |
22 |
23 |
25 |
26 |
135 |
136 |
--------------------------------------------------------------------------------
/853/cagrimmett/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Sol LeWitt 853
4 |
5 |
6 |
7 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/853/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #853 (1998)
2 |
3 | A wall bordered and divided vertically into two parts by a flat black band. Left part: a square is divided vertically by a curvy line. Left: glossy red; right: glossy green; Right part: a square is divided horizontally by a curvy line. Top: glossy blue; bottom: glossy orange.
--------------------------------------------------------------------------------
/959/doodybrains/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Sol Lewitt - Drawing 959 - Uneven bands from the upper right corner.
5 |
49 |
50 |
51 |
52 |
67 |
68 |
69 |
88 |
89 |
--------------------------------------------------------------------------------
/959/instructions.md:
--------------------------------------------------------------------------------
1 | ## Wall Drawing #959 (2001)
2 |
3 | Uneven bands from the upper right corner.
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | This is free and unencumbered software released into the public domain.
2 |
3 | Anyone is free to copy, modify, publish, use, compile, sell, or
4 | distribute this software, either in source code form or as a compiled
5 | binary, for any purpose, commercial or non-commercial, and by any
6 | means.
7 |
8 | In jurisdictions that recognize copyright laws, the author or authors
9 | of this software dedicate any and all copyright interest in the
10 | software to the public domain. We make this dedication for the benefit
11 | of the public at large and to the detriment of our heirs and
12 | successors. We intend this dedication to be an overt act of
13 | relinquishment in perpetuity of all present and future rights to this
14 | software under copyright law.
15 |
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19 | IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
20 | OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
21 | ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22 | OTHER DEALINGS IN THE SOFTWARE.
23 |
24 | For more information, please refer to
25 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Solving Sol
2 | ===========
3 |
4 | 
5 |
6 | An open project to implement Sol LeWitt's instructions in JavaScript.
7 |
8 | [Sol LeWitt](http://en.wikipedia.org/wiki/Sol_LeWitt) was an American artist who is regarded as the founder of Conceptual and Minimal art.
9 |
10 | A portion of his work were wall drawings for which he only provided instructions.
11 |
12 | The instructions are simple and subtly open to interpretation. They're also good candidates to be executed programatically.
13 |
14 |
15 | ### Submitting a Solution (Pull Request)
16 | To execute an instruction, please fork this repository and create a folder with your github user name within the folder of the instruction you're solving. (i.e. /118/github_user).
17 |
18 | The file should be executable in a modern web browser. Where possible, please load library scripts externally ([cdn.js](http://cdnjs.com/) is a good place to look.)
19 |
20 | When you're done, add your solution to the JSON file `solutions.json` so we can easily generate the gallery of examples. If possible, include a screenshot of the result in the comment in the PR (but don't commit the screenshot).
21 |
22 | ```
23 | "In an interview, LeWitt was once asked, "How would you feel
24 | if someone executed a wall drawing of yours without permission
25 | but with care to follow the instructions and in an appropriate site?"
26 | To which he replied, "OK... It would be authentic [and] it would
27 | be a compliment."
28 | ```
29 |
30 | ### Example Instructions:
31 |
32 | #### Wall Drawing #65 (1971)
33 | Lines not short, not straight, crossing and touching, drawn at random, using four colors, uniformly dispersed with maximum density, covering the entire surface of the wall.
34 |
35 | #### Wall Drawing #97 (1971)
36 | Within an 80 inch (200cm) square, 10,000 straight lines. Next to it is an 80 inch (200 cm) square with 10,000 not straight lines.
37 |
38 | #### Wall Drawing #118 (1971)
39 | On a wall surface, any continuous stretch of wall, using a hard pencil, place fifty points at random. The points should be evenly distributed over the area of the wall. All of the points should be connected by straight lines.
40 |
41 | ### Resources for executing an instruction:
42 | - [Paper.js](http://paperjs.org)
43 | - [Easel.js](http://www.createjs.com/Docs/EaselJS/modules/EaselJS.html)
44 | - [P5.js](https://p5js.org/)
45 | - Forkable JSFiddle template with Paper.js: [http://jsfiddle.net/B79vY/](http://jsfiddle.net/B79vY/)
46 |
47 | ### Learn more about Sol Lewitt:
48 | - [Radical Art](http://radicalart.info/concept/LeWitt/)
49 | - [Mass MOCA](http://www.massmoca.org/lewitt/)
50 | - [Dia Art](http://www.diaart.org/exhibitions/main/3)
51 |
52 |
53 | ### Other Solutions
54 |
55 | 
56 | 
57 | 
58 |
59 |
--------------------------------------------------------------------------------
/gulpfile.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var gulp = require('gulp'),
4 | express = require('express'),
5 | livereload = require('connect-livereload'),
6 | refresh = require('gulp-livereload'),
7 | lrserver = require('tiny-lr')(),
8 | server = express(),
9 | serverport = 8000;
10 |
11 | //Set up simple server w/live reload
12 | gulp.task('serve', function() {
13 |
14 | server.use(livereload());
15 |
16 | server.use(express.static('./'));
17 |
18 | //static server
19 | server.listen(serverport);
20 |
21 | //live reload
22 | lrserver.listen();
23 |
24 | });
25 |
26 | // Watch for changes on files. Ignore node_modules.
27 | gulp.task('watch', function() {
28 |
29 | gulp.watch([
30 | './**/*.*',
31 | '!./node_modules/**'
32 | ]).on('change', function (file) {
33 | refresh.changed(file.path);
34 | });
35 |
36 | });
37 |
38 | // Serve files at localhost:8000 and listen for changes.
39 | gulp.task('default', ['serve', 'watch']);
40 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "solving-sol",
3 | "version": "0.0.0",
4 | "description": "An open project to solve Sol LeWitt's instructions in JavaScript.",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "https://github.com/wholepixel/solving-sol.git"
12 | },
13 | "author": "Brad Bouse (doolittle)",
14 | "license": "ISC",
15 | "bugs": {
16 | "url": "https://github.com/wholepixel/solving-sol/issues"
17 | },
18 | "homepage": "https://github.com/wholepixel/solving-sol",
19 | "devDependencies": {
20 | "connect-livereload": "^0.4.0",
21 | "express": "^4.6.1",
22 | "gulp": "^3.8.6",
23 | "gulp-livereload": "^2.1.0",
24 | "tiny-lr": "0.0.9"
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/templates/paper.js/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
19 |
20 | Solving Sol
21 |
22 |
23 |
42 |
43 |
44 |
45 |
72 |
73 |
76 |
77 |
78 |
--------------------------------------------------------------------------------
/templates/processing.js/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
13 |
14 | Solving Sol
15 |
16 |
17 |
18 |
29 |
30 |
31 |
32 |
56 |
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------