I would like to extend the "offset suface" macro to include the possibility of calculating the new surface perpendicular to the old surface. If the slopes have different inclinations and you have to apply the same layer thickness everywhere, you cannot move vertically.

This is possible in the machine controls, it should also work in TBC.

If you use the Slope Slope Intersection tool you can create offset strings and compute offsets using Perpendicular offsets to create the building blocks for a perpendicular offset surface - I use those a lot to compute out surfaces of complex shapes for construction.

The machine is only offsetting the blade to the one two blade point references that it computes or offsetting simple geometric shapes like a 4 point or 5 point embankment or cutting from a cross section based format (DC Files) - it is not perpendicularly offsetting complex 3D surface models which is a whole different issue unfortunately and not so simple to do - if you want a cross section based solution that is way easier to do than a TIN based solution, however while each section may be correct, around corners or where sharp changes occur you may have issues - but in long constant areas like an embankment it is easier to do than again an entire TIN model.

For example take an embankment slope that has a flat bottomed ditch at the base and it meets almost horizontal ground at the top - the piece between the Top of embankment and the toe of embankment it it is a relatively constant slope is easy to offset at top and bottom perpendicularly to create a pair of strings that represent the perpendicular offset surface and you can so that using Slope slope or Offset Slope macro tools today - however the piece where it joins the ground or the ditch where the slopes change - one with an inside corner and one with an outside corner are not at all easy to model

It is also mostly going to be an area based issue - i.e. you want the embankment slopes or maybe the slopes and base of a Landfill cell offset but not the entire site - so doing this in smaller or more constrained areas may be more possible than doing it over a whole site.

Alan