How to create a 3D Solid from a TIN surface?

Hi everyone. I was looking at the graph to assign a property set from a TIN surface to the corresponding 3D Solid create from that TIN surface. (Sort Property Set List) and what I’m trying to do is automate the creation of the 3D Solid to include it in the graph. I’ve tried to look how to do it but I’m new in Dynamo and can’t figure it out.
Thanks in advance.

Hi @raul.07.11,

Make sure you get the latest version of the Civil 3D Toolkit package, and then use one of these nodes depending on your needs.

1 Like

Thanks, that is what I was looking for. Sorry to ask but how should I pick a surface by name? The Surfaces node picks all the surfaces.

Also it seems that TinSurfaceExtensions.CreateSolids doesn’t allow me to create the 3D Solid if I put 0 as depth. Is there a reason for that? It works if I use any other value.

There is a dedicated node for that called SurfaceByName.


A surface of 0 depth is not a solid, correct? It is just a surface. So it has to be extruded at some non-zero distance is order to be a solid.

I get that. But the reason I want the create the 3D Solid at depth 0 from the surface is becuase only 3D solids can be exported to IFC. What should I do? Thanks so much for your response.

I can manually create the solid at depth 0, so Dynamo must be able to do the same I think.

Hmm that is interesting, I was not aware that a 3D solid could be created with zero depth. It looks like a limitation of the node. Go ahead and make Paolo aware by posting in the Civil 3D Toolkit Feedback Thread.

In the meantime, would it suit your needs to use a very small value like 0.001?

What is the surface in question, is it a TIN Surface or is it generated from a Corridor?
If it is from a corridor it becomes a Body and they are supported when exporting to IFC

Hello! I’m trying to create a 3d solid with dynamo just like @mzjensen explained. It looks simple but dynamo says:

“Warning: TinSurfaceExtensions.CreateSolidsAtSurface operation failed.
Method not found: ‘Autodesk.AutoCAD.DatabaseServices.ObjectIdCollection Autodesk.Civil.DatabaseServices.TinSurface.CreateSolidsAtSurfaceToFile(Autodesk.AutoCAD.DatabaseServices.ObjectId, System.String, UInt16, System.String ByRef)’.”

Am I making a mistake?

Update your Civil 3D

Done and it works now!


When using to nodes above where you able to set a new color for the solid when you exported to a new file?
When I tried it only set color “By Block”. Do I need to have the layer and color predefined in the drawing that I would like to export to or when do I set color for the solid?

Hi @Paolo_Emilio_Serra1
I’m facing the same issue with Create solids node although I have the civil 3d 2021 updated

ExtractSurfacesSolids.dyn (9.5 KB)

Updated 2021 is 2021.3 version. From your images, you do not have any updates installed :

I can’t find 2021.3 update shown up on my Autodesk Desktop App - anyway to get it updated ?

hmm that’s weird. Try going to the website and login into your account to look for the account. Also you can contact your IT department (assuming you’re in a company) and Autodesk support. Release notes for 2021.3 version : Release Notes for Autodesk® Civil 3D® 2021.3 | Civil 3D 2021 | Autodesk Knowledge Network