If you are interested in learning Blender from an API (Python) perspective, check out:
Nathan’s Blender Python Notebook – THE PROVING GROUND
At the moment, the content is primarily along the lines of ‘getting started’ and basic modelling. I’m sure it will get more advanced very soon…
I played with Blender back in mid-2008. At the time I was using some of the randomization capability to make some organic forms for ultimate use in Revit. I used a plugin called Blender World Forge (ver 0.1.0). I had some success, but it wasn’t total. Here is an example:
I have since had more success with organic forms in Revit using meshmixer:
Using meshmixer to morph your Revit Topography
Nathan Miller strikes again:
I am creating a strange ‘catenary’ surface with Kangaroo and Grasshopper. I am then feeding the information into an Excel spreadsheet and reconstructing the shape using Adaptive Components via RevitPythonShell. Note how I am also able to adjust the radius parameter of the pipe members within Revit to reflect the ‘force’ diagram created in Kangaroo.
The Proving Ground by Nathan Miller: Revit API: Divided Surfaces and Excel Interop
Now here is something cool – Jon Mirtschin of Geometry Gym has been working on an IFC importer add-in for Revit (my previous post here) (current version 0.0.23 download direct here, or source page here).
What made me go ‘wow’ today was this: using this add-in, you can take an IFC file and import it as a Generic Model Adaptive Component in Revit 2012. You can select the points and adjust it just like ANY Adaptive Component – but it came from Grasshopper via IFC!
Here is how to do it:
- Download and install the add-in
- Upon opening Revit 2012, you can see the add-in under External Tools – Geometry Gym IFC Importer
- You will need to email Jon to get a license XML file. Paste that into the appropriate folder.
- Now, run the Geometry Gym IFC Importer again.
- Download, then select the IFC file that Jon provided today (see below)
- Click ‘Proceed’ then wait a bit
- The IFC will now appear as a bunch of Adaptive Component instances that you can select and modify!
Here’s the Grasshopper model, and here’s the IFC file.
Geometry Gym: Generative Adaptive Component
In fact, there is some serious 3rd party development happening on the Grasshopper to Revit front – check out:
You can implement randomization in your scripts using the .NET Random class. For example the following code will return a random double number between 0 and 1 in the RevitPythonShell…
Read more at:
Revit API: Randomization – THE PROVING GROUND
Nathan Miller has been working on a number of cool things for some years now. In one recent post about Slingshot for Revit, he states “the tool will provide different means of connecting Revit (and Vasari) to relational database management systems, including MySQL. More importantly, I am interested in establishing common database schema that will allow for a more fluid workflow between Revit and external design tools like Rhino and Grasshopper. This includes sharing parameters and geometry.“
He has been “prototyping some functionality via the RevitPythonShell plug-in in Vasari. Python is giving me a more fluid workflow than the usual Revit development process. Eventually, the tools will become true add-ins…”
The Proving Ground by Nathan Miller: Slingshot!… for Revit?
|Image from The Proving Ground – “A point cloud in Vasari being created using a MySQL database…”
Nathan Miller of The Proving Ground says:
“As a key component of this, I have added a lot of content to my program lab. The page includes a growing collection of scripts. My focus right now is on documenting code for RhinoCommon and Grasshopper that I think may be useful in scripting workshops. Processing and Revit code is also sprinkled throughout.
The Proving Ground by Nathan Miller: The Proving Ground Wiki and Program Lab