Category Archives: processing.org


/sneak preview.

Definition file (.ghx).

Referenced assembly (.dll).

Please note that the referenced assembly is based entirely on code from luvtechno.net.

Now that we didn’t win anything (so it seems) I can publish this project. It was great working on it, though a bit stressful towards its final stages…

Here it goes:

This project is a collaboration between Veronica and me.

Creation

The urban bacteria is a responsive structure that is not built; it grows following the path dictated by an algorithm that takes into account the geometry of the site as well as the available sunlight. It adapts to almost any given urban space, evolving into an organism fit for the conditions it encounters.
We created in processing (processing.org) an autonomous system that is emergent (it demonstrates an “internal will to reach coherence” – Cecil Balmond). It was used to compute the structure of the bacteria and simulate its growth in a variety of conditions.

Pulse

It has a life of its own. It pulses along with the variations in sunlight: when there’s a excess/high amount of sunlight available it increases its volume, regaining its initial form as a direct result of a decrease in available sunlight (caused by clouds, sunset). In its “expanded” form it offers more shadow to the pedestrian space below when it is most needed, increasing its quality and, therefore, inviting people to use it.

Daylight > nightlight; natural light > artificial light

During the day, the “urban bacteria” stores the excess energy resulted from sunlight and releases it during the night. The quality of an urban space is linked with the amount of light it receives during the night – this “living structure” proposes an ecological/economical way of transforming daylight into night light, sunlight into artificial light.

Materials

The membrane of the structure has a multiple role: absorb sunlight and create shadow during the day and release light during the night. We propose a multi-layered material consisting of two layers of polarizer sheets (in between which there’s another layer of cellophane) superimposed over a photovoltaic lattice that transforms sunlight into energy. The double layer of polarizing material creates an intense visual effect (by speculating small shifts in geometry and sunlight angle) that can be used to enrich the surrounding urban space.

“Urban bacteria” is an autonomous shape living in concordance with the rhythm of the environment.

Final boards:

This project was developed for the Velux IVA competition.

Scripts

RhinoScript and Processing

Process

Existing geometry in which the bacteria would evolve was constructed in Rhino and then custom-exported as simple rectangular planes in a specially built p55.in file. This would be custom-imported in Processing.

The growth algorithm was programmed in Processing. Running inside the imported geometry the bacteria would grow. The thus-grown (see above for details) structure would be custom-exported for Rhino.

Via RhinoScript, the “bacteria” would be imported and given a form via a custom script that took into consideration the time of day. Fin.

prezentare_1250.jpg mobilier-copy.jpg plansafinala3_1200.jpg plandesfasurate_1200.jpg

We started out on this by analyzing the area and its surroundings from the point of view of circulation (more on how we did this). How would people move around? The conclusions from this study where integrated later on in the project.

vederi_1200.jpg

Next we took on the task of (re)creating the landscape – modify the terrain in a functional yet unobtrusive way. Formal concepts revolved around radiolaria, foam, water, waves etc. Luckily we had a working circle packing applet in processing ready (which was used for this). From here on, it was quite straightforward: expand the circles to smooth spherical caps and smartly transform them into urban furniture.

The interstitial space that remained between the”bubbles” is packed with wood alongside the routes we discovered to be ideal using the circulation study. The rest is English lawn :) pure green smartly-cut grass.

This project is a collaboration between Veronica and me.

Tools we used include:
Processing was VERY important early on in the design process – we used it for the circulation study as well as for the early circle packing experiments (size, density, spread etc).

Rhino and RhinoScript: RhinoScript is great – we used it extensively (create spherical caps based on the generating circle’s radius, expand circles, contract circles, import circles which the processing applet generated, etc.). Rhino was used for everything else – 3D modelling and, of course, making valid STL files for the 3D printer and also exporting the right things for the laser printer.

macheta1.jpgmacheta4.jpgmacheta2.jpg

Laser cutting was done here (as always).

3D wax models were kindly made for us by mazarom (at the moment the only 3D printing service in Bucharest). If you need a complicated model, don’t hesitate to contact them!

Plotting the final presentation was done at studio spot. They don’t have a webiste

How things are going on:

desk22.jpg

Work done for the current school project by Veronica and me. This is just a snapshot, stay tuned for more. I’ve written 2 pretty interesting scripts for this one… so stay tuned.

 or swarm intelligence?

Using processing to make a circulation study in a public area. It’s for the current school project. More details later.

plansa1-copy.jpg

I’ve used Shiffman’s boids sketch as a start, and gradually started building up with some attractors, Point Obstacles (which are attractors with negative pull basically), and Linear Obstacles (which were a little bit tricky, but this helped out a lot). Also very inspirational were kokkugia’s experiments.

When it’s nice and propper, I will  add some details and upload the code/sketch.

It’s lame to work on familiy business, and even more to blog/brag about it, but I give you Romania’s first ever (probably) computational book cover!
The process behind the graphics is circle packing. Algorithm bravely inspired by the description that this brilliant guy posted on the RhinoScript Wiki.
Oh, and someone had this idea to use sphere packing (which is essentially the same with circle packing only in 3d) in architecture.




deconstructing a sphere a la bruno zevi :) or not.

sphere harmonics part 2
sphere harmonics part 2
sphere harmonics part 2

Ribbon effect obtained quite simple instead of i++ in the main for loop we now have i+=2 or i+=3

sphere harmonics implemented in processing.
some screenshots (here’s the complete list):

grab-21
grab-30
grab-36

This video recording done with my cameraphone.
A nifty addition to the sketch – everything is inside a big sphere lighted with a spotlight, which gives us a very nice gradient to the background. Hack came off this processing discourse topic.

Windows application is here, Mac application is here. No sketch-in-a-browser for this one. The code is in the zip file.

Yep, and music credits – soma.fm presenting “Urchin” – not the 70’s band google’s throwing in its searches.

Simple yet effective:

A nice way of using lookup tables – tribute to toxi.
No applet for this one, nor for the DLA fractals toy – this one uses sound, and it’s a big hassle getting the applet singed and then making opengl work properly in a browser; maybe in some distant future, i’ll export the apps and upload them. Code available on request – there’s not much to it, though :)
Oh, and exporting the video using Shiffman’s moviemaker library.

Sau DLA pe scurt. Joaca buna in processing in loc sa invatam pentru geometrie sau rezistenta materialelor. Numa buni fractalii astia de testat toxiclibs – bune chestii, restpect.

More to come soon. M-am gandit si we shall react to sound. Nu cu chestiile astea, devin prea complicate geometric in prea putin timp. Nu-i asa ca arata bine daca le colorezi?

Thank you and you for inspiration. Check those links out to see how real masters are doing it :)

Now everything’s smoother – esp. camera movement (the camera now aims towards the overall center of the flock).
The applet is here (does not work 100% since opengl in a browser isn’t that common. it surely won’t work if java 5 (1.5) is installed on your machine).
Applications are here (download the appropriate folder for your os).
Command list (ripped from the code):

void keyPressed() {
switch(key) {
case RETURN:
changeCenterAtRandomCode();
break;
case ‘e’:
evade = !evade;
didi.evade(evade);
break;
case ‘b’:
bgclr = color(0, 0, 0);
break;
case ‘w’:
bgclr = color(255, 255, 255);
break;
case ‘r’:
didi.lines();
break;
case ‘h’:
big = !big;
default:
break;
}

Later edit: zipped mac app here, inside the os folder. never thought of this.
Also, take care when using ‘e’ (evade key). press it twice.