Generative staircases on terrain

This one is not too shabby!

The path is projected onto the terrain surface and contoured, then projected to the ‘World XY’ plane along with the contour points. The Anemone loop proceeds through the points and starts a new flight of steps when the horizontal distance from start point to current point is greater than the sum of (numSteps * ‘going’ (tread “length”)) + ‘Landing (minimum)’.

I don’t bother counting steps to force breaking a flight. There is one flight of 23 steps at the steepest part of the path, one flight of 17 steps, one of 16 steps and all the rest have 12 or less. No vertical gaps between flights.


terrain_steps_2021_Jul18a.gh (263.5 KB)

P.S. Later…

  • Added ‘thicken’ (white group) to steps and landings.

  • Centered steps and landings by re-using extrude vector on Move with “-x/2” expression.

  • Reduced ‘Landing’ (minimum) to ~73 inches (1.85 meters), reducing longest flight to 20 steps.

  • Added ‘extend Landings’ slider to close some gaps by making them longer without affecting step positions. Not currently used, still needs work.

  • Fixed mismatched list lengths that caused red error messages (harmless).

  • Separated bulky, unchanging geometry (surface, mesh) and ShortWalk code to another GH file, connected by Data Output and Data Input. Sorry R5 users but this reduces the size of GH code files for steps, the parts that are still changing. Wish we had done this earlier.


terrain_steps_2021_Jul18b.gh (49.4 KB)
terrain_geo_2021_Jul18a.gh (233.9 KB) (REQUIRED only once)

9 Likes