Hi, as part of our initial testing of speckle workflows, we have been investigating pushing an entire revit analytical model to ETABS and this has worked fine.
However, when we have tried moving a handful of columns in ETABS and then sending just those columns to Speckle, when receiving these as an update in Revit, the columns do not move and instead it creates new columns in Revit.
I’m not sure if we are understanding the Speckle workflow correctly, but we ideally want to be able to send isolated updates rather then having to send the whole model.
I’ll let @bjoern provide a better explanation and solution to your workflow (as soon as he feels better ), but in the meantime I can explain what’s happening.
Going ETABS > Revit > ETABS is what we call internally “roundtripping” and that’s not supported as when an object/element enters a new BIM/Structural tool becomes essentially a new entity and it would be extremely unreliable trying to modify it and bring it back into the source app.
The current update mechanism Speckle support is only for A > B exchanges, so you could keep sending from ETABS to Revit (or vice versa) and our connectors will update elements that were received before (if IDs match).
Hi @teocomi, thanks for getting back to me and the explanation - makes sense.
Are there any connectors/workflows that do allow for ‘roundtripping’/ or is not supported at all on the Speckle platform?/ is there future scope for this to be supported?
You can refer to a short video tutorial here, which showcases roundtripping between Revit and ETABS. But as @teocomi mentioned it becomes unreliable when doing a lot of manipulation / modelling in the respective apps after the initial send and receive.
If this is absolutely desired; make sure to send and receive in the same model in Speckle. The below example would not work because the models are separated:
From our standpoint, the way of modelling in Revit is quite different to that in ETABS. A primary beam in Revit would be continuous along its span, whereas in ETABS one would split the frame at every intersection with the secondary beam. Another prime example being walls, where ETABS doesn’t have openings but we manually mesh the wall surface into a series of surfaces that represent a single wall with an opening. Simple sketch below:
Sorry, long response. But the crux of the problem is, roundtripping would involve super careful modelling to get things to match. Deleting a column and then placing a column back in the same place would, for instance break the connection.
Happy to flesh this one out more in a call to understand the use-case if you’d like