« Thesis Introduction | Main | Complexity Machine 1 »
Processing for Architects
I'm writing the software for my thesis project in Processing, an integrated development environment created by Ben Fry and Casey Reas as a tool for artists and designers to explore software development as a part of their creative work. Processing employs the Java programming language along with code libraries that provide a quick start for creative types to build software that deals with visual effects and interaction.
In architecture, while two dimensional images are useful, being able to produce and manipulate three dimensional data is even more so. Luckily Processing includes the capabilities of OpenGL, industry standard software for visualizing and creating 3D scenes. While most development environments require a fairly deep knowledge of the mechanisms within OpenGL, Processing takes care of these intricacies for the developer. Perhaps even more importantly, there are a growing number of Processing users who contribute code and help to those who are new to the tool.
To get started, you can download Processing for free. As an effort to speed the uninitiated along, I've created a simple example program (called a "sketch" in Processing parlance), that you can use to start exploring. Before we begin you will need a few supplies:
- Processing
Unzip it and place the "Processing" folder in with the rest of your applications (generally Program Files on Windows and Applications on Mac) and make a note of where you placed it. - Kristian Damkjer's very helpful OCD Library
Unzip it and place the OCD folder in the libraries folder inside the Processing folder you placed in with your applications. (On Windows, something like c:\Program Files\Processing\libraries\ and on Mac something like /Applications/Processing/libraries/) This library makes moving around the 3D scene much less complicated. - My 3D Processing Example
Unzip it and place the template3d folder on the desktop or similar location for now.
Start up Processing and select File > Open and locate the template3d folder. Select the template3d.pde file and then the Open button. What you'll be looking at is the Processing user interface with some sample code that I wrote to act as a starting point for 3D sketches.

Press the Run button (the one at the top with the triangle) and the sketch will start up. The sketch generates a series of random boxes, which can be regenerated by pressing the R key.

Try moving around the scene by dragging the mouse around, which orbits the camera around. Holding down the Shift or Alt keys down while dragging will pan or tilt the camera, respectively. Pressing the X key will export a DXF file of the scene to the template3d folder and pressing the I key will export an image of the current view.
The navigation and export functions included in this example are the primary elements that I've identified as crucial for any Processing sketch that will be used in an architectural setting. The random boxes in the example are included as a basic introduction to drawing 3D geometry in Processing. Try changing the maxDimension value at the top of the code to something like 20 to see how a small modification can have a big effect on the output. The Processing site has some good tutorials, should you want to explore more.
I'll be writing about more Processing techniques useful for architectural work in the weeks to come.
Posted on February 13, 2008 3:29 PM by westr015 | Comments (14) | TrackBack (0) Architecture Computation Design Grad School Thesis
Looking good ... can't wait to see the final stuff!
Posted by: Christopher Baker at February 16, 2008 10:04 PMAlso, have you seen Alex Dragulescu's work (http://sq.ro/)?
Posted by: Christopher Baker at February 16, 2008 10:06 PMI have seen Dragulescu's stuff. I'm fairly certain what I'm working on will produce similar messes... though the architects will want me to try and tame it.
Posted by: Aaron Westre at February 17, 2008 10:59 AMSo how about the final result ? Is it finish ?
Posted by: Bali Villas at November 22, 2008 11:05 AMwhat is the result? it has great potential...hope to try the finished software
Posted by: bali at February 28, 2010 6:42 PMI think all that stuff is bologna! Seriously, the only one who knows our fate or can give you amazing advice is God.
Posted by: Lucid Dreaming at August 7, 2010 9:32 AMIt sure appears so. Great blog by the way!
Posted by: Mandy at September 4, 2010 2:48 AMHave you considered the fact that this might work another way? I am wondering if anyone else has come across something
Posted by: Letters from Santa at October 17, 2010 10:26 PMI am so glad I as a final point found somebody else who shares my views and opinions. It's good to understand that you are not weird.
Posted by: mlm leads at December 10, 2010 11:30 AMDespués de Niza! GA es también mi mayor ganancia. Sin embargo, no es mucho.
Posted by: solution emailing at December 13, 2010 3:30 AMWhat you said a lot of sense. However, think about this, let's suppose you offered a little more? What i'm saying is, I do not want to tell you how to run your blog, but what if you actually added extra content that can grab peoples awareness? Just simply as a video clip or maybe a picture or few to have your readers psyched regarding what you mentioned.
Posted by: Isaias Feagler at December 13, 2010 8:24 PMHow are you ? This is Sanjay Das
Posted by: kreditme@yahoo.com at December 19, 2010 9:16 AMit makes me sooo hot knowing you're watching me play with myself. i am a very open minded sexual person here to make your fantasy cum true. your request is my pleasure! i'm up for trying anything new at least once. i can't wait to play with you.
Posted by: nasysarah at December 21, 2010 5:07 PMLike everybody who is not in love, he thought one chose the person to be loved after endless deliberations and on the basis of particular qualities or advantages.
Posted by: vimax at December 22, 2010 9:37 PM