Autodesk released a huge new and improved Dynamo for Civil inside the recent Civil 3D 2025.1 Update. The new Dynamo supports the latest Dynamo 3.2.2 core and includes over 1100 new and/or improved Dynamo nodes for many things AutoCAD and Civil 3D.
The new and long-awaited Dynamo for Civil 3D 2025.1 Update is certainly the most important Dynamo release since its initial release for Civil 3D.
Dynamo for Civil 3D Automation
The significant concept behind Dynamo is to enable any of us to more easily automate common and repetitive tasks in Civil 3D.
Say for example, we want to create irregular rectangular Viewports along an Alignment with independent Length and Height requirements or perhaps automate placement of Water meters inside Parcels inside a subdivision or Parcels along and related to a selected Alignment or easement Alignment. The array of example tasks in Civil 3D is endless.
One of my wish list favs might be to automatically create a named AutoCAD View for each View Frame in a Civil 3D Production Tool data referenced (DREF) ViewFrame Group.
Can the new Dynamo for Civil 3D do that? Nah. Not yet.
More of the impossible and improbable is certainly within reach with the new Dynamo for Civil 3D 2025.1.
For a review of the significant goodies, features, bug fixes, and enhancements see the recent Dynamo for Civil 3D 2025.1 Release blog post by Autodesk''s Zachri Jensen.
There are also many new and improved Sample .dyn scripts available for the new Toolspace like Dynamo node interface as well. Hoorah.
Dynamo for Civil 3D 2025.1
The latest Dynamo for Civil 3D 2025.1 Update does MText, MLeader, and Block-based annotations well.
In Dynamo the in-depth support for the immense collection of Civil 3D Label Style types sadly remains an on-going work in progress. Arrrgh.
Civil 3D Maintenance Work Blues
For the CAD Managers or Project Leads out there in Civil 3D Land many of our company and/or project-based maintenance tasks can be tedious and repetitive as well.
We need often to perform this maintenance work consistently across many project drawings – for example rename all the single Layouts in all our project drawings to “Sheet 1”(or some other company standardized name) for use in our Sheet Set Manager files.
Many common maintenance tasks might employ the improved access to the many new and improved Dynamo Document nodes available in this latest Dynamo Update.
Both Dynamo and the Dynamo Player require an open Civil 3D session to load any (.dyn) file and to function.
What if we need to perform the same DYN script on multiple project drawings?
Please Let My Dynamo Run
Dynamo includes the very useful but almost undocumented AECCRUNDYNAMOSCRIPT command. The command allows a Dynamo script to be nested and run from inside another AutoCAD Script (.scr) file. Hoorah.
If you follow this blog or are a Framework for Civil 3D customer you certainly recognize that I often rant about the need for us to master Civil 3D Batch Save Utility to ease the Civil 3D maintenance blues.
The Civil 3D Batch Save Utility (BSU) puts a pretty useful interface used to employ the headless AutoCAD Core Console (accoreconsole) exe that is supplied with all AutoCAD based products.
See the Core Console in the AutoCAD 2025 online Help.
Sadly, while the Core Console has been around for quite some time it too is barely and rarely documented. Sometimes it does appear that Autodesk wants to require that we really want to learn things.
AutoCAD Core Console
For those of you without access to the Civil 3D 2025 help and those that don’t know about our famous and very handy Autodesk Online Help page…
Here’s the AutoCAD Core Console command line syntax:
AcCoreConsole.exe [/i <input dwg>] /s <script> [/product <product>] [/l <language>] [/isolate <userid> <userDataFolder>] [/readonly] [/p[rofile] <profile>] [/loadmodule <module>]
- Both the /i (Input switch) and the /s (Script file switch) must include and resolve properly the full path and file name.
- The /product switch for Civil 3D is C3D the raw AutoCAD one is ACAD. One can probably guess at the other AutoCAD Toolset product names.
- All Script, LISP, and code references must be loaded from Trusted Path Locations.
These can be defined in the Options>> File reference paths (see the Support File Search Path and Trusted Locations nodes) in an AutoCAD User profile - hence the support for the /profile switch.
Note that employing the \profile switch will change the user profile in any subsequent load of the software unless the \profile switch is once again employed in the next Windows shortcut.
If we want to perform raw AutoCAD maintenance work, the Core Console employed with the ACAD switch and scripts can indeed be useful. We can make sure that the Civil 3D object model will not be injected into the drawing(s) with the ACAD /product switch.
However, the use of Dynamo scripts does currently require Civil 3D.
Thankfully, most of the time the Civil 3D Batch Save Utility (BSU) is much easier to employ.
Where have you been? The original Batch Save Utility arrived way back when in Civil 3D 2019.
Batch Save Utility to the Rescue
The Batch Save interface employs the AutoCAD Core Console and an initial external script file (.scr) and allows us to define other important operating parameters for the running of the scripts and code in multiple drawings and in multiple Core Console sessions.
We may then employ the AutoCAD SCRIPTCALL command to chain together AutoCAD Lisp (.lsp), multiple scripts (.scr), and Dynamo scripts (.dyn) file(s) with the help of the AECCRUNDYNAMOSCRIPT command.
A typical and simple Batch Save maintenance script structure is detailed below.
The primary .SCR file
- Loads one or more (.lsp) files that create one defined LISP command that usually calls a sequential list of AutoCAD commands and/or performs other work
- Sets key system variables like SECURELOAD and FILEDIA
- Runs one or more of the loaded and defined LISP commands that do the work
- Cleans up and closes the drawing
An example of a typical file to open, cleanup, and save a drawing file.
Complete Clean Scr:
(setvar "SECURELOAD" 0)
(load "C:\\CAD\\LayerUpdates\\Scripts\\Templates\\CompleteClean.lsp")
(setvar "SECURELOAD" 1)
CompleteClean
(setvar "FILEDIA" 1)
_.close Y
_.quit
An example of a typical LISP command definition used in the above example script.
CompleteClean Lsp:
(defun c:CompleteClean()
(command "_textscr")
(command "audit" "y")
(command "-purge" "r" "*" "n")
(command "regenall")
(command "qsave")
)
Faster Updates and Upgrades
Yes. We can employ these two simple files and use Batch Save to update and/or upgrade our Civil 3D resource collections and our Civil 3D Projects.
Your welcome.
A few Batch Save development hints…
The AutoCAD Core Console does not really provide much failure feedback. Why the BSU log files can be much more useful than they first appear. The folder by folder automatically generated .log.csv files that are also produced by Batch Save can help us isolate script failure issues in larger Civil 3D project and/or Style library and other Civil 3D resource collection structures.
For many maintenance chores our Input list must come from some file-based source(s).
Dynamo is better than ACAD scripts or LISP at employing other more diverse input sources like Excel spreadsheets, CSV files, JSON and/or XML based files, etc. This is one very major reason why the new Dynamo can and will save us all even more time and hassle in the future.
Make sure the Dynamo script runs well without user input in the Dynamo Player before calling it to run in a BSU AutoCAD script that will affect multiple drawings.
It is way too easy to make that one more added improvement to a well-functioning script and blow things up.
Got the bruises on my face to prove my faceplants.
Carefully double check the Trusted Path Location paths for any Lisp or script locations.
Things can run fine in a regular C3D user session but unexpectedly fail in ACAD Core Console session(s) environment because of these all-too-common Windows Trust issues.
Speaking of Windows Trusted Path Location and other Windows OS related performance issues – the more current the version of Windows and Civil 3D employed, the less likely we are to have software and operating system interoperability issues which tend to be .Net version related.
In the Batch Save interface we need to make sure we manage the number of simultaneous Console sessions and the session time out length parameters to give our scripts time to run.
This is particularly important in network or cloud file structure environments where file Open, Save, and Close operations may take some time to happen. Most cloud-based structures will allow us to check out and process files locally and then update the cloud storage location in a separate process.
In larger file structures, it does help to employ the file read only property condition parameter to manage the files that are processed (or not) by Batch Save. It is very likely that our Civil 3D project will include drawing files that we definitely do not want to change or update. Just sayin’.
Bear in mind that currently, Batch Save will not always respond properly to build related condition parameters when set in the interface. This is the Incompatible with target Civil 3D version checkbox.
This can and does vary depending on the build(s) of Civil 3D employed.
Best to not build maintenance processes that depend on this functionality in the BSU.
See the recent Content Catalog Extensions for Civil 3D post for why we might hopefully expect this issue to less of a problematic issue in the near future.
The Framework Spreadsheet Tools
What do you know?
The Framework for Civil 3D ships with many Civil 3D Template, Civil 3D Style libraries, and Civil 3D support resources like our sophisticated Layer Standards tools that already include Microsoft Excel based file maintenance and update script generation tools.
We call these the Framework Spreadsheet Tools. Here’s a short list of some of them.
Layer Standards Tools
The Layer Standards Tools provide for the generation of scripts which include all AutoCAD Layer properties for a standardized set of production Layer States, tasked-based Layer States, and adaptive system-based Layer States (e.g. Utility systems, Dam and Channel construction, Levee systems, etc.)
The Framework Layer Standards Tools support the National CAD Standard NCS 6.0 by default. Older versions of the NCS Standards and the appropriate Spreadsheet Tools are included with Jump Kit products.
The current NCS 6.0 Layer Standards Spreadsheet Tools:
- Layer Standards for STB
- Layer Standards for CTB
All Layer Standards Spreadsheet Tools can be modified to support any Key-based and/or Pattern-based Layer Standard system.
Civil 3D Codes Tool
Selected and filtered data from the Civil 3D Codes Tool is employed to update data in other supplied Spreadsheet Tools to produce consistent customization results.
All stock Subassembly Corridor Codes, Figure Codes, and Point Codes are included and documented. This spreadsheet generates and documents all the Description Key Set and Figure Db values for those supplied Spreadsheet Tool resources.
Description Key Set Tools
A library collection of Excel workbooks each with Sheets documenting the many supplied Description Key Sets and resources.
These spreadsheets generate external XML file resources of Description Keys and Sets. The tools and library resources allow us to make changes outside of Civil 3D and then apply them to achieve more consistent and productive results.
Figure Db Tools
The Figure Db Spreadsheet Tools document, create, and manage the supplied library of Figure Dbs.
The tool allows users to edit and construct Figure Db Codes and default properties more quickly and with better consistency outside of Civil 3D.
Subassembly Codes Tool
The Subassembly Codes Spreadsheet Tool creates, edits, and maintains the Corridor Points from the supplied stock Civil 3D subassemblies and produces translations to the Description Key Sets and an array of Code Set Styles that also include standardized Corridor Feature Line generation.
Survey Query Tool
The Survey Query Spreadsheet Tool is employed to create, edit, and maintain a library of external Survey Queries and help generate the standardized XML files employed in Civil 3D Survey interface.
Linetype Standards Tools
The Linetype Standards Tools allow the key-based naming scheme employed behind the supplied AutoCAD linetype resouces to be created, modified, and maintained with less effort.
Symbols Maintenance Tool
The Symbols Maintenance Tool is an Excel spreadsheet that both documents the supplied Symbol Set resource drawings and provides the ability to create custom scripts for building templates with different symbol/block combinations and/or custom block libraries.
The Framework for Civil 3D
It is relatively easy to employ these Framework for Civil 3D maintenance technologies to your organization’s version of Civil 3D. Seriously. Anyone can open and learn to fill in file name and path columns in spreadsheet?
Register.
Become a site Member and learn about the many available Framework Spreadsheet Tools and how to use them. See the Documents section.
We’ve been working on and with the Framework Spreadsheet Tools for years and years.
Why?
Because a Managed System really does help to make Civil 3D work better.
Make Civil 3D Work
Get the Framework for Civil 3D