Does here angle to the predecessor is pointed to only show the angle between two rebar edges in the Rebar shape cut list and Bar bending schedule SVG as currently working?
if yes, I'm keeping that same.
Does any changes required in it ?
Regards
Does here angle to the predecessor is pointed to only show the angle between two rebar edges in the Rebar shape cut list and Bar bending schedule SVG as currently working?
Yes you are right, I thought of the angles highlighted in the pic below.Shiv_Charan wrote: ↑Sat May 29, 2021 7:57 pm Does here angle to the predecessor is pointed to only show the angle between two rebar edges in the Rebar shape cut list and Bar bending schedule SVG as currently working?
if yes, I'm keeping that same.
I think the old way of calculating the angle with respect to the wire will also work with the new algorithm. As relocated lines are always parallel to the central wire thus, I think the angle will remain the same.
IMO this isn't always true ... see the example below.Shiv_Charan wrote: ↑Sun May 30, 2021 6:03 pm .. As relocated lines are always parallel to the central wire thus, I think the angle will remain the same.
For eg. the sum of angle a and b will remain same for outer line and central wire.
angle for wire and relocated line.png
...
Thanks, @balrobs for giving me a detailed explanation of the issue.
You are welcome!Shiv_Charan wrote: ↑Sun May 30, 2021 9:00 pm Thanks, @balrobs for giving me a detailed explanation of the issue.
Hi Shiv,Shiv_Charan wrote:
Code: Select all
from SlabReinforcement import SlabReinforcement
import importlib
importlib.reload(SlabReinforcement)
SlabReinforcement.makeSlabReinforcement(
rebar_type="StraightRebar",
front_cover=20,
rear_cover=20,
left_cover=10,
right_cover=10,
top_cover=20,
bottom_cover=20,
diameter=8,
amount_spacing_check=True,
amount_spacing_value=20,
rounding=None,
mesh_cover_along="Bottom",
structure=App.getDocument("slab").getObject("Beam"),
facename='Face4',
bent_bar_length=None,
bent_bar_angle=None,
)
Code: Select all
from SlabReinforcement import SlabReinforcement
import importlib
importlib.reload(SlabReinforcement)
SlabReinforcement.makeSlabReinforcement(
rebar_type="UShapeRebar",
front_cover=20,
rear_cover=20,
left_cover=10,
right_cover=10,
top_cover=20,
bottom_cover=20,
diameter=8,
amount_spacing_check=True,
amount_spacing_value=20,
rounding=2,
mesh_cover_along="Bottom",
structure=App.getDocument("slab").getObject("Beam"),
facename='Face4',
bent_bar_length=None,
bent_bar_angle=None,
)
Code: Select all
from SlabReinforcement import SlabReinforcement
import importlib
importlib.reload(SlabReinforcement)
SlabReinforcement.makeSlabReinforcement(
rebar_type="LShapeRebar",
front_cover=20,
rear_cover=20,
left_cover=10,
right_cover=10,
top_cover=20,
bottom_cover=20,
diameter=8,
amount_spacing_check=True,
amount_spacing_value=11,
rounding=2,
mesh_cover_along="Bottom",
structure=App.getDocument("slab").getObject("Beam"),
facename='Face4',
bent_bar_length=None,
bent_bar_angle=None,
)
Code: Select all
from SlabReinforcement import SlabReinforcement
import importlib
importlib.reload(SlabReinforcement)
SlabReinforcement.makeSlabReinforcement(
rebar_type="BentShapeRebar",
front_cover=20,
rear_cover=20,
left_cover=10,
right_cover=10,
top_cover=20,
bottom_cover=20,
diameter=8,
amount_spacing_check=True,
amount_spacing_value=20,
rounding=2,
mesh_cover_along="Bottom",
structure=App.getDocument("slab").getObject("Beam"),
facename='Face4',
bent_bar_length=50,
bent_bar_angle=135,
)
Nice! I reviewed the PR.Shiv_Charan wrote: ↑Fri Jun 18, 2021 1:23 pm Hi @amrit3701,
Greetings of the day,
I have implemented detailing functions for Straight, U-shaped, L-Shaped and Bent Shaped rebar.
here is pull request: https://github.com/amrit3701/FreeCAD-Re ... t/pull/156
Current implementation use same type of rebar for both parallel and cross rebars in slab.
I am working on adding support for different type of rebar for parallel and cross rebars.
Then I will start working on UI implementation.
Thanks @amrit3701, I'm working on requested changes.
I will try to interact more.It will be good if you interact with the community more as GSoC promotes open-source code, so getting feedback from the community is very important for the successful GSoC project.