List Management Rooms and Walls

Not sure I’m a fan of this as it’ll cause a good amount of pain with dimensions and alignments and modelling accuracy. I mean there wouldn’t be a seam there, why model it as such?

In any case, you could try this:

  1. Get all rooms
  2. Pull the room solids.
  3. Build a function to test the geometry of each wall against each of the solid room geometries.
  4. Use a List.FilterByBoolMask to get the room (#1, not the solids) which intersects the wall geometry.
  5. Intersect each wall’s geometry against the associated room’s geometry, and pull the object type
  6. Get the room associated with intersection result which contains a solid object type, and pull the parameter you want to copy over (name, number, whatever it may be)
  7. Set your wall’s parameter to the value of the parameter from the room

Note that if you have walls in multiple rooms you’re going to get incorrect results, which is why I asked the question above.

Sadly you can’t rely on point testing for the same reason - you’d either have to sample ALL points on the wall and get the room at that point to overcome that issue.