Revit API Forum
Welcome to Autodesk’s Revit API Forums. Share your knowledge, ask questions, and explore popular Revit API topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to fill a space above another space with API ?

4 REPLIES 4
SOLVED
Reply
Message 1 of 5
ankofl
354 Views, 4 Replies

How to fill a space above another space with API ?

I have two rooms starting at the same mark, and bordering each other.
One ends in height before the second, and after this mark, the second room should fill the space above the first room, but it does not.
How to fix it manually or via the API?

how to fill.jpg

4 REPLIES 4
Message 2 of 5
jeremy_tammik
in reply to: ankofl

I would completely forget about asking how to solve this programmatically with the API until after you have solved the much more relevant question on how to address this optimally and following best BIM practices in doing so when working manually through the end user interface. The API will follow the same approach and probably not be hard to achieve once you know the proper way to move forward.

  

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 3 of 5
ankofl
in reply to: jeremy_tammik

Do you propose to create a room on each level to ensure that the internal volume of the building is fully filled?
Would that be good practice?

Message 4 of 5
RPTHOMAS108
in reply to: ankofl

I don't believe your will be able to create an L-Shaped room in elevation. Although I can imagine for auditoriums etc that could be useful.

 

Probably you can only stack the rooms and consider them separately towards a single contribution (b.lower & b.upper). If something can't be done with the Revit UI alone manually then the likelihood is that it can't be done with the API either.

 

However you are best asking in Architecture forum for Revit what they would do for considering such spaces e.g. the room below auditorium or stadium seating vs the room above it. You then likely find:

 

  • It can be done and someone knows how
  • It can't be done but there is an idea for it you can vote for
  • It hasn't come up because those that use the functionality of rooms don't need it for that

 

 

Message 5 of 5
ankofl
in reply to: RPTHOMAS108

Thank you for the informative answer. In this case, we are not talking about an audience, but about a large warehouse, the main storage of which is located several floors up, but there are several technical rooms on the ground floor (i.e. this is not some kind of L-shaped room, but a fairly common design).

ankofl_0-1700572281414.png

Earlier, I tried to solve this problem through the API by automatically creating temporary rooms at all levels through which the "cropped" room passes, and then through BooleanOperationsUtils.ExecuteBooleanOperation() combined the Solid of each temporary room into a single whole. And it worked in about 9 out of 10 cases, but there was a regular exception about the inability to perform a Boolean operation. After unsuccessful questions about how to solve the problem of Boolean operations provided by Revit API (topic here: BooleanOperations on Revit-Solid ), it was decided to create its own solution based on OpenCascade, but based on labor costs, the previous project was implemented by intersecting and subtracting surfaces, and not Solid based on its own triangulation algorithm. Now it is necessary to get the full volume of the room from Revit again, and this function can no longer be solved based on my solution based on surfaces, Boolean operations are needed.
Or, just the correct volume of space provided by Revit initially.
Or, manually it is long and tedious to arrange the boundaries of the premises, manually add additional rooms over similar areas, manually set their limits, and manually link the volumes of these premises through the parameters. Not the most rational solution for an enterprise program of the world standard level for building design

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Rail Community


Autodesk Design & Make Report