//Project Description – Concept

Our brief for this project was to utilize some of the fundamental programming concepts learned in the Introduction to Processing course by integrating them into a morphogenetic project.

In my Thesis project I am focusing on Material Research, and how composite materials are structured at a microscale. All materials are composed of two main parts: An aggregate and a binder.

For this project I wanted to translate this concept of particles can be bound together by computational forces, rather than physical material. And how can these particles can be contained in 3-dimensional space. This can be done using: Vectors, Agents, and Gravitational Forces. Processing allows us to explore an endless number of geometric iterations.



Before the main body of the code external libraries were imported in order to extend the functionality of the code. The libraries used were: toxiclibs and PeasyCam, in order to do computational design tasks, and have a mouse-driven camera control library for 3D sketches.

// Code Development [Main Sketch]

In the main sketch there are three elements that need to be present:


//PeasyCam  //Particle Classe  //screen size  //frame rate


//new PeasyCam  //camera viewpoint  //new ArrayList (Particle Class) //origin of Particle Class (x,y,z)

//population of particles  //color  //shape


//return current number of items in the list  //pulls particles out of the Arraylist

// Code Development [In Class]

In the class sketch there are three elements that need to be present:


//Vector location  //Vector speed  //Vector acceleration  //Vector gravity


//creates Vector at location


//run();  //display  //move();  //bounce();  //lineBetween();  //flock(); separate(); cohesion();



Once we have all the parameters set up in our sketch we can begin exploring the visualizations. This code has a dynamic and evolving quality due to a the use of the random parameter in the origin point for particle initialization, as well as in the speed of each particle.

In the Particle Class, there is a real time calculation which is checking for the distance between all particles. We can determine how much we want to particles to: separate, cohese, and align. Based on the distance of the particles, we can visualize a line between them. When they move further apart, the line disappears.

The particle movement initially takes places inside a 3D box. However as time passes, the particles are no longer contained inside the box.

From this computational simulation we can get visual clues on how forces between particles work, and see how emergent patterns begin to take shape. These studies could be used to explore complex geometries for physical applications as well.






DYNAMIC MANIFOLDS – Processing is a project of IaaC, Institute for Advanced Architecture of Catalonia, developed at Master in Advanced Architecture in 2016/2017 for the course Introduction to Processing by:

Students: Noor El-Gewely
Faculty: Angelos Chronis