Hi guys,
I have put together a bi-directional flow (using FLUX) that allows me to amend rooms colour coding based rooms filed (which are in turn based on pre-determined sustainability metrics) using Excel. The workflow currently does not need Dynamo.
Unfortunately, I am now presented with a block of flats where:
- external envelope and party walls are in the main model,
- internal layouts are linked external RVT models.
The (lazy) architect who modelled it has inserted rooms in the linked models, because it was quicker (internal layouts are fairly repetitive).
My question is: can rooms be queried from all external links, cut and pasted into the main model for FLUX to read them?
Thanks!
Personally if you have to break the unit layouts into a separate file, I’d prefer that the unit architect do all of their work in their model instead of half their model and half in mine - way too much gets lost in transition that way.
It’s possible, but I’d go a slightly different route to allow for more flexibility.
Script 1 (to be run in the units model):
- Get all elements of category “room”.
- Element.Parameters.
- Element.Location.
- List.Join
- Sort by level
- Write to excel
Script 2 (to be run in the main model):
- read excel
- create points from the location data.
- filter by level == “input level”
- create room at point and level with “input level” as level you’re placing the room at.
- element.set parameter value by name on the created rooms using the the data read from excel.
You could also use a “select elements in linked model” instead of bouncing between models, but I prefer to have the excel as an intermediate stepping point so I can review all of my parameter values before running Script 2.
Alternatively you could leave the rooms in the linked model and set the data there. Tags coordinate between models. This does mean that you’d have to open the linked model to do your flux routine though. Even better have the person who did the unit layouts run the Flux routine.
I’ve never used flux before, but have been intrigued by some of it’s capabilities. How do you like it?
@jacob.small apologies for not replying sooner (I was convinced I did, but my answer is not there).
A little digression
I am producing a tool for a sustainability team to better integrate architectural model with energy modelling and sustainability assessments. By using MEP spaces in the main models, a sustainability consultant (or a researcher like me) can place an entity that works very similarly to a room and can be amended as desired (adding parameters that correspond to input or output for certain sustainability metrics) without affecting the architects’ work. This leaves much greater freedom and works brilliantly in conjunction with rooms, even when this is not used for MEP design.
Now, placing MEP spaces came out to be much easier/smoother than I imagined, particularly because a space placed in the main model recognises if a room has been placed within the same boundaries (the corresponding Room Name actually becomes a parameter of the Space object) . This greatly simplifies the work, making your suggested scripts not necessary (sorry!).
The issue is that Flux currently allows both read from and write to Revit for Room objects, but only read from with regards to Space objects. Hence the need of a Dynamo turnaround.