Civil 3d Property sets work flow

I’m trying to work with property sets and I see that the AutoCAD and Civil 3D tool kit have nodes for property sets.

I’ve been able to get a list of my property set fields but not the resulting values in those fields.

What is the basic work flow for this?

Sadly I’ve found nothing online and there are no useful descriptions for these items.

I’d prefer not to use the example export to CSV in the sample graphs because I would like to a lot more with the information.

If you search the forum here there should be many examples to help. This is one way to read the properties and values of a property set from a given set of objects:

Above are all out-of-the-box nodes except the select objects is from the Civil3DToolkit. There are many other nodes but this is likely the first step in getting data ready for an excel export. If you have a specific script you want help with post a screenshot or .dny file.

1 Like

Thank you. This is most likely what I needed.

Sadly I had spent a couple hours searching and everyone kept referring back to the Dynamo example with the soon to be defunct python code.

What do you mean by this?

My guess is the example scripts in the help pull-down under autocad, that come with dynamo for civil 3d. They utilize python nodes that export PSD to json or export property set data to csv, etc. These were around before the civil 3d toolkit got awesome and if once the toolkit gets incorporated, they’ll likely update the out of the box sample scripts too.

As @KirkWM surmised there are example scripts within Dynamo to export property sets out of C3D and into a CSV file. However, it relies entirely on python coding node and dynamo 2022 comes up with a warning saying that form of python code (I believe Ironpython) relied upon in this graph may not be supported in future versions.

just about every example for civil 3d in this forum refers back to this example graph.

I think this was a great tool, but I didn’t want to build a series of graphs based on a soon to be defunct base, or be limited to just the separate CSV output file it provided. Especially if there were better more modifiable options.

and thanks to kirkWM’s starting point I should be able to complete the graph I want.

1 Like

I agree that using nodes from the Civil 3D Toolkit is a safe bet. Here’s a little bit more info for clarification on IronPython2.7 vs. CPython3 stuff.

I’m assuming this message is what you’re referring to:


Python 2 and Python 3 are fundamentally the same language, there are just a few differences in syntax. There is a Migration Assistant available in the Python node for upgrading old Python 2 code to Python 3 code:


Should you need to continue using Python 2 code, you can download the DynamoIronPython2.7 package from the package manager:


This post on the Dynamo blog provides some other helpful clarifications.

So in summary, the examples provided with the Civil 3D installation won’t become defunct, but they may require a nudge in the right direction to get them up to speed. Official support for Python 2 from the Python Software Foundation officially ended on January 1, 2020, so upgrading any remaining Python 2 code in your scripts is worth the time!


Thank you for the clarification. This was most helpful.

1 Like

Thank you for your help. I still have some modification to do in order to prevent the sorting out of empty cells but this is what I’ve produced so far.

Long story short I’m trying to export a bunch of custom pipe information in PSETs and combine it with my pipe export routine to populate several reports.

My main problem was that I was looking for a document based selection instead of an object based selection. With your example I was able to cross that hurdle.

1 Like