Horizontality and verticality are very important in building design.
Most of buildings have to stand Vertical on the ground and provide Horizontal floors for people or something to stand.
In Revit, most of families find there axis as horizontal &vertical in project automatically. But, for what reason they don't when I use 3d curved paths to get workplanes for profiles.
At the picture above, you can see what happens when a path is 3d curved. Workplanes at the ends are rotated.(so are the workplanes at the middle)
And this feature made a helix curved slope weird at one of my posts like this.
I could find a solution of this problem while I develop an Adaptive Stair.
At my 1st attempt, I just used simple extrusions to make steps.
This is not bad, but not good enough. Steps maintain horizontal, but make cracks between each other when the path goes curved. And this stair can't go up & down in one path. It goes only one direction, up or down.
To solve the crack problem, I had to use 3d curved path to bend steps. But steps mustn't use 3d curved path in sweep to maintain horizontal.
So I placed another curve path for sweep using three points those were offset from three adaptive ones. And some formulas were used to maintain horizontal. The lowest 4th adaptive point were necessary to make this work.
formulas to make steps can go both up&down.
And make another rectangle profile family as a profile for a sweep.
At this point, Extrusion is also available to make a step, like this.
Only difference between both is shape of the side faces of stairs, smooth curved face or flat faces with edges.
And here is the result of my work.
I don't think this can be used in real projects as it is. But I could see some possibilities on using adaptive models.
You can download the family above here.