Today on the discussion group, a user requested a surface label where the arrow always points downhill. Now, for a single point surface label, this is “automagic,” and doesn’t require any real tricks. And if you use a single line label on a line with three dimensions, it’s pretty simple too, as long as you use one of the default line labels with the Slope components. These have already been setup to rotate the arrow. But a Surface Two Point Slope label? That’s a new one. Make the jump to see how it’s done and grab a drawing with the style built-in.
Let’s take the look at the typical two point slope label as shown here:
There are two problems: one, the arrow head points from point one to point two. The arrow should point downhill; two the slope is labeled negative when the arrow is pointing downhill, and we want to drop the sign. Let’s take care of the arrow rotation first.
To get a rotation, we need to essentially check the slope of the label line, then rotate the arrow based on that slope. We’ll use an expression to do this. On your settings tab, expand out Surfaces->Label Styles->Slope. Right-click on Expressions and select New to display the New Expression Dialog. Call your expression grade check, then set it up as shown here. We use PI because the rotation value will be measured in radians when coming from an expression.
Now you’re ready to build the label itself. Copy the standard slope label to make a new one. I’ll call mine Downhill. Then change to the Surface Slope Component and open the text editor. Change the Sign option as shown here and update the label by pressing the magic blue arrow!
Close the dialog and your preview should reflect the lack of a sign now. To rotate the arrow, change to the Direction Arrow component and select the Grade Check expression as shown here.
With this label style, the pick order no longer matters, and the sign will be dropped to indicate that arrows always point downhill.
You can download a sample file with his label style in it here, Hope this helps, and look for the video up on the civil3d.com YouTube channel later today. here that Jeff Paulsen was kind enough to quickly produce.