Working on this in OpenSCAD (well, BlockSCAD) now:
https://www.blockscad3d.com/community/projects/1814083
Trying to work out the triangles/chords to get the radiuses positioned --- a workable approach should be to:
- use a triangle to determine the position of the 8 degree rotation and position elements which define the top of the web offset by that distance
- use a chord/triangle to determine the position of the circle for the smaller radius
- chain another calculation from that to determine the position of the circle for the larger radius
- chain one final calculation to get the flat element which makes the end of the web co-planar with the flat top of the small cylinder
I need to go work in the yard for a bit, but I'll keep thinking this through and hopefully will finish it up this evening.