From the Ground Up
A European perspective on design and out of the box thinking with Civil 3D.
About Jack About OveLatest Post
- posted 06/24/08 by Ove Cervin Surface Labels - Slope and Grade
- Hello friends!
Have you driven on Manhattan - or in Tokyo ? I have - now!
Why don't you try it out here...?
http://geoquake.jp/en/webgame/DrivingSimulatorGM/

and you might also want to try driving a truck/trailer...

I had some fun there ,-)
Our friendly colleague, Tomas Lendvorsky has created a few tips&tricks I'd like to share here.
The first one is on "How to set up a Surface Slope Label Style using Expressions" that makes it possible to present "0:0" on Horizontal Surfaces. Might seem easy, and you might try it out - getting "0:0" on a Run:Rise Label ;-)
Here's how Tomas did it:
As you can see in the following image the Labels on the upper right part present Horizontal areas as text "Horizontal" and on the other side of the Surface it present the grade with % (-5.7% in that case).
On the bottom left side the same data is presented with a new Label, presenting a Run:Rise info on the flat area (0:0).
To get this; follow the below steps.

Edit the Label Style.

Here it has the name "Slope 1: "

To make a short explanation on the following; What is done here is a Labels with three parts. A slope arrow, a text containing "0:0" and a text containing the actual Surface Grade.
Depending on the value of the grade (Expression) the Text Height for these Label parts are shown as really small, or normal. That way it LOOKS like it is presenting 0:0 on flat areas only, even if that text IS there also on non-flat areas - but VERY small. And the other way around; The text presenting the correct grade (value from the Surface) IS there all the time, but if the grade is flat, that text part of the Label is really small. That is the reason you will see double data on top of each other in the dialogs here.

Detailed: The Surface Label here has three parts (below):

The "Slope Text" contains information from the Surface but has a Text Height from an Expression (below) called "SlopeNotZero".

For the part of the Label presenting "Text Horizontal" the content is "0:0".
The Text Height is here (below) set to the Expression "SlopeZero".

The Expressions used in the Labels to get the proper Text height is done like this:
We have two Expressions.

Create these two Expressions.
Named: "SlopeZero"

...and named "SlopeNonZero"

Then use them as described above in the Surface Label.
Hope you'll get the idea. ;-)
Thanks Tomas for sharing this!
We have a few more nice tips from Tomas that will be shared here soon.
Cheers / Ove Cervin
