--- /dev/null
+// -*- C -*-
+
+hoopthick = 3;
+
+hinnerrad = 15;
+houterrad = hinnerrad + hoopthick;
+hcentredist = 10;
+
+blockdepth = 5;
+blockwidth = hcentredist*2 + 6;
+
+module Oval(centredist, rad) {
+ hull() {
+ translate([-centredist/2,0,0]) circle(r=rad);
+ translate([+centredist/2,0,0]) circle(r=rad);
+ }
+}
+
+module Hoop(){
+ difference(){
+ Oval(hcentredist, houterrad);
+ Oval(hcentredist, hinnerrad);
+ }
+}
+
+module Positive(){
+ Hoop();
+ translate([0, (blockdepth + hoopthick)/2 + hinnerrad])
+ square([blockwidth,
+ blockdepth + hoopthick],
+ center=true);
+}
+
+Positive();