Cabinet furniture design tools workbench

Post here for help on using FreeCAD's graphical user interface (GUI).
Forum rules
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help

Also, be nice to others! Read the FreeCAD code of conduct!
zohozer
Posts: 39
Joined: Mon Jul 28, 2014 8:35 pm

Re: A cabinet furneture disign tools

Postby zohozer » Sun Jun 25, 2017 6:09 pm

And seems that Yorik already have a prototype for a nesting script. But for that we will need to have support for grain orientation to be useful for furniture manufacturing.

Also seems that other developers are interested in developing features for furniture design: Presentation of aspiring FreeCAD contributor
Artis
Posts: 4
Joined: Wed Mar 13, 2019 8:31 am

Re: A cabinet furneture disign tools

Postby Artis » Wed Mar 13, 2019 8:49 am

Hello!

I see that a couple of years ago there was some activity regarding a furniture workbench. What is the current status of these features? This is an area of high interest for me, as I'm currently looking for solutions for parametric furniture design software – and I believe that FC can evolve so much more.
I know some Ruby and could try to help with developing the workbench – either with programming, requirement analysis or otherwise. Are there further discussions regarding this anywhere?
zohozer
Posts: 39
Joined: Mon Jul 28, 2014 8:35 pm

Re: A cabinet furneture disign tools

Postby zohozer » Thu Mar 14, 2019 8:33 am

Hi Artis.

I drawn a sketch for the furniture workbench some time ago with all the features that this workbench will need to have, but unfortunately from then I needed to switch my job (doing staircases) so now the furniture as such it is not so important for me.

Hopefully I will be able to find some spare time to continue this project again because there is no free and multi-platform software able do do a good furniture design and mechanisation.

Meantime if you have the possibility you can take a look at "Wood Work for Inventor" software, even by watching Youtube videos to have an idea to what I am aiming for!

Another software easy to use that I would like to see some features implemented in FreeCAD is the SketchUp plugin «Quincaillerie» which actually it is written in Ruby.

If you want to do FreeCAD development you will need to learn Python programming.

FreeCAD have almost all the tools that are needed to transform-it into a professional furniture design and manufacture tool, we only need to find some time and ambition to begin this task!

FreeCAD have a Nesting module developed by Yorik, have CNC output capabilities, parametric design, etc.

P.S. Unfortunately what it draws me back from using FreeCAD is the very unintuitive interface. Every single time I want to start a project in FreeCAD I give up after 5 minutes! I can't describe in words how bad I feel because of the unintuitive interface this software have. For this reason I'm using right now Rhino3D, even if it is not parametric, I can find easily ALL the tools I need just by typing some letters it displays all the tools available! I want such a feature in FreeCAD to be able to begin to work with.
zohozer
Posts: 39
Joined: Mon Jul 28, 2014 8:35 pm

Re: A cabinet furneture disign tools

Postby zohozer » Thu Mar 14, 2019 11:13 am

I just found my initial thoughts sketch for this workbench that I envisioned some time ago. Please add yours to this list:

FreeCAD Furniture Workbench

- Driving shape volume (Containing shape) (like a box) (with internal divisions if needed) who will act like a driving shape for all the panels located inside that shape. If shape and sizes changes, to change everything inside accordingly. -- with schematic representation for later on drawings generation

- Panels definitions (to be placed inside of the previously created Driving Shape): thickness of material, raw size, finish size. -- Surface definitions (grain orientation, material for rendering (also external render engines: Cycles or eevee), material for cross-section view). -- Edge-banding definitions (kind of edge, size, edge profile) if edgebander will take off what it is putting on. Some edge-banding machines have this capabilities, other don't have. When the edge will be applied: Before, ON or After CNC. (if require mechanisation on side of the panel, edges to be applied before mechanisation.) -- Mechanisation profiles associated to edges. (male-female profile mechanisation) -- Fixtures

- Fixtures definitions (like sketchup plugin -Assemblage) (minifix&dowels, cams) (with "if else" options) with related holes in panels. (Holes can be created by placing geometry into the layer called "subtract", and FreeCAD will automatically create the required boolean operations). Editing capabilities after placement, option to swap cams from inside face of panel to outside, option to replace them with something else from library, change position, eliminate part of them if necessary.

Fixtures to be placed on panels definitions of freely onto the surface of panels to certain distance specifyed by user.

- wizards for creation of panels with edges&fixtures, doors and drawers.

- If pockets are partially outside of panel to have extended shape outside for removing all extra material from corners.

- Options for creation of dog-bones (orientation H-V, cross).

= DRAWINGS =========

- Automatic drawings creation for individual parts, assemblies.
- Dynamic section views.
- One button Exploded views (like Sketchup Eclate-Deplace) with automatic numbering of parts from BOM.
- Schematic views with door openings and dimensions.

= BOM ==============

- The first column always represents the Grain orientation.
- Configurable reports. To be detailed.

= NESTING ==========

- Nesting by type of material. If a project needs to have mixed material parts, to nest the parts acording to this condition. Example: all the parts requiring "18mm White Melamine" to be nested into a 18mm White Melamine sheet, "Veneered MDF 19mm Oak" (which have fiber orientation) to be nested into another sheet taking into account the grain orientation.
- Custom shape for board, if we need to use an offcut piece for producing the parts.

= CNC ==============

- Create two separate files if the part require mechanisation on both faces, always turn L to R, to avoid any misalignments between mechanisations.
- Mechanisation priority and optimisation.
- Option for insertion of machining pause in program if require the manual intervention of operator (for removing the extra material, better fixing of part on table, visual inspection, etc.)
- Graphical representation of Grain&Edge-banding on part, so that operator knows how needs to correctly position the part on the CNC machine. Like WoodWop graphical comment.
- Variables creation (for later on making adjustments by operator if required), like L(length), W(wide), H(height).
- Cutting saw support
- Horizontal drilling & drilling block support.

= EXPORT ===========

- Option to export the nested result/sheet or as individual file for every part as .dxf files. If the part require mechanisation on both sides, to export as two separated files, the second one rotated from Left to Right and have the suffix "_face2".
- Suffix with the quantity, like _q5 if needs to mechanize the same part five times.
- The name of the Project&part in component, followed by the kind of material. Example: For the kitchen build for the client Tom, top part of Unit5 who needs to be made from 18mm White Mellamine, the name will be TomU5top18WhiteMelq1.dxf. If that part needs also mechanisation on the other face, the second file will be named TomU5top18WhiteMelq1_face2.dxf
- Layered DXF with configurable layer names. If I need to use Tool #4 and that tool needs to create a 5mm deep pocket, the corresponding geometry for that mechanisation needs to go on layer "PT45". Drill diam. 5mm and 12mm deep = "D5DEPTH12", etc.
- A separate layer to represent the edgebanding, called "edge" with different collors for different edge materials.
- Another layer representing the name of the parts, to easily identify every part by name (layer = "name").
- Layer representing the dimensions of every part in Length and Width into the layer called "dim".

-===-
User avatar
yorik
Site Admin
Posts: 11263
Joined: Tue Feb 17, 2009 9:16 pm
Location: São Paulo, Brazil
Contact:

Re: A cabinet furneture disign tools

Postby yorik » Tue Mar 19, 2019 6:33 pm

Plan seems very good. I would separate it into two phases, though: 1) modeling and parametric objects definitions and 2) all the rest

You'll need extra thought on the first point: What will be your different Furniture objects (I imagine for ex. one basic "container" object, that has a slot for the driving shape, and that would produce all the geometry for the different pieces), what are its properties, etc... Then define if each panel will be a separate object, what are their properties, etc. because that will really drive how the workbench is developed.
User avatar
iogui
Posts: 93
Joined: Tue Mar 19, 2019 3:44 pm
Location: São Paulo
Contact:

Re: A cabinet furneture disign tools

Postby iogui » Wed Mar 20, 2019 7:35 pm

Hello,

My name is Fabio, I'm from Brasil and this is my first post here.
I'm having a hard time for some weeks now using Freecad to model cabinet furneture and I'm very interested in working in freecad to make it more woodworker's friendly.
I am a software engineer changing career to work as a woodworker/ cabinet furneture designer and I have been building software professionally for more than 15 years in languages such Java, Javascript, Groovy, Perl, Clojure, Delphi, C#, C++/C, and so on.
My interest on Freecad came from the fact the it seems really promissing and that I don't use Windows. My OS of choice is Linux. And I have found no good cabinet furneture design tool that runs natively on Linux.
So I've decided that I would try to work on Freecad code to adapt it to my needs and I was planning to work myself in a cabinet furneture workbench. I has even spent some time learning python in the last days to be able to do it and I've tweaked around with macros to learn a little about Freecad's inner api.
Now looking at some of this forums posts I've came to this one that caught my eyes on.
I will have to read more closely the plans posted by zohozer because english is not my main language and I get a litle bit confused with some specific terms and I'm new on 3D modeling but I would like to help if I can.
At first sight I think it would be good to start with more simpler plans and than improve it incrementally.
Be the change you want to see in the world. - Mahatma Gandhi
User avatar
Kunda1
Posts: 4581
Joined: Thu Jan 05, 2017 9:03 pm

Re: A cabinet furneture disign tools

Postby Kunda1 » Wed Mar 20, 2019 10:29 pm

Mods, can you rename the topic of this thread so that it's correct spelling?
"Cabinet furniture design tools workbench"
I threw 'workbench" in there as it seems that is the context of this thread.
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
chrisb
Posts: 16330
Joined: Tue Mar 17, 2015 9:14 am

Re: A cabinet furneture disign tools

Postby chrisb » Wed Mar 20, 2019 11:40 pm

That's something OP should do himself.
Fat-Zer wrote:
Thu Oct 30, 2014 10:50 pm
I'm wondering if there are some ready to use tools to design cabinet furniture?
Fat-Zer, you seem to know how to spell it correctly, just edit the subject of your first post.
User avatar
Kunda1
Posts: 4581
Joined: Thu Jan 05, 2017 9:03 pm

Re: A cabinet furneture disign tools

Postby Kunda1 » Thu Mar 21, 2019 1:52 am

chrisb wrote:
Wed Mar 20, 2019 11:40 pm
That's something OP should do himself.
Fat-Zer wrote:
Thu Oct 30, 2014 10:50 pm
I'm wondering if there are some ready to use tools to design cabinet furniture?
Fat-Zer, you seem to know how to spell it correctly, just edit the subject of your first post.
@chrisb OP posted this back in Thu Oct 30, 2014 5:50 pm :lol:
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
chrisb
Posts: 16330
Joined: Tue Mar 17, 2015 9:14 am

Re: A cabinet furneture disign tools

Postby chrisb » Thu Mar 21, 2019 5:27 am

Kunda1 wrote:
Thu Mar 21, 2019 1:52 am
@chrisb OP posted this back in Thu Oct 30, 2014 5:50 pm :lol:
:lol: ok, that one made me laugh too! I think it is not too intrusive to change the subject after that time.