amrit3701 / FreeCAD-Reinforcement

Reinforcement Workbench for FreeCAD
https://wiki.freecadweb.org/Reinforcement_Workbench
48 stars 19 forks source link
addon bim freecad hacktoberfest rebar reinforcement structural

Reinforcement workbench for FreeCAD

Total alerts Language grade: Python Code style: black FreeCAD Addon manager status

This project aims to facilitate flexible implementation and usage of Rebaring in FreeCAD. The Reinforcement workbench provides tools for Reinforcement Generation and Detailing. This workbench provides an interface and presets for the creation of common rebar types. And tools to generate rebars bill of material, rebar shape cut list, bar bending schedule, and rebars drawing and dimension.

screenshot


Contents: Installation | Features | Documentation | Contributing | Showcase | Extras


Installation

FreeCAD Addon manager status

Pre-requisites

Using Addon Manager

Reinforcement workbench is available through the FreeCAD Addon Manager (menu Tools → Addon manager). It is called Reinforcement in the Addon Repository.

Manual Installation

Like any other FreeCAD workbench, you can manually clone or download all the files from this repository in a "Reinforcement" folder inside your FreeCAD Mod directory as described here.

Features of Reinforcement workbench

Reinforcement Generation

Reinforcement Detailing

Documentation

The documentation of this workbench is hosted on FreeCAD wiki pages and can be found here: https://wiki.freecadweb.org/Reinforcement_Workbench

IMAGE ALT TEXT HERE

How it works

Each rebar shape tool has two files, one is a python (AKA .py) file and the second is its respective UI (AKA .ui) file. For example: StraightRebar.py and StraightRebar.ui.

Let's continue with the straight rebar shape tool as the example. In the StraightRebar.py file, there are two functions:

  1. The makeStraightRebar() function, this function creates straight rebar and adds new properties to the default Rebar object.
  2. The editStraightRebar() function, this function is used when we want to change new properties of the rebar object to take a Rebar object as input (which is created by makeStraightRebar function).

Within the StraightRebar.py file we find the _StraightRebarTaskPanel class present. This class loads the UI (within the StriaghtRebar.ui file) in to a FreeCAD task panel. When a user clicks on the Apply or the Ok button, the makeStraightRebar function is executed and after that when the user wants to change the properties of Straight rebar then the editStraightRebar() function is executed.

Contributing

We love contributions! We have collected notes on how to contribute to this project in CONTRIBUTING.md

Showcase

Straight Rebar example Straight Rebar UShape Rebar example UShape Rebar LShape Rebar example LShape Rebar
BentShape Rebar example BentShape Rebar Stirrup Rebar example Stirrup Rebar Helical Rebar example
Helical Rebar
Circular Column Reinforcement example Circular Column Reinforcement Single Tie Column Reinforcement example Single Tie Column Reinforcement Two Ties Six Rebars Column Reinforcement example Two Ties Six Rebars Column Reinforcement
example Beam Reinforcement Bill Of Material example Bill Of Material Rebar Shape Cut List example Rebar Shape Cut List
Bar Bending Schedule example Bar Bending Schedule Drawing Dimensioning example Drawing Dimensioning

Extras

This endeavor started as a Google Summer of Code (GSOC 2017) project

GSoC 2017

GSoC 2019

GSoC 2020

GSoC 2021