[PR] [0.18-0.21_pre] Arch Stair - More Geometry Control? Profile Generator
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Be nice to others! Respect the FreeCAD code of conduct!
[PR] [0.18-0.21_pre] Arch Stair - More Geometry Control? Profile Generator
EDIT: 0.21_pre - viewtopic.php?p=675984#p675984
EDIT: Riser Thickness, 31.3.2019
Hi, I am trying the Arch Stair (again).
The settings are great to automatically generate a stair.
I find the need to set the length of the intermediate landing, but it seems there is nothing in the combo data tab nor wiki.
Possible to control it somewhere? Through python script?
EDIT: Riser Thickness, 31.3.2019
Hi, I am trying the Arch Stair (again).
The settings are great to automatically generate a stair.
I find the need to set the length of the intermediate landing, but it seems there is nothing in the combo data tab nor wiki.
Possible to control it somewhere? Through python script?
Last edited by paullee on Mon May 20, 2019 5:58 pm, edited 15 times in total.
Re: Arch Stair - Control Legnth of Landing?
Basically at the moment the length of the landing is calculated by taking the total length of the stairs baseline and subtracting the total length of steps. But the stairs tool was never carried very far, it needs a lot of work yet...
Re: Arch Stair - Control Length of Landing?
Thanks!
I attempt to understand the code, though farrrrrrrr from understanding the whole, it is noted obj.Width.Value is used for the 'landing depth'.
I try introduced 'Landing Depth' property and add in essence the following... prima facia it works... now if 'Landing Depth' is not '0', the landing depth follow this input.
The whole modified file attached (ArchStairs.py), see if it helps and any problem (I do not understand most of other code/calculation) ... I would try an alternative to calculate the stair length / height based on input of individual tread and riser....
Code: Select all
if obj.LandingDepth:
reslength = edge.Length - obj.LandingDepth.Value
else:
reslength = edge.Length - obj.Width.Value
I can only use gedit and without more knowledge in programming best practice, I add 'by paul' to signify the changes made.
set at '0' set at '1000' set at '2000'
- Attachments
-
- ArchStairs.py
- (25 KiB) Downloaded 135 times
Re: Arch Stair - Control Length of Landing?
That seems very good!
Would you like to make a pull request on github and become an official FreeCAD developer?
Would you like to make a pull request on github and become an official FreeCAD developer?
Re: Arch Stair - Control Length of Landing?
Hi, no problem to share anything I can manage to contribute if found helpful.
In the meantime, I never and haven't learned how to use github (except download FC ).
Before then, the revision of code was attached in last post.
In the meantime, I never and haven't learned how to use github (except download FC ).
Before then, the revision of code was attached in last post.
Re: Arch Stair - Control Length of Landing?
@chrisb started a great thread about learning how to use git and GitHub (can't find it ATM). There is also a short tutorial on the wiki github
Feel free to ask queations, folks are happy to help as you know
Feel free to ask queations, folks are happy to help as you know
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Re: Arch Stair - Control Length of Landing?
Do you mean this: https://forum.freecadweb.org/viewtopic. ... 10#p197792 ?
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Re: Arch Stair - Control Length of Landing?
Hi, thanks all for the information!
There are lots to read in fact, it's fun though... I started to read python, workbench creation, may need to learn gimp/inkscape to draw icon, since I found FC trying to learn something that maybe like Revit or ArchiCAD (both I never use) ... and like Yorik once comment 'end up coding' - though I am never and far far far from being a programmer of any kind (I had a book on 6502 assembly / machine code you won't believe it, if anyone know what is 6502)
Spent/Spending lots of time figuring out how python basic works and 'experimenting' how to use Sketch (SketchPython) + ArchWall to build floor layout in a better workflow that is easier for design revision... haven't really started a real model for any project / assignment yet... hoping something is useful in the end for this 'experiment.
Thanks again!
There are lots to read in fact, it's fun though... I started to read python, workbench creation, may need to learn gimp/inkscape to draw icon, since I found FC trying to learn something that maybe like Revit or ArchiCAD (both I never use) ... and like Yorik once comment 'end up coding' - though I am never and far far far from being a programmer of any kind (I had a book on 6502 assembly / machine code you won't believe it, if anyone know what is 6502)
Spent/Spending lots of time figuring out how python basic works and 'experimenting' how to use Sketch (SketchPython) + ArchWall to build floor layout in a better workflow that is easier for design revision... haven't really started a real model for any project / assignment yet... hoping something is useful in the end for this 'experiment.
Thanks again!
Re: Arch Stair - Control Length of Landing?
Hi, just drop into earlier discussion (again) noting Arch Structure already has a Precast Stair which calculate based on input tread and riser! No need to attempt any code myself
The Precast Stair code is more straightforward for me to understand, though it apparently lacks some features like stringer, nosing (which I do not need at the moment).
Now if I manage to, and with some time, I would attempt a vertical stairwell with intermediate landing (rather than a straight flight with a landing that can be done now in Arch Stair).
Any thought how you would like / have planned to do / develop further with these 2 approach of Stairs (Arch Structure Precast Stair / Arch Stair)?
(Thank Joancabeza who bring this up again)
The Precast Stair code is more straightforward for me to understand, though it apparently lacks some features like stringer, nosing (which I do not need at the moment).
Now if I manage to, and with some time, I would attempt a vertical stairwell with intermediate landing (rather than a straight flight with a landing that can be done now in Arch Stair).
Any thought how you would like / have planned to do / develop further with these 2 approach of Stairs (Arch Structure Precast Stair / Arch Stair)?
Re: Arch Stair - Control Length of Landing?
Hi, further 'experiment' below which turn ArhcStair._Stairs.makeStraightStairsWithLanding(self,obj,edge) into kind of frankenstein...
I am testing introducing another property (Flight = "Straight" or "Return"). Now a straight staircase with a landing would 'return' in opposite direction after landing if "Return" is selected, some progress... with some queries and maybe comments needed to further develop if find useful.
"Experiment" ArchStair.py attached
Flight == "Return"
I am testing introducing another property (Flight = "Straight" or "Return"). Now a straight staircase with a landing would 'return' in opposite direction after landing if "Return" is selected, some progress... with some queries and maybe comments needed to further develop if find useful.
- 1st simple English Q: What is correct terminology for this typology of staircase? I am afraid 'Return' is not the correct term.
- The makeStraightStairsWithLanding(self,obj,edge) is 'manipulated' to make this happen - I do not have full picture of the Arch / ArchStair / ArchPrecast (another query in last post) and have no better idea what to do if I want to introduce this 'feature'.
- I have a glance at YouTube how Revit is working with stairs and found the stairs 'components' could be edited individually after creation.... I am thinking if another experiment I am having a SketchPython to create a nos. of ArchWall may work similarly... or if there is already a plan and idea to work in this direction or another?
"Experiment" ArchStair.py attached
Flight == "Return"
- Attachments
-
- ArchStairs.py
- (26.22 KiB) Downloaded 155 times