Modeling and cutting out a hemisphere

Based on discussion at:

trying to work out how to cut out a hemisphere as modeled by:

intersection() {
    translate([-100,-100,0]) cube([200,200,200]);

To keep things simple, we’ll see how well this can be done with just a square endmill.

Interestingly, it could be cut (albeit at a smaller size which matches the tool) using the radius endmill I’ve been working with in other posts:


and the following post

by just moving the tool in a suitably sized circle at the depth to cut a hemisphere of the size which the radius tool could cut.

Instead, we will make a series of cuts using a square endmill from a suitably sized piece of stock — two series:

  • first a series of rings with an increasing central diameter at ever greater depths so as to describe the hemisphere as if it were a Ziggurat, cutting out the latitudes of the shape
  • a series of hemispherical moves over the longitudinal axes of the hemisphere — note that at the apex the movement will need to include additional movement for the diameter of the endmill so as to clear the top of the hemisphere

As with other projects, we’ll start in Blockscad modeling first the stock and some basic variables, then define modules for the two sorts of cuts, and a pair of loops to then cut out the shape.

Initial setup is pretty straight-forward — define some variables and calculate out the numbers needed for the cuts:

next we need to make a module to cut out the diameter of the hemisphere through to an inner circle (leaving a roughing clearance) and work up the math of calculating the diameters for each cutdepth.

First module is an annulus so as to begin to cut out the hemisphere in layers — still need to adjust for the endmill diameter in the cutting:

but for the beginnings of a proof of concept, should suffice.

Next is modeling the longitudinal cuts — doing this emphasizes why CAM tools usually use ball-nosed endmills for generalized 3D movement, since for this basic version we need to continually transition from:

  • no offset for the initial position at the top center of the hemisphere
  • offset by radius for the movement down

which I suspect is may result in a circular artifact at the top — we’ll see what a test cut reveals

Cutting the first longitudinal pass works:

The longitudinal cuts work:

but the performance is glacial.

Performance is quite a bit better on the Powerbook:

Next up is doing the G-Code in OpenSCAD.

This topic was automatically closed after 30 days. New replies are no longer allowed.