Civil Fast Forward


Elevation differences label between surfaces

Create an elevation differences label between surfaces in cross sections in Autodesk Civil 3D 2013

1. Open Autodesk Subassembly Composer for AutoCAD Civil 3D 2013 or Autodesk Subassembly Composer for AutoCAD Civil 3D 2012 (for Civil 3D 2012 and 2011)

2. Add Target Parameters

–        Name: Surface
–        Type: Surface

3. Add Geometry Point P1

–        Type: Delta X, Delta Y
–        Origin: 0,0
–        Point Codes: “pd” (for the datum point)

4. Add Geometry Point P2

–        Type: Delta X on Surface
–        From Point P1
–        Delta X: 0
–        Surface Target : Surface
–        Point Codes “ps” (for the surface point)
–        Link L1 Codes “diff” (for the elevation difference)


5. Set Packet Settings

–        Subassembly Name: Difference

6. Save the Subassembly file (*.pkt)

7. Open Autodesk Civil 3D, choose Insert, next select Import and Import Subassemblies

8. Select Source File and add subassembly to the specified points in your assembly

9. Select Settings and choose from General > Multipurpose Styles your Code Set Styles

10. Click Link and next Add a new code and ignore Pick Link Code (choose whatever is displayed) and press OK

11. Change NEW CODE to diff

12. Change Style and choose create new style, call it Off, select Display, choose View Direction Section and change Link Visible to the OFF state and press OK

13. Select Label Style and Create New Style

14. Select the Text component named  GradeText

In the General tab choose Behavior and change Orientation Reference to
World Coordinate System

In Layout:
–        Anchor Point to: Section view Bottom – at End
–        Contents: <[Link Elevation Change(Um|P2|RN|AP|GC|UN|SD|OF)]>
–        Contents properties Sign: drop sign
–        Precision: 0.01
–        Text Height: e.g. 1.0mm (depends on what heights you use in bands)
–        Rotation Angle: 90 (d)
–        Attachment : Middle right
–        Y Offset: e.g. -37.00m (depends on the bands’ heights and the position
where you want to insert the label)

15. Add a new Line component
–        Start point anchor component: GradeText as above
–        Start point anchor point: Middle Left
–        Use End Point Anchor: False
–        Fixed Length: 1.35 mm (depends on what heights you use in bands)
–        Start Point X Offset: 3.70 mm (you can change this to get the best result)

16.Add the code of the point to your assembly

17. Select Corridor Properties and choose Target next add the Existing Surface as target

18. Finally you will get your values with your surface elevation differences between datum and the existing surface


Check the result: 18.65 – 17.47 = 1.18

19. If you want to add some further conditions to your label e.g.
to show the labels which differences are greater than 0.01m, then
choose General form Settings and next Link Expression from Label Styles

Name it diffCondition and add a new expression

IF (abs({Link Elevation Change}) <0.01,0.0000001,0.001)

Use this condition in your label in:

–        Text Height: diffCondition
–        Fixed Length: diffCondition

If you want to show the differences between top surfaces and existing surfaces, use difference subassembly with the “pt” code for the top points and insert them on the top points.