from cadquery import exporters from cq_warehouse.extensions import Workplane from cq_warehouse.fastener import * from cq_warehouse.thread import * from cqmore.polygon import regularPolygon, star import cadquery as cq import cqmore Workplane = cqmore.extend(Workplane) simple = False bottom_radius = 70 screw = ButtonHeadScrew( size="M8-1.25", fastener_type="iso7380_1", length=15 * MM, simple=simple ) scaled_screw = screw.scale(0.77) screw_result = ( Workplane() .makePolygon(star(outerRadius=bottom_radius / 4.5, innerRadius=13, n=8)) .extrude(8) .union(scaled_screw) ) try: show_object(screw_result) except NameError: pass cq.exporters.export(screw_result, "/home/deck/model_files/drain_catcher_screw.stl")