PR#2862: Configuration Table using Spreadsheet

Post here if you have re-based and finalised code to integrate into master, which was discussed, agreed to and tested in other forums. You can also submit your PR directly on github.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
hasecilu
Posts: 124
Joined: Sat Jan 29, 2022 7:23 pm
Contact:

Re: PR#2862: Configuration Table using Spreadsheet

Post by hasecilu »

Is it possible to use strings in a configuration table?
A usecase would be to create a configuration table in which a column of data have metric sizes (i.e. M5, M6, M8, etc) to be used with the Hole feature of the PartDesign WB. For the moment the Hole feature in the Size drop-down list don't accept Expressions, but if it does it could retrieve the "Mx" string and update the bore, thread, countersink sizes accordingly.
realthunder
Veteran
Posts: 2190
Joined: Tue Jan 03, 2017 10:55 am

Re: PR#2862: Configuration Table using Spreadsheet

Post by realthunder »

hasecilu wrote: Wed Jul 06, 2022 10:09 pm Is it possible to use strings in a configuration table?
A usecase would be to create a configuration table in which a column of data have metric sizes (i.e. M5, M6, M8, etc) to be used with the Hole feature of the PartDesign WB. For the moment the Hole feature in the Size drop-down list don't accept Expressions, but if it does it could retrieve the "Mx" string and update the bore, thread, countersink sizes accordingly.
Yes sure. Almost all properties can be bound by expression. It's just that not all of them are exposed to the editing task panel. Use property editor to find the 'ThreadSize' property of the hole, right click the property name and choose 'Expression...'.
Try Assembly3 with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal
User avatar
hasecilu
Posts: 124
Joined: Sat Jan 29, 2022 7:23 pm
Contact:

Re: PR#2862: Configuration Table using Spreadsheet

Post by hasecilu »

Thanks for your answer and sorry for the late response, afk.
I have follow the steps and it worked, I didn't know about this feature. Last days I have been modelling some parts for the FreeCAD library and this is very helpful. Also now I remember that is possible to attach Expressions to Body names...
User avatar
MSOlsen65
Posts: 226
Joined: Wed Feb 19, 2020 8:30 pm
Location: Winnipeg, MB Canada
Contact:

Re: PR#2862: Configuration Table using Spreadsheet

Post by MSOlsen65 »

Code: Select all

OS: openSUSE Tumbleweed (KDE//usr/share/xsessions/plasma5)
Word size of FreeCAD: 64-bit
Version: 0.20.1.29410 (Git) AppImage
Build type: Release
Branch: (HEAD detached at 0.20.1)
Hash: f5d13554ecc7a456fb6e970568ae5c74ba727563
Python 3.10.5, Qt 5.15.4, Coin 4.0.0, Vtk 9.1.0, OCC 7.6.2
Locale: English/United States (en_US)
Installed mods: 
  * Assembly4 0.12.5
  * offline-documentation 1.0.0-alpha
  * Help 1.0.3
  * symbols_library
  * CubeMenu
HELP!! :? I know this thread is aimed mainly at developers and I am merely a user. However, it is also the only resource I could find to set up configuration tables for Variant Links (directed here from the FC Documentation site).

I am very confused and have many questions. Is there perhaps a tutorial or video aimed at users for Variant Links?

What I am attempting to model is a tool chest system. It has 9 variants of drawer sizes and 4 variants of drop front doors. Here is my working concept drawing:
Rolling Tool Chest Design Concept.pdf
(651.1 KiB) Downloaded 97 times

What I would like to do is create one complete drawer from five parts then vary the dimensions (i.e. drawer_width and drawer_height) to create the the parts needed for the different drawer sizes.

Parts List :
  • front
  • back
  • bottom
  • left_side
  • right_side (mirror of left)
Key dimensions:
  • drawer_width (left to right)
  • drawer_height (top to bottom)
  • drawer_depth (front to rear - constant at 535 mm)
  • material_thickness (constant at 13 mm for all parts)
So far I am lost on even creating a configuration table in a spreadsheet. I also need to know how to turn these parts into different size drawer assemblies, which must then be placed within their corresponding chest section. Asembly4 only allows for one assembly model per file, and I need 9 different drawer models.

The drop front doors present a similar problem, 4 doors all of the same width but varying in height. Each made of the same 3 parts: rail x 2, stile x 2, and a panel. All the rails will be identical, but the stile and panels vary in height as the door varies. Modeling the parts gives me 4 different assembly models when I am only allowed 1 per file.

The trivial answer is to simply create a file for every assembly variation, but I was hoping for a "more elegant and efficient" method by using Variant Link, and a great deal fewer redundant parts.

Thank you all so much for your precious time and help.
Last edited by MSOlsen65 on Mon Mar 20, 2023 12:12 pm, edited 1 time in total.
Sincerely,


Michael S. Olsen
Electrical Engineer & Joiner
FCuser2019
Posts: 125
Joined: Fri Sep 13, 2019 12:15 pm

Re: PR#2862: Configuration Table using Spreadsheet

Post by FCuser2019 »

Hello, I hope this example will be of help to you:

viewtopic.php?p=583483#p583483
hotqin888
Posts: 7
Joined: Tue Apr 04, 2023 3:29 pm
Location: guangzhou china
Contact:

Re: PR#2862: Configuration Table using Spreadsheet

Post by hotqin888 »

The `Configuration Table` feature is fantastic. I'd like to use this feature with full parameters, e.g. in headless modehttps://wiki.freecad.org/Embedding_FreeCAD, assign a value('config3') to the table B3 cell via python code, and then the cell(C3~F3) of data can be switched like a Configuration Table
Image
Thank you!
hotqin888
Posts: 7
Joined: Tue Apr 04, 2023 3:29 pm
Location: guangzhou china
Contact:

Re: PR#2862: Configuration Table using Spreadsheet

Post by hotqin888 »

hotqin888 wrote: Thu Mar 21, 2024 9:30 am The `Configuration Table` feature is fantastic. I'd like to use this feature with full parameters, e.g. in headless modehttps://wiki.freecad.org/Embedding_FreeCAD, assign a value('config3') to the table B3 cell via python code, and then the cell(C3~F3) of data can be switched like a Configuration Table
Image
Thank you!
I got it.
right click on the "Parameters——Configuration——expression" and set expression '<Spreadsheet>>.B3',then change the cell B3 value,cell(C3~F3) will switch.
hotqin888
Posts: 7
Joined: Tue Apr 04, 2023 3:29 pm
Location: guangzhou china
Contact:

Can the configuration table support column direction parameters?

Post by hotqin888 »

For example, if I have multiple sets of parameters, and I want to use the configuration table function to switch column data groups. At the moment, it seems to be switching by row. Because the amount of data exceeds a dozen, it is difficult to organize the data in rows, so you need to use the mouse to click and hold the scroll bar below to move left and right, and scrolling up and down with the scroll wheel can be convenient to view multiple data. Thank you very much.
Post Reply