Here’s an issue I ran into recently. A client of mine was creating profile views for his sheets and noticed that the grade labels where always at the midpoint of the line. The problem with this is if less then half of the line was being displayed in the profile view, there was no label to display! So, after thinking about it for a few moments, I came up with a solution.

The Problem

By default, when a grade label is placed on the tangent line of a profile it is placed at the midpoint of the line. If you are using only one profile view for the entire profile, this is no big deal at all. However, if you have your profile split up into multiple views, the grade label for the line will only show up if the midpoint of the line is within the station range of the profile view.


One profile line, three profile views, one label

I don’t want this, I want the grade label to show up in ALL profile views regardless of how long the line is. So, here’s the solution.


The Solution

Here’s what I came up with, if I attach the label to the feature, my only options are to attach it at the beginning, middle, or end of the line. Well, I want it to be half way between the start of the line in the view and the end of the line in the view so, create line that goes from those two points.


Create line within label style

The basics of this line is you want it to anchor the start and end to the feature (in this case, the feature is the line) and you want it to start where the line starts in the profile view (Anchor Tangent Start in View) and end where the line ends in the profile view (Anchor Tangent End in View). I don’t necessarily want to see the line in the profile view so set the visibility to “False”.


Now, we have something that will always be drawing in our profile view if there is a line in the view and now I can attach the label to the middle of that line.


Attach label to the middle of the line

Once this is done, if the profile view has even the smallest bit of the line being displayed, the line will be labeled.


One profile line, three profile views, three labels

Will I provide you with a drawing that contains this label style? Nah. It’s pretty simple. Just go create it yourself!


So, in class last week, I had some folks that work in the mining industry and they needed to create a filling curve. What’s a filling curve you ask? Well, you know what the final grade is going to be but, how much volume material have you placed in this area once it reaches a specific elevation, well, that’s a filling curve.

I was racking my brain on how to do this. An elevation analysis didn’t work on the volume surface because that gave me the depth of fill, not the elevation of fill. With the new Volumes Dashboard Extension available through the subscription website, I came up with a solution. Now, this won’t actually plot a curve for you but it will compute the volumes at any elevation for you.

To start off with, you need two surface, 1) the existing ground and 2) the filled in surface (in this example, I’ll refer to them as EG and Fill Stack). In order for this to work, the existing ground must be trimmed out to the exact limits of the proposed ground so extract the border from the proposed ground and use it as a boundary in the existing ground (I would recommend creating a new surface, pasting the original EG into it and applying the boundary to that rather then modifying the original EG).

Just so you can see what is going on, here is a cross section across  the site.

EG and Filling Surfaces

As you can see, the existing ground varies quite a bit so it’s important to take that into consideration. What we need to do now is create a flat surface that represents the elevation that we have filled. Simple, create a rectangle, assign it the elevation you want, and add it to a knew surface (I’ll refer to this one as the Level surface). Now we can see this new surface in our cross section.

EG, Filling and Level Surfaces

The desired volume at this particular station is between three surfaces, the EG, the Fill Stack, and the Level surfaces. The volume we require is shown below but I can’t get that from comparing only two surface, I need to compare all three surfaces.

Required Volumes

I can calculate the fill between the Level surface and the Fill Stack surface

Fill Area comparing Level Surface to Fill Stack

And I can calculate the cut between the EG surface and the Level surface

Cut Area comparing EG Surface to Level Surface

You might have noticed that the required volume we need is the green fill area subtracted from the red cut area, and this is where the magic begins. Launch the Volumes Dashboard (it’s an extension if you are still using 2012 and, if history repeats itself, it’ll probably be incorporated into 2013 or whatever the next release will be) and create the two volumes surfaces that will result in the above cut and fill. The first Volume Surface I’ll create will have a base surface as the Fill Stack surface and the comparison surface of the Level surface (this one will be called Fill to Level) and the second Volume Surface I’ll create will have a base surface as the Level surface and the comparison surface of the EG surface (This one I’ll call Level to EG).

Volume Surfaces in the Dashboard

Unfortunately, right now, the numbers you are seeing aren’t correct. The reason for this is because the volumes surfaces are still taking into account the volume above the Level surface, I only want it to take into account the volume below the Level surface.

Volume Error

Well, the volume dashboard allows you to apply different cut and fill factors so, to prevent the volumes above the level surface from being used, simply set the cut or fill factor for that portion to zero.

Cut and Fill Factors Applied

Now simply move your Level surface up and down (grab the polyline and use the move command). If everything is set to “Rebuild Automatic” you’ll see these number automatically update. Now, there is no way that I’m aware of to take these number and have them automatically create a curve but you can have excel open on your other monitor and simply move the Level surface and type in the volume into Excel, repeat until you are done.

Now, you wouldn’t be keeping your license or job for long if you didn’t do some double checking so, how can you make sure the numbers you are seeing are correct? Well, create a new volume surface that compares the EG and the Fill Stack so you know what the total volume is and then move your Level surface above the highest elevation of your Fill Stack (the numbers should be the same) and then move your Level surface below the lowest elevation of your EG surface (the volume should be zero).

Maximum Fill Check

No Fill Check

One thing to make sure you do is to uncheck the volume surface you are using as the check so it’s not included in the totals on the left of the dashboard.

Hopefully you’ll start to see the value of using the volumes dashboard and some of the things you can do with it. The more I use it, the more I like it. If you come up with any other great ideas on how to use it, let me know and if they are awesome enough, I just might write a post about it and give you credit for it.

For more information on the Volumes Dashboard Extension, you can read about it HERE.

Just today I learned that there is a new tool up on Autodesk Labs called, “Project Silverstar”. The name means nothing to me but what this tool does is it will optimize your profile for you. Basically, you upload your existing ground profile and a series of offset profiles to the Autodesk Cloud, put in a few parameters, it chugs away in the “Cloud” and it returns to you the optimum profile for your alignment.

This is the first tool that I’m aware of that uses cloud computing to assist you in your design specifically for the Civil Engineering market from Autodesk. If you were at AU2011, I’m sure you’ve heard a lot about “The Cloud”, well, Civil 3D now has the power of the Cloud.

As I just heard about this tonight, I haven’t had a chance yet to really try it out. Look for a post next week to see my take on how well this tool works.

So you have some short pipes and you have some long pipes. Labeling the long pipes is just fine but when you label the short pipes, the text is longer than the pipe so you have to manually edit the label and put those line breaks in or you have to change the style the label is using for one that stacks the different pieces of data. Well NO MORE! Come on now! This is CIVIL 3D we’re talking about!

As long as you have Civil 3D 2012 that is…

Anyways, in Civil 3D 2012 there is a new option in the label style to set a maximum length to a text component. We can use this to specify how long we want the label to be. Now, the trick here is to use an expression for the maximum label length. We have to do this because the length of the label is measured in plotted units, not absolute model units.

The expression will look like this:

Expression used to limit label length

To create the expression, on the settings tab in Civil 3D, expand out Pipe, Label Styles, Plan Profile. Right click on Expressions and choose “New”. Give it a name (this will appear in the label style later), a description (this is optional), and the expression itself.

Now that the expression is created, you can add this to your label style. In your pipe label style, simply add this expression to the Maximum Width of the label text component.

Applying the expression

Your expression will now show up as an option for the Maximum width of your label. Once you have applied this, your label will automatically adjust for you.

Labels Automatically Shortened

As you can see in this example, there are some limitations. If any single word is longer than the pipe length, it will not be wrapped. Additionally, if you want a buffer around the ends of the pipe, you can simply modify the expression and subtract off half the twice the distance you want at each end (1/2″ buffer at each end means subtracting 1″ from the expression).

Hope this helps someone with their labeling issues and thanks to Brooke for coming up with the great idea!

Expressions have got to be one of the coolest things in all of Civil 3D. I was teaching a styles class a couple weeks ago and when we got to expressions, one of my students asked if we could use expressions to label the length of a vertical curve, but just the length of the part of the curve that was within the profile view. I got to thinking about it and this post will show you the results of what we did.

First of all, a little bit of information is needed. There are a couple properties of vertical curves that we will be using for this label, specifically the start and end station value of the curve. What we need to do is check to see if the beginning of the curve (and likewise the end of the curve) lies within the profile view. To do this, we create an expression that will check this. If the beginning of the curve lies within the view, then the expression will return a value of 0. If it doesn’t, it will return a value of the distance from the start of the curve to the start of the profile view. Likewise, we will check the end of the curve to see if it’s in the profile view. If it is, return a value of 0, if not, return the distance from the end of the curve to the end of the profile view.

Expression checking the start of the curve

We then create a third expression that will take the total curve length and subtract off these two values. If both ends of the curve are within the profile view, then we simply get the length of the curve. This expression is the one that will be placed in the curve label instead of the total length of the curve.

Expression for the Curve Lenght in View

Now that we have the expression created, simply add it to your label.

Place the expression in the label

Once you have added the expression to your label, here’s an example of what it can do. As you can see, the “LVC” is the overall length of the curve and the “LVC in view” is the length of the curve within just the view.

Expression used in the label

If anyone would like to see this label in use, you can download a drawing HERE with the expression being used. Leave a comment here, I would love to hear what you think about this.

Yes, I know Civil 3D 2012 is coming out soon and yes, I’ll probably post about the tools that I think will be the most beneficial (I’ll let everyone else post the “Hey! Civil 3D 2012 is coming out!” posts) but sometimes things slip through the cracks and you find out there are cool new things available for what you already have.

Now, my question is; How did I miss this? Did this just come out? I did a search online and I can only find one reference to this outside of the Autodesk website so I’m assuming this is something really new (please correct me if I’m wrong). I probably missed it because of all of the focus on the announcements of the new AutoCAD Civil 3D 2012 that will be coming out soon.

One of the fine folks I follow on Twitter just posted a link to the Transportation Extension for AutoCAD Civil 3D 2011. I had never heard of such a thing so I went investigating and I found some really cool tools are available to everyone that has Civil 3D 2011. It’s not on the subscription site so I’m pretty sure it’s for everyone. Go to the home page for Civil 3D ( and click on the Support link, and then the Utilities and Drivers link (a direct link to the page can be found HERE). Under AutoCAD Civil 3D 2011, you’ll see something called, “AutoCAD Civil 3D Transportation Extension”.

“What is this?” you may ask yourself, well, let me tell you what I’ve found out so far. It seems to be a bunch of additional tools that will run on top of Civil 3D 2011, and there looks to be some great tools in here. Allow me to list them for you and then later I will get into greater detail about them (at least the ones I’ve figured out so far):
1) Check Alignment Geometry
2) Quick Cross Section
3) Surface High/Low Points
4) Import Raw Data
5) Create Surface from Photogrammetric Data
6) Export Civil Data
7) Show/Hide Labels
8) Export Layout to DGN
9) Eleven New Reports (according to the readme)

Transportation Extension Tools

That’s a lot of cool stuff they’ve given away for free (remember, this isn’t on the subscription website). So, let’s take a peek at what these tools will do.

1) Check Alignment Geometry

Have you ever created an alignment from existing entities and later found that those lines and curves that you received from the planner or surveyor or whoever weren’t tangent? Well, worry no more. This is a great little tool. In testing it, I created a polyline with a line segment, a tangent curve off the end of it, and then a line from the end of the curve that I drew so it looked tangent to the curve, but wasn’t actually tangent. I created an alignment from this polyline and then ran this tool on the newly created alignment. After running the command, it prompts you to select the alignment and then asks you to “Enter gap tolerance”. I’m not exactly sure what the gap tolerance is but probably has something to do with gaps in the alignment. There is no help so I can’t do any research on it and the little bit of testing I’ve done has helped me figure it out either. Next, it’s going to ask you to “Enter angle tolerance”. Again, I’m not exactly sure what the angle tolerance means but every time I’ve run it, I’ve used the default setting and it does something. So, what does it do to our example of a non-tangent line connected to an arc? Well, it makes them tangent. In addition to that, it place a PI at the point of intersection of the two lines (very convenient).

Alignment Check

2) Quick Cross Section

This is an interesting one and I’m not sure how useful it will be but, I’ll explain what I know about it. The Quick Cross Section command works very similarly to the Quick Profile command. I want to see what my cross sections will look like (real quickly) created from a line between here and there. Well, run the command and it will create them for you, all you need is a drawing with a surface in it. Once the command is run, it will prompt you for the surfaces you want to display in the sections and then it will prompt you for “Enter an option [3p/Multi]”. I haven’t tested the 3p option yet but Multi will allow you to pick points on the screen that will basically define the alignment you want to create the sections for. It will then prompt you for the sampling interval, the left and then the right swath width and where you want the sections to be displayed in the drawing. After you have entered that, a dialog box will be displayed that will ask you for the appropriate styles, Section Style, Section View Style, and Band Style Set (apparently there is no option for labels). Once you hit OK, the sections will be displayed in your drawing. Like a Quick Profile, the Quick Cross Sections are temporary. Unlike the Quick Profile, the Quick Cross Sections will immediately disappear when you end the command, rendering it (in my opinion) fairly useless.

Quick Cross Sections

3) Surface High/Low Points

This command looks pretty cool. It will analyze a surface and place points at the high points and at the low points. You can then use the Low Point points as the starting point for the Catchment Area command. Basically, just run the command, and then select the area of the surface you want to be analyzed (if you want it to analyze the entire surface, just hit enter). It will also create two point groups, one for the high point points and one for the low point points (pretty convenient, huh?). You can then use these point groups to control the display (as well as the description) of the points.

High/Low Points

High/Low Points

4) Import Raw Data

I wasn’t able to test this one out as I didn’t have any file types that would be needed for this command to work but, here is what I THINK it will do. It will take a Star*Net .dat file and convert it into a fieldbook file (for more information on Star*Net click HERE). From the import dialog box, there seem to be quite a few options.

Import Raw Data

5) Create Surface from Photogrammetric Data

This one looks cool. I haven’t tested it out completely yet but, basically run the command and it will ask you what layer your data is on. Select the layers for both the linework and the point data (you have to give them names), select the surface you want to add them to (or have it create a new surface for you) and you’re done. I tested it with a bunch of contours and it didn’t give me the option to minimize flat faces (apparently they didn’t think that you could use this for contour data).

Create Surface from Photogrammetric Data

It appears there seems to be a slight issue with the dialog box. The bottom of it is cut off and no matter how you re-size the dialog, it doesn’t seem to fix it. If you are familiar with creating surfaces in Civil 3D, you shouldn’t have any trouble figuring out what is being cut off.

6) Export Civil Data

This is another one that I haven’t been able to test out as I don’t have any survey equipment. According to the readme file that comes with the extension, “Export Civil Data (to survey formats – RD5 and TP5) – enables users to export Civil 3D alignments, profiles, and corridors to a TDS .rd5 roadway file and/or .tp5 template file.” The dialog box asks you to select the Alignment, Profile, and (or?) the Corridor and it will create the .rd5 and the .tp5 files for you.

Export Civil Data

7) Show Hide Labels

This is another one of those tools that looks pretty cool. Have you ever been looking at a drawing and though to yourself, “Man, I wish I could just get rid of those labels temporarily. It sure would make it easier to see what was going on!”  Well, now you can. Simply run this command and the select the label types you want to hide and the ones you want to no longer be hidden. There’s even an option at the top to hide all labels or show all labels. Pretty slick in my opinion.

Show/Hide Labels

8) Export Layout to DGN

Pretty self explanatory here I would assume. It allows you to export a layout tab to a .dgn file. Again, I can’t truly test this one as I don’t have Microstation installed and I don’t have a “seed file”. It seems straight forward though. It will export each sheet (or just the ones you select) from a Sheet Set Manager file (.dst) to a .dgn file

Export Layout to DGN

9) New Reports

According to the read-me, there are 11 new reports. Well, I have no reason to doubt that but, when you install it, there is a new report category and it only shows one new report so the other new reports must be included in the other report categories somewhere (I don’t have a list of them or of the originals that come with C3D to compare my current list to). The one that does show up (Corridor->Slope Stake Report) is pretty slick as it will actually display the cross sections in the report for a visual confirmation of the data.

Slope Stake Report

Wrap Up

As I said, there are some pretty cool new tools here so go out and try it for yourself. Let me know what you think, what reports you like that are new with this, etc. Also note that when you download it, you can also download the CalTrans Content Kit after you install these tools. Looks like I may have another post to write up about that.

Had a great call this afternoon, someone was trying to take a surface profile and get the station and elevation data from that profile into an excel file. At first I thought, “Easy! Just use the toolbox and create a report!” but, do you think I would be writing this post if it was that easy? Nope, don’t think so.

Apparently, the reporting tools only work on layout profiles and don’t work on surface profiles, even if the update mode for the profile is set to static. You could probably find some way of converting a surface profile to a layout profile. The solution we came up with is a two step process.

1) Create points along the alignment from the profile. We did this using the Points->Create Points – Alignment->Profile Geometry Points command from the Home tab on the ribbon:

Select the alignment and the surface profile.

2) Create a report of the points. This is done through the Toolbox tab of the Toolspace. The report we ran was under the Points->Station Offset to Points.

This report will ask you for the points and the alignment that the station value will be calculated from. The report created will have both the station and elevation in it, simply copy the data out of the report and paste it into Excel, removing the columns you don’t need once in Excel.

Thanks to Bryan and the rest of the people in the Tetra Tech office in Lognmont for always coming up with decent challenges for me!