Using RhinoAI for BIM information and schedules

Just playing around here. Using Rhino AI to create a Furniture schedule and then push that BIM information onto the blocks. So now it can be tracked.

I was also amazed how AI inferred the space usage of the spaces as it worked thru the problem.

What other BIM information could be managed with AI?

@scottd It would be nice if we can create grouped users text in Rhino like we have Revit Properties Panel. I have used the same user text approach to push the BIM Parameters back to Revit using Rhino AI along side RIR with some modifications. I was able to update the walls and floors without loosing or recreating any element.

Yes, I hear you on that. That would need to be something we have to think of a lot more about. Most of the discussions we have internally is asking what would we try to do with that. Trying to specify what we need to solve and how sophisticated they need to be.

Currently, we are tying to figure out how much information can be pushed in.

At this point there are a couple ways we recommend how to do this. So, it can be harvester in later processes.

  1. Use a separator for group or nested groups. For instance here I can use a “furn” group.

  1. Or of course using the layer as on for the group (category) names and have that work into the schema to group objects. Because Rhino Ai can expose Layer userdata and block definition userdata. Could we map a Revit schema within all the different elements in Rhino objects, layers and documents?

In the model shown, this is the layer userdata I dropped in with the key RevitCat. Values for all 35 layers:

Layer RevitCat
Default Generic Models
Site Site
Site::Site Topography
Site::Outside_Furniture Furniture
Site::Outside_Furniture::Attributes Furniture
Site::Outside_Furniture::Wood Furniture
Site::Planting Planting
Site::Planting::Attributes Planting
Building Generic Models
Building::Timber Componets Structural Framing
Building::Interior Slabs Floors
Building::Exterior Glazing Curtain Panels
Building::Exterior Walls Walls
Building::Structorual Frame Structural Framing
Office - Lobby floor Floors
Office - Lobby walls Walls
Office - Seating Furniture
Office - Core walls Walls
Office - Stairs Stairs
Office - Metal Furniture
Office - Plan Lines
Office - Egress plan Lines
Office - Conference Generic Models
Office - Cafe Generic Models
Office - Interior furniture Furniture
Office - Interior glass Curtain Panels
F05 Adapted - partitions Walls
F05 Adapted - source furniture Furniture
F05 Adapted - room labels Rooms
F05 Existing - section Lines
F05 Adapted - 3D partitions Walls
F05 Adapted - doors Doors
F05 Review - cutaway Generic Models
F05 Furniture - 3D Furniture
Furniture Schedule Generic Annotations

Oh Nice I didn’t know that we have a group separator option. I think this is better as compared to layers. As RIR already Maps the Layers Based on the Categories and Subcategories.

Also interesting is how tolerant AI is to various schemas. It can work thru the data that is in the file and piece together what the schema is. It can infer quite a lot from the information that is in the file.

This is unlike standard programming that needs to know the schema a priori.

The separator is nothing official, but it is what the developers said works well as a separator in cases like this. Internally it is the same we use for sub-layers.

Currently I am mapping all this information based on the Revit schema using the custom component. But if we can set the User Text Groups in Rhino as you described then I can easily pull and push the data even when someone updates the files without opening the Revit.

Thanks for the clarification.

Yes, I would actually like to make a RevitAgent.md that somehow could keep checking revit schema in Rhino to see if there were any problems. But I have not yet figured out how to add agents on this level yet.

Let’s go!