Some Tutorials on Methodology (v0.17) - Master Sketch, Skeleton Geometry, Spreadsheets

A place to share learning material: written tutorials, videos, etc.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
sjgallagher2
Posts: 12
Joined: Fri Mar 03, 2017 2:51 am

Some Tutorials on Methodology (v0.17) - Master Sketch, Skeleton Geometry, Spreadsheets

Post by sjgallagher2 »

I've been experimenting with methodologies for FreeCAD 0.17 lately, and while I'm taking notes, I realized the notes are similar to tutorials. So I thought I would share some thoughts on methodology in FreeCAD 0.17!

First, a brief description of methodologies I've come across:
There are three design methodologies commonly used with FreeCAD 0.17 (and they extend, as far as I can tell, to 0.18). The purpose of a design methodology is to put the design on solid footing in a way that allows maximum parameteric control. We don't want to have to redraw anything when we change important dimensions, such as spacing between parts. The design method must allow us to use a set of "master" dimensions, shared through all the parts, so that we can change dimensions shared between parts with ease.

The three approaches to this are:
1. Master sketch
2. Skeleton geometry
3. Spreadsheet referencing
(4. Hybrid approach)

These all rely on using Expressions (directly or indirectly) to set important dimensions and constraints in the assembly.

In the master sketch method, we create one or two sketches that are only used to store the outline of the parts being created. We name constraints, and later we can reference them by either using the CarbonCopy (Copies geometry from another sketch) tool, when sketching, or using Expressions to reference the constraints for e.g. padding and offsetting sketches. All sketches are created mapped to the coordinate planes, never to a feature face, to avoid the topological naming problem.

In the skeleton geometry method, we use datum geometry (points, lines, planes) to control the dimensions of the parts. Sketches are created which reference the geometry, and sketches can be mapped to the datum planes. We can pad and pocket using the datum geometry by using Expressions. The datum geometry is called the "skeleton geometry."

For spreadsheet referencing, we use the Spreadsheet workbench, and create cells which are given aliases (by right-clicking, selecting Cell Properties, then going to Alias). These aliases can then be referenced in Expressions through the design. They can be used to control datum planes or master sketches for easier design.

The hybrid approach, of course, uses more than one of the above methods. We can combine things depending on what will be easiest for modeling. The decision of which method to use will become clearer as we get familiar with the limits and abilities of the various tools and methods FreeCAD has to offer.

FreeCAD 0.18 introduced variable tables, which provide a spreadsheet-like interface in a pop-up dialog sort of view. This provides a great boost in usability, as editing spreadsheets requires that we open the spreadsheet view, hiding the part design workspace.

Now, here are some examples which served as inspiration and reference:
See here: https://www.freecadweb.org/wiki/Feature ... ble_models
And here: https://www.freecadweb.org/wiki/Topolog ... ng_problem
For information about the topological naming problem

Some work from @ppemwm:
Basic:
https://forum.freecadweb.org/viewtopic. ... 00#p227968
Advanced:
Motor part 1 (v0.17): https://forum.freecadweb.org/viewtopic.php?f=24&t=26604
Follow-up (v0.17): https://forum.freecadweb.org/viewtopic.php?f=24&t=28433
More (v0.17): https://forum.freecadweb.org/viewtopic.php?f=24&t=28591
Answering questions about method (0.17): https://forum.freecadweb.org/viewtopic.php?t=29059
With Assembly 4 (v0.18 or 0.19): https://forum.freecadweb.org/viewtopic. ... 40#p363215
Using variable tables (v0.19): https://forum.freecadweb.org/viewtopic.php?f=24&t=43250

From the Wiki (Skeleton Modeling):
https://www.freecadweb.org/wiki/Sandbox ... Tutorial_I
https://www.freecadweb.org/wiki/PartDes ... utorial_II

Here is a previous tutorial I made to try to explain parametric modeling using the spreadsheet method: https://forum.freecadweb.org/viewtopic. ... 3&p=232625

Finally, here I have a PDF on Google Drive of another tutorial based on @ppemwm's experiment recreating the basic PartDesign Workbench tutorial using master sketches:
https://drive.google.com/file/d/11X6Z8a ... sp=sharing
Hope you all don't mind Google Drive links too much!

So that about does it. A pretty good collection of resources for FreeCAD modeling method I think.
User avatar
Zolko
Veteran
Posts: 2213
Joined: Mon Dec 17, 2018 10:02 am

Re: Some Tutorials on Methodology (v0.17) - Master Sketch, Skeleton Geometry, Spreadsheets

Post by Zolko »

sjgallagher2 wrote: Mon Feb 17, 2020 3:05 pm I've been experimenting with methodologies for FreeCAD 0.17 ... The three approaches to this are:
1. Master sketch
2. Skeleton geometry
3. Spreadsheet referencing
(4. Hybrid approach)

These all rely on using Expressions (directly or indirectly) to set important dimensions and constraints in the assembly.
interesting proposal. 1) and 2) are actually quite identical. But why limit it to v0.17 ? With 0.19 nearly out, with its extended assembly capabilities, this methodology should be adapted to v0.19 to be really useful.
try the Assembly4 workbench for FreCAD — tutorials here and here
sjgallagher2
Posts: 12
Joined: Fri Mar 03, 2017 2:51 am

Re: Some Tutorials on Methodology (v0.17) - Master Sketch, Skeleton Geometry, Spreadsheets

Post by sjgallagher2 »

Master sketches and skeleton geometry are very similar, they just achieve the same effect (having master geometry) using different techniques (sketches vs datum geometry), that's the only distinguishing feature of them as I've used them
0xff0000
Posts: 7
Joined: Tue Jul 21, 2020 6:47 pm

Re: Some Tutorials on Methodology (v0.17) - Master Sketch, Skeleton Geometry, Spreadsheets

Post by 0xff0000 »

A note for future users utilizing this tutorial:

When you get to step page 7 ("Now add dimensions.") an important choice needs to be made.

It's not explicitly stated in the tutorial, but if one uses "Horizontal Distance" and "Vertical Distance" constraints as opposed to the less opinionated "Distance" constraint the symmetric copy will not behave as in the tutorial:

Sketcher symmetric geometry combined with Horizontal and Vertical distance constraints.
Sketcher symmetric geometry combined with Horizontal and Vertical distance constraints.
Screenshot from 2021-07-22 15-54-05.png (90.17 KiB) Viewed 4220 times

abdullah covered this topic last year. The the choice becomes whether to use the "Horizontal Distance" and "Vertical Distance" constraints, create your symmetric copy, and then re-create the needed constraints or to use the less opinionated one.

Sketcher symmetric geometry combined with simple distance constraint.
Sketcher symmetric geometry combined with simple distance constraint.
Screenshot from 2021-07-22 15-56-09.png (102.75 KiB) Viewed 4220 times
User avatar
Shalmeneser
Veteran
Posts: 9474
Joined: Wed Dec 23, 2020 12:04 am
Location: Fr

Re: Some Tutorials on Methodology (v0.17) - Master Sketch, Skeleton Geometry, Spreadsheets

Post by Shalmeneser »

... then re-create the needed constraints ...
Twice the same dimension is a crime : use Sketcher_ConstrainEqual or Sketcher_ConstrainSymmetric.
The fewer dimensions, the best.
chrisb
Veteran
Posts: 53921
Joined: Tue Mar 17, 2015 9:14 am

Re: Some Tutorials on Methodology (v0.17) - Master Sketch, Skeleton Geometry, Spreadsheets

Post by chrisb »

0xff0000 wrote: Thu Jul 22, 2021 10:59 pm A note for future users utilizing this tutorial:
It's not quite clear to the non initiated, what "this" means here; is it the Basic Part Design Tutorial?
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Post Reply