Topic |
---|
Using Configuration Tables |
Level |
Beginner |
Time to complete |
30 minutes |
Authors |
Gbroques |
FreeCAD version |
0.20 |
Example files |
ConfigurationTableExample.FCStd |
See also |
None |
With the release of FreeCAD V0.20 two powerful new features have been introduced: Variant Links and Configuration Tables. Configuration tables are a special type of variant link. They allow to vary sets of predefined parameters for a given object.
Prior to this, you could parameterize objects with techniques such as spreadsheets, but multiple varied instances of that object couldn't exist at the same time unless you resorted to techniques like copying files or objects which creates maintenance issues. Configuration tables make the maintenance of such variants, and the ability to toggle between them easy.
This tutorial assumes that you have some familiarity with the PartDesign Workbench and the Sketcher Workbench. You should also be familiar with the Tree view and the Property editor.
There is also a video version of this tutorial.
To gain a better idea of configuration tables consider the following example.
Imagine a simple hexagonal nut with a "major" diameter of 10mm (M10).
We can reuse the same design, create a link, and then vary certain parameters to create an M12 hexagonal nut.
For our example, we will describe the differences between these two variants with 3 parameters:
The particular parameter values for our variants are described in this table:
Variant | Diameter | WidthAcrossCorners | Thickness |
---|---|---|---|
M10 | 10 | 18.48 | 8.4 |
M12 | 12 | 20.78 | 10.8 |
#PENDING
, you can right-click the spreadsheet in the Tree view and choose Recompute object to show the correct value.Spreadsheet.Diameter
and Spreadsheet.WidthAcrossCorners
to them: Spreadsheet.Thickness
to the DataLength of the pad.Enabled
on the Binder.M12
for the DataConfiguration property of the Binder.false
on the Binder.For the variant link you can also use a Std Link instead of a PartDesign SubShapeBinder:
Enabled
on the Link.Instead of duplicating the linked object with all its hierarchy, the SubShapeBinder will make a flattened copy of the mutated object. Another difference to Link is that the SubShapeBinder will sync any changes of the original object back to the copy even if the configurations are different, while for Link, once copied, the two objects become independent.
[When] using Link for alternative configurations, you'll need to realize that it makes a copy of the original object... it would be better to create a single 'variant' link for each [variant] to avoid unnecessary duplicates. Or better, use SubShapeBinder... And again, create one SubShapeBinder for each configuration.