Reinforcement StraightRebar: Difference between revisions

From FreeCAD Documentation
(Marked this version for translation)
 
(81 intermediate revisions by 7 users not shown)
Line 1: Line 1:
<languages/>
{{GuiCommandAddon|Name=Arch Rebar Straight |Workbenches=[[Arch Module|Arch]]|Addon=Reinforcement|MenuLocation=Arch → Rebar tools|Shortcut=None|SeeAlso=[[Arch_Rebar_UShape|UShape Rebar]]}}
<translate>


<!--T:1-->
==Description==
{{Docnav
The {{KEY|[[Image:Arch_Rebar_Straight.png|16px]] Straight Rebar}} tool allows user to create a straight reinforcing bar in the structural element.
|[[Arch_CompRebarStraight|CompRebarStraight]]
|[[Reinforcement_UShapeRebar|UShapeRebar]]
|[[Reinforcement_Workbench|Reinforcement]]
|IconL=Arch_CompRebarStraight.png
|IconR=Reinforcement_UShapeRebar.svg
|IconC=Reinforcement_Workbench.svg
}}


<!--T:37-->
[[Image:StraightRebar.png|800px]]
{{GuiCommand
|Name=Reinforcement StraightRebar
|MenuLocation=Arch → Rebar tools → Straight Rebar<br>3D/BIM → Reinforcement tools → Straight Rebar
|Workbenches=[[Reinforcement_Workbench|Reinforcement]], [[Arch_Workbench|Arch]], [[BIM_Workbench|BIM]]
|Version=0.17
|SeeAlso=
}}


==Description== <!--T:41-->
==How to use==


<!--T:2-->
# Create a [[Arch Structure|structure]] element
The [[Reinforcement_StraightRebar|Reinforcement StraightRebar]] tool allows the user to create a set of straight reinforcing bars inside an [[Arch_Structure|Arch Structure]] object.
# Select any face of the structure
# Then select {{KEY|[[Image:Arch_Rebar_Straight.png|16px]] Straight Rebar}} from the rebar tools
# A task panel will pop-out on the left side of the screen as shown below [[Image:StraightRebarDialog.png|250px]]
# Select the desired orientation
# Give the inputs like front cover, right side cover, left side cover, bottom cover and diameter of the rebar
# Select the mode of distribution either amount or spacing
# If spacing is selected, a user can also opt for [[Custom_Spacing|custom spacing]]
# Pick selected face is used to verify or change the face for rebar distribution
# Click {{KEY|OK}} or {{KEY|Apply}} to generate the rebars
# Click {{KEY|Cancel}} to exit the task panel


<!--T:22-->
==Properties==
This tool is part of the [[Reinforcement_Workbench|Reinforcement Workbench]], an [[External_workbenches|external workbench]] that can be installed with the [[Image:Std_AddonMgr.svg|24px]] [[Std_AddonMgr|Addon Manager]].


</translate>
[[Image:Arch_Rebar_Straight_example.png|400px]]
<translate>
<!--T:3-->
{{Caption|Two sets of straight reinforcement bars inside an [[Arch_Structure|Arch Structure]]}}

==Usage== <!--T:4-->

<!--T:5-->
# Select any face of a previously created {{Button|[[Image:Arch_Structure.svg|16px]] [[Arch_Structure|Arch Structure]]}} object.
# Then select {{Button|[[Image:Reinforcement_StraightRebar.svg|16px]] [[Reinforcement_StraightRebar|Straight Rebar]]}} from the rebar tools.
# A [[Task_panel|task panel]] will pop-out on the left side of the screen as shown below.
# Select the desired orientation.
# Give the inputs like 'Front cover', 'Right side cover', 'Left side cover', 'Bottom cover' and 'Diameter' of the rebar.
# Select the mode of distribution either 'Amount' or 'Spacing'.
# If spacing is selected, a user can also opt for [[Reinforcement_Custom_Spacing|custom spacing]].
# {{Button|Pick Selected Face}} is used to verify or change the face for rebar distribution.
# Click {{Button|OK}} or {{Button|Apply}} to generate the rebars.
# Click {{Button|Cancel}} to exit the task panel.

</translate>
[[Image:StraightRebarDialog.png|250px]]
<translate>
<!--T:23-->
{{Caption|Task panel for the tool}}

==Properties== <!--T:6-->

<!--T:7-->
* {{PropertyData|Orientation}}: It decides the orientation of the rebar (like a bottom, top, right and left).
* {{PropertyData|Orientation}}: It decides the orientation of the rebar (like a bottom, top, right and left).
* {{PropertyData|Front Cover}}: The distance between rebar and selected face.
* {{PropertyData|Front Cover}}: The distance between rebar and selected face.
Line 32: Line 68:
* {{PropertyData|Spacing}}: The distance between the axes of each bar.
* {{PropertyData|Spacing}}: The distance between the axes of each bar.


==Scripting==
==Scripting== <!--T:40-->


<!--T:8-->
The {{KEY|[[Image:Arch_Rebar_Straight.png|16px]] Straight Rebar}} tool can by used in [[macros]] and from the python console by using the following function:
{{Emphasis|See also:}} [[Arch_API|Arch API]], [[Reinforcement_API|Reinforcement API]] and [[FreeCAD_Scripting_Basics|FreeCAD Scripting Basics]].


<!--T:9-->
'''1. When orientation of straight rebar is horizontal:'''
The Reinforcement StraightRebar tool can be used in [[Macros|macros]] and from the [[Python|Python]] console by using the following function:

</translate>
{{Code|code=
{{Code|code=
Rebar = makeStraightRebar(f_cover, coverAlong, rt_cover, lb_cover,
makeStraightRebar(FrontCover, CoverAlong, RightCover, LeftCover, Diameter, AmountSpacingCheck, AmountSpacingValue, Orientation = "Horizontal", Structure, Facename)
diameter, amount_spacing_check, amount_spacing_value, orientation="Horizontal",
structure=None, facename=None)
}}
}}
<translate>


<!--T:24-->
Note:
* Creates a {{incode|Rebar}} object from the given {{incode|structure}}, which is an [[Arch Structure]], and {{incode|facename}}, which is a face of that structure.
* Type of CoverAlong argument is a tuple. Syntax: {{KEY|(<Along>, <Value>)}}. Here we have horizontal orientation so we can pass {{KEY|Top Side}} and {{KEY|Bottom Side}} to <Along> arguments.
** If no {{incode|structure}} nor {{incode|facename}} are given, it will take the user selected face as input.
For eg. {{KEY|("Top Side", 20)}} and {{KEY| ("Bottom Side", 20)}}
* {{incode|f_cover}}, {{incode|coverAlong}}, {{incode|rt_cover}}, and {{incode|lb_cover}} are inner offset distances for the rebar elements with respect to the faces of the structure.
** {{incode|f_cover}} is the frontal cover offset.
** {{incode|coverAlong}} is a tuple {{incode|(position, value)}} that defines the offset value in one position (top, bottom, left, right) depending on the {{incode|orientation}}.
** {{incode|rt_cover}} is either the right or the top cover offset, depending on the value of {{incode|coverAlong}} and {{incode|orientation}}.
** {{incode|lb_cover}} is either the left or the bottom cover offset, depending on the value of {{incode|coverAlong}} and {{incode|orientation}}.
* {{incode|diameter}} is the diameter of the reinforcement bars inside the structure.
* {{incode|amount_spacing_check}} if it is {{incode|True}} it will create as many reinforcement bars as given by {{incode|amount_spacing_value}}; if it is {{incode|False}} it will create reinforcement bars separated by the numerical value of {{incode|amount_spacing_value}}.
* {{incode|amount_spacing_value}} specifies the number of reinforcement bars, or the value of the separation between them, depending on {{incode|amount_spacing_check}}.
* {{incode|orientation}} specifies the orientation of the rebar; it can be {{incode|"Horizontal"}} or {{incode|"Vertical"}}.


<!--T:25-->
'''2. When orientation of straight rebar is vertical:'''
Depending on the orientation of the rebar, the function can be called in two general ways by setting {{incode|coverAlong}} appropriately.

=== The rebar is horizontal === <!--T:26-->

</translate>
{{Code|code=
{{Code|code=
Rebar = makeStraightRebar(f_cover, ("Top Side", value), right_cover, left_cover, ...)
makeStraightRebar(FrontCover, CoverAlong, TopCover, BottomCover, Diameter, AmountSpacingCheck, AmountSpacingValue, Orientation = "Horizontal", Structure, Facename)
Rebar = makeStraightRebar(f_cover, ("Bottom Side", value), right_cover, left_cover, ...)
}}
}}
<translate>


<!--T:27-->
Note:
* {{incode|coverAlong}} is a tuple with either a {{incode|"Top Side"}} or a {{incode|"Bottom Side"}} offset {{incode|value}}.
* Type of CoverAlong argument is a tuple. Syntax: {{KEY|(<Along>, <Value>)}}. Here we have vertical orientation so we can pass {{KEY|Left Side}} and {{KEY|Right Side}} to <Along> arguments.
* In this case {{incode|rt_cover}} refers to the {{incode|right_cover}} offset, and {{incode|lb_cover}} refers to the {{incode|left_cover}} offset.
For eg. {{KEY|("Left Side", 20)}} and {{KEY| ("Right Side", 20)}}


=== The rebar is vertical === <!--T:28-->
----


</translate>
{{Code|code=
Rebar = makeStraightRebar(f_cover, ("Left Side", value), top_cover, bottom_cover, ...)
Rebar = makeStraightRebar(f_cover, ("Right Side", value), top_cover, bottom_cover, ...)
}}
<translate>


<!--T:29-->
* Adds a Straight reinforcing bar object to the given structural object.
* {{incode|coverAlong}} is a tuple with either a {{incode|"Left Side"}} or a {{incode|"Right Side"}} offset {{incode|value}}.
* If no Structure and Facename is given, it will take user selected face as input.
* In this case {{incode|rt_cover}} refers to the {{incode|top_cover}} offset, and {{incode|lb_cover}} refers to the {{incode|bottom_cover}} offset.
* Here CoverAlong argument is having type tuple.
* Returns the new Rebar object.


Example:
=== Example horizontal === <!--T:30-->

Creating Straight rebar.
</translate>
{{Code|code=
{{Code|code=
import Arch, StraightRebar
import Arch, Draft, StraightRebar

structure = Arch.makeStructure(length=1000.0, width=1000.0, height=400.0)
Structure = Arch.makeStructure(length=1000, width=1000, height=400)
structure.ViewObject.Transparency = 80
Structure.ViewObject.Transparency = 80
FreeCAD.ActiveDocument.recompute()
FreeCAD.ActiveDocument.recompute()

rebar = StraightRebar.makeStraightRebar(20, ("Bottom Side", 20), 20, 20, 8, True, 10, "Horizontal", structure, "Face1")
Rebar = StraightRebar.makeStraightRebar(50, ("Bottom Side", 20), 100, 100,
12, True, 5, "Horizontal", Structure, "Face4")
Rebar.ViewObject.ShapeColor = (0.9, 0.0, 0.0)

Rebar2 = StraightRebar.makeStraightRebar(50, ("Bottom Side", 50), 100, 100,
12, True, 5, "Horizontal", Structure, "Face6")
Rebar2.ViewObject.ShapeColor = (0.0, 0.0, 0.9)
}}
}}
<translate>


===Example vertical === <!--T:31-->
Changing properties of Straight rebar.

</translate>
{{Code|code=
import Arch, Draft, StraightRebar

Structure2 = Arch.makeStructure(length=1000, width=1000, height=400)
Structure2.ViewObject.Transparency = 80
Draft.move(Structure2, FreeCAD.Vector(1500, 0, 0))
FreeCAD.ActiveDocument.recompute()

Rebar3 = StraightRebar.makeStraightRebar(50, ("Left Side", 20), 100, 100,
12, True, 5, "Vertical", Structure2, "Face4")
Rebar3.ViewObject.ShapeColor = (0.9, 0.5, 0.0)

Rebar4 = StraightRebar.makeStraightRebar(50, ("Left Side", 50), 100, 100,
12, True, 5, "Vertical", Structure2, "Face6")
Rebar4.ViewObject.ShapeColor = (0.0, 0.5, 0.5)
}}
<translate>

=== Edition of rebar === <!--T:42-->

<!--T:20-->
You can change the properties of the rebar with the following function:

</translate>
{{Code|code=
editStraightRebar(Rebar, f_cover, coverAlong, rt_cover, lb_cover,
diameter, amount_spacing_check, amount_spacing_value, orientation,
structure=None, facename=None)
}}
<translate>

<!--T:32-->
* {{incode|Rebar}} is a previously created {{incode|StraightRebar}} object.
* The other parameters are the same as required by the {{incode|makeStraightRebar()}} function.
* {{incode|structure}} and {{incode|facename}} may be omitted so that the rebar stays in the original structure.

<!--T:33-->
Example:

</translate>
{{Code|code=
{{Code|code=
import StraightRebar
import StraightRebar

StraightRebar.editStraightRebar(rebar, 25, ("Top Side", 20), 20, 20, 8, True, 10, "Horizontal")
StraightRebar.editStraightRebar(Rebar, 50, ("Top Side", 20), 100, 100,
24, True, 7, "Horizontal")

StraightRebar.editStraightRebar(Rebar2, 50, ("Top Side", 50), 100, 100,
24, True, 7, "Horizontal")

StraightRebar.editStraightRebar(Rebar3, 50, ("Right Side", 20), 100, 100,
24, True, 7, "Vertical")

StraightRebar.editStraightRebar(Rebar4, 50, ("Right Side", 50), 100, 100,
24, True, 7, "Vertical")
}}
}}
<translate>


<!--T:21-->
{{Docnav
|[[Arch_CompRebarStraight|CompRebarStraight]]
|[[Reinforcement_UShapeRebar|UShapeRebar]]
|[[Reinforcement_Workbench|Reinforcement]]
|IconL=Arch_CompRebarStraight.png
|IconR=Reinforcement_UShapeRebar.svg
|IconC=Reinforcement_Workbench.svg
}}

</translate>
[[Category:External_Command_Reference{{#translation:}}]]
[[Category:Reinforcement{{#translation:}}]]
{{Arch_Tools_navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 21:42, 9 March 2024

Reinforcement StraightRebar

Menu location
Arch → Rebar tools → Straight Rebar
3D/BIM → Reinforcement tools → Straight Rebar
Workbenches
Reinforcement, Arch, BIM
Default shortcut
None
Introduced in version
0.17
See also
None

Description

The Reinforcement StraightRebar tool allows the user to create a set of straight reinforcing bars inside an Arch Structure object.

This tool is part of the Reinforcement Workbench, an external workbench that can be installed with the Addon Manager.

Two sets of straight reinforcement bars inside an Arch Structure

Usage

  1. Select any face of a previously created Arch Structure object.
  2. Then select Straight Rebar from the rebar tools.
  3. A task panel will pop-out on the left side of the screen as shown below.
  4. Select the desired orientation.
  5. Give the inputs like 'Front cover', 'Right side cover', 'Left side cover', 'Bottom cover' and 'Diameter' of the rebar.
  6. Select the mode of distribution either 'Amount' or 'Spacing'.
  7. If spacing is selected, a user can also opt for custom spacing.
  8. Pick Selected Face is used to verify or change the face for rebar distribution.
  9. Click OK or Apply to generate the rebars.
  10. Click Cancel to exit the task panel.

Task panel for the tool

Properties

  • DataOrientation: It decides the orientation of the rebar (like a bottom, top, right and left).
  • DataFront Cover: The distance between rebar and selected face.
  • DataRight Cover: The distance between the right end of the rebar to right face of the structure.
  • DataLeft Cover: The distance between the left end of the rebar to the left face of the structure.
  • DataCover along: These property facilities the user to specify either top or bottom cover.
  • DataBottom Cover: The distance between rebar from the bottom face of the structure.
  • DataTop Cover: The distance between rebar from the top face of the structure.
  • DataAmount: The amount of rebars.
  • DataSpacing: The distance between the axes of each bar.

Scripting

See also: Arch API, Reinforcement API and FreeCAD Scripting Basics.

The Reinforcement StraightRebar tool can be used in macros and from the Python console by using the following function:

Rebar = makeStraightRebar(f_cover, coverAlong, rt_cover, lb_cover,
                          diameter, amount_spacing_check, amount_spacing_value, orientation="Horizontal",
                          structure=None, facename=None)
  • Creates a Rebar object from the given structure, which is an Arch Structure, and facename, which is a face of that structure.
    • If no structure nor facename are given, it will take the user selected face as input.
  • f_cover, coverAlong, rt_cover, and lb_cover are inner offset distances for the rebar elements with respect to the faces of the structure.
    • f_cover is the frontal cover offset.
    • coverAlong is a tuple (position, value) that defines the offset value in one position (top, bottom, left, right) depending on the orientation.
    • rt_cover is either the right or the top cover offset, depending on the value of coverAlong and orientation.
    • lb_cover is either the left or the bottom cover offset, depending on the value of coverAlong and orientation.
  • diameter is the diameter of the reinforcement bars inside the structure.
  • amount_spacing_check if it is True it will create as many reinforcement bars as given by amount_spacing_value; if it is False it will create reinforcement bars separated by the numerical value of amount_spacing_value.
  • amount_spacing_value specifies the number of reinforcement bars, or the value of the separation between them, depending on amount_spacing_check.
  • orientation specifies the orientation of the rebar; it can be "Horizontal" or "Vertical".

Depending on the orientation of the rebar, the function can be called in two general ways by setting coverAlong appropriately.

The rebar is horizontal

Rebar = makeStraightRebar(f_cover, ("Top Side", value), right_cover, left_cover, ...)
Rebar = makeStraightRebar(f_cover, ("Bottom Side", value), right_cover, left_cover, ...)
  • coverAlong is a tuple with either a "Top Side" or a "Bottom Side" offset value.
  • In this case rt_cover refers to the right_cover offset, and lb_cover refers to the left_cover offset.

The rebar is vertical

Rebar = makeStraightRebar(f_cover, ("Left Side", value), top_cover, bottom_cover, ...)
Rebar = makeStraightRebar(f_cover, ("Right Side", value), top_cover, bottom_cover, ...)
  • coverAlong is a tuple with either a "Left Side" or a "Right Side" offset value.
  • In this case rt_cover refers to the top_cover offset, and lb_cover refers to the bottom_cover offset.

Example horizontal

import Arch, Draft, StraightRebar

Structure = Arch.makeStructure(length=1000, width=1000, height=400)
Structure.ViewObject.Transparency = 80
FreeCAD.ActiveDocument.recompute()

Rebar = StraightRebar.makeStraightRebar(50, ("Bottom Side", 20), 100, 100,
                                        12, True, 5, "Horizontal", Structure, "Face4")
Rebar.ViewObject.ShapeColor = (0.9, 0.0, 0.0)

Rebar2 = StraightRebar.makeStraightRebar(50, ("Bottom Side", 50), 100, 100,
                                         12, True, 5, "Horizontal", Structure, "Face6")
Rebar2.ViewObject.ShapeColor = (0.0, 0.0, 0.9)

Example vertical

import Arch, Draft, StraightRebar

Structure2 = Arch.makeStructure(length=1000, width=1000, height=400)
Structure2.ViewObject.Transparency = 80
Draft.move(Structure2, FreeCAD.Vector(1500, 0, 0))
FreeCAD.ActiveDocument.recompute()

Rebar3 = StraightRebar.makeStraightRebar(50, ("Left Side", 20), 100, 100,
                                         12, True, 5, "Vertical", Structure2, "Face4")
Rebar3.ViewObject.ShapeColor = (0.9, 0.5, 0.0)

Rebar4 = StraightRebar.makeStraightRebar(50, ("Left Side", 50), 100, 100,
                                         12, True, 5, "Vertical", Structure2, "Face6")
Rebar4.ViewObject.ShapeColor = (0.0, 0.5, 0.5)

Edition of rebar

You can change the properties of the rebar with the following function:

editStraightRebar(Rebar, f_cover, coverAlong, rt_cover, lb_cover,
                  diameter, amount_spacing_check, amount_spacing_value, orientation,
                  structure=None, facename=None)
  • Rebar is a previously created StraightRebar object.
  • The other parameters are the same as required by the makeStraightRebar() function.
  • structure and facename may be omitted so that the rebar stays in the original structure.

Example:

import StraightRebar

StraightRebar.editStraightRebar(Rebar, 50, ("Top Side", 20), 100, 100,
                                24, True, 7, "Horizontal")

StraightRebar.editStraightRebar(Rebar2, 50, ("Top Side", 50), 100, 100,
                                24, True, 7, "Horizontal")

StraightRebar.editStraightRebar(Rebar3, 50, ("Right Side", 20), 100, 100,
                                24, True, 7, "Vertical")

StraightRebar.editStraightRebar(Rebar4, 50, ("Right Side", 50), 100, 100,
                                24, True, 7, "Vertical")