Dealing with Voids/Small Gaps from Revit Export

There are typically voids/shafts/ or other small cavities in Revit model that lead to many gaps in exported hbjson/dfjson model.
Common culprits include shafts, wet walls, or columns that are surrounded by gypwall which create many small voids.

Example - columns w/ gyp wall

Current Solution
Revit - use “add all rooms” feature to fill voids with rooms. Then have many small rooms in Rhino. Use PO_MergeRooms command, then PO_Rebuild.
Feature Request
Option 1 -
Improve merge rooms command to include ability to merge rooms based on room name or area/volume. For example all rooms under 10 sf area or all rooms that contain “void” in their name, merge into adjacent room that it shares most surfaces with.

Option 2 -
Add automatic fill void command in Rhino Pollination rather than placing dummy “void” rooms in Revit. For example, on certain floor level, look for gaps in model below user set tolerance in volume/area and automatically add room or merge to adjacent room.

1 Like

Hi @victorbrac!

This sounds like a great feature to implement! It is similar to the simplify curve command in Rhino. Using Area as the tolerance for merging the rooms feels to be the better solution to me. Let us have a longer discussion on this internally with @mingbo and get back to you.

1 Like

Great, look forward to seeing this feature!

May be useful check against Pollination display name as well since small voids could be filled with “void” room name in Revit.

Hi, @victorbrac - @mingbo started working on this. We are providing two solutions here.

  1. We improved the untrim command to allow to untrim multiple holes in one go.
  2. We are adding support for the UntrimHoles command that you can use to remove all the small holes in one go.

I know that this is not going to necessarily resolve the issue with the small edges that you marked here but for those you should be able to use the PO_AlignToGrid command.

1 Like

This looks promising! Thanks for the update. I’ll have to test to answer these questions:
Will these commands work across multiple rooms e.g., remove all holes on a floor?
Is there a hole dimension threshold that could be applied as filter? Wondering if users may want have filter to remove all holes less than “x” dimension. Alternatively, users could be selective in the spaces to which the command is applied.

UntrimHoles is a native Rhino command.


It comes with a few options including MaximumEdgeLength that can be used to filter holes. Unfortunately, it is one face at a time which means you have to clean up one room at a time.

I think the ability to remove the holes for multiple rooms will be nice to have. We can plan to implement our own version of the command at some point depending on how much work it is going to be. @mingbo should be able to comment on the amount of work.

When you say you have “improved” or “added support” for a native Rhino command, are you saying that with the Rhino Pollination plug-in installed, the native command has been improved / has additional features than it would without Pollination installed? Or just that Pollination now supports a wider set of native Rhino commands i.e. can run command on room without breaking the room? Curious how much you are modifying the native commands.

I should probably be more careful when I use these words. Your understanding is correct. When you install the Rhino plugin there are two separate groups of commands.

  • Pollination commands: the first group is the PO_{command-name} commands. They are added to Rhino by the Pollination Rhino plugin. They are documented here: Pollination Commands - Pollination User Manual

  • Native Rhino command compatibility: the second group is the native Rhino commands that are supported by the Pollination plugin. That means you can use these commands on Pollination rooms and they don’t break the room. Here is the list of those commands: Getting Started in Rhino - Pollination User Manual

I hope this clarifies the difference.