Hacker News new | ask | show | jobs
by bemusedthrow75 1086 days ago
I am still a relative novice but: you don't really need to use datum planes at all to avoid TNP through sketch placement.

Each sketch can be placed independently anyway (offset from its attachment), and you can place them parametrically. So if you want the sketch on the top surface of another pad you can simply set the attachment position with e.g. <<Pad>>.Length referring to that object. Or by using a named reference from another sketch, or whatever.

Local co-ordinate systems can be useful, and sometimes I have added planes attached to those, because setting up attachment in truly arbitrary places is fiddly, but I almost never use datum planes.

TNP isn't usually triggered by resizing a sketch, unless the resizing causes some topology to change -- an edge being added in the edge list before a critical one is what will break attachment. For example if resizing one sketch in a body causes an earlier-numbered edge of a face you're attaching to, to disappear, that will do it, I think.

So generally TNP is something you don't always have to worry about, if you plan your design; sometimes you can attach to faces without concerns.

This isn't actually truly unique to FreeCAD. All CAD kernels have to solve this problem somehow; it's just that they are usually really narrow edge cases rather than big ugly obvious ones!

For me the bigger problem with FreeCAD (that won't go away quickly) is fillets and chamfers. OpenCascade can't allow a chamfer to consume other edges so you often run into difficulties where you have to tweak some measurement by a fraction of a millimetre so it doesn't.

I am getting around that by considering carefully which chamfers are merely presentational and which are effectively structural. The structural chamfers I may solve in some other way -- within the sketch, or with a subtractive operation, or whatever.

I agree with the recommendation for the Mango Jelly videos, and if you're on Facebook, the main FreeCAD group can be useful (Mr Mango Jelly hangs out there).