Updating Boundary of an Existing Floor

Hi all,

I’m working on a problem where I have multiple floors in revit and I want to update the boundaries of those floors to some new floor boundary. I could of course, delete the existing floors and then make new floors but this would remove any tags, etc that are referencing the existing floors.

I’ve been googling, and it seems like the Revit API does not allow direct access to editing the floor boundary but some clever people found a work around where you can use a temporary transaction to delete the floor, this returns the boundary model line ids. You then abort the transaction and update those boundary model lines to new lines. A limitation is that there must be the same # of new boundary lines as existing boundary lines, but that’s ok in my case. Here is a post about the clever workaround-workflow:

I’m wondering how to duplicate this workflow with RhinoInside. I can use the Element Dependents node to see the Revit Curve elements and their Element Ids but I’m not sure how to update the curves associated with these elements to the new location. Eventually I’d like to get the update to work with arcs & lines but for now I’m just using lines.

Does anyone have any ideas how to update the boundary lines? Thank you!
201015_UpdateFloorBoundary_HELP.gh (21.6 KB)

1 Like

I have a solution :slight_smile:

One crucial thing to note is that you must supply the same number of sketch curves for the new outline as are in the existing floor outline. Another issue I ran in to was, be sure to arrange the new curves GH tree structure to match the existing curves GH tree structure. So if your floor boundary consists of [arc, straight line, arc, straight line], be sure to feed in your new curves in the same order. Also, ensure that the direction of your new curves match the direction of the existing boundary curves. It can also work for floors with voids.

201020_UpdateFloorBoundary_SHARED.gh (16.2 KB)

1 Like