A simple sheet metal tools workbench for FreeCAD
- Folding tools:
@shaise Shai Seger
@jaisekjames
@ceremcem Cerem Cem ASLAN
(@JMG1) Based and inspired by Javier Martínez's code - Unfolding tool:
Copyright 2014 by Ulrich Brammer <ulrich1a[at]users.sourceforge.net> AKA @ulrich1a
As a simple test case, consider the following example:
- Inputs:
- Thickness: 2mm
- K-factor: 0.38 (ANSI)
- Leg length: 48.12mm
- Inner effective radius: 1.64mm
- Flange length: 51.76mm
- Output:
- End to mold-line distance: 50mm
You can find a simple calculator in tools/calc-unfold.py
.
You can use a Spreadsheet object to declare K-factor values inside the project file permanently. This will allow:
- Different K-factor values to be used for each bend in your model
- Sharing the same material definition for multiple objects
-
Create a spreadsheet with the name of
material_foo
with the following content (see this table):Radius / Thickness K-factor (ANSI) 1 0.38 3 0.43 99 0.5 Notes:
- The cell names are case/space sensitive.
- Possible values for
K-factor
isK-factor (ANSI)
orK-factor (DIN)
. Radius / Thickness
meansRadius over Thickness
. Eg. if inner radius is1.64mm
and material thickness is2mm
thenRadius / Thickness == 1.64/2 = 0.82
so0.38
will be used as the K-factor. See lookup.py for more examples.
-
Use "Unfold Task Panel" to assign the material sheet.
-
Unfold as usual.
Some sort of parameters effect the fabrication process but are impossible to inspect visually, such as K-factor, which makes them susceptible to go unnoticed until the actual erroneous production took place.
In engineering mode, such "non-visually-inspectable" values are not assigned with default values and explicit user input is required. "Engineering mode" is a safer UX mode for production environments.
- Switch to SheetMetal WB at least once.
- Edit -> Preferences -> SheetMetal
- Select
enabled
inEngineering UX Mode
field.
For installation and how to use, please visit:
http://theseger.com/projects/2015/06/sheet-metal-addon-for-freecad/
Starting from FreeCAD 0.17 it can be installed via the Addon Manager (from Tools menu)
- Development repo: https://github.com/shaise/FreeCAD_SheetMetal
- FreeCAD wiki page: https://www.freecadweb.org/wiki/SheetMetal_Workbench
- Authors webpage: http://theseger.com/projects/2015/06/sheet-metal-addon-for-freecad/
- FreeCAD Forum announcement/discussion thread
- V0.6.01 06 Dec 2024: Add GUI to BaseBend command.
- Fix detection of basebend belonging to body or not.
- Update translations by @hasecilu.
- Fix python compatibility by @Syres916.
- Extruded cutout fixes by @sheetmetalman.
- Fix round relief apect ratio limitations. - V0.6.00 03 Dec 2024: Code refactoring, Remove duplication, Add GUI to most functions.
- V0.5.10 25 Nov 2024: Extruded Cutout: add improvements and fixes by @sheetmetalman.
- Update translations from CrowdIn by @hasecilu. - V0.5.08 22 Nov 2024: Fix wrong creation of new body.
- V0.5.07 22 Nov 2024: Extruded Cutout: add improvements by @sheetmetalman.
- V0.5.06 17 Nov 2024: Extruded Cutout: support far sketches by @sheetmetalman.
- Add bug report template for GitHub.
- Fix bug when unfolding sheet with material definition.
- Extruded Cutout: Support multiple close lines by @sheetmetalman. - V0.5.05 13 Nov 2024: Extruded Cutout compatibility with FC Link.
- V0.5.04 11 Nov 2024: Add new feature - Extruded Cutout by @sheetmetalman.
- V0.5.03 22 Oct 2024: Fix fill gap issue in base shape feature.
- Partially Fix forming issue not working in latest freecad - V0.5.02 21 Oct 2024: Fix many small bugs after Ondsel merge.
- V0.5.01 20 Oct 2024: Fix bug in base shape creating double model.
- Fix typos by @luzpaz. - V0.5.00 19 Oct 2024: Merge Ondsel changes made by @adrianinsaval.
- V0.4.26 18 Sep 2024: Add bend perforation support @Erhannis.
- Make TRANSLATION.md clearer by @luzpaz. - V0.4.25 09 Sep 2024: Comment-out debug line by @Roy-043.
- Fix Bend on sketch bug by @jaisejames. - V0.4.24 09 Aug 2024: Support linked and cloned objects in Fold On Sketch.
- V0.4.23 17 Jul 2024: Fix bug with zero length walls.
- V0.4.22 08 Jul 2024: Eliminate temporary errors when base shape fields are edited.
- V0.4.21 30 Jun 2024: Fix Form tool not working.
- V0.4.20 24 Jun 2024: Change origin selection methods in base shape gui.
- V0.4.19 22 Jun 2024: Update icon colors in base shape gui.
- V0.4.18 08 Jun 2024: Yet more TNP issues.
- V0.4.17 04 Jun 2024: Temporary bypass TNP problem for other commands.
- V0.4.16 01 Jun 2024: Temporary bypass TNP problem.
- V0.4.15 29 May 2024: Disable fold and extend icons when a sketch is selected.
- Make unused parameters readonly when are not used by @hasecilu.
- GUI translation update from Crowdin by @kaktusus. - V0.4.14 13 May 2024: Add Italian translations by @robbeban.
- V0.4.13 27 Apr 2024: Hot fix: revert material preservation system. New system has issues.
- V0.4.12 26 Apr 2024: Add 'intersection of planes' to fold options by @free777cat.
- Remove redundant casts for better compatibility by @YakoYakoYokuYoku. - V0.4.11 07 Apr 2024: Make material preservation system a bit more robust.
- V0.4.10 31 Mar 2024: Some code refactoring and cleanup by @sliptonic.
- Add Flat shape to base shapes. - V0.4.09 28 Mar 2024: Enhance bend function to work on refined faces as well.
- V0.4.08 27 Mar 2024: Add option to set origin of base shape.
- V0.4.07 26 Mar 2024: Fix Translation issues by @hasecilu.
- Update function names to match the wiki help by @hasecilu. - V0.4.06 22 Mar 2024: Fix SolidBend function to be more robust and autodetect thickness.
- Fix issues with auto-miter not working in some cases. - V0.4.05 20 Mar 2024: Update all other sheetmetal icons by @maxwxyz.
- V0.4.04 18 Mar 2024: Change main icon to comply with freecad's theme by @maxwxyz and @pierreporte.
- Fix base shape UI's minimum values. - V0.4.03 10 Mar 2024: Add Spanish translation by @hasecilu.
- Update translation script by @hasecilu.
- Set fold direction by selected edge position - V0.4.02 21 Feb 2024: Update bend sketch tooltip by @Syres916.
- V0.4.01 10 Feb 2024: Fix basic shape dimensions by @RexLinz.
- V0.4.00 27 Jan 2024: Relicense SheetMetal WB from GPL3 to LGPL2 by @prokoudine.
- V0.3.16 17 Jan 2024: Compatibility with python 3.11 by @Syres916.
- Remove debug libraries by @Syres916. - V0.3.15 10 Jan 2024: Unfold compatibility with old freecad versions by @ksigurdur.
- V0.3.14 04 Jan 2024: Fix export of dxf.
- V0.3.13 10 Dec 2023: update polish translations by @kaktusus.
- V0.3.12 11 Nov 2023: Fix duplicate lines in unfold sketches issue #284.
- V0.3.11 11 Nov 2023: Fix broken engineering mode. Some unfold gui cleanup.
- V0.3.10 09 Nov 2023: Add base Sheetmetal shape tool, proposed by [@blindmessenger][opic82482].
- V0.3.02 10 Oct 2023: Add Polish translation by @kaktusus.
- V0.3.01 09 Oct 2023: Add Spanish translation by @hasecilu.
- V0.3.00 02 Sep 2023: Refactoring Unfolder by @sliptonic.
- V0.2.63 28 Mar 2023: Fix further unfolding issue by @Syres916.
- V0.2.62 24 Mar 2023: Add translation support + Portuguese translation by @riqueenz.
- Add dxf/svg export option to unfolder + fix unfolding issue by @Syres916. - V0.2.61 01 Jan 2023: Add option to link all bend radii to base bend radius by @alexneufeld.
- V0.2.60 24 Dec 2022: Improved unfolding script to better handle chamfers by @chappatted.
- V0.2.59 11 Nov 2022: Make unfolder sketch work with linkstage version by @Syres916.
- Fix refine function when multiple edges selected
- Make unfolder work with counter bore holes by @chappatted.
- Fix typos by @luzpaz. - V0.2.58 06 Oct 2022: respect 'midplane' and 'reverse' options by @alexneufeld.
- V0.2.57 07 Sep 2022: Fix unfold issue with compound holes by @chappatted.
- V0.2.56 04 Aug 2022: Fix issue #206 (object color changes by every sheetmetal command) by @Syres916.
- V0.2.55 03 Aug 2022: Add more backward compatibility to pr #242 by @Syres916.
- V0.2.54 30 Jul 2022: Fix version 20 compatibility with pr #242 by @Roy-043.
- V0.2.53 28 Jul 2022: Fix getBendetail and smExtrude for non-planar connecting faces by @Roy-043.
- V0.2.52 25 Jul 2022: Better fix for the UseSubtraction issue. Thank you @akshimassar
- V0.2.51 23 Jul 2022: Several fixes and new features: Thank you all!
- Add Length Spec feature to set adaptive flange lengths by @rmu75.
- Fix smExtrude for cylindrical connecting faces by @Roy-043.
- Fix Face.UseSubstraction typo by @mangelozzi.
- V0.2.50 09 Jul 2022: Moved 'Drawing' to 'TechDraw' for FC0.21 compatibility. Thank you!
- V0.2.49 03 Jul 2021: Add SubShapeBinder as source by @s-light. Thank you!
- V0.2.48 02 May 2021: Add context menu @jaisejames. Thank you!
- V0.2.47 24 Feb 2021: Add translation support by @jaisejames. Thank you!
- V0.2.46 31 Jan 2021: Small bug fixes and code clean by @jaisejames. Thank you!
- V0.2.45 24 Dec 2020: Added punch tool feature by @jaisejames. Thank you!
- V0.2.44 19 Dec 2020: Added extend feature by @jaisejames. Thank you!
- V0.2.43 01 Dec 2020: Added corner feature and map sketch to cut openings by @jaisejames. Thank you!
- V0.2.42 09 Jun 2020: Added Engineering UX Mode by @ceremcem. Thank you!
- V0.2.41 01 Jun 2020: Added Drop down Menu
- V0.2.40 24 May 2020: Added tools for conversion of solid corners to sheetmetal by @jaisejames. Thank you!
- V0.2.34 09 Mar 2020: Rename "my commands" context menu to sheet metal
- V0.2.33 09 Mar 2020: Fix bend radius bug on sketch bends. Thank you Léo Flaventin!
- V0.2.32 02 Jan 2020: Python 3.8 update by @looooo. Thank you!
- V0.2.31 24 Apr 2019: Added better K factor control by @ceremcem. Thank you!
- V0.2.30 30 Mar 2019: Added Fold-on-sketch-line tool by @jaisejames. Thank you!
- V0.2.22 24 Jan 2019: Fix some typos, Issue #54
- V0.2.21 20 Jan 2019: Fix some typos, Issue #52
- V0.2.20 10 Jan 2019: Added sheetmetal generation from base wire by @jaisejames. Thank you!
- V0.2.10 01 Nov 2018: Merge new features by @jaisejames. Thank you!
- Added Edge based selection
- Added Auto-mitering
- Added Sketch based Wall
- Added Sketch based Guided wall
- Added Relief factor
- Added Material Inside, thk inside, Offset options
- V0.2.04 21 Sep 2018: Fix K-Factor bug
- V0.2.03 20 Sep 2018: Merge @easyw PR: Add separate color for inner sketch lines. (issue #46). Change Gui layout
- V0.2.02 15 Sep 2018: Add color selection for unfold sketches (issue #41)
- V0.2.01 15 Sep 2018:
- V0.2.00 04 Sep 2018: Make SheetMetal compatible with Python 3 and QT 5
- V0.1.40 20 Aug 2018: Merge Ulrich's V20 unfolder script - supports many more sheet metal cases and more robust
- V0.1.32 25 Jun 2018: New feature: Option to separately unfold bends. Thank you @jaisejames!
- V0.1.31 25 Jun 2018: Support ellipses and parabolas, Try standard sketch conversion first
- V0.1.30 25 Jun 2018:
- V0.1.21 19 Jun 2018: Fixed back negative bend angles, restrict miter to +/- 80 degrees
- V0.1.20 19 Jun 2018: (Thank you @jaisejames for all these new features!!)
- Add bend extension to make the bended wall wider
- Add relief shape selection (rounded or flat)
- Double clicking on a bent in the tree view, brings a dialog to select different faces (good when editing the base object breaks the bend, and new faces need to be selected)
- Setting miter angle now works with unfold command
- V0.1.13 10 May 2018: Change unbending method so shape refinement can work.
- V0.1.12 25 Mar 2018: Allow negative bend angles. Change XPM icons to SVG
- V0.1.11 01 Feb 2018: Fix Issue [#23][23]: when there is a gap only on one side, an extra face is added to the other
- V0.1.10 11 Nov 2017: Add miter option to bends. By @jaisejames
- V0.1.02 22 Jun 2017: Fix nesting bug, when saving and loading file
- V0.1.01 03 Mar 2017: Support version 0.17 (starting from build 10423)
- V0.0.13 07 Sep 2015: Add negative gaps for extrude function. (per deveee request)
- V0.012 07 Sep 2015: Fix issue submitted by deveee
- V0.010 13 Jun 2015: Add Ulrich's great unfolding tool. Thanks!!!
- V0.002 12 Jun 2015: Fix Save/Load issues
- V0.001 11 Jun 2015: Initial version
GPLv3 (see LICENSE)