"""Round clearance spacer (unthreaded), Harwin R30-601 (M3 clearance): a brass tube, outside diameter D, bore d, length L, axis along +Z, one end on the XY plane, centred on the origin. """ from steve import Model clearance = "M3" # Screw size length = 10 # mm Length L # mm. Harwin R30-601XX02 M3 circular clearance spacer (DRG-02004, issue 5): (outside Ø D, bore Ø d) SPACERS = {"M3": (4.76, 3.30)} D, d = SPACERS[clearance] model = Model() with model.sketch("spacer_sketch", on="XY", name="Spacer") as sk: sk.circle("outside", (0, 0), D / 2) sk.circle("bore", (0, 0), d / 2) model.extrude("spacer", "spacer_sketch", distance=length, name="Spacer") model.material("brass", color="#c6c8c4") # CW614N, nickel plated result = model.result()