Simon Fox Posted October 28 Share Posted October 28 I’m currently working on a project that includes an almost free-standing staircase with a complex shape (a superellipse). I found a great script here on the forum by Dom C ("Circular Marionette Stairs 1.0.0"). that allows you to freely manipulate the form. What we need to adjust, however, is that in our case the steps (treads) don’t all converge to a single center point — instead, each step has a slightly different center. This is because, according to Swiss building regulations, the inner radius of the staircase must have a minimum tread depth of 15 cm. As a result, each step ends up with its own unique center. My question is: how can I modify the script to achieve this? I’ve attached a VWX file with my first attempts, in case it helps to understand what I mean — or maybe you could even implement it directly in the attached file. Simon Fox Holenstein Architekten SUPERELLIPSE_TREPPE_MARIONETTE 2.vwx Quote Link to comment
DomC Posted October 29 Share Posted October 29 Hi First you should think about a rule which is available. Mostly this is the bigger issue than making the some code is thinking how about you think by designing and how to convert it to an algorithm. 1. The rule could be, every step line is "designed" by human (user) - Then maybe the control geometry could contain just inner and outer countur and lines which are created by user and the script would model the 3D stari 2. A logic adaptable rule as example. On the inner countur we need 15cm minimum measurement. this gives us an amount of steps we could use maximum and the vector of the step-line it through this inner minumum point and the walking line of the stair. Problem could be, that every inner distance is the same on the contour and if the countour is not symmetric the steps are not symmetric. But in your case the Stair "eye" is symmetric so this could work. Yes could work. + Symmetrical - But because the out contour and the inner contour have not the same shape as the walking line it is maybe not the best solution. + Walking line could be parallel to outer contour to make the walking path more ergonomic + Relative easy to script. repacing the center through the point which are paired to the other point. 3. The inner virtual center could be defined independent on a contour (similar to the original example but not a center just unique points but not on the contour) + This would result in nice flow of the stair because of similar shampe outer and inner center points - Different distances on the real contour. + Usefull if inner contour is not symmetric. as example Picture one - Looks line best Solution but harder to script. We need points on the outer and virtual contour (easy). Then we need sectionpoints between polyline final inner contour. This is harder. I do not know the good solution for this. Maybe through intersecting line with inner shape etc. Or have you another requirement which could be defined? If i look at your specific stair the rule is like Solution A. Individual drawn steps in 2D. I can not see a rule for calculating the inner points? Generally i think, a stair is one of the last design-peaces an architect can be creative. So maybe it is the right thing to just model individually it take too long to make an algorithm for it. Quote Link to comment
DomC Posted October 29 Share Posted October 29 Looked a little deeper. A pragmatic solution could be, we have a virtual outer and inner contour. which have a regular shape. Then we create the points on this contours: Connecting to the existing script will modell the stair and intersect the shape: One point left, it does not stop by the final contour if it is infinite like this: To use this in a PIO you have to make control-geometry a group and order the elements in the right order: Extract them in the right order important keep order. Otherwise you will mess it up. I took order here in this example 1. VirtualShapeOut 2. VirtualShapeIn 3. Final Form. Then wrap and convert to pio You have to bound the shape ad the escape step. What is missing is the 2D Geometry, which has to many lines now. But it is makable. Not worth to go further if it is not clear if anyway the geometry methode is fitting the requirements. Connect to local Distributor ComputerWorks. They can help. If it takes longer it will be not costless. But maybe this start would help you. Oval Individual Focus points.vwx 2 Quote Link to comment
Simon Fox Posted October 29 Author Share Posted October 29 Hey, thank you very much for your detailed reply! To clarify: the special inner shape results partly from the maximum allowed distance of 2 m from the building, and partly from additional Swiss fire safety regulations. These require a minimum walking width of 1.5 m for spiral staircases, as well as a minimum tread depth of 15 cm at the inner radius. Because of this, the shape became compressed on the inside, while the outer superellipse form is a deliberate design decision. I really like your first ideas! If I understood correctly, there’s now an inner counter where you can define the width, and additionally an option to set the width along the centerline of the walking direction for each individual tread. if that would be somehow editable or even rechable in the Control Geometry, that would be amazing. In the second part, where you introduced a virtual counter and a final counter, I think that’s a very good approach. Ideally, it would be great if — as described above — the minimum width could be entered directly at the inner virtual counter (though I’m not sure if that’s technically possible). I tested the document, and the current workflow issue is that the starting point can no longer be freely defined, or at least it’s unclear where it begins. A combination of the original file and your modified version would be perfect. Quote Link to comment
DomC Posted October 30 Share Posted October 30 You could open both virtual poly where it starts. While the original scrip calculates and is not geometry related Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.