Hero image CADD Logo

Why is my AutoCAD Civil 3D drawing so slow?

CADD MicrosystemsJanuary 26th, 2017

https://youtu.be/ocwOT9X2mPQ

Your computer is one notch below the classification of super computer. You've tried the mosaic of AutoCAD configuration tweaks scattered across the internet - LAYOUTREGENCTL, SAVEFIDELITY, among others. You've purged, cleaned, and optimized your drawing by freezing layers and more - yet your AutoCAD Civil 3D drawing is still slow. In every practical sense, you've done all the right things and yet performance remains a concern - why?

While configuration tweaks may result in some small performance gains, software configuration is rarely the issue when customers reach out to us about Civil 3D performance. In a similar way, customers who reach out to us have typically done all the standard drawing maintenance best practices (AUDIT, PURGE, Purge RegApps, etc). At the end of the day this is a simple question with a rather complex answer. In practice the answer will be slightly different for each firm, but the simplest answer to this question rests with your data standard.

Like standard AutoCAD, good Civil 3D performance starts with the way you choose to structure your project. The key thing to consider when choosing how to structure your project is the way AutoCAD regenerates drawings. Put simply, AutoCAD considers every view in your drawing when performing a regeneration operation. In standard AutoCAD you're simply regenerating 2D geometry like lines, arcs, and text. In Civil 3D however we have intelligent objects that not only compose the graphics we see on-screen, but are also backed by object-based calculations that are necessary to generate those graphics.

Understanding how AutoCAD Regenerates Objects

Consider the humble spot elevation as an example of this. In a standard AutoCAD drawing that label would simply be a piece of text. If the underlying elevation changes, it's up to me as the drafter/designer to update the text. One of the benefits of Civil 3D is that it automates tedious annotation tasks like this. While that's an incredible thing, it's important to understand what's happening beneath the surface (no pun intended). Civil 3D is not only regenerating the text itself (like AutoCAD), but it is also performing the object-based calculations necessary to make sure the elevation within the label is in sync with the associated surface. Put simply, where AutoCAD only needs to do one operation to regenerate a piece of text, Civil 3D must do two to regenerate an intelligent label.

So what does all of that mean in a practical sense? Let's consider a hypothetical drawing with 4 layout tabs. Assuming each of those layout tabs have just one viewport, your drawing has 5 views it - 4 paper space viewports + model space. Now consider the spot elevation from our previous example. As AutoCAD text that label results in five operations - one for each view. By contrast, that same regeneration in Civil 3D results in ten operations - the graphics plus the object-based calculations times each of the five views. This is the underlying reason some teams choose to plot not from Civil 3D, but instead Civil 3D as AutoCAD. Using Civil 3D as AutoCAD will display all of your Civil 3D objects but more importantly cut the calculations necessary when regenerating - thus improving performance.

 

The Dangers of External References

Make no mistake, external references are something I use on nearly every project I work on, but I've learned to use them in a more calculated way. More specifically I've found external references and Civil 3D drawings with surfaces to be a dangerous combination. To explain, let's consider another hypothetical scenario resting with the need of showing my proposed grading in my drainage drawing. Although the grading drawing only displays my finished grade surface, peeling back the onion of that drawing reveals the collection of Civil 3D objects that went into building that surface. I likely have a series of constructor surfaces; a surface for the parking lot, a separate surface built from a Corridor for the road leading to my site, and yet another surface for the retention pond I had to design. The surface I see in my grading drawing is the result of pasting each of those constructor surfaces together to create a single finished grade surface, but those constructor surfaces are still in my drawing.

Since the constructor surfaces are still in my drawing, albeit not displayed, they are still part of the formula necessary to regenerate the finished grade surface that is displayed. Despite what's displayed on screen, externally referencing my grading drawing has the practical weight of 4 surfaces (finished grade plus the three constructor surfaces). This also begins to illustrate why the drawings I plot from often take more time to open, save, or plot than the drawings I model in. Unlike my model drawings with a limited number of views, the drawings I plot from typically have several layout tabs with viewports. Externally referenced into a drawing with four viewports/layout tabs, my grading drawing has an effective weight of 20 surfaces; 5 views (4 viewports + model space) times 4 surfaces.

The Power of Data Shortcuts

While there's absolutely a time and place for external references in your projects, they do little to simplify the AutoCAD regeneration formula. This is where the power of Civil 3D data shortcuts come into play. Combined with a data management strategy, I can use data shortcuts to simplify the process of regenerating my drawings - thus improving performance. A common tactic I employ on my projects is to define three types of drawing files; model drawings, reference drawings, and sheet drawings. So what does that look like? Let's consider the grading drawing for earlier to answer that question.

Under the three drawing type model, I will create my finished grade surface in a model drawing. I will create that finished grade surface by pasting each of my constructor surfaces (also in my model drawing) together; parking, road, pond, etc. The result of that operation is the same four surfaces as before; a drawing with three constructor surfaces plus my finished grade surface. Now instead of externally referencing this drawing, I will first use data shortcuts to create a reference drawing.

To create my grading reference drawing I will data shortcut the finished grade surface into its own drawing. This results in a drawing that contains just one surface - my finished grade surface. Whenever I open this drawing, the data shortcut functionality of Civil 3D will look back at my grading model drawing to make sure the finished grade surface displays the latest version of each constructor surface. By itself, that's not a big deal as it's simply the way data shortcuts work. What's more important is what happens when I externally reference this drawing into another drawing.

By using data shortcuts I have reduced the number of surfaces inside the drawing I'm externally referencing to just one. Put another way, my constructor surfaces are in my grading model drawing, not my grading reference drawing. My grading reference drawing only contains a data shortcut version of the finished grade surface. Doing this cuts the regeneration variables of my constructor surfaces while retaining the intelligent object-based relationships of Civil 3D. That means my grading reference drawing has the effective weight of 5 surfaces not 20 when referenced into a drawing with 4 layouts/viewports plus model space.

Building your Civil 3D Data Standard

As I mentioned at the start of this post, the topic of data standards is a complex one. You probably don't need to break things down to the level I've suggested in this post if you're grading something as small as a subdivision lot. On the other hand, if you're grading the entire 400 lot subdivision or similarly sized site, there's a good chance the tactics outlined above are worth applying to your project.

The important, yet difficult reality of this, is the way you structure your project is a decision that needs to be made at the start of a project. It's for these reasons CADD Microsystems highly recommends inviting your CAD manager to project kickoff meetings to discuss how your team will structure the data associated with the project. In a similar way, the team of Civil 3D experts here at CADD Microsystems have helped many clients with this task as well. Through our hourly assistance offering we help teams not only identify how to structure data for their projects, but also with the application of that structure on a recurring basis throughout the project.

Interested in learning more? We'd love to chat!

Contact us