All posts in Visualization
Processing Iteration Viewer
This post highlights our evolving efforts to use Processing for viewing images and performance metrics of a large number of iterations generated in Grasshopper.
Fluids in Processing
We recently checked out the MSAFluids library for Processing, a fluid simulation engine based on Navier-Stokes equations. This is modeled off of Jos Stam’s algorithms which are used for gaming and animations. Not physically accurate, but visually awesome.
Acoustic Reflection Form Finding
In the post, Acoustic Reflection Patterns, we described an approach to reflecting a set of rays off of surfaces to see how the pattern of rays diffusive. We’ve also explored how …
Processing and Optimization Solvers
The way we interface with databases is particularly important for designers. An optimized value does not necessarily agree with design intent. In fact, it often doesn’t; so running a solver can only go so far in the process. We therefore require flexibility in considering a range of these optimized values, and need to study our data from both an analytical and abstract level. The interface needs to be both data-driven and visual, which sounds like a job for Processing.
Acoustic Reflection Patterns
This post explores the mapping of reflection patterns generated by performing an acoustic raytracing simulation on a set of different diffusive surfaces. As with any type of simulation it’s important to be able to quantify or at least visualize the results of the simulation in a way that makes it possible to make observations about what is happening. For this study we placed a vertical dome in front of the diffusive geometry and then intersected the reflected rays with the dome to see how the reflections were being distributed.
Rorschach Shadow Diagram Implementation
Here’s a look at the implementation of the Rorschach Shadow Diagram, an overshadowing metric we’ve developed to improve legibility and quantify our shading studies. The first post presented its concept while this post demonstrates its application.
Section Boxes in Grasshopper
Here’s a demo of a script we’re using to create section boxes in Grasshopper similar to those in Revit. This doesn’t split geometry but helps with animating or managing a large file in your viewport.
The section box script is similar to Luis Fraguada’s clipping plane script, except this script’s input is a closed brep and uses Python.
Rhino will limit the number of clipping planes in a viewport to 10. The script will work on any closed brep with 10 or fewer faces. It can also be quickly edited to work with planes. Enjoy!
People as Particles
The tool we’re sharing in this post we’ve named the People Populator and it came about from a desire to visualize what a few hundred people would look like in a lobby space. Each person is instantiated in the digital model as a point object or particle that tries to achieve it’s preferred proximity from others while also avoiding standing in front of doors, stairways, and other obstacles.
Tangible User Interfaces
Here’s an early look at the tangible user interface with Grasshopper. In this video, we’re using the Reactivision Listener for Firefly (a plugin for Grasshopper). While the video represents one basic model, we can use hundreds of these tags (called fiduciary markers) to represent building masses or program blocks. By plugging a physical model into Grasshopper, we now have access to a wide range of tools for simulation, visualization, and geometric generation. Each scheme can be saved with a simple toggle and studied further.
Make2D Animations
All Rhino users love the Make 2D command. It allows one to quickly create drawings and have a high degree of control over their visual output. We’ve put together a Grasshopper Python script which will create Make2d drawings as an animated pdf.
The line weights and color can be controlled within Grasshopper, which leaves little required post-processing and allows us to drive these values with other parameters. For example, the above video shows an example of line weights changing size as the camera moves further away from a target object. This way we can establish rules of traditional drafting and use those as parameters for driving an animation.
