If you or anyone else has something to add to the process shown above, please feel free to post it here. Let’s nail down the most efficient way to do this so there’s a resource for developers to build on and help fill in some gaps.
Its the combination of a few nodes smashed together in order to find the direction of the elevation from a line. If I remember right, the xAxis is the direction of the line. Angle with Vector found the angle between it and the Y Axis direction (up in plan view). The challenge with this node is that Dynamo does not know yet whether the angle should be positive or negative. That’s where the switch part comes in. If the x component of the line direction is not less than 0 (false) and the angle is less than 180 (true), then the angle (a) would get converted to a negative value, otherwise it would remain positive. The (+"") allowed me to put two booleans together to form a new one. The last part of switch to radians was necessary to feed the python script in the custom node.
To add to the script above, I’ve found that it helps if you set the scale to one before rotating elevation markers. That way, the rotational origin is only able to shift with an amount that is proportionate to the scale applied. A smaller scale means a smaller shift from the point about which a new marker is created.