I have a basic framing model in Revit 2019 that I would like to convert to Revit 2018.
I can export R2019 into IFC, then import the IFC into R2018 and explode group. The issue is that these exploded elements are not native Revit elements anymore.
So I looked up a way to extract geometry of all these IFC elements and hopefully find a way with Dynamo to re-create Revit native elements in place of the IFC elements. From Simply Complex blog, I re-created dynamo script that should create column centerline from a solid element however it doesnât work. I understand âFace.Verticesâ expects a âfaceâ but is getting a âsolidâ but it seems to work for simply complex? Is there a different node that could be used to extract faces?
Any other ideas how these IFC elements could be replaced with Revit native elements?
First up: Youâre setting yourself up for a headache. Simple columns arenât too bad at first glance. But the end result after you get the location line will be âwell now my columns arenât rotated correctlyâ. Then they wonât be the right size. Nor connected correctly. Nor⌠I wonât even get into âwhat if the IFC geometry isnât reading correctlyâ situations.
Best bet is to get everyone on the same version (aka upgrade or have the person who did the structural model redo the work manually in 2018), or learn to live with IFC imports for coordination. Either of those two will likely save you $ (assuming you bill hourly against a maximum fee) in the end.
Now, to answer your question: to find the centerline, try Geometry.Explode, then picking up at item #3 in the graph you posted above.
1 Like
I agree with you on all accounts and we are going to do the project in 2019.
The real issue I have is that our engineering software isnât yet compatible with R2019. Itâs only the start of the project and so I was hoping that I could somehow get the analytical lines to show up in R2018 by doing this weird conversion from IFC just so that we could play around with different column arrangements in our design software, etc.
Geometry.Explode created surfaces and for some reason Face.Vertices still doesnât accept it.
HmmmmâŚ
Surface.PerimeterCurves to get the outline edges of the surface. Curve.PointAtParameter with cross product lacing and a list of [0,1] as the parameter values in order to get the points at each end of each curve. Flatten the list completely (for each column, so maybe not COMPLETELY), before finally using a Lin.ByBestFitThroughPoints to get the column center line.
Might have skipped something but you can hopefully find your way with that.
Mind if I ask what engineering software youâre in? Might have a way to move stuff directly to said software from Revit 2019 via Dynamo.
Does the Element.Faces node not work in this case? It should replace both Element.Geometry and Element.Explode.
@jacob.small, I will play around with those two nodes and see what happens. We are using SFRAME.
@kennyb6, I tried Element.Faces node but it also gives surfaces. I think Iâll have to give the above a try and skip using Face.Vertices node altogether.
Thanks