Monday, December 1, 2014

Rhynamo is Open Source!

Rhynamo:  An Open Source Tool for Reading and Writing Rhino files with Dynamo
On behalf of CASE, I am happy to announce that the source code for Rhynamo has been published to  Rhynamo is an open source project under the MIT license and is maintained by CASE.

Free builds of Rhynamo have already been made available through the Package Manager.

We are very excited to be contributing to the BIM and computational design community with this tool kit that enables tighter integration between popular design authoring tools.  We are committed to helping the AECO industry address their interoperability challenges.  Tools, like Rhynamo, are only one small piece of that puzzle.

A few notes about the project...

  • The project his hosted on it's a great service, check it out!
  • I highly recommend Source Tree as a tool for managing your repos
  • Rhynamo is a C# project being developed with Visual Studio (I am using 2013)
  • The project relies heavily on McNeel's OpenNURBS library.
  • Because it relies on OpenNURBS, you do not need Rhino to work on the project (most of the time)
  • Are you interested in learning Dynamo/Rhynamo?  Do you have questions about interoperability?  Reach out to us...

If you are going to be at Autodesk University in Las Vegas this week, be sure to check out what CASE is up to... and don't miss our party!

Saturday, November 29, 2014

Slingshot! for Dynamo Update

Introduce some SQL into Dynamo
It was about time something was done about the version of Slingshot! that has been collecting dust on the Dynamo package manager....   A year ago, the Slingshot package was released as a collection of Python scripts and several required libraries for MySQL and SQLite needed to be downloaded separately due to package limitations.

No more!  As of tonight, Slingshot! for Dynamo is distributed as a node library and ships with all the needed dependencies.  So if you are interested in cutting your teeth on some SQL within a graphical programming language, give it a shot!

Interact with relational databases
And just in case you forgot Slingshot! was open source... I have moved the source code to a new home over at (including both Grasshopper and Dynamo projects)

Thursday, November 20, 2014

Get the Rhynamo Package!

Get Rhynamo now through the Dynamo package manager
Rhynamo is now an official Dynamo package... freely available to the public!  I am still putting the finishing touches on the source code repository (more on that soon!), but that shouldn't stop you from getting the latest build of Rhynamo to try out in your work.

The private beta was very successful with over 300 people testing Rhynamo and providing very valuable feedback.  There is still work to do to improve the tool, but now that we have been actively using it on our own projects at CASE, we feel it is ready for the greater BIM and Computational Design community to start making use of it.

So give it a try!  Rhynamo is designed to work with the latest builds of Dynamo (0.7.4 or later).

Monday, November 3, 2014

Rhynamo - An Open Source Project

Coding Rhynamo from my hotel room at The Standard in Los Angeles
If you who were paying attention to my Twitter feed During ACADIA, you may have caught that I made a special announcement regarding Rhynamo, the OpenNURBS file reader/writer for Dynamo:

As of December 1, CASE will release Rhynamo as an open source project.

What does that mean? It means that we will continue to be releasing and developing free builds of the tool so you can continue to use Rhynamo in your work. It also means that brave coders out there will have the opportunity to leverage the Rhynamo source code to customize their workflow with OpenNURBS and Dynamo and develop new integrations.

Rhynamo only attempts to address a small piece of the larger design and production workflow. However, I believe that tools like Rhynamo provide us with a road map for what we, as users, should be expecting from our ecosystem of tools:
  • We need more fluid exchanges of data throughout the design process
  • We need higher levels of compatibility between authoring platforms
  • We need open file formats and APIs that let us customize our workflow
Projects like McNeel’s OpenNURBS and the Dynamo project should not be exceptions…they should be the rule.

I still have some code commenting, clean-up, and feature development to do ahead of December before release the project into the wild... but for those of you who are already relying on Rhynamo in your workflow, rest assured that the tool is not going anywhere and will continue to be developed into 2015.

I also want to thank the more than 300 testers who signed up to try out Rhynamo in the past two months.  Their contributions have been very appreciated and I hope they continue to play along as we enter into phase 2 :)

More info to follow....

Reading in a Rhino file containing a Hexagonal paneling system
Mapping complex Rhino panels to Revit Adaptive components
Creating a Dynamo surface and saving geometry as a Rhino 3DM.
Completed during the ACADIA 2014 Hackathon, this shows Rhynamo sending 'live' commands to Rhino.

Monday, October 6, 2014

Catch Me If You Can

Fall is usually a hot mess for conferences, workshops, and speaking engagements....

....2014 is no different.


It has been awhile since I have attended an ACADIA conference... the last one I visited was 2012 where I ran a Python for Revit workshop.  The computational design for BIM landscape has certainly changed significantly since then.  I will be joining the Autodesk crew to co-lead a porition of a 3-day Dynamo workshop at ACADIA in Los Angeles.  I will be discussing opportunities for using Dynamo for analytics, interoperability, and provide a preview of the future of the Rhynamo plug-in.


ACADIA isn't the only reason I will be in Los Angeles this month.  The AIA California Council is putting on a symposium titled NOW NEXT FUTURE which brings together a group of innovative architects and designers who are rethinking the future of the built environment.  I am going to be delivering a talk about CASE and our core philosophy BLDGS = DATA.


AU2014 is just around the corner and CASE will be out in full force.  I will be delivering 2 classes on Dynamo so be sure to sign up if you haven't already.  Also be sure to keep an eye out for the CASE party.  It is shaping up to be another epic event (sorry...I hear we won't have a mechanical bull this year)

Check out my classes...

Friday, August 22, 2014

Introducing RHYNAMO: Apply for BETA Testing!

Demoing Rhynamo for the Central States BIM workshop
I just finished up a string of presentations at the Central States BIM Workshops hosted here in Omaha.  I announced a private beta for a new Dynamo node library:  RHYNAMO.

Rhynamo is a plug-in that lets you read and write the Rhino 3DM file format within Dynamo.  This opens up a lot of interoperability potential between Rhino, Grasshopper, Dynamo, Revit, and more. I am excited to get more folks to try this out!


Wednesday, August 20, 2014

CASE Learning: Dynamo Essentials

CASE's Dynamo for Revit workshop... new and improved!
Dynamo is growing up so quickly that it is sometimes hard to keep up.  In this last year, the development team has completely refactored of the underlying code to support new workflows and user interface improvements.  In recent weeks, we've seen new educational content be released over at to ensure that users are up to speed with the basics.

At CASE, we've stayed ahead of the curve by developing our own computational design curriculum focused on practicing architects and real-world applications.  You may remember that we've been running Dynamo workshops for over a year now... but now our curriculum has been greatly expanded and enhanced for the newest versions thanks to some summer help from Lorenzo Villaggi!

Interested in a Dynamo workshop?  Reach out to CASE!

Dynamo Essentials Summary

CASE's 2-Day curriculum is designed to introduce participants to essential project workflows from the creation of abstract geometry to the manipulation of BIM systems.  If you are new to the world of computational design or are interested in expanding your skills to include Dynamo, this is a great workshop to get started.

Dynamo is a graphical programming language that allows users to create powerful algorithms for creating generative design systems, automating tasks, and enhancing the BIM experience.  Much like Grasshopper, Dynamo gives users a powerful interface for advanced geometric control.  A unique feature of Dynamo is its ability to interface directly with Revit as BIM tool.

Data and Geometry

CASE's curriculum begins with an overview of the Dynamo interface and example systems focused on data manipulation and basic geometric constructions.  These initial exercises are designed to give the participants a complete experience in designing algorithms while introducing key data concepts.
Geometric definitions for points, curves, and surfaces.
Abstract systems with controls and parameters

BIM Elements & Parameters

Our exercises quickly accelerate to applying new algorithmic concepts to the BIM process.  The curriculum proceeds to introduce the uses of Dynamo for creating and managing Revit elements and their parameters.  We address techniques for placing family instances and adjusting parameters.

Populating Revit adaptive components.
Using surface subdivisions for advanced patterns with LunchBox

BIM Project Development

Our main exercise is the creation of a parametric tower using the Swiss Re tower as a guide.  These exercises demonstrate the definition of  Revit levels, floors, structures, and facades.

Tower element definition for massing and floors.

Creating variations and options.
Tower structure and facade geometry definition.

Leveraging Data & Interoperability

Dynamo also offers numerous ways to manage and interact with data.  To conclude the workshop, our curriculum exposes participants to techniques for leveraging external data sources,  We have designed exercises that use Dynamo with Excel to enable interoperability scenarios for pushing and pulling data.
Reading data from Excel to reconstruct geometry and control parameters.
Using Dynamo to mine a Revit model and send building information to Excel.

Sunday, August 3, 2014

Buy This Book

Karen Kensek and Doug Nobel, professors at USC, put together an impressive list of contributors to their new book entitled Building Information Modeling:  BIM in Current and Future Practice.  The book is an expansive look at BIM and it's influence over all facets of the building life cycle.  Topics covered in the book include BIM in relation to design thinking, analytics, performance, and building delivery.

Daniel Davis and I teamed up to put together a chapter entitled "Performance Art:  Analytics and the New Theater of Design Practice".  In the chapter we discuss the challenges and opportunities that Building Information-centric approaches offer for achieving performance-driven design and high-performance teams.

Check it out!  You can buy it through Wiley or

Sunday, July 13, 2014

Migrating my LunchBox to Dynamo 0.7

Dynamo has been undergoing some significant transformations as of late.  The yellow/orange color is gone, there are some nice UI/UX enhancements, and... most significantly, the program has been completely refactored to support new geometry and workflows.

So where does that leave my custom tools from the previous version..?  Well those, too, needed a complete overhaul to keep up with these new developments.  As of right now, LunchBox is at about 80% of what it was from Dynamo 0.6.  The biggest challenge for me is that there has also been some seismic shifts with how Dynamo interfaces with Revit.  These have made migration much more challenging than anticipated.  For now there are a few Revit-based nodes that are only partially working but this will hopefully get ironed out in a future update...

For the adventurous users out there, new version compatible with Dynamo for 0.7 has been pushed up to the package manager.*

Go ahead and try it out!

*If you need versions compatible with 0.6, they are still there as older builds...

Sunday, May 25, 2014

LunchBox for Dynamo: Bring your BIM into your Algorithm

Memorial Day weekend is upon us here in the US.  If you have some free time this holiday weekend, be sure to check out the latest version LunchBox now available through the Dynamo Package Manager

The LunchBox package contains 30 new nodes to aid in your Revit workflow.  The nodes are completely free with the Python script source fully accessible.

The most notable recent additions are "Element Collector" nodes which allow you to reference different element types (families, rooms, curtain wall, etc.) into Dynamo.  This workflow makes it easy to reference key element geometry and mine your Revit model for information.

The Structural Framing collector allows you to reference existing Revit structural elements into Dynamo.
LunchBox for Dynamo currently features 27 nodes... and growing.

Sunday, May 4, 2014

LunchBox for Grasshopper Update

Just in time for Cinco de Mayo... here's a modest update to LunchBox for Grasshopper!

The plug-in has not been updated in almost a year and a half so it was about time to ensure the code remained in alignment with the latest Grasshopper versions (0.90075).  The biggest update comes by way of some new Excel components which are leaner, meaner, and faster.

Here is a list of the updates:
  • New installer...  be sure you uninstall older versions of LunchBox first!
  • General code update for the most recent versions of Grasshopper.
  • NEW Excel components for reading and writing workbooks.
  • NEW Deconstruct Wireframe to create node-centerline table definition
  • Fixed a small bug with the Flatness Check component.

Excel Components

Excel components seem to be quite pervasive in various plug-in packages.  The goal here is the keep them lean and fast.   The new Excel tools allow you to quickly read and write data to multiple workbooks and worksheets at once.  They are also SCREAMING fast and will help you push and pull entire tables of data into Grasshopper with ease.  In addition, I have provided a data viewer for the Excel components. If you right-click on the nodes, you will have the option to preview the tables you are reading and writing.

*If you were a fan of the older components, they are still there :)

Reading Excel table data from a worksheet with a table preview.
Writing multiple worksheets to Excel with a table preview.
Deconstruct Wireframe

This is a simple utility for taking centerline models and deconstructing them into a node list (points) and centerline definition (start/end node index).  I have found this type of tool to be useful for formatting model information for structural analysis.

Deconstructing a structural wireframe into a node definition.

Monday, April 21, 2014

Enough with the fools... let's look at some tools!

CASE Grasshopper tools and workflows to facilitate the energy analysis process.
While many of the tools from this month's CASE announcement showed a lot of promise it may be some time before we ever see renewed interest in t-squares and drafting tables.  But April fools aside, certainly readers of this blog can all agree that information has been at the core of what we do for a very long time...  the tools for leveraging it has just evolved into something far more sophisticated than a red pen (which is still pretty damn powerful!) 

At CASE, we have continued to build tools that are helping us seize new opportunities for leveraging building information.  We build internal tools to help us deliver better services, we build custom apps that meet a client's specific needs, and we build purpose-built workflows for projects.  Interoperability continues to be a serious process concern for designers, building performance is a hot topic for engineers and architects, and computational design continues to blend together with BIM to blur the perceived lines between design and production.

Our growing stockpile of custom digital ammunition has helped us to be agile in our approach and deliver better service to our AECO clients.  Among the many software development efforts, in the past year we have created over 50 new Grasshopper components for interoperability, advanced data management, modeling workflow, and analysis.  In the past 4 months, I  have authored over 42 new nodes for Dynamo.... many of which are available for download right now as LunchBox and Slingshot packages.

On the boards...

Data visualization workflow of daily heating and cooling per zone.

So what's on the drawing boards?  For one... energy.

Energy analysis is a critical task for both architects and engineers during the design process.  As a consultant, I have observed many firms struggle with laborious, time-consuming workflows for transitioning design models into analysis models.  Worse still, reliable analysis models often get constructed towards the tail end of a process when it has become too late to change the design based on the information.  As such, a truly performance-driven process remains an elusive goal for the building industry.

This year, Alan Jackson and I embarked on a process of developing a code base for energy analysis and data visualization tools for iterative design.  We will be presenting this work at the upcoming ASHRAE/IBPSA-USA Building Simulation Conference in September.

 Here are our main interests at the moment...
  1. Early-Stage Models:  Analysis isn't very helpful if you can't use them to help inform your thinking.  We want to make it easier for a design professional to create iterative energy models to inform conceptual thinking and early design.
  2. Interoperability:  There are many common file types present in the design and analysis process.  We want to design straightforward processes for consuming and exporting energy model data so it can be used in many different environments.
  3. Data Visualization:  Analysis is more than a spreadsheet data dump.  We are designing tools and workflows to make it easy to visualize and make sense of analysis results.
Here's a preview of what we're up to... as always, feel free to reach out if you have interest in working with us to evolve the process :)

CASE components for preparing a conceptual multi-zone analysis model.
CASE nodes for charting make it easy to visualize analysis results inside of Grasshopper.
Comparing results between parametric iterations of single and multi-story volumes.
Reading a GBXML created with Autodesk Revit and exporting it as an IDF for EnergyPlus

A short tour of some general analysis workflows...

Tuesday, April 1, 2014

New CASE Building Suite has landed! #CASEbs

After many late nights of hardcore research, development, ping pong, CoD, and energy drinks, we have finally released our own set of tools for the building industry!  We are set to transform how architects and engineers design, analyze, and collaborate with our new Building Suite!!!

...Visit our site to learn more about CASE Building Suite!...

Sunday, March 16, 2014

Rhino Meets Dynamo

I've had some fun with the Rhino file format in recent days.  You may remember some of the work done with the Import OpenNURBS CASE App.  To further this idea, I wanted to create a more fluid workflow with 3DM files and the world of Revit.  To achieve this, it only made sense to delve into the world of Dynamo customization and build new nodes for reading and writing the Rhino file format.

With Dynamo we can read Rhino-based information into the Revit environment... AND write Rhino files directly out of Dynamo.

These are still WIP nodes internal to CASE.  To get a sense of other stuff we have been doing with Dynamo, check out some of my workshop posts.


Sunday, March 2, 2014

TEX-FAB 5 - Dynamo Workshop Results

Michael McCune and I ran a sold out show at TEX-FAB 5...

The 1.5 day workshop exposed students and professionals to a wide variety of Dynamo techniques anchored within real-word design objectives and scenarios.  The workshop introduced techniques for utilizing Dynamo for conceptual design and project development.  We also explored opportunities for interoperability with Excel and customization with Python scripting.

Design workflows with conceptual design and project development
Participants getting a Python primer.
Interoperability with Excel

Monday, February 17, 2014

TEX-FAB 5 - This Week!

On Friday, I will be traveling to Austin, Texas for TEX-FAB 5!

Michael McCune will be joining me to deliver a 1.5 day Dynamo workshop.  If you are in the area, check out the event.  Look for the two guys in the CASE t-shirts.  :)

TEX-FAB always puts on a good show with great speakers and workshops.  Don't miss it!

Monday, January 27, 2014

January closes out with more LunchBoxes and Slingshots!

Cool stuff continues to develop for my plug-ins LunchBox and Slingshot!...  Be sure you are checking the GitHub site and the Dynamo package manager to test out the latest builds and nodes.

Slingshot! (for Grasshopper)
Data grid view for Slingshot! query components in Grasshopper.
Updates continue to trickle into the Slingshot! source code on GitHub.  Users might be interested in this nifty data grid viewer for query returns which provides a selectable data.  There is also some stuff under the hood which should speed up your command and query operations.

LunchBox (for Dynamo)
LunchBox Element Collector components for Dynamo
Don't be shy about pulling in your Revit elements into Dynamo.  LunchBox now provides a growing set of element collectors which let you reference lists and lists of Revit elements that might be existing in your model.  Need to pull in all the control points from your adaptive components?  Do you need to get data about Revit room elements?  It's a snap with LunchBox for Dynamo... get it in the package manager!