from build123d import * # Szerokość koła: 40 mm # Średnica zewnętrzna: 100 mm (czyli promień zewnętrzny 50 mm) # Otwór na wał: 20 mm (czyli promień wewnętrzny 10 mm) # Rowek na pasek: Wcięcie w kształcie trapezu (lub trójkąta) na środku zewnętrznej krawędzi. with BuildPart() as p: with BuildSketch(Plane.XZ) as s: with Locations((30, 0)): t = Rectangle(40, 40) with Locations((50 - 10 / 2, 0)): t2 = Trapezoid(12, 10, 80, rotation=90, mode=Mode.SUBTRACT) revolve(axis=Axis.Z) g = p.part.faces().sort_by(Axis.Z)[-1] with BuildSketch(g) as s2: with Locations((10, 0)): t3 = Rectangle(3.8, 6) extrude(amount=-40, mode=Mode.SUBTRACT) f = p.part.edges().filter_by(GeomType.CIRCLE) debug(f) # debug(s2, name="s2") # debug(t3, name="rec") # debug(t2, name="trapez") show_object(p, name="calosc") # debug(t) # export_step(p.part, "/home/pali112/Build123d/debug.step")