Arch Stairs/en: Difference between revisions
No edit summary |
(Updating to match new version of source page) |
||
(21 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
|||
{{GuiCommand/en|Name=Arch Stairs|Workbenches=[[Arch Module|Arch]]|MenuLocation=Arch → Stairs|Shortcut=S R}} |
|||
{{Docnav |
|||
|[[Arch_Space|Space]] |
|||
|[[Arch_CompPanel|CompPanel]] |
|||
|[[Arch_Workbench|Arch]] |
|||
|IconL=Arch_Space.svg |
|||
|IconR=Arch_CompPanel.png |
|||
|IconC=Workbench_Arch.svg |
|||
}} |
|||
{{GuiCommand |
|||
|Name=Arch Stairs |
|||
|MenuLocation=Arch → Stairs |
|||
|Workbenches=[[Arch_Workbench|Arch]] |
|||
|Shortcut={{KEY|S}} {{KEY|R}} |
|||
|Version=0.14 |
|||
|SeeAlso=[[Arch_Structure|Arch Structure]], [[Arch_Equipment|Arch Equipment]] |
|||
}} |
|||
==Description== |
==Description== |
||
The stairs tool allows you to build automatically several types of stairs. At the moment, only straight stairs (with or without a central landing) are supported. Stairs can be built from scratch, or from a straight [[Draft Line|line]], in which case the stairs follow the line. If the line is not horizontal but has a vertical inclination, the stairs will also follow its slope. |
|||
The [[Arch_Stairs|Arch Stairs]] tool allows you to build several types of stairs automatically. Straight stairs (with or without a central landing) can be created from scratch. More complex stairs require base objects. |
|||
See the [http://en.wikipedia.org/wiki/Stairs Stairs entry in wikipedia] for a definition of the different terms used to describe parts of stairs. |
|||
See the [https://en.wikipedia.org/wiki/Stairs Stairs entry in wikipedia] for a definition of the different terms used to describe parts of stairs. |
|||
[[Image:Arch Stairs example.jpg|640px]] |
|||
[[Image:Arch_Stairs_example.jpg|600px]] |
|||
On the above image, two stairs were created, one with a massive structure and a landing, and another one with a single stringer. |
|||
{{Caption|Two constructed stairs, one with a massive structure and a landing, the other with a single stringer.}} |
|||
== |
==Options== |
||
# Press the {{KEY|[[Image:Arch_Stairs.png|16px]] [[Arch Stairs]]}} button, or press {{KEY|S}}, {{KEY|R}} keys |
|||
# Adjust the desired properties. Some parts of the stairs, such as the structure, might not appear immediately, if any of the properties makes it impossible, such as a structure thickness of 0. |
|||
* Stairs share the common properties and behaviors of all [[Arch_Component|Arch Components]] |
|||
==Properties== |
|||
==Usage== |
|||
Base |
|||
# Optionally select one or more base objects, for example [[Draft_Line|Draft Lines]] and [[Draft_Wire|Draft Wires]]: |
|||
* {{PropertyData|Align}}: The alignment of these stairs on their baseline, if applicable. |
|||
#* Draft Wires with two or more segments will be used to create landings. They must be on a plane parallel to the global XY plane. For example, select a U-shaped wire for a half-turn landing and an L-shaped wire for a corner landing. |
|||
* {{PropertyData|Base}}: The baseline of these stairs, if any. |
|||
#* Draft Lines will be used to create flights. |
|||
* {{PropertyData|Height}}: The total height of these stairs, if not based on a baseline, or the baseline is horizontal. |
|||
#* If the vertices of all lines and wires have correct Z coordinates, the created stairs will use this information. |
|||
* {{PropertyData|Length}}: The total length of these stairs if no baseline is defined. |
|||
#* The base objects must be selected in the correct order starting with the bottom object. |
|||
* {{PropertyData|Width}}: The width of these stairs. |
|||
# Press the {{Button|[[Image:Arch_Stairs.svg|16px]] [[Arch_Stairs|Arch Stairs]]}} button, or press {{KEY|S}}, {{KEY|R}} keys. |
|||
# Adjust the desired properties. Some parts of the stairs, such as the structure, might not appear immediately, if any of the properties makes it impossible, such as a structure thickness of 0. |
|||
[[Image:Arch_Stairs_Complex_Example.png|600px]] |
|||
Steps |
|||
{{Caption|Complex stairs based on a selection of lines and wired as shown on the left.<br> |
|||
In red the wires used for the landings at Z=1500mm, Z=3000mm and Z=4500mm.<br> |
|||
In black the lines connecting them used for the flights. |
|||
}} |
|||
==Properties== |
|||
* {{PropertyData|Nosing}}: The size of the nosing. |
|||
* {{PropertyData|Number of Steps}}: The numbers of steps (risers) in these stairs. |
|||
* {{PropertyData|Riser Height}}: The height of the risers. |
|||
* {{PropertyData|Tread Depth}}: The depth of the treads. |
|||
* {{PropertyData|Tread Thickness}}: The thickness of the treads. |
|||
===Data=== |
|||
Structure |
|||
{{TitleProperty|Segment and Parts}} |
|||
* {{PropertyData|Landings}}: The type of landings. |
|||
* {{PropertyData|Stringer Offset}}: The offset between the border of the stairs and the structure. |
|||
* {{PropertyData|Stringer Width}}: The width of the stringers. |
|||
* {{PropertyData|Structure}}: The type of structure of these stairs. |
|||
* {{PropertyData|Structure Thickness}}: The thickness of the structure. |
|||
* {{PropertyData|Winders}}: The type of winders. |
|||
* {{PropertyData|Abs Top|Vector}}: (read-only) The absolute top level the stairs lead to. |
|||
== Scripting == |
|||
* {{PropertyData|Last Segment|Link}}: Last segment (flight or landing) of an Arch Stairs connecting to this segment. The start level of the stairs will be the end level of this last segment. |
|||
* {{PropertyData|Outline Left|VectorList}}: The left outline of the stairs. |
|||
* {{PropertyData|Outline Left All|VectorList}}: The left outline of all segments of the stairs. |
|||
* {{PropertyData|Outline Right|VectorList}}: The right outline of the stairs. |
|||
* {{PropertyData|Outline Right All|VectorList}}: The right outline of all segments of the stairs. |
|||
* {{PropertyData|Railing Height Left|Length}}: Height of the left railing of the stairs or landing. |
|||
* {{PropertyData|Railing Height Right|Length}}: Height of the right railing of the stairs or landing. |
|||
* {{PropertyData|Railing Left|LinkHidden}}: The left railing object. {{Version|0.20}}: Property type updated from {{Incode|String}} to {{Incode|LinkHidden}}. |
|||
* {{PropertyData|Railing Offset Left|Length}}: Offset of the left railing from the edge of the stairs or landing. |
|||
* {{PropertyData|Railing Offset Right|Length}}: Offset of the right railing from the edge of the stairs or landing. |
|||
* {{PropertyData|Railing Right|LinkHidden}}: The right railing object. {{Version|0.20}}: Property type updated from {{Incode|String}} to {{Incode|LinkHidden}}. |
|||
{{TitleProperty|Stairs}} |
|||
Stairs can be created from python scripts and [[macros]] by using the following function: |
|||
* {{PropertyData|Align|Enumeration}}: The alignment of the stairs on the baseline. Only used if a baseline is defined. Can be {{value|Left}}, {{value|Right}} or {{value|Center}}. |
|||
<syntaxhighlight> |
|||
* {{PropertyData|Height|Length}}: The total height of the stairs. Only used if no baseline is defined, or if the baseline is horizontal. Ignored if {{PropertyData|Riser Height Enforce}} is non-zero. |
|||
makeStairs([base], [length], [width], [height], [steps]) |
|||
* {{PropertyData|Length|Length}}: The total length of the stairs if no baseline is defined. Ignored if {{PropertyData|Tread Depth Enforce}} is non-zero. |
|||
</syntaxhighlight> |
|||
* {{PropertyData|Width|Length}}: The width of the stairs. |
|||
* {{PropertyData|Width of Landing|FloatList}}: If the {{PropertyData|Number Of Steps}} is 1, the stairs object acts as a landing. When this is the case and the baseline is multi-segment, the width of first segment of the landing follows the {{PropertyData|Width}}, the widths of subsequent segments follow the list set here. |
|||
{{TitleProperty|Steps}} |
|||
* Creates a stairs object with the given attributes. |
|||
* Returns the new stairs object. |
|||
* {{PropertyData|Blondel Ratio|Float}}: (read-only) The calculated Blondel ratio. This ratio indicates comfortable stairs and should be between 62 and 64cm or 24.5 and 25.5in. |
|||
Example: |
|||
* {{PropertyData|Landing Depth|Length}}: The depth of the landing of the flight, if enabled in {{PropertyData|Landings}}. Defaults to the {{PropertyData|Width}} if 0. |
|||
* {{PropertyData|Nosing|Length}}: The size of the nosing. |
|||
* {{PropertyData|Number Of Steps|Integer}}: The numbers of steps (risers). Must be at least 2 for a single flight, and at least 4 for a stairs with a central landing. |
|||
* {{PropertyData|Riser Height|Length}}: (read-only) The height of the risers. If {{PropertyData|Riser Height Enforce}} is 0 it is calculated ({{PropertyData|Height}} / {{PropertyData|Number of Steps}}). Else it is the same as {{PropertyData|Riser Height Enforce}}. |
|||
* {{PropertyData|Riser Height Enforce|Length}}: The enforced height of the risers. |
|||
* {{PropertyData|Riser Thickness|Length}}: The thickness of the risers. |
|||
* {{PropertyData|Tread Depth|Length}}: (read-only) The depth of the treads. If {{PropertyData|Tread Depth Enforce}} is 0 it is calculated ({{PropertyData|Length}} / {{PropertyData|Number of Steps}}). Else it is the same as {{PropertyData|Tread Depth Enforce}}. |
|||
* {{PropertyData|Tread Depth Enforce|Length}}: The enforced depth of the treads. |
|||
* {{PropertyData|Tread Thickness|Length}}: The thickness of the treads. |
|||
{{TitleProperty|Structure}} |
|||
<syntaxhighlight> |
|||
import Arch |
|||
* {{PropertyData|Connection Down Start Stairs|Enumeration}}: The type of connection between the lower floor slab and the start of the stairs. Can be {{value|HorizontalCut}}, {{value|VerticalCut}} or {{value|HorizontalVerticalCut}}. |
|||
makeStairs(length=5, width=1.2, height=3, steps=14) |
|||
* {{PropertyData|Connection End Stairs Up|Enumeration}}: The type of connection between the end of the stairs and the upper floor slab. Can be {{value|toFlightThickness}} or {{value|toSlabThickness}}. |
|||
</syntaxhighlight> |
|||
* {{PropertyData|Down Slab Thickness|Length}}: The thickness of the lower floor slab. |
|||
* {{PropertyData|Flight|Enumeration}}: The direction of the flight after the landing. Can be {{value|Straight}}, {{value|HalfTurnLeft}} or {{value|HalfTurnRight}}. |
|||
* {{PropertyData|Landings|Enumeration}}: The type of landings. Can be {{value|None}} or {{value|At center}} ({{value|At each corner}} not implemented yet). |
|||
* {{PropertyData|Stringer Overlap|Length}}: The overlap of the stringers above the bottom of the treads. |
|||
* {{PropertyData|Stringer Width|Length}}: The width of the stringers. |
|||
* {{PropertyData|Structure|Enumeration}}: The structure type of the stairs. Can be {{value|None}}, {{value|Massive}}, {{value|One stringer}} or {{value|Two stringers}}. |
|||
* {{PropertyData|Structure Offset|Length}}: The offset between the border of the stairs and the structure. |
|||
* {{PropertyData|Structure Thickness|Length}}: The thickness of the structure. |
|||
* {{PropertyData|Up Slab Thickness|Length}}: The thickness of the upper floor slab. |
|||
* {{PropertyData|Winders|Enumeration}}: The type of winders. Not implemented. |
|||
==Limitations== |
==Limitations== |
||
* Not available before FreeCAD version 0.14 |
|||
* Only straight stairs are available at the moment |
* Only straight stairs are available at the moment |
||
* See the [http://forum.freecadweb.org/viewtopic.php?f=23&t=6534 forum entry] for circle stairs. |
* See the [http://forum.freecadweb.org/viewtopic.php?f=23&t=6534 forum entry] for circle stairs. |
||
* See the [http://forum.freecadweb.org/viewtopic.php?f=9&t=4564 forum announcement]. |
* See the [http://forum.freecadweb.org/viewtopic.php?f=9&t=4564 forum announcement]. |
||
== Scripting == |
|||
{{clear}} |
|||
{{Emphasis|See also:}} [[Arch_API|Arch API]] and [[FreeCAD_Scripting_Basics|FreeCAD Scripting Basics]]. |
|||
<languages/> |
|||
The Stairs tool can be used in [[Macros|macros]] and from the [[Python|Python]] console by using the following function: |
|||
{{Code|code= |
|||
Stairs = makeStairs(baseobj=None, length=None, width=None, height=None, steps=None, name="Stairs") |
|||
}} |
|||
* Creates a {{incode|Stairs}} object from the given {{incode|baseobj}}. |
|||
* If {{incode|baseobj}} is not given, it will use {{incode|length}}, {{incode|width}}, {{incode|height}}, and {{incode|steps}}, to build a solid object. |
|||
Example: |
|||
{{Code|code= |
|||
import Arch |
|||
Stairs = Arch.makeStairs(length=5000, width=1200, height=3000, steps=14) |
|||
}} |
|||
{{Docnav |
|||
|[[Arch_Space|Space]] |
|||
|[[Arch_CompPanel|CompPanel]] |
|||
|[[Arch_Workbench|Arch]] |
|||
|IconL=Arch_Space.svg |
|||
|IconR=Arch_CompPanel.png |
|||
|IconC=Workbench_Arch.svg |
|||
}} |
|||
{{Arch Tools navi{{#translation:}}}} |
|||
{{Userdocnavi{{#translation:}}}} |
Latest revision as of 17:49, 23 February 2023
|
Menu location |
---|
Arch → Stairs |
Workbenches |
Arch |
Default shortcut |
S R |
Introduced in version |
0.14 |
See also |
Arch Structure, Arch Equipment |
Description
The Arch Stairs tool allows you to build several types of stairs automatically. Straight stairs (with or without a central landing) can be created from scratch. More complex stairs require base objects.
See the Stairs entry in wikipedia for a definition of the different terms used to describe parts of stairs.
Two constructed stairs, one with a massive structure and a landing, the other with a single stringer.
Options
- Stairs share the common properties and behaviors of all Arch Components
Usage
- Optionally select one or more base objects, for example Draft Lines and Draft Wires:
- Draft Wires with two or more segments will be used to create landings. They must be on a plane parallel to the global XY plane. For example, select a U-shaped wire for a half-turn landing and an L-shaped wire for a corner landing.
- Draft Lines will be used to create flights.
- If the vertices of all lines and wires have correct Z coordinates, the created stairs will use this information.
- The base objects must be selected in the correct order starting with the bottom object.
- Press the
Arch Stairs button, or press S, R keys.
- Adjust the desired properties. Some parts of the stairs, such as the structure, might not appear immediately, if any of the properties makes it impossible, such as a structure thickness of 0.
Complex stairs based on a selection of lines and wired as shown on the left.
In red the wires used for the landings at Z=1500mm, Z=3000mm and Z=4500mm.
In black the lines connecting them used for the flights.
Properties
Data
Segment and Parts
- DataAbs Top (
Vector
): (read-only) The absolute top level the stairs lead to. - DataLast Segment (
Link
): Last segment (flight or landing) of an Arch Stairs connecting to this segment. The start level of the stairs will be the end level of this last segment. - DataOutline Left (
VectorList
): The left outline of the stairs. - DataOutline Left All (
VectorList
): The left outline of all segments of the stairs. - DataOutline Right (
VectorList
): The right outline of the stairs. - DataOutline Right All (
VectorList
): The right outline of all segments of the stairs. - DataRailing Height Left (
Length
): Height of the left railing of the stairs or landing. - DataRailing Height Right (
Length
): Height of the right railing of the stairs or landing. - DataRailing Left (
LinkHidden
): The left railing object. introduced in version 0.20: Property type updated fromString
toLinkHidden
. - DataRailing Offset Left (
Length
): Offset of the left railing from the edge of the stairs or landing. - DataRailing Offset Right (
Length
): Offset of the right railing from the edge of the stairs or landing. - DataRailing Right (
LinkHidden
): The right railing object. introduced in version 0.20: Property type updated fromString
toLinkHidden
.
Stairs
- DataAlign (
Enumeration
): The alignment of the stairs on the baseline. Only used if a baseline is defined. Can beLeft
,Right
orCenter
. - DataHeight (
Length
): The total height of the stairs. Only used if no baseline is defined, or if the baseline is horizontal. Ignored if DataRiser Height Enforce is non-zero. - DataLength (
Length
): The total length of the stairs if no baseline is defined. Ignored if DataTread Depth Enforce is non-zero. - DataWidth (
Length
): The width of the stairs. - DataWidth of Landing (
FloatList
): If the DataNumber Of Steps is 1, the stairs object acts as a landing. When this is the case and the baseline is multi-segment, the width of first segment of the landing follows the DataWidth, the widths of subsequent segments follow the list set here.
Steps
- DataBlondel Ratio (
Float
): (read-only) The calculated Blondel ratio. This ratio indicates comfortable stairs and should be between 62 and 64cm or 24.5 and 25.5in. - DataLanding Depth (
Length
): The depth of the landing of the flight, if enabled in DataLandings. Defaults to the DataWidth if 0. - DataNosing (
Length
): The size of the nosing. - DataNumber Of Steps (
Integer
): The numbers of steps (risers). Must be at least 2 for a single flight, and at least 4 for a stairs with a central landing. - DataRiser Height (
Length
): (read-only) The height of the risers. If DataRiser Height Enforce is 0 it is calculated (DataHeight / DataNumber of Steps). Else it is the same as DataRiser Height Enforce. - DataRiser Height Enforce (
Length
): The enforced height of the risers. - DataRiser Thickness (
Length
): The thickness of the risers. - DataTread Depth (
Length
): (read-only) The depth of the treads. If DataTread Depth Enforce is 0 it is calculated (DataLength / DataNumber of Steps). Else it is the same as DataTread Depth Enforce. - DataTread Depth Enforce (
Length
): The enforced depth of the treads. - DataTread Thickness (
Length
): The thickness of the treads.
Structure
- DataConnection Down Start Stairs (
Enumeration
): The type of connection between the lower floor slab and the start of the stairs. Can beHorizontalCut
,VerticalCut
orHorizontalVerticalCut
. - DataConnection End Stairs Up (
Enumeration
): The type of connection between the end of the stairs and the upper floor slab. Can betoFlightThickness
ortoSlabThickness
. - DataDown Slab Thickness (
Length
): The thickness of the lower floor slab. - DataFlight (
Enumeration
): The direction of the flight after the landing. Can beStraight
,HalfTurnLeft
orHalfTurnRight
. - DataLandings (
Enumeration
): The type of landings. Can beNone
orAt center
(At each corner
not implemented yet). - DataStringer Overlap (
Length
): The overlap of the stringers above the bottom of the treads. - DataStringer Width (
Length
): The width of the stringers. - DataStructure (
Enumeration
): The structure type of the stairs. Can beNone
,Massive
,One stringer
orTwo stringers
. - DataStructure Offset (
Length
): The offset between the border of the stairs and the structure. - DataStructure Thickness (
Length
): The thickness of the structure. - DataUp Slab Thickness (
Length
): The thickness of the upper floor slab. - DataWinders (
Enumeration
): The type of winders. Not implemented.
Limitations
- Only straight stairs are available at the moment
- See the forum entry for circle stairs.
- See the forum announcement.
Scripting
See also: Arch API and FreeCAD Scripting Basics.
The Stairs tool can be used in macros and from the Python console by using the following function:
Stairs = makeStairs(baseobj=None, length=None, width=None, height=None, steps=None, name="Stairs")
- Creates a
Stairs
object from the givenbaseobj
. - If
baseobj
is not given, it will uselength
,width
,height
, andsteps
, to build a solid object.
Example:
import Arch
Stairs = Arch.makeStairs(length=5000, width=1200, height=3000, steps=14)
- Elements: Wall, Structure, Curtain Wall, Window, Roof, Space, Stairs, Equipment, Frame, Fence, Truss, Profile, Pipe, Pipe Connector
- Reinforcements: Straight Rebar, U-Shape Rebar, L-Shape Rebar, Stirrup, Bent-Shape Rebar, Helical Rebar, Column Reinforcement, Beam Reinforcement, Slab Reinforcement, Footing Reinforcement, Custom Rebar
- Panels: Panel, Panel Cut, Panel Sheet, Nest
- Materials: Material, Multi-Material
- Organization: Building Part, Project, Site, Building, Level, External reference, Section Plane, Schedule
- Axes: Axis, Axes system, Grid
- Modification: Cut with plane, Add component, Remove component, Survey
- Utilities: Component, Clone component, Split Mesh, Mesh to Shape, Select non-manifold meshes, Remove Shape from Arch, Close Holes, Merge Walls, Check, Toggle IFC Brep flag, 3 Views from mesh, Create IFC spreadsheet, Toggle Subcomponents
- Additional: Preferences, Import Export Preferences (IFC, DAE, OBJ, JSON, 3DS, SHP), IfcOpenShell, IfcPlusPlus, Arch API
![](/images/thumb/9/94/User_hub.png/24px-User_hub.png)
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Assembly, BIM, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub