Export Geometry / Mesh from Rhino to Revit through Rhino Inside Revit

From this thread, I know I can use “AddDirectShape.ByGeometry” to Export Geometry / Mesh from Rhino to Revit.

The problem of Directshape is that the material assigned to it is not persistent. Please find more details in here.

Is it possible to export Geometry / Mesh from Rhino to Revit using other formats, such as familyinstance so I can easily assign “persisitent” materials?


1 Like


I think there is no API to change a DirectShape Solid material but what is possible is recreate it and assign the material while you are doing that.
If I’m not wrong this material is persistent in all views unless you override it per view.
More info here

Anyway being able to generate families on the fly may be really useful for so many reasons like this one, but is still not possible. I’m aware I should explore more this other approach.

I recently added support for materials in DirectShapes and DirectShapeTypes.

1 Like

Hi there - interesting discussion! I have a slightly different problem and I am hoping you might be able to help?

I am trying to push the Analysis mesh created by Ladybug (has gradient colours applied to it) from Rhino/GH to Revit with Rhino inside, however, I am struggling to get it coloured the way it is in Rhino. Any ideas how this can be achieved?



Try this. it’s one of the ladybug sample/example files. The trick is to “explode” the mesh so that each mesh face is a new mesh, (which is what the ghpython component is doing). Then deconstruct those faces to get the colors of the vertices, and then you average them. this “makes” one color for each face, then you can make a material from that and make a direct shape! It comes into Revit as a generic model with colored faces. (make sure your display mode in your revit view is something other than wireframe!)

Wind_Vertical_Profile_RhinoInside.gh (431.5 KB)

1 Like


If you don’t need to keep that colored meshes into the model with the last version you can preview colored meshes into the Revit viewport same way you already do it in Rhino.

Keep in mind that only Revit Shaded modes allow this, to avoid Z-fighting hide those Categories you are analyzing and you will have the same result you see in this screenshot.

1 Like

Can we have also Custom Preview working inside Revit?

1 Like

Blockquote you can preview colored meshes into the Revit viewport same way you already do it in Rhino.

Hi! I’ve got the same issue, and it seems like it doesn’t work in Revit 2018.3
The legend works fine, but no the building :c I have also noticed, that Material.ByColor doesn’t make any changes to object.

Is it possible that two components were previewing same geometry at same place colored and not colored?

Is there any chance to speed up the Convert Material component’s work? My mesh to convert material color is not so big (6555 numbers of surfaces) but converting material take more ttan 10 or 13 minutes.
This totally freezes both the grasshopper and revit work for that minutes.
Any suggestion how to get sun analysis mesh result from Grasshopper/Ladybug to Revit but in faster way?

I have a problem exporting the legend text into revit. It only uses the mesh part but not the 3d text. Do you have a way to export it as well? thanks in advance!

Hard to see what’s going on, especially in what you are feeding into your Direct Shape Geometry.

It looks like your 3d text is a mesh?

Any 3D object being sent into Revit will need to conform to Revit’s tolerances.


Thanks for your swift anwser, the legend output of the LB heatmap node consists of a mesh (the coloured part) and the texts like the legend title and percentages.
I havent been able to convert the 3D text from the legend into a mesh so i can combine it with the colored mesh to feed into my direct shape geomerty component. However i can tell from @AnnaAN last post that he also separated the mesh from the text, but i dont see what he does with the text part of the legend. I want the text to show up in revit and have it in the right place (in the legend)

I won’t be able to get back to you until tomorrow but if you can internalize your geometry and strings coming out of the LB components and post your GH file I will take a look.

1 Like

Sending Heatmap result and legend to Revit.gh (56.3 KB)
This is the script with internalized data. My wish is, when exporting the legend i would like to have the ledgend mesh and text as one object. So I can move it freely around the Revit file.
Thanks for taking a look!

Teun, When you say move freely, are you looking put these on multiple views/sheets or just one? If so an annotation component might be more appropriate than directshape.

I think a directshape would be the best of the two, i would like to be able to show it in a 3d view with the heatmap results as well.

1 Like

There was the mesh and a bunch of nulls. I assume the nulls were your Plugin Text?

Here’s an example of adding Text to a 3D view. Note that a 3D view should be locked before adding the text.

Re_Sending Heatmap result and legend to Revit.gh (59.2 KB)

Thanks a lot for taking a look at the script, i think something went wrong when sending the script with the results to you. It inturnalised the mesh but not the legend text, my bad.
I understand what you did in the script but is there a way for the text to stay in the same place like the legend from Ladybug.

I can try tomorrow to make an example file with a daylight analysis so i can send you a script together with results

Honeybee_Dayl_Energy_Analysis_with sending results back to revit.gh (145.6 KB)
Here is the sample file i made with internalised geomerty so you can see the legend with the correct results in Revit. Thanks for the help! :slight_smile: