Spiral handrail

I am trying to solve a riddle. I need to make a handrail in steel for a spiral staircase. I know it is a helix and I can draw that in Rhino. But the handrail is a flat rectangular piece of steel. So to keep it relatively flat as it goes up the stair, a certain amount of twist is required. I think I should be able to solve this in Rhino but unsure how. I’ve made a 3D helical spiral as in the uploaded file. Any suggestions are appreciated. There should be a mathematical solution to this. I’ve even started studying parametric equations and vector curvature trying to understand it. I can “see” what has to happen but want to be able to calculate how much twist I need.helix-two-turns.3dm (485.8 KB)

Make straight handrail of the same length, then use Flow command to curve it along the helix.

Hi Joe - Is the attached what you mean?
(Sweep1 > style=Roadlike Top)

helix-two-turns_PG.3dm (114.7 KB)

-Pascal

well, that looks like the hand rail I want. But I thought I had drawn that. What I need to do is get information from the drawing that will allow me to make the thing in real life. That means that I have to calculate or get from a drawing an angle of the flat bar(which is what I’m calling twist) that is in relation to the central axis of the helix. I realize that I probably confused you because I know what I want but used terminology that sounded like I didn’t know how to draw the thing in the first place. Hope i"m making sense.

Hello - the file I made has the profile angled normal to the helix rather than vertical - I thought that might be the problem. To get the angle make a Line > Tangent along the rail and ProjectToCPlane a copy, select the two and run Angle

Is that what you need?

image

-Pascal

Sorry, I didn’t realize how your file was different from mine. How did you make your file? Sorry to be dumb but how do you make the profile run normal to the helix? I’ve still got lots to learn about Rhino.

Imagine a coil made of rectangular bar 1/2" x 1.5" where the coil is made by bending the bar on edge. If you pull this coil apart like the old slinky toy, it forms a helix which is the shape of the spiral stair rail. But the flat bar ends up being on too sharp an angle with the axis of the helix to make a comfortable railing handle. With round bar this would not be a problem. To compensate for that we put in some twist to the flat bar. So the angle I am really looking for is that made between a line perpendiicular to the axis of the helix and the top surface of the helix I drew. Iron workers are not the only ones who run into this, carpenters have a similar problem with wooden spiral rails. Hope this helps explain what I’m trying to do.

Hi Joe - try this: On my file,

  • delete the sweep surfaces.
  • Set a CPlane on the bottom end of the helix (CPlane > Curve snap to the End)
  • Now Sweep1, with Roadlike Top, I imagine is best but before you finish running the command, turn on Record History in the status bar pane (click on that to make it bold)
  • when the sweep finishes, use Rotate on the rectangle, centered on that custom CPlane origin, to adjust the angle…

helix-two-turns_PG_History.3dm (111.2 KB)

-Pascal

Getting closer. You pointed me to some commands I wasn’t familiar with so I went back to the level 1 tutorial and learned about sweep1. I can see that I will use this a lot in the future. I tried what you suggested and I don’t understand how to access the recorded history. When I selected the complete helix and typed “what” it listed history but it didn’t have any useful information. I think if I can measure the angle between the roadlike top and a vertical line, it might be enough, although if I can adjust the angle in Rhino and know what angle that was it would be very cool for presentation. Many thanks. You are helping.

Hi Joe - I think… you can noodle the input rectangle until you like the angle of the rail - just rotating the rectangle around the origin of that custom CPLane is how you’d use History… Rhino History means: If you recorded history, then once the command is done, you can edit the input (rail curve and rectangle, in this case) and the output (sweep ) will update accordingly.

I think the angle you want is between a World vertical line and a long edge of the rectangle, correct? The Angle command will let you measure that.

-Pascal

Many thanks, Pascal. I did not understand the Record History command. Now I do and I can see how I can alter the flat bar of the helix. Tres cool. Yes, I think the angle I want to measure is what you have shown and I know I can go Analyze > Angle. Where I have difficulty is knowing that I am creating that line vertical to the world. If I am working in the perspective view the line never seems to go the way I want.

Hi Joe -
In a viewport with the World Top CPlane, use Line > Vertical (‘Vertical’ = normal to the current CPlane) or in the Right or Front views, assuming the CPlanes are aligned Right and Front, then a line with Ortho constraint to the CPlane Y axis will be World Z.

-Pascal

Many thanks. I think I’ve got it now.