This widget accepts one step ('LandingStep') of arbitrary geometry and the pivot point ('Pivot_Pt') for the whole ladder. These inputs may be assigned manually from a Rhino CAD file or they can be the result of other GH scripts. The widget has sliders for total number of steps and the spacing between them, a distance measured when the ladder is horizontal (0 degrees) or vertical (90 degrees). It rotates the entire ladder to the specified angle and rotates each step separately in the opposite direction.

The 'LandingStep' is fixed, not part of the ladder. It can be hidden after the ladder is "baked", replaced by a deck or the leading edge of the forward crossbeam.

The relationship between 'Pivot_Pt' and 'LandingStep' is critically important. Not only does the whole ladder rotate around the specified 'Pivot_Pt' but each step is rotated separately, in the opposite direction, around a point that is at the same relative offset as 'Pivot_Pt' is to 'LandingStep'.

The 'Y' coordinate for 'Pivot_Pt' doesn't matter, only 'X' and 'Z', because the axis of rotation is parallel to 'Y'.

In other words, 'Pivot_Pt' can be located anywhere relative to 'LandingStep' - in the middle of the step, as indicated by the red "x" in these screen shots, above the step, below the step, at the leading edge - anywhere. The effect will be that each step will pivot separately at the same relative point.

An obvious enhancement would be for the widget to accept geometry for the ladder side rails and rotate them along with the steps, but that isn't necessary and was left out for simplicity.