Rhino geometry into revit using points to create revit geometry

I have created a complex geometry in Rhino and had made panelisation with grasshopper plugin . now i need to import the model to revit . I can import as other options , but i want to make it to a revit own geometry with materials specifications and other parameters .

I have initially tried importing from Rhino directly as well DWG import as well, they are quite good on performance , but in case of information for further proceedings , i need to create it into revit geometry .

I am planning to export points data of the surface from Rhino using Grasshopper as a CSV file with Geometry ID (to recognise the points domain ,since i have a small gap of 2cm between the panels i dont want to confuse the process ).

Is there any way to achieve this in dynamo .

Yes, it can be done. But you’re making a downstream disaster. Why not make the design in Revit’s massing environment?

That would have been helpfull if we did the panelisation in Revit itself .

-The honeycomb grid pattern i have is not uniform in size or proportion, its based upon the design intent.

-i have a large surface area . if try to do it Revit manually it will take time forever.

I need a faster solution to do it

I can’t see your design, but from what you have shown it would take less than 30 minutes to produce what you’ve shown parametrically in the massing environment by use of repeaters. Built this in < 10 (including time to start Revit).


That repeater will follow whatever surface I put it on. You’d have to clean up the edges, sure, but you can also leverage adaptive components there and be done with it.

the structure is not flat, is curvilinear and complex.

  • Also the grid divisions sizes and positions i couldnt able to adjust based on design intent.

Grid is not following conventionally, its changing based on design intend

All doable in native Revit. That said the ship has sailed so time to move on.

Export your CSV with XYZ values in sets of four representing the four corner points of each panel. Each row should have 12 values for the panel. If you have multiple panel types

Next build a four point adaptive family (or families, or family types of the primary panel… the specific method will depend on your design intent) and load it (them) into your project.

  • Read the CSV into Dynamo.
  • Chop the sublists into groups of 3 with a List.Chop node.
  • Transpose the sublists into sets of four representing the X, Y, and Z component of each with a List.Transpose node.
  • Build point groups from each. You should have sets of four points.
  • Place an adaptive family at each set of points using a AdaptiveComponent.ByPoints node.

Note that you will either want to only do this one time once the design is set and never again - meaning no more changes in Rhino. Alternatively you will want to manage Element Binding to ensure you can update the panels without causing significant required rework in Revit due to the lack of parametric controls and hosting capabilities.

2 Likes

To add to Jacob’s suggestion, it appears you will also need to account for 3 and 5 sided panel typed at the edges with different adaptive families and logic to place them with.

I have an example of placing adaptives using rhino inside here:

1 Like