GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Contributions from the participants, questions and answers to their projects.
Discussions of proposals for upcoming events.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Shiv_Charan
Posts: 59
Joined: Wed Mar 03, 2021 12:10 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by Shiv_Charan »

Hi, @balrobs
balrobs wrote: Fri May 28, 2021 7:02 pm BTW we should not forget that for a correct dimensioning of rebar-shape-cut-list and reinforcements-bar-bending-schedule we don''t need only the ideal length of every rebar-edge but also the angle to its predecessor.

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?
if yes, I'm keeping that same.

Does any changes required in it ?

Regards
balrobs
Posts: 449
Joined: Fri Apr 24, 2020 8:58 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by balrobs »

Hi @Shiv_Charan
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.
Yes you are right, I thought of the angles highlighted in the pic below.
Since they also refer to the outside relocated lines, they should be calculated using your new algorithm too.
Cheers
RebarShapeCutList example.png
RebarShapeCutList example.png (15.49 KiB) Viewed 4792 times
Shiv_Charan
Posts: 59
Joined: Wed Mar 03, 2021 12:10 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by Shiv_Charan »

Hi @balrobs,
balrobs wrote: Sun May 30, 2021 10:19 am Hi @Shiv_Charan

Yes you are right, I thought of the angles highlighted in the pic below.
Since they also refer to the outside relocated lines, they should be calculated using your new algorithm too.
Cheers

RebarShapeCutList example.png
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.
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
angle for wire and relocated line.png (12.36 KiB) Viewed 4750 times

Please let me know if I am missing something. :-)

Thanks and Regards
balrobs
Posts: 449
Joined: Fri Apr 24, 2020 8:58 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by balrobs »

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
...
IMO this isn't always true ... see the example below.
Even if the two angles alpha2 are only slightly different and maybe this isn't noticeable when dimensioning without decimal places, they are not equal.
Cheers
Attachments
example.jpeg
example.jpeg (52.81 KiB) Viewed 4739 times
Shiv_Charan
Posts: 59
Joined: Wed Mar 03, 2021 12:10 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by Shiv_Charan »

balrobs wrote: Sun May 30, 2021 6:59 pm
IMO this isn't always true ... see the example below.
Even if the two angles alpha2 are only slightly different and maybe this isn't noticeable when dimensioning without decimal places, they are not equal.
Cheers
Thanks, @balrobs for giving me a detailed explanation of the issue.
Now issue with the angle calculation is more clear to me.
I will update the algorithm to calculate the ideal angle between edges.

Thanks and Regards
balrobs
Posts: 449
Joined: Fri Apr 24, 2020 8:58 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by balrobs »

Shiv_Charan wrote: Sun May 30, 2021 9:00 pm Thanks, @balrobs for giving me a detailed explanation of the issue.
You are welcome!
I'm looking forward to the solving of the issue.
Cheers
User avatar
amrit3701
Posts: 343
Joined: Mon Jun 13, 2016 5:37 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by amrit3701 »

Shiv_Charan wrote:
Hi Shiv,

As the coding period has begun, could you share a link where the community can see your daily activity logs? Also, I waiting to test and review new features and PR's :roll:

If you have any question, doubts feel free to ask here.

Cheers!
Amritpal Singh
Github, Like my work, sponsor me!
Shiv_Charan
Posts: 59
Joined: Wed Mar 03, 2021 12:10 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by Shiv_Charan »

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.

I have used this file and following scripts to test implementation.
slab.FCStd
(6.22 KiB) Downloaded 81 times
1. Slab having straight rebars

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,
)
Output:
Straight rebars slab reinforcement.png
Straight rebars slab reinforcement.png (133.62 KiB) Viewed 4340 times
2. Slab having U-Shaped rebars

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,
)
Output:
U shape slab reinforcemnet.png
U shape slab reinforcemnet.png (118.4 KiB) Viewed 4340 times
3. Slab having L-shaped rebars

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,
)
Outputs:
L shape slab reinforcement with  rebar amount.png
L shape slab reinforcement with rebar amount.png (130.1 KiB) Viewed 4340 times
4. Slab having bent shape rebars (slab spaning in two direction)

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,
)
output :
Bent shape Slab reinforcement.png
Bent shape Slab reinforcement.png (165.44 KiB) Viewed 4340 times

Thanks and Regards
User avatar
amrit3701
Posts: 343
Joined: Mon Jun 13, 2016 5:37 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by amrit3701 »

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.
Nice! I reviewed the PR.

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. :)
Amritpal Singh
Github, Like my work, sponsor me!
Shiv_Charan
Posts: 59
Joined: Wed Mar 03, 2021 12:10 pm

Re: GSoC Proposal: Automate Reinforcement Process of Slab and Footing in FreeCAD

Post by Shiv_Charan »

amrit3701 wrote: Sat Jun 19, 2021 3:06 pm Nice! I reviewed the PR.
Thanks @amrit3701, I'm working on requested changes.

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. :)
I will try to interact more.

Thanks and Regards
Post Reply