Project-03-Dynamic-Drawing

sketch

var r = 255;
var g = 255;
var b = 255;

function setup() {
    createCanvas(600, 450, WEBGL);
    background(220);
    text("p5.js vers 0.9.0 test.", 10, 15);
}

function draw() {
  background (220);
  fill(r,g,b);
  
  //to create that spin that is constant
  rotateX(frameCount*0.01);
  rotateY(frameCount*0.01);
  rotateZ(frameCount*0.01);
  
  //the cones that are in different positions and sizes change with the mouse
  cone(mouseX,mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  
  rotate(radians(90));
   cone(mouseX,mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  
   rotate(radians(90));
   cone(mouseX,mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  
  rotate(radians(90));
  cone(mouseX,mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (100,100);
  cone(mouseX, mouseY);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  translate (-100,-100);
  cone(mouseY, mouseX);
  
}

// colors change when mouse is pressed 

function mousePressed () {
  
  r -= 20;
  g -= 20;
  b -= 20;
  
}

This was alot of fun! Especially working with 3D objects!

LookingOutwards-03

A particular work that I find inspiring is Untitled by Alexander Ross. To describe the artwork, it looks like a collection of shapes like triangles and squares that are wedged in larger circles all together. It almost looks like skin cells under a microscope. The fact that I can’t exactly pinpoint what it is inspires me as it really does leave it up to the viewer to interpret the collection of shapes and spaces. I am unsure about the algorithms that the author uses, but he uses it well. Alexander Ross’s artistic sensibilities manifest in this piece as he is trying to leave it up to a larger audience. With this mission, it forces the artist to portray their art a very specific way making them use their artistic sensibilities. In conclusion, I really enjoy looking at this piece and the message that it has to offer.

http://alexanderross.work/5k7lvcbhfnc66uxbjpvme1c5zqvet0

Project-02-Variable-Face

sketch

var faceWidth =  150;
var faceHeight = 200;
var eyeWidth = 45;
var eyeHeight = 45;
var noseWidth = 7;
var red = random(1,255);
var green = random(1,255);
var blue = random(1,255);
var eyebrowWidth= 15;
var eyebrowHeight= 15;
var mouthHeight=30;





function setup() {
    createCanvas(640, 480);
    
    text("p5.js vers 0.9.0 test.", 10, 15);
}

function draw() {
  background(220);
  //face size and skin color
  fill(red, green, blue);
  ellipse(width/2, height/2, faceWidth, faceHeight);
  
  
  //eye size
  
  //outer eye
  fill(255,255,255);
  ellipse(width/2 + eyeWidth, height/2 - eyeHeight, faceWidth/6, faceHeight/8);
  ellipse(width/2 - eyeWidth, height/2 - eyeHeight, faceWidth/6, faceHeight/8);
  //cornea
  fill(0,0,0);
  ellipse(width/2 + eyeWidth, height/2 - eyeHeight, faceWidth/15);
  ellipse(width/2 - eyeWidth, height/2 - eyeHeight, faceWidth/15);
  fill(255,255,255);
  rect(width/2 + eyeWidth, height/2 - eyeHeight,4,4);
  rect(width/2 - eyeWidth, height/2 - eyeHeight,4,4);
  
  //mouth and eyebrow
  line(width/2-mouthHeight, height/2+mouthHeight, width/2+mouthHeight, height/2+mouthHeight);
  line(width/2+eyeWidth+eyebrowWidth,height/2-eyeHeight-eyebrowHeight,width/2-eyeWidth-eyebrowWidth,height/2-eyeHeight-eyebrowHeight);
  
  
  //nose
  fill(red, green, blue);
  ellipse(width/2, height/2,faceWidth/5, faceHeight/7);
  fill(0,0,0);
  ellipse(width/2+noseWidth, height/2, faceWidth/20);
  ellipse(width/2-noseWidth, height/2, faceWidth/20);
  
  
}

function mousePressed() {
    // when the user clicks, these variables are reassigned
    // to random values within specified ranges. For example,
    // 'faceWidth' gets a random value between 75 and 150.
    faceWidth = random(150, 250);
    faceHeight = random(150, 250);
    eyeHeight = random (30,40);
    eyeWidth = random(30,40);
    noseWidth= random(6,8);
    red = random(141,241);
    green = random(125,155);
    blue = random (36,125);
    eyebrowWidth= random(10,20);
    eyebrowHeight= random(20,30);
    mouthHeight = random(30,40);
}


Doing this project was a lot of fun, but it was a little tedious trying to figure out all the measurements. Little sad it came out looking like a pig more than a human but it still looks cute to me!

Looking Outwards 02: Generative Art

One Generative art piece that I find inspirational is My Climate 2050 by Mitchell Whitelaw and Geoff Hinchcliffe. Made in December 2018, it was requested by Australian Conversation Foundation to “communicate localized climate change impacts for a range of sites around Australia”. The mission for this generative art piece is what I admire so much about it. Especially when a time where Global Warming is becoming such an issue, using art to make a statement is extremely necessary. It touches on the idea that art can create change within our world. Using art also enables a larger audience to understand and take action against a complicated idea like Global Warming. An algorithm was used with a dataset of 4700 projections to develop an “adaptable visual form that reveals changes including average temperature increase, summer extremes and changes to seasonality”.  Mitchell Whitelaw’s and Geoff Hinchcliffe’s artistic sensibilities manifest in this piece as they are trying to persuade a larger audience on an issue. With this mission, it forces the artists to portray their art a very specific way making them use their artistic sensibilities. In conclusion, I really enjoy looking at this piece and the message that it has to offer.

https://mtchl.net/acf-my-climate/

Project 1: My Self Portrait

sketchDownload
function setup() {
    createCanvas(600, 900);
    background(220);
    text("p5.js vers 0.9.0 test.", 10, 15);
}


function draw() {
  
//hair 

  stroke(0,0,0);
  fill(0,0,0);
  ellipse(300,450,350,400);
  rect(130,450,340,230);
  quad(130,450,130,700,470,450,470,700);
  stroke(193,134,14);
  fill(193,134,14);
  rect(240,600,120,100); 
    
//face in general

  stroke(193,134,14);
  fill(193,134,14);
  ellipse(300,450,275,350);
  stroke(235,163,20);
  fill(235,163,20);
  ellipse(300,450,230,350);
  triangle(300,250,290,280,310,280);
  stroke(193,134,14);
  strokeWeight(7);
  arc(300,600,50,15,PI,0);
  noFill();
  strokeWeight(2);
  fill(255,255,255);
  

//features

  //eyes
  ellipse(240,400,60,25);
  ellipse(360,400,60,25); 
  fill(77,53,6);
  circle(240,400,25);
  circle(360,400,25);
  fill(0,0,0);
  circle(240,400,15);
  circle(360,400,15);
  fill(255,255,255);
  stroke(255,255,255);
  rect(240,400,3,3);
  rect(360,400,3,3);
  stroke(193,134,14);
  
  //eyebrows
  stroke(0,0,0);
  strokeWeight(8);
  line(330,380,360,370);
  line(330,375,360,365);
  line(330,370,360,360);
  line(360,370,400,385);
  line(360,360,400,385);
  line(330,380,330,370);
  
  line(270,380,240,370);
  line(270,375,240,365);
  line(270,370,240,360);
  line(240,370,200,380);
  line(240,360,200,380);
  line(270,380,270,370);
  strokeWeight(2);
  stroke(193,134,14);
  
  //nose
  strokeWeight(6);
  line(290,410,285,470);
  fill(235,163,20);
  ellipse(300,470,30,20);
  stroke(193,134,14);
  line(285,470,275,490);
  line(315,470,325,490);
  fill(137,100,14);
  ellipse(285,490,20,10);
  ellipse(315,490,20,10);
  fill(193,134,14);
  rect(295,490,10,30);
  fill(255,255,255);
  strokeWeight(2);
  
  //lips
  stroke(195,12,67);
  strokeWeight(12);
  line(295,520,255,530);
  line(305,520,345,530);
  stroke(152,7,50);
  strokeWeight(16);
  line(262,532,338,532);
  line(270,538,330,538);
  stroke(195,12,67);
  strokeWeight(12);
  line(255,530,285,550);
  line(345,530,315,550);
  line(285,550,315,550);
  strokeWeight (2);
  stroke(137,100,14);


}

LO: My Inspiration

One interactive project that has inspired me is Van Gogh, the immersive experience. The project uses 360 projections, 15,000 ft squared screens, and virtual reality to make the paintings come to life, almost like you are stepping into the painting. The exhibit is authored and designed by Massimiliana Siccardi, with accompanying soundtrack by Luca Longobardi. The first exhibit was opened in France and later expanded to many other places. The exhibit was created with the help of 60,600 frames of video, 90,000,000 pixels and 500,000+ cubic feet of projections. For the Toronto location, they used Panasonic laser projectors and an internal network, as well as Panasonic’s Geometry Manager Pro Software to create the exhibit. This exhibit points to a future where art is not only on the canvas unmoving but interactive through virtual reality. With the rise of technology, it has opened up the doors to more art forms and also art forms that reimagine the past.