Add holes in a beam through Rhino.Inside

Hi folks,

I’m trying to get my head around rhinoinside currently trying to push steel beam geometry from rhino into Revit that is essentially a beam with some holes in it.

I tried direct shape but it is wrought with issues of not properly coming into Revit.
So I was hoping there was a way to set it up in rhinoinside whereby you specify a beam, attach holes to it using lines or parameters on the beam (basically automating Revit beam and hole creation).

I’m almost certain there is a way in Revit API to pull this off but I have no idea how.
Here is a file sample I’m working with:

holes in beam.3dm (681.1 KB)


There are some small edge warnings but the geometry is coming through.

Perhaps placing a family on the beam axis with parametric voids that can be used to cut the beam?

Hi Japhy,

Thanks for looking at this.
“Perhaps placing a family on the beam axis with parametric voids that can be used to cut the beam?”
Would you be able to provide a simple example?

Couple ways to approach this, either array in a family or in this case a single void family placed multiple times.

Hi Japhy,

Thanks for your help!
How would you go about creating custom beam and hole families in GH (without creating and referencing Revit objects)? Is it possible?

See attached for Cutting a Beam without Revit. (11.0 KB)

I may have misread your question. To do the first definition without referencing the beam you would need to create the beam in RiR.

@Japhy perhaps you can help me with a similar problem, even though this is an old topic. I need to cut rectangular holes of different sizes in structural beams in Revit using RIR.

  • When I use a generic void model, the void is placed correctly, but not cutting any geometry. I will have to do this manually using Revit’s cut tool.
  • When I use a face based generic void model, I get the error “Can’t rotate element into this position”. The void component works fine when placed manually in Revit.

I have seen a couple of different topics with related issues, but most of them are regarding wall-hosted geometry. Any advice?

I can provide an example and/or screenshots if needed.
Thanks in advance!


Hey @christian_degn ,

The last custom component in the GH file attached in the below reply takes the void element and the solid element you want to cut, and applies the cut, so you don’t have to cut them manually in Revit.

1 Like

Thank you @M.Tarabishy! This is a great solution.
Your example also taught me the use of the Component Family Void component, which could be a better and easier solution than an adaptive void family in some cases.

Just confirming it’s not possible or there isn’t a component to set Revit elements to cut from a Void selected Void?

So, the best process is to create a Void & manually cut the Void to each element in Revit?

Note:- I dont want to be creating new Family Components for each Column.

Would like to stick to 1 Family Type that is a Company standard and just cut that structural column family type.

Sorry @M.Tarabishy

The script you shared with the Python Component - Checking this out.

How to handle a brick screen consisting of several Rhino blocks - Rhino.Inside / Revit - McNeel Forum

Amazing that worked really well. Thanks. This is going to be super useful.

1 Like

HI @Japhy, this is a useful bit of script which I am trying to recreate for some framing elements in Revit 2022. However when I follow this, the openings do not seem to get placed inside Revit. I’ve created a family void and when I place it manually within Revit, it works to create the openings in the framing element but it does not work when I the voids using RiR. Is it possible to publish the script/.rvt file so we may compare the scripts and check we are not doing something wrong here?

Hi Megan, Which script are you referring to? Can you post files? A small example should suffice.