All posts by admin

Rothko Simulator

Mark Rothko, (1903-1970) was associated with the Abstract Expressionist movement, and his signature style featured large fields of diffuse, often complimentary colour, painted on canvasses that were often very large in scale.


This program allows you to create your own Rothko painting.

Here’s what to do;

Press the left mouse button anywhere on the canvas to create a large colour field

Press the right mouse button to make a thinner stripe

Press any key to erase and start over

 

//Info: http://processingjs.org/reference

// draws simulated Rothko. press left mouse to draw colour fields
// press right mouse for narrow band

void setup() {
size (350, 460);
background (random(107, 229), random(107, 229), random(107, 229));
smooth();
frameRate(4000);
}

void draw() {
}

void mousePressed() {

if (mousePressed &&(mouseButton == LEFT)) {

int xx1 = (mouseX);
int yy1 = (mouseY);

int wwidth = (width – (int)random(30, 40)); // adjust rectangle size
int xright = width-wwidth;
int xleft = (-10)+wwidth;
int hheight = ((int)random(70, 100)); // adjust rectangle size
int ydown = yy1+hheight;
int yup = yy1-hheight;

colourpick(); // pick random colour for lines

loop=60000;

for (int count = 0; count =xright) { // keeps line inside box
xx2 = xx2-((int)random(10, 20));
}
if (xx2=ydown) {
yy2 = yy2 -((int)random(10, 20));
}
if (yy2<=yup) {
yy2 = yy2 +((int)random(10, 20));
}

line (xx1, yy1, xx2, yy2);
xx1=xx2;
yy1=yy2;
}
}

if (mousePressed &&(mouseButton == RIGHT)) {

int xx1 = (mouseX);
int yy1 = (mouseY);

int wwidth = (width – (int)random(45, 50)); // adjust rectangle size
int xright = width-wwidth;
int xleft = (-10)+wwidth;
int hheight = ((int)random(20, 30)); // adjust rectangle size
int ydown = yy1+hheight;
int yup = yy1-hheight;

colourpick(); // pick random colour for lines
loop=15000;

for (int count = 0; count =xright) { // keeps line inside box
xx2 = xx2-((int)random(10, 20));
}
if (xx2=ydown) {
yy2 = yy2 -((int)random(10, 20));
}
if (yy2<=yup) {
yy2 = yy2 +((int)random(10, 20));
}

line (xx1, yy1, xx2, yy2);
xx1=xx2;
yy1=yy2;
}
}
}

void keyPressed() {
background (random(107, 229), random(107, 229), random(107, 229));
}

void colourpick(){ // picks one of 5 colours for line

int c;
c = (int) random(5); // picks one of 5 colours
if (c == 0) stroke (223 +(random(20)), 110+(random(20)), 4+(random(20)), 30); // orange
if (c == 1) stroke (175+(random(20)), 9+(random(20)), 2+(random(20)), 20); // red
if (c == 2) stroke (21+(random(20)), 40+(random(20)), 93+(random(20)), 20); // blue
if (c == 3) stroke (66+(random(20)), 111+(random(20)), 48+(random(20)), 25); // green
if (c == 4) stroke (240+(random(20)), 230+(random(20)), 115+(random(20)), random(15)); // dark

}

void rolldiceX() { // pick random number

dicex=((int)random(-20, 20));
if (dicex == 0) { // if result is 0 go again
rolldiceX();
}
}

void rolldiceY() { // pick random number
dicey=((int)random(-20, 20));
if (dicey == 0) { // if result is 0 go again
rolldiceY();
}
}

int dicex;
int dicey;
int xx1;
int yy1;
int wwidth;
int hheight;
int xright;
int xleft;
int yup;
int ydown;
int xx2;
int yy2;
int scale;
int loop;

Malevich Simulator

Kasimir Malevich was an early pioneer of geometric abstraction in Russia in the early 20th century, and was the founder of the Suprematist movement. Around 1916, shortly after he completed his iconic Black Square on a White Ground, he painted Suprematist Composition, part of a series of works composed of simple geometric elements.

Suprematist Composition 1916
Suprematist Composition 1916

 

 

 

 

 

 

 

 

This computer program allows you to create your own Suprematist Composition.

Here’s what to do;

Click the left mouse button anywhere on the canvas to place a shape there.

Click the right mouse button to place a line

Press any key to erase and start over

 

//Info: http://processingjs.org/reference

void setup() {
smooth();
size (400, 480);
background(229, 217, 176);
noStroke();
}

void draw () {
{
if (mousePressed && (mouseButton == LEFT)) {
translate(mouseX, mouseY);
rectangle();
noLoop();
}

if (mousePressed && (mouseButton == RIGHT)) {
translate(mouseX, mouseY); // move origin from top left to mouse position
line();
noLoop();
}
}
}

void mousePressed() {
loop();
}

void keyPressed () {
loop();
background(229, 217, 176);
}

void line() {

int c;
c = (int) random(5); // picks one of 5 colours
if (c == 0) fill (233, 110, 4); // orange
if (c == 1) fill (175, 9, 2); // red
if (c == 2) fill (21, 40, 93); // blue
if (c == 3) fill (66, 111, 48); // green
if (c == 4) fill (28, 24, 15); // dark

rectMode(CENTER);

rotate(radians(random(360)));
rect(0, 0, random(70, 250), random(4,5));
}

void rectangle() {

int c;
c = (int) random(5); // picks one of 5 colours
if (c == 0) fill (233, 110, 4); // orange
if (c == 1) fill (175, 9, 2); // red
if (c == 2) fill (21, 40, 93); // blue
if (c == 3) fill (66, 111, 48); // green
if (c == 4) fill (28, 24, 15); // dark

rectMode(CENTER);

rotate(radians(random(140, 200)));
rect(0, 0, random(40, 150), random(13, 65));
}

Mondrian Simulator

In 1917, before he introduced the grid into his work, Piet Mondrian painted Composition with Line, consisting of a series of horizontal and vertical elements arranged on the canvas. He was trying to intuitively express a sense of harmony and beauty through the use of basic purely geometric forms.

This computer program allows you to create your own version of Composition with Line 1917,

Composition With Lines (1917)
Composition With Lines (1917)

 

 

 

 

 

 

 

 

Here’s what to do;

Hold down the left mouse button and move around the canvas.

Press any key to erase and start again

// <![CDATA[
//Info: http://processingjs.org/reference

void setup() {
size (500, 500);
background (235, 240, 230);
stroke (15, 35, 20, 200);
// ellipse(300,300,600,600);
frameRate (5);
strokeWeight(5);
smooth();
}

void draw() {

float shiftx=random(16);
float shifty=random(20);

if (mousePressed) {
stroke (15, 35, 20, 200); //draw if mouse button pressed
}
else {
noStroke(); //don't draw if mouse button not pressed
}
int x=mouseX;
int y=mouseY;
line(x, y, x+random(10, 30), y); // horizontal line
line(x+shiftx, y-shifty, x+shiftx, y+shifty); //vertical line
}

void keyPressed() {
background (235, 240, 230);
}

Albers Simulator

Josef Albers (1888-1976) is probably best known for his series, begun in 1949, of Homage to the Square, where he explored the chromatic interactions between nested squares. He explored this theme through hundreds of paintings and prints, typically featuring three or four nested squares.


This is a program to simulate the work of Josef Albers

Here’s what to do;

Click left mouse button to change all colours

Click right mouse button on a segment to change its colour

//Info: http://processingjs.org/reference

void setup() {
smooth();
size(600, 600);
noStroke();
background(255);
rectMode(CORNERS);

draw1(); // draw initial image
draw2();
draw3();
draw4();
}

void draw() {
}

void mousePressed() {

if (mousePressed &&(mouseButton == LEFT)) { // redraw whole image mith mouse LEFT
draw1();
draw2();
draw3();
draw4();
}

if (mousePressed &&(mouseButton == RIGHT)) { // redraw only the square clicked with mouse RIGHT

if (((mouseX >= 190) && (mouseX = 280) && (mouseY = 130) && (mouseX = 190) && (mouseY = 70) && (mouseX = 100) && (mouseY <= 560))) {
colour3();
draw3();
}
else {
colour4();
draw4();
}
}
}

void draw4() {
colour4(); // random colour
rect(10, 10, 590, 100);// largest square 4
rect(10, 560, 590, 590);
rect(10, 100, 70, 560);
rect(530, 100, 590, 560);
}

void draw3() {
colour3();
rect(70, 100, 530, 190);// next largest square 3
rect(70, 530, 530, 560);
rect(70, 190, 130, 530);
rect(470, 190, 530, 530);
}

void draw2() {
colour2();
rect(130, 190, 470, 280); // next largest square 2
rect (130, 500, 470, 530);
rect (130, 280, 190, 500);
rect (410, 280, 470, 500);
}

void draw1() {
colour1();
rect(190, 280, 410, 500); // smallest square 1
}

void colour1 () {
fill (random(20, 230), random(20, 230), random(20, 230));
}

void colour2 () {
fill (random(35, 215), random(35, 215), random(35, 215));
}

void colour3 () {
fill (random(45, 200), random(45, 200), random(45, 200));
}

void colour4 () {
fill (random(60, 180), random(60, 180), random(60, 180));
}

Mary Corey March

Identity Tapestry - full installation view
Identity Tapestry – full installation view

 

 

 

 

This was an installation by San-Francisco based artist Mary Corey March installed at a San-Francisco music festival in 2008. It’s called the identity tapestry and in its production the artist used 300 strands of wool, which she hand-dyed so no two were alike, and 200 acrylic statement plaques, each containing a different phrase that might describe an aspect of a person’s life or personality. Each strand of wool was attached to a stone at the end. The strands were of different lengths, to suggest that none of us knows how long our life span will be.


As each person interacted with the installation, they took a piece of wool from the left, and began to trace a path through the piece, winding the wool around any plaque that suited them, until they either ran out of wool or felt they were done. Eventually hundreds of yarns traced multiple paths around the piece, each one becoming a journey that uniquely described the person. Viewers could also trace the path that any individual made.

I like the attitude suggested by this piece towards discretion; it’s in a public place, and can reveal some personal details of the participants, but once they’ve gone the only trace left is a colour and a stone, so their anonymity is respected. There’s also a lovely elemental, authentic sense to the materials used, and the piece forms a very effective way to process and store information.

 

Sarah Browne

Carpet for Venice Biennalle, 2009
Carpet for Venice Biennale, 2009

 

 

 

 

 

 

 

 

As part of the Venice Biennale, 2009, Sarah Browne commissioned this carpet from Donegal Carpets. This company has a long history making handmade carpets for very prestigious clients, but now only does machine production or outsourcing production to factories abroad.

To make this work, Sarah had to actually re-employ women who used to work at the factory and who now work at its heritage centre. The minimalist, almost modernist design was in part dictated by her decision to only use yarns still there in the factory, and there were few colours available. A silent film was also made to chronicle the production of the piece.

She is interested in the work’s role as a piece of national identity, and the sense of the various histories of the people and company involved in its making.

 

 

 

 

Embedding Processing sketches

This is my first attempt at embedding a processing sketch into a webpage (many thanks to Paul Green for showing me how)

Here’s what to do;

Press left mouse button to generate a shape

Press right mouse button to darken the image

Press any key to start over

//Info: http://processingjs.org/reference

void setup() {
size (600, 440);
background(10, 15, 15);
smooth();
frameRate(2000);
}

void draw() {
}

void mousePressed() {
if (mousePressed &&(mouseButton == RIGHT)) { // subtle eraser
stroke (random(10,20),random(10,20),random(10,20),(random(17,23)));
int x1 = ((int)random(1, width));
int y1 = ((int)random(1, height));
for (int count = 0; count < 30000; count ++) {

linewalk();
}
}
if (mousePressed &&(mouseButton == LEFT)) {

int xx1 = (mouseX);
int yy1 = (mouseY);

int wwidth = ((int)random(10, 110)); // adjust rectangle size
int xright = xx1+wwidth;
int xleft = xx1-wwidth;
int hheight = ((int)random(10, 70)); // adjust rectangle size
int ydown = yy1+hheight;
int yup = yy1-hheight;

colourpick(); // pick random colour for lines
scale = (hheight*wwidth); // makes larger rectangles denser
if(scale 7000) {loop=30000;}

for (int count = 0; count =xright) { // keeps line inside box
xx2 = xx2-((int)random(15, 20));
}
if (xx2=ydown) {
yy2 = yy2 -((int)random(15, 20));
}
if (yy2=width) { // keeps line inside box
x2 = x2-((int)random(15, 20));
}
if (x2=height) {
y2 = y2 -((int)random(15, 20));
}
if (y2<=0) {
y2 = y2 +((int)random(15, 20));
}

line (x1, y1, x2, y2);

x1=x2;
y1=y2;
}

Processing on a webpage

Hi Domnic, I took the liberty of putting a post on your blog about getting your processing code into a webpage. I took a look at it and there are a number of difficulties and restrictions which I couldn’t cover in any detail here.
The easiest solution I could find as far as WorPress is concerned is using the ProcessingJS plugin (look in your plugins section I installed it there). When you are in text mode writing a post you will see a processing button above the text field now. Click that on a blank new post and it will insert in code that you should recognise from using processing. Go to your processing sketch and copy your code in here and you should be able to see your artwork display in the post or page. There may be an issue if you are using external files such as images or audio; I haven’t looked at that yet.
Anyway take a look at the code in this post here and you will get a clear example about how to go about it.
Paul

//Info: http://processingjs.org/reference
int i = 0;
void setup() {
size(600, 150);
background(255);
smooth();
strokeWeight(2);
frameRate(24);
}
void draw() {
stroke(random(50), random(255), random(255), 100);
line(i, 0, random(0, width), height);
if (i < width) {
i++;
} else {
i = 0;
}
}

Systems Group

 

Founded in 1970 by Malcolm Hughes & Jeffrey Steele.

Approach to making abstract art – the object is constructed from a vocabulary of basic geometric elements in accordance with some form of predetermined and often mathematical principle. The idea is as well as having aesthetic value the resulting work will also resonate with the viewer’s intellect as they can consider the principles used in the work. They seemed to have gained more acceptance in Europe despite being a British group.

Constructionists – acted as a sort of precursor to the systems group. They included; Victor Pasmore, Mary & Kenneth Martin, John Ernst & Anthony Hill.

While the mathematical element in this work was important these artists saw it as only a tool to inform the compositions; “an aesthetic of objective invention and sensation, distinctly rational and determinist.”

This movement grew out of the history of European Constructivism, which had featured a strong socio-political rationalle; “a synthesis of painting, sculpture, design and architecture in evolution of an egalitarian and inspirational living environment.” With the advent of the cold war it seems this kind of idealism and these lofty political ideas were not to be trusted any more, so artists increasingly began to turn to the internal logic of how art is made. The interests were;

construction – building art from constituent parts,

geometry,

allowing intuition or chance to play a part,

no illusion / symbolism,

space as a compositional element,

the work projects its own essential qualities – not artist’s personality or drives (not fans of Pollock etc. presumably)

use of non-traditional materials, 3d reliefs popular

They had 2 main approaches to using mathematics;

1. Architectural model. Architects use maths to articulate their buildings’ designs; how everything is supported, structured and proportioned. Buildings falling down not a big advantage. The Constructionists used maths to govern how the elements making up the work must function to articulate the form of the piece.

2. A fundamental approach to the essence of maths – going deeper into the principles of maths and how it can tell us about systems we experience in the world around us. Work made with this in mind can give the viewer a sense that it relates to something more significant outside of itself; has something to say about the world we inhabit.

Artists associated with Constructionists;

Mary Martin

Was interested in dissolving the duality between architecture and art by having them use similar languages. Did a wall piece in belfast hospital using the modular grid of the building to inform the design and only using materials that were used in the building’s construction. Other pieces used the Fibonacci series (sequence of numbers where each number is the sum of the previous two) to determine the dimensions of the geometric elements.

Expanding Form 1954 by Mary Martin 1907-1969
Expanding Form 1954 by Mary Martin 1907-1969

 

 

 

 

 

 

 

 

Kenneth Martin

Also was interested in Fibonacci series to inform his works. Did a lot of sculptural pieces and mobiles, monumental works


 

 

 

 

Loris Greaud

The Snorks – a concert for creatures – the world of the abyss. He became fascinated with bioluminescence, a phenomenon where phytoplankton and other small sea creatures collectively produce giant clouds of light that can be detected from space. This is thought to be the most widespread form of communication between non-human creatures on the planet. He organised a giant firework display in Abu Dhabi (obviously very savvy about how much money they have there, especially for a project involving the marine). The footage of this was beamed onto giant screens in Times Square, New York via satellite – this he saw as acting as an artificial representation of bioluminescence. So we have the Earth’s largest communication interface receiving an interpretation of the most widespread form of communication between non-human creatures on Earth.


He has commissioned a band, Anti-Pop consortium, to compose music to be played underwater to the sea creatures at a depth between 3500 and 5000 metres below sea level. This will also form the soundtrack to a movie based on the event. His intention is to make the creatures produce the light phenomenon in response to the music.

[youtube http://www.youtube.com/watch?v=wuMTM5MVdXg]

 

Nanosculptures – tiny sculptures, only visible through an electron microscope, apparently inspired by Alice in Wonderland,

Cellar Door – Opera-based piece, collaboration with Ramundas Malasauskus. Consisted in on form of 3 rooms, separated by quick sliding doors. Geodesic design on floor carpet. There were identical triplets serving champagne to visitors and sweets were served with absolutely n taste of their own.

Adrian Searle’s Guardian podcast – live commentary on Cellar Door  http://podbay.fm/show/152548644/e/1209658026