Revit to Rhino WIP / how to keep family object intact?

I followed this tutorial and Grasshopper script to export Revit model to Rhino WIP.
https://www.rhino3d.com/inside/revit/beta/samples/transfer-revit-to-rhino
However, all family objects are exploded into individual pieces in Rhino. Is there a way to keep each family as a block?

The are a number of pluggins that help with block creation. But Revit Family/Types do not map to true blocks. Family/Types are probably reflected by VisualArq Styles. Since in Revit, Families can very in Types from instance to instance.

Of course static family/type/instances will map to blocks fine.

Elefront can combine blocks and data with GH.

Human also supports the re-definition of blocks - and you can specify attributes (layer and other information) just like you would if baking.

UNstudio also created a script, downloaded in this article: https://www.unstudio.com/en/page/5887/study-block-strategies-part-1

Here’s how i do it with Elefront.

Basically you need to move the block objects to the origin before defining the family. Then place the families per the instance locations.

If i recall i was having some issues with mirrored/rotated blocks – so not a comprehensive workflow

Funny enough, to create Families in Revit the objects need to be moved to 0,0,0 also.

I thought it 'd be a simple matter, but it sounds like it’s not.

It depends on what you really want to do. What is the purpose of the data and Geometry in Rhino and what is the purpose of the objects in Revit?

One of the interesting outcomes of this Rhino.Inside.Revit project is the question of workflow and central data storage. While it is natural to think about the process of having a “digital twin” (not my favorite term) in Revit and Rhino, it is very seldom this the right answer.

A pattern I see a lot more is the idea that there is one place that the data and geometry is stored. And this location can change per design or even per phase of a project. For instance Rhino might be the driver for floors early in the project and populate Revit in realtime. And later, as the project matures, perhaps the floors now live in Revit and inform Rhino of their shape.

This is a very good question to ask, but it is really much more complicated then it might seem at first blush. Also, the complication is not a technical one, but one of workflow.

Since this is all new for us, we are trying to understand things better.
By the way, I don’t seem to be able to export some category / element from Revit to Rhino. For example, there’s no Wall Sweep category in the Grasshopper script I downloaded from Rhino tutorial. Is that something I need to add?
To make it things simpler, is there a way to export selected objects?

You can throw in an “Element” component in Rhino.Inside.Revit, Right-click on the component, and select a series of elements that then can be passed to “Element Geometry” for export

Not sure if I understand, are you explaining a way to export from Rhino? I was looking a simple way to export from Revit to Rhino.Inside.Revit.
I used Grasshopper file from https://www.rhino3d.com/inside/revit/beta/samples/transfer-revit-to-rhino.
But for some reason, a few elements from Revit are not being exported to Rhino.Inside.Revit.

Would you be able to send example files that are failing?

What would be the best way to share the file? As it’s for work, I can’t share the original file. However, I can delete the most of objects inside and leave the elements that I couldn’t export using Grasshopper.

You can send it here: http://www.rhino3d.com/upload

Address it to tech@mcneel.com. A link to this thread helps get it directed to the right person.

Thanks. Sent two files
“to send.rvt”
This is hanging soffit. The holders export fine, but the soffit itself exports a little odd. It’s about half exported, and the size isn’t correct. The wall sweep on top of soffit won’t export at all.

“Struct to send.rvt”
I can’t figure out how to export these. It will create just lines. I had to use an old way-save as DWG and open in Rhino.

Hey @l11

I checked the models that you sent. The to send.rvt included a Wall sweep that is harder to grab in GH since there is no builtin category type for it in Revit. I used the “Class Filter” to grab those by their class name DB.WallSweep

wall sweeps.gh (7.9 KB)

On the Struct to send.rvt, the structural framing are converted automatically. You just have to specify the “Fine” level of detail

struct framing.gh (7.6 KB)

Thank you so much. I will try your gh.

Ehsan,
both struct framing.gh and wall sweeps.gh show up as blank when I drag&drop in Grasshopper. Is that because WIP version is updated?

Most probably there are components that have changed. Open the .gh file from Grasshopper and see which ones are missing/marked as old

Hi Scott,

My firm is currently working on resolving this exact conundrum. I was wondering, have you heard of many case studies from practice where Rhino.Inside was used successfully? What would you consider to be the current “best practice” workflow using Rhino.Inside?

We recently used an automated DirectShape based workflow to deliver a tender but are interested in rolling out rhino.inside deeper into the project phase, firmwide. Very interested in hearing your thoughts.

Kai -

I am glad the DirectShape methods worked for you. There are many firms that have told us they are using RIR successfully. It is mostly used for specific solutions in certain projects at this point.

There are so many different workflows that are possible that I do not think we know what best practice is yet. It will take the experimenting of all of us and many others to determine what works best.

Looking at the samples page on the webpage can be used as some hints. I am working on 3 new sample workflows as we speak.

Are there specific problems you are having with Rhino or Revit right now that you might want solved? Perhaps we can see what is possible to solve? Sometimes we can quickly prototype up new components for you to try as we discover the solutions to your issues.

This is all a new frontier. It is quite exciting, but we are discovering every day what is possible.

Thanks Scott, it’s at a very early stage for us right now but I will keep that in mind.

At the moment, the strategy is to build the simplest interop tools for users and gathering feedback before diving deeper.