Looking Outwards 3

I looked at Torolf Saurmann’s Moebius Ring. I chose this piece because I find its intricacy really beautiful. The strange spiral the ring inverts itself on is facilitating to look at and the mesh design it has increases that enjoyment. Because of the mesh design, the ring is somewhat see through. This further complicates of the spiral inverts itself and requires the viewer to focus to understand it. I find it really fun and enjoy the design. The algorithm that generated this work was likely very versatile and I think that comes from the mesh design. Not only does the mesh save material, it also puts the entire project into component parts that were likely much easier to code into larger designs. The Ring is also able to stand up on its own and I wonder if that is a coincidence or something the algorithm makes sure can happen. Saurmann as an artist really likes round and circular shapes, which one can see in his other work. In this piece he doubles down on that by basing his design on a Mobius Strip, a circle that inverts and doubles back on itself. This piece does that multiple times, to the point where its hard to tell where one inversion stops another the next begins.

Torolf Saurmann

Looking Outwards – 02

Michael Hansmeyer is an architect who specializes in computational design. His projects range from entire theatre sets to very detailed lighting designs that are entirely visualized by a computer. I admire Hansmeyer’s work because it allows him to think of his architecture as a set of processes to generate objects. One example is his work on the set for Mozart’s opera in 2018. In this stage set he focuses on a grotto design in which the idea is created by the computer after he defines a set of processes the computer needs to go through to create a design. The algorithm he uses is within a CAD program where he can set rules and limits for the computer to follow. Within these CAD programs there’s some limits in what can be designed by the computer and the amount of information the designer has to give the program initially. As a result the artist’s sensibilities manifest in the outcome of the computer’s processes. This makes his work have a unique character that not only describes the computer’s abilities but also Hansmeyer’s creative bias.
Link: https://www.michael-hansmeyer.com/zauberfloete

Looking Outwards-03

Looking at Parametric world, I found myself particularly intrigued by a post by A Fractured Reality: this was a cross section of a mouse intestine has been stained with fluorescent dyes. With the dyes in place, it is easy to see how different parts of the cross section manipulates and comes together to form this complex geometry, creating this sense of parametric design. it was very interesting for me to see how life imitates art, even at the molecular scale. The individual who made this post is a physician who spent 3 years doing research in ophthalmology and 1 year working as a patient care technician.

“Glitch Reality”

What do you think about when you hear the phrase “Glitch Reality”? Does a picture of a future world made out of robots and pixels pop up in your mind? Because for us glitch reality is not a future anymore but rather present, or reality as the name itself implies. British-Colombian artist Matthew Plummer-Fernández constructed a dimension variables sculpture called “Running Trophy” and the algorithms that generated that project were 3D prints software (SLS nylon), die, CNC-carved machining foam and black piano paint. This sculpture isn’t perfect since it contains chipped edges that were caused by the loss of data during the process of digitization and creation. In order to create the trophy, there was needed to be a 3D scanning of a running trophy which helped Plummer-Fernandez obtain all information about the shape of an object which later on was used to scale-up and create a trophy. The bulging shapes and the dents are what inspire me about this project since no human on planet Earth is perfect and this runner has its imperfections due to data loss which makes it flawed yet so humane at the same time. The creator’s artistic sensibilities manifest in the final form by adding life and beauty into the sculpture; many would assume that that nothing beautiful can be made using a 3D software due to chipped edges and simple design however simplicity is an art and the thought that a sculpture like that was made out of algorithm in the 3D software printing is simply unimaginable.

https://www.plummerfernandez.com/works/glitch-reality/

Matthew Plummer-Fernández, Glitch Reality – “Trophy Runner”, 2011

This imagine is of a sculpture from a Glitch Reality project called “Trophy Runner” that was made using a 3D printer software in 2011 by Matthew Plummer-Fernández.

Project 3: Dynamic Drawing

var maxHue = 70;
var currentHue = maxHue;


function setup() {
  createCanvas(800,400);
  background(100);

  colorMode(HSB, 350, 110, 110);
  var skyHue = currentHue;
  background(22, 0, 20);
}

function draw() {


  var c = width / 2;
  background(255);
  noStroke();
  var skyHue = currentHue;
  skyHue = map(mouseX, 0, width, 0, 270);
  for (var rectY = 0; rectY < 700; rectY += 10) {
    fill(skyHue, 50, map(mouseX, 0, width, 100, 0));
    rect(0, rectY, width, 250);
    skyHue++;
    fill(212, 0, 79, 0.08);
    rect(0, 400, width, 300);


  }

  sun();    

    fill(192,192,192);
    triangle(-200, 475, 170, 180, 700, 475);
    fill(160, 160, 160);
    triangle(80, 400, 680, 230, 900, 400);
    
}

function sun() {
  var diameter = height + 100;
  S = map(mouseX, 0, width, 45, 10);
  var mouseangle = map(mouseX, 0, width, PI, TWO_PI+ QUARTER_PI);
  var d1 = 10 + (sin(mouseangle) * diameter / 2) + diameter / 2;
  fill(50, 100, 175);
  ellipse(mouseX, d1 - 90, 90, 90);
  fill(0, 0, 0,);
  
}

Project 3: Dynamic Drawing

dynamic drawing
var angle = 0;

function setup() {
    createCanvas(600, 450);
    
}

function draw() {
    // change the background color from light -> dark blue as mouse top -> bottom of canvas
    if (mouseY < height/7) { 
        background (188, 210, 232); //lightest blue
    } else if (mouseY < (height/7)*2) {
        background (145, 186, 214);
    } else if (mouseY < (height/7)*3) {
        background (115, 165, 198);
    } else if (mouseY < (height/7)*4) {
        background (82, 138, 174);
    } else if (mouseY < (height/7)*5) {
        background (46, 89, 132);
    } else if (mouseY < (height/7)*6) {
        background (30, 63, 102);
    } else {
        background (23, 47, 77); //darkest blue
    }

    //a box at the center of the canvas
    stroke(0);
    strokeWeight(3);
    line(250, 175, 250, 275); //left border of box
    line(250, 175, 350, 175); //top border of box
    line(350, 175, 350, 275); //right border of box
    line(250, 275, 350, 275); //bottom border of box
    fill(79, 37, 37); //brown color for box
    rect(250, 175, 100, 100);

    //open side of box if mouse touches border
    if (mouseX < 250 & mouseY > 175 && mouseY < 275) { //if open left side
        line(200, 150, 250, 175);
        line(200, 300, 250, 275);
        var r = 255; //pink fill
        var g = 180;
        var b = 200;
        fill(r, g, b);
        circle(mouseX, mouseY, 300-mouseX); //small circle attached to mouse
        fill(r-mouseX, g-mouseX, b-mouseX); //opposite color from small circle
        circle(0, mouseY, mouseX); //large circle on the side of canvas

    } else if (mouseX > 350 & mouseY > 175 && mouseY < 275) { //if open right side
        line(350, 175, 400, 150);
        line(350, 275, 400, 300);
        //rectangle spin on center, change size and spin angle 
        if(mouseX > 350 & mouseX <450) {
            fill(235, 207, 52); //yellow
        } else {
            fill(52, 235, 116); //green
        }
        push();
        translate(350, 225);
        rotate(radians(angle));
        rectMode(CENTER);
        rect(50, 50, mouseX-300, mouseX-300); //size of rect increases as mouse goes to the right
        pop();
        if (mouseX > 350 & mouseX < 450){ //if on left side
            angle += 3; //rotate clock-wise
        } else { //if on right side
            angle -= 3; //rotate counter clock-wise
        }

    } else if (mouseY < 175 & mouseX > 250 && mouseX < 350) { //if open top side
        line(200, 150, 250, 175);
        line(350, 175, 400, 150);
        var circleX = 300;
        var circleY = 150;
        //let circle size depend on how close mouse is to circles
        var size = constrain(dist(mouseX, mouseY, circleX, circleY),0, 30); 
        fill(115, 105, 205); //fill purple
        circle(circleX, circleY, size); //first circle
        circle(circleX, circleY-30, size*2); //2nd circle
        circle(circleX, circleY-60, size); //3rd circle
        circle(circleX, circleY-90, size*2); //4th circle
        circle(circleX, circleY-120, size); //5th circle

    } else if (mouseY > 275 & mouseX > 250 && mouseX < 350) { //if open bottom side
        line(200, 300, 250, 275);
        line(350, 275, 400, 300);
        //random neon spike of lines that follows the mouse 
        stroke(255, 230, 0); //bright yellow
        line(287.5, 362.5, mouseX, mouseY);
        line(287.5, 362.5, mapx, mapy+180);
        line(287.5, 362.5, mapx+40, mapy);
        line(287.5, 362.5, mapx, mapy+200);

        var mapx = map(mouseX, 250, 350, 210, 310); //map to a shorter length
        var mapy = map(mouseY, 275, 450, 235, 410); //map to a shorter length
        
        stroke(122, 255, 105); //bright green
        line(287.5, 362.5, mapx, mapy);
        line(287.5, 362.5, mapx-130, mapy-50);
        line(287.5, 362.5, mapx-40, mapy-20);
        line(287.5, 362.5, mapx-130, mapy+150);
        line(287.5, 362.5, mapx-150, mapy-39);

        stroke(248, 59, 255); //bright purple
        line(287.5, 362.5, mapx*2, mapy*2);
        line(287.5, 362.5, mapx*1.1, mapy);
        line(287.5, 362.5, mapx, mapy+220);
        line(287.5, 362.5, mapx+50, mapy);
        line(287.5, 362.5, mapx-80, mapy);

        stroke(150, 255, 250); //bright blue
        line(287.5, 362.5, mapx*1.5, mapy);
        line(287.5, 362.5, mapx-195, mapy+239);
        line(287.5, 362.5, mapx-230, mapy+180);
        line(287.5, 362.5, mapx+10, mapy+50);
        line(287.5, 362.5, mapx, mapy+190);
        line(287.5, 362.5, mapx*0.2, mapy*2);

        stroke(255, 150, 217); //bright pink
        line(287.5, 362.5, mapx-20, mapy);
        line(287.5, 362.5, mapx-100, mapy);
        line(287.5, 362.5, mapx-170, mapy+20);
    }

}

The idea behind this drawing is a box that reveals different changing elements depending on where you put your mouse. The most challenging part of this project was figuring out how to make the elements change based on their interaction with mouseX and mouseY. I had to do some trial-and-error to get the effects that I wanted.

Looking Outwards 3: Computational Fabrication

One computational fabrication project that I found particularly intriguing is the “Vespers” collection by Neri Oxman’s Mediated Matter Group at MIT. The collection contains three series, each with five 3D-printed and multi-material masks: the Past, Present, and Future.

I find the Future series to be most interesting as it explores death and rebirth by combining living and non-living materials in the masks. This was accomplished by integrating computational design with 3D printing and synthetic biology to direct the growth and expression of the microorganisms inside the mask. The algorithm and tools are customized so that the microorganisms reproduce the colors of the Past series and feature patterns based on the spatial logic in the Present series, maintaining cohesiveness throughout the entire collection and expressing the idea of “rebirth”. I’m impressed by “Vespers” because it’s not only incredibly innovative, but it’s also functional and relevant. The algorithms behind this can be used for so many other applications. For instance, it could be used to create smart packaging that reacts to its environment. This mask collection goes beyond traditional mediums of art; it thoroughly explores the intersection of computation, design, and biology.

A display of how the collection transforms between the three series
(Credit: Yoram Reshef)
A close-up view of Mask 1 in the Present Series
(Credit: Yoram Reshef)

Project-02: Variable Faces; Face Variables

During this project, I decided to use the codes from my self-portrait and use that to create different variables of faces. I made each click to change the features of eyes, hair color, and face shape. I tried to make the mouse clicks change the mouth shape, but unfortunately, I couldn’t make it so.

LO 02: Generative Art

I admire this project because of the depths and detail it contains with the use of only one color and shape. The number of layers that this project has creates the sense of depths and shades of red because of the overlap of different red circles. She used generative and computational systems, and her primary material is coding. She also likes to combine the use of traditional art with the aesthetics of algorithms and thinks the translation between art and coding is like a conversation. Her fluid concepts against the formal written coding to generate the precise images are repeated until she is satisfied with the final artwork. In her conceptual art, she likes to characterize it with minimalist and simple qualities like the many red circles that are layered over and over again in this artwork. She likes to focus on the translation of her conceptual thoughts and creativity through computations to create the abstract forms, movements, and colors in many of her artworks.