My Blog: projects, sketches, works in progress, thoughts, and inspiration.

Tagged: processing

Continuing with particle systems in Processing I stumbled upon some effects I’m very happy with. Although it wasn’t exactly what I was trying for at the time but have an aesthetic which is very interesting to me. The path of each particle is drawn at each frame with a semi-transparent circle, gray with a white border. The way the circles overlap create a pseudo 3d effect which reminds me a lot of an electron scanning microscope.

processing_particle_system_anemone_1

Read On »

Read On (Post Continues) »

ink wash particle system

Although there are a couple particle system libraries available for Processing I thought I’d build my own anyway. For practice, a better understanding of what’s going on, and more control over the details. With a little help from Dan Shiffman I began working on one a little while ago but never quite finished it. Trying to extend my Wave script to flow fully in two dimensions, a particle system seemed like a good tool. All the particles repel each other and have realistic motion with force, acceleration, and velocity vectors. I also added a spring class and a few other little tools.

On the way I was distracted a few times and made a few other generative sketches. This one simply creates particles which slowly fade. A curve along all of the points with a very low opacity creates the brushy textures.

Post Page »

Line Wave

01-17-09

Tagged: , ,

Concentric circles and lines always seem to catch my eye. They hold a lot of movement and tension and have an inexplicable beauty to me. This little morning project scripted in Processing draws a waving horizontal line. Each point on the line has a vertical speed and acceleration, and the line is recalculated fifty or so times.

To add a little more depth I put in a blur filter before each new line set, and an invert filter creates some nice complimentary colors.

line wave 3

line wave 5

Read On »

Read On (Post Continues) »

3d sound form

Working in 3d in Processing is all well and good but does have it’s limits in terms of rendering. To get a better rendering of three dimensional forms created with Processing it’s possible to export them to a file that a 3d modeling program can read. From my experience, the exported file isn’t perfect, but with a little work it can be turned into a nice model. A Processing script generated a 3d grid based on sound, the three axes representing amplitude, frequency, and time. Using the DXF library, I exported the model.

This raw data is a little bulky and has a few issues. All the segments of the form were separate objects. After importing the script into Blender (a free 3d modeling and animation program) I selected all the objects, joined them, and then in edit mode removed doubles. This combines all the meshes if they are lined up. Then using the ‘make faces’ on auto will fill in all triangles and quads. The image above was also extruded to give it some form and has a subsurface modifier for a smoother look.

Post Page »

Initially this script replicated some drawings I have been working on in my sketchbook. Although it’s very meditative to create such drawings I feel the interesting aspect is the form and texture that emerges from the repetition of the simple process. Creating a script to replicate this system allows the work to be detached from a particular composition and focus on these aspects which interest me. It also allows for the image to be animated.

The script is written in Processing. Each circle buds new circles at random angles. The new circles grow until the hit they collide with another. The color of each is a slight variation of it’s parent.

processing_cell_cluster_2

Read On »

Read On (Post Continues) »

This is the same script as my last video. Each particle on the sphere has a curve drawn to all nearby particles with an extra point in the middle scaled toward the center. This creates a spike at each point. Again the height is determined by the density of particles in a particular area on the sphere. The script uses the OpenGL 3d environment and the video library to capture the rendering. The OpenGL library has some issues working with the video library but renders many layers of transparent objects better.

Read On »

Read On (Post Continues) »

This Processing script generates a randomized particle system over a sphere. I’ve been playing around with it for a few days and, although the script has gotten a little messy, I’ve come up with a few interesting things. Each particle is generated from two random rotations and a set radius and contains a second point based on another radius. Initially I was using these points to create curves radiating from each particle, but got a little distracted. In this video the second radius of each point is dynamically calculated based on the density of particles it’s proximity. Lines are drawn between nearby points to create the web effect.

Post Page »

Wikipedia Structural Map

The next step in my Wikipedia project is to create a static map of the entire site (more than 2.5 million pages). I’m not entirely sure how large the image will be, but judging by small scale renders the vector file should be no more than a two or three hundred megabytes. This is huge, but to be honest not as large as I expected. I’m building a new script which will not render any of the pages on the screen and will run autonomously, first getting the data, then organizing it, modifying placement to prevent overlapping text, and finally exporting a PDF file. Hopefully I can build the script to sacrifice time for a lack of power so I can use computers currently available to me.

Post Page »

Dan Shiffman is an incredible programmer, artist, and teacher. He is one of the developers behind Processing and has also build a few useful libraries including the Most Pixels Ever library which allows a Processing application to run on multiple screens. His SMS library allows Processing to gather data from an Apple Macbook’s sudden motion sensor. This little gyroscope is normally used to stop the hard drive if the computer is dropped, but it could be re-purposed for just about anything.

I owe a lot to Dan as his tutorials and example scripts have been a huge help to me as I’ve been learning Processing. If you’re new to the language I highly recommend all the resources he has on his site. He also has a great book on learning processing and plenty of online examples to go with it.

Post Page »