ACAD Solid to Revit Solid to Revit Family

Hello Dynamo Friends :slight_smile:

I have a acad 3d solid

and I want to create a revit solid from it. Here is what I tried so far:

  1. Import the CAD file to revit. Can´t get geometry.

  1. Revit.DB.Solid ToProtoType. Can´t get geometry.

  2. write and read soliddef from json. There it is obvious that already the object.geometry result is a mess. Soeverything later is also failing.


    family result:

  3. Installed civilConnection but it seems i can only get corridors and surfaces?!

Maybe I can explode my solid into surfaces and load them…

Any suggestions what I can try to get my solid?

Kind regards!

have you tried to export solid in CAD into SAT file and then import the SAT into Dynamo?

1 Like

try export the solid from cad as json or sat file ( as @Koz_Jono_Yeoh wrote) by using dynymo c3d then import it in family

1 Like

If you’re not going to edit anything in Revit and use that only as a reference, maybe its better just to import directly.


I exported a SAT file with civil export function and also with dynamo.
Importing this file in revit gives a pretty bad result:

All attempts to create a form or mass out of this solid fail, I get results like that:

The only thing that would work is to create a directshape that looks like this:

Is there any way I can achieve a higher quality of the SAT file?

Is the solid in the DWG an actual solid, or is it a Civil 3d object of some sort? If you select i tin Civil 3d what does the object type say in the properties pallet? If not ‘solid’, you’ll want to break it down into native dwg native content. You may want to verify the file in base AutoCAD (without Civil 3D) as you go just to be sure.

From there, if memory serves, the SAT export will always be a lower quality than the native DWG as it will tesselate the shape. For most uses this is fine, but as you an see the tessellation isn’t always idea. Breaking things into smaller pieces can help a lot. Note that you also have second round of quality loss when you bring the sat into the .rvt file… less formats and go-betweens is better.

In the end the ‘best’ way forward for this type of work will depend on your end goal. if just displaying the geometry, why not just import the DWG into a family and create an instance (least amount of data loss). If you need to host stuff, you likely want to extract the source content from Civil (ie: the alignment, profiles) and build native Revit content from those if you need solids. If you only need surface geometry, why not built a surface form the shape and use that?

1 Like

Yes it is a 3D Solid

I need a native revit element because I need to cut with other elements and get the final volume.

But it seems this is a bit of a workflow fail because as i have just been told the solid was retrieved from a revit element to use it in civil to cut with topography. And now we wanted to get that back into revit.

Now as I know that I´ll just try to do everything in revit. So I will try to get surface with civilconnect and see if I can get it´s geometry for modifying my solid.

Try Element.GeometryFast from Synthesize package. If you can see the solid in Revit, than it exports view to SAT and you get geometry as Dynamo solid.