Giter Site home page Giter Site logo

sspboyd / sollewittwalldrawing146a Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 1.98 MB

This project attempts to interpret and create a version of Sol LeWitt's Wall Drawing #146A in code. The purpose of this project is to create a program that will produce any number of versions of the wall drawing as a proof-of-concept for how the wall drawing would look in a new office space.

Home Page: https://sspboyd.ca/Sol-LeWitt

Processing 100.00%
processing wall-drawing sol-lewitt 1970s generative procedural-generation p55

sollewittwalldrawing146a's Introduction

Recreating Sol LeWitt's Wall Drawing 146A in Code

"All two-part combinations of blue arcs from corners and sides, and blue straight, not straight, and broken lines."

This project attempts to interpret and create a version of Sol LeWitt's Wall Drawing #146A in code, Processing code to be specific. The purpose of this project is to create a program that will produce any number of versions of the wall drawing as a proof-of-concept for how the wall drawing would look in a new office space.

Sol LeWitt. American artist, 1928-2007

Sol LeWitt was a prolific American artist who came to the public's attention in the 1960s for his wall drawings and structural artworks. He is considered a leader of the Minimalist and Conceptual art movements.

LeWitt provided simple and intentionally somewhat vague descriptions of his ideas for apprentices to then take and interpret in the realized art work. In doing so, the instructions themselves became the artwork and challenged the ideas of the role and authority of the artist.

More information about Sol LeWitt.

Writing the code

The code for this project is written in Processing 3. It is a fantastic open source language aimed at artists who are interested in quickly prototyping ideas in code. You can learn more about it here: Processing.org

The code itself is straightforwards. The logic involves setting some variables to describe the wall dimensions, grid size, colours, line thicknesses etc... There are pre-calculations done for angled lines and arcs. Then, to render the wall, two different tiles need to be chosen and some logic included to ensure that a box does not contain two of the same type of lines (or else it just looks like one line). Where it was tricky was in figuring out the math for the curves that connect from the mid-points of the grids.

One bug I decided not to fix is that the current logic allows for two lines, one solid and one dashed, to be draw that overlap one another. As a result it looks like there is just one line drawn. There's an example of this error in the Code Progression gallery below.

There is a purposeful omission from the program. There are no irregular/random/non-straight lines that are often in other representations of 146A. I excluded these wiggly lines for two reasons. One, the instructions don't explicitly include that type of line, although most of the examples I've seen of 146A include them. And secondly, I didn't trust that I would like the look of those lines on the wall.

Lastly, I chose to deviate from the instructions again to have a blue wall with off-white lines as opposed to the prescribed blue lines. This was an aesthetic decision. I really like the swath of blue on the wall.

Program output examples.

Sketch output showing interpretation of Wall Drawing #146A in code

Sketch output showing interpretation of Wall Drawing #146A in code

Sketch output showing interpretation of Wall Drawing #146A in code

Sketch output showing interpretation of Wall Drawing #146A in code

Sketch output showing interpretation of Wall Drawing #146A in code

Sketch output showing interpretation of Wall Drawing #146A in code

Sketch output showing interpretation of Wall Drawing #146A in code

Early examples with bugs lots of bugs

Sketch output showing interpretation of Wall Drawing #146A in code

Sketch output showing interpretation of Wall Drawing #146A in code Sketch output showing interpretation of Wall Drawing #146A in code

Sketch output showing interpretation of Wall Drawing #146A in code

sollewittwalldrawing146a's People

Contributors

sspboyd avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.