I am either missing something and re-inventing the wheel, or I invented a pretty clever lifehack.
Here is the problem:
you can design awesome things in OpenSCad, like this spinner (you need to glue 2 of them together with 4 ball bearings in between)
Then you can load the SCad file straight into FreeCad Path and create G-code. Then you just send that G-code to your CNC mill and cut it.
Awesome! But not so fast!
You can easily do it to the design above, but not this one:
Why? You cannot select shapes to mill around, because your shapes are fragmented (as they were defined in OpenSCad), and FreeCAD Path got confused. “Union” aground the whole thing helps with outer contour (hence the design above is doable), but not inner contours.
Specifically, this button is disabled:
Of course, there are more than one way to skin the cat in FreeCad Path, but pretty soon you will find that the Path is indeed confused-beyond-repair by the shape fragmentation.
Ouch!
But we can just push “F6″ in OpenSCad, export STL, import it into FreeCad as a single solid!
That’s right, it is loaded to FreeCad beautifully, but Path refuses even to look at it!
So, here is the lifehack:
In OpenSCad subtract the design from a larger shape (I use cylinder)
One of a sudden, FreeCad Path sees it as a unfragmented solid and let you define all the mills:
And here is the result:
Few mode things:
I use 4018 CNC mill from AliExpress. It is beautiful and awesome!
Is it even doable to define a mill over inverse solid definition?
Indeed, it is not that hard. Just make sure you specify to FreeCad Path whether you want to mill each contour from the inside or outside.
Is it possible to do double-inverse? (i.e., subtract that subtracted shape from another cylinder) to make mill definition more natural?
Probably. I have not tried it because I did not need it. Try it!
No, I am not a fidget spinner junkie. It is just a good test project. But I am an inline roller skating junkie, so I have a huge pile of worn out 608 bearings.