Civil 3D: Effective Pipe Network Management
You saw a demo of pipes from your local Reseller, and undoubtedly, you’re chomping at the bit to dig in – you have “the perfect project.” The first rule in CAD Management: Don’t attempt to work with the unknown, or unfamiliar, when a timeline and tight budget are on the line. I’ve seen too many people venture into the unknown, blow the budget, and shelve the software because it wasn’t properly implemented, and they became discouraged. Just because you have a yard full of toys, doesn’t mean you have to play with them. By the end of this post, you’ll know how I prefer to model a pipe network, but before we begin, there are some things you need to know.
Registered Applications
Generally, when a third-party application runs with AutoCAD, the application must “register” itself as having a relationship. Unfortunately, some applications register themselves with names not recognized by AutoCAD (similar to creating a “zero length object” or an “anonymous block”). When AutoCAD sees objects of this nature, it will re-register the applications, and this will happen each time the infected file is opened. In effect, the drawing will begin to balloon, it will become unstable, and the damage could grow exponentially. Have you ever opened a drawing of a decent size, only to find nothing in it? You can try AutoCAD AUDIT command, but if it hangs, and then finds nothing, you’ve already discovered the problem: We call them RegApps. They spread like a virus throughout your drawing sets (they spread through x’refs like wildfire, so while you think you’ve cleaned a drawing, the RegApps will reappear if an infected x’ref is attached).
Here’s the bottom line: If you don’t check your drawings for RegApps before you start with pipe networks, go home. (Did I say that out loud). Seriously, this issue can wreak havoc on Civil 3D pipe networks as they begin to grow. If you already have a large unstable drawing, adding large amounts of objects certainly won’t help the matter.
As a quick check, issue the following command at the AutoCAD command prompt:
(tblnext “appid” 5)(while (print (tblnext “appid”)))
If this action produces a similar listing to the one below (often scrolling infinitely), you need to clean the infected drawing:
((0 . “APPID”) (2 . “EP##*a%”) (70 . 0))
((0 . “APPID”) (2 . “EP##*a%”) (70 . 0))
((0 . “APPID”) (2 . “EP##*a%”) (70 . 0))
((0 . “APPID”) (2 . “EP##*a%”) (70 . 0))
((0 . “APPID”) (2 . “EP##*a%”) (70 . 0))
As an alternative, if you enter –PURGE on the Command line, the following is displayed:
Enter type of unused objects to purge:
[Blocks/Dimstyles/LAyers/LTypes/Plotstyles/SHapes/textSTyles/Mlinestyles/Tablestyles/Regapps/All]:
Enter “R” to purge the registered applications. -PURGE will only remove one level of references, so repeat the command as needed.
Uphill Design
Although the program will allow for the uphill design of pipes (beginning at station 0+00), this may yield “inappropriate” results (especially in curved pipe, and you may not recognize a problem until you try running rules). If this is the case, try designing downhill (from the high station to the low station).
Flow Line Labels
In some municipalities, showing flowline labels at station intervals is still required (honestly – have you ever seen a contractor use these). Unfortunately, Civil 3D can’t automatically generate these. How do you work around the issue? Draw a profile along the inside walls in the bottom of the pipe, assign a no-plot style. The profile labels can be anchored to the bottom of the grid. Of course as the pipes change, your profile will need to change as well. But visually, it’ll be hard not to notice. Again – keep the profile visible, just don’t let it plot.
Building a Network
Several schools of thought here, but I have a tendency to keep it simple, and I’ve seen less instability when following one simple rule: One utility = one “network.” Let me offer a stormwater example: Draw simple lines and curves and join them to create a polyline. This allows anyone to draw the run, and you can do it with AutoCAD LT if you want. Save the drawing, we’ll attach it to a Civil 3D drawing. Start a new drawing, attach the x’ref, and define an alignment by selecting the polyline through the x’ref (if the original is changed in AutoCAD LT, you’ll be able to visually recognize the difference, and you’ll receive a notification the x’ref has changed and you need to reload). Name the alignment SS-LN-A, put it in a Site of the same name. Of course i’m assuming here you’ve attached an x’ref of a topo, and d’ref’d (data referenced) in a surface model.
Start a new network, name it “Storm Water,” when asked for the alignment name, choose SS-LN-A. Why would I use this procedure? If all runs are created in the same “network,” pipes from different “runs” that tie into a single structure can be labeled by the software automatically. In contrast, if separate networks are created for each run, it would be necessary to manually label pipes from one network as they enter a structure that is part of another network (as is the case of two pipes flowing into a manhole, and one pipe flowing out).
Draw pipes only. Why? Civil 3D will place a NULL Structure at pipe intersections (intersections – not the beginning or the end of a run). NULL structures can be swapped for other structures with a right click later. Make a style for NULL structures that appears any way you like, and put a big fat NULL STRUCTURE label on it as a visual reminder you have more work to do – it’s okay, we’re focusing on cutting sheets and we want some flexibility when it comes time to change or remove structures.
Profile the alignment, draw the pipes, tackle curb inlets, laterals, area inlets and such. But keep this in mind – pipes will connect to the center of a structure, and without a little VBA tweak, you can’t get around it. So how can you be sure you’re placing curb inlets in the appropriate place? In steps our old friend the dynamic block:

The insertion point of the block is at the outside face of the inlet, the inlet face has lines extending 4 feet in either direction (because you know you’ll be setting points there for construction use later), it has a line able to extend an infinite distance (use it as a construction line, where a lateral crosses the trunk, you have now defined an intersection), and the line can only rotate at 15 degree intervals (because in my case, those are the specs for wye’s, just in case I decide a cast in place isn’t appropriate).
Edit the network, add a structure, place it in the center of the dynamic block. Draw a lateral from the center of the inlet to the trunk, and watch it clean up (well – most of the time).

You always want to draw a lateral to a pipe, not away from a pipe – the ends will appear wrong in profile if you take the opposite approach.
The rest is really a cake walk. If you find the network is becoming unmanageable, then simply start a new one. You’ll need to manually label some connections, but when you visually browse the hardcopies, they should stick out like a sore thumb for you.
Civil 3D Tutorials*
Register Today to access to our comprehensive library of Civil 3D Tutorials for as low as $20.
*Access to the Library is a free service to our clients.




