Grasshopper

algorithmic modeling for Rhino

Hi guys I'm trying to right a script for a basic staircase so that you can draw a line from the the top floor where the staircase starts and draw a vertical line to the floor underneath. Then script a way to create a new line at a ratio of 280mm:180mm (dimensions of a regular step) from the top of the vertical line and diagonally away from it towards the bottom floor slab. I then want to subdivide that diagonal line and add steps to each division.

Views: 3759

Attachments:

Replies to This Discussion

Hello Arjun,

Here is how I would do a staircase starting from a vertical line.

Sorry, I didn't look at your file. I hope this is what you're looking for.

I believe this (StairCase_20150812a) is part of what you asked for:

But based on prior experience with stairs, I believe this is what you need (StairCase_20150812b):

The idea is that you define stairs in terms of "Rise" (180) and "Run" (280), and you must first determine the number of steps by dividing the total rise (the length of your vertical line) by the run and rounding it up (the 'C (Ceiling)' output of 'Round').  Then I use a 'Series' (1..N) to move a copy of the top step (the 'PlaneSrf') in both 'Z' (rise) and 'X' (run).

Attachments:

OOPS!!!  I still made a mistake typical for amateur stair builders - I forgot to compute the _actual_ rise, based on the total rise divided by the number of steps - the component in green in the image below:

Builders have no control over the height difference between floors; the "Rise" input in this case means "maximum rise", which determines the number of steps, which in turn determines the actual rise of each step - so all are evenly spaced.

Attachments:

So very sorry for my sloppiness...  I had connected 'Rise' instead of 'Run' to 'PlaneSrf':

Attachments:

No thank you, thats really helpful Ive been stuck on this for a while. On building regulations, a flight of steps (max 16) is followed by a landing, the landing is usually as long as it is wide, essentially a square. Is there a way to add that this into your program. Would you have to use the CullPattern option or a list of some kind?

I did a very poor job explaining it...

I understand about the landing and have done that very thing as a Sketchup component, for both straight and spiral stairs.  But there is no way I'm going to do it "just for fun" in Grasshopper, sorry.  Good luck.

Oh, and when you write a "Landing" feature for conventional stairs, there are at least two parameters that are imperative (and obvious?):

  1. Height - which ideally is specified as a 'Step #', because if it's not (which is not advised!), then it's really two separate sets of steps.  It doesn't have to be the maximum, the steps can be divided evenly above and below the landing, or any combo that doesn't exceed "N" steps between.
  2. Rotation - zero, +-90 or 180 degrees.  A landing is an obvious place to make a turn in a conventional staircase (not a spiral).  Simple left/right or, like escalators in a department store or emergency exits in tall buildings, a 180 degree turn.

And post it here!  :)

Thanks for you help, I'll have a crack at that now :)

And just before you take a crack at it. :) Don't forget to include International or local Building Code Requirements. For example The NBC does not allow treads less then a min tread width value, which means in a spiral stair the center supporting column will have to be at least the min tread width diameter.

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service