import cadquery as cq from cadquery.occ_impl.exporters import * from ocp_vscode import show outer_diam = 25 inner_diam = 20 outer_height = 2 inner_height = 15 inner_thick = 1.5 cut_width = 2 result = ( cq.Workplane("XY") .workplane() .circle(outer_diam/2) .extrude(outer_height) .faces(">Z") .workplane() .circle(inner_diam/2) .circle(inner_diam/2-inner_thick) .extrude(inner_height) .faces("Z") .edges()[0] .chamfer(7.5,1.2) .faces(">Z") .workplane() .rect(inner_diam, cut_width) .rect(cut_width, inner_diam) .cutBlind(-inner_height) ) show(result) # export the box as a STEP file with open("/home/sgruen/Dokumente/cadquery/mill_cap.step", "w") as fp: cq.exporters.exportShape(result, ExportTypes.STEP, fp)