From 335f002a1af8c5e7121c8de68d61135f0baf5e76 Mon Sep 17 00:00:00 2001 From: Alex Selimov Date: Mon, 21 Sep 2026 09:13:47 -0400 Subject: [PATCH] PTFE stopper for space pi se --- space_pi_se_PTFE_stopper.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 space_pi_se_PTFE_stopper.py diff --git a/space_pi_se_PTFE_stopper.py b/space_pi_se_PTFE_stopper.py new file mode 100644 index 0000000..15d5a44 --- /dev/null +++ b/space_pi_se_PTFE_stopper.py @@ -0,0 +1,36 @@ +# /// script +# requires-python = ">=3.14" +# dependencies = ["ocp_vscode", "build123d"] +# /// + +from build123d import * +from ocp_vscode import * + +### Dimensions ### +diameter_at_hole = 5.5 * MM +ptfe_length = 5 * MM +filament_length = 5 * MM +diameter_at_filament = 3 * MM +washer_thickness = 2 * MM +################### + +with BuildPart() as stopper: + with BuildSketch() as sketch: + Circle(diameter_at_hole / 2.0 + 2 * MM) + Circle(diameter_at_hole / 2.0, mode=Mode.SUBTRACT) + extrude(amount=washer_thickness) + with BuildSketch(Plane.XY.offset(washer_thickness)) as sketch: + Circle(diameter_at_hole / 2.0 + 0.5 * MM) + Circle(diameter_at_hole / 2.0, mode=Mode.SUBTRACT) + extrude(amount=ptfe_length) + offset = ptfe_length + washer_thickness + with BuildSketch(Plane.XY.offset(offset)) as sketch: + Circle(diameter_at_hole / 2.0 + 0.5 * MM) + Circle(diameter_at_hole / 2.0, mode=Mode.SUBTRACT) + offset += filament_length + with BuildSketch(Plane.XY.offset(offset)) as sketch: + Circle(diameter_at_filament / 2.0 + 0.5 * MM) + Circle(diameter_at_filament / 2.0, mode=Mode.SUBTRACT) + loft() + show(stopper) +export_stl(stopper.part, "stopper.stl")