From 170f682d90fe4ea6904445b75361a329d7937eba Mon Sep 17 00:00:00 2001
From: Autistaman <90534842+Autistaman@users.noreply.github.com>
Date: Thu, 25 Dec 2025 19:19:08 +0000
Subject: [PATCH 1/2] Adding threadform parameter
---
3DPrintedMetricV3.xml | 1 +
main.py | 2 ++
2 files changed, 3 insertions(+)
diff --git a/3DPrintedMetricV3.xml b/3DPrintedMetricV3.xml
index c395df0..a3524a9 100644
--- a/3DPrintedMetricV3.xml
+++ b/3DPrintedMetricV3.xml
@@ -4,6 +4,7 @@
3D-printed Metric Threads V3
mm
60.0
+ 8
3
8
diff --git a/main.py b/main.py
index f85d698..e4e1333 100644
--- a/main.py
+++ b/main.py
@@ -8,6 +8,7 @@
SIZES = list(range(8, 51))
PITCHES = [3.5, 5.0]
OFFSETS = [.0, .1, .2, .4, .8]
+THREAD_FORM = 8
def designator(val: float):
@@ -98,6 +99,7 @@ def generate():
ET.SubElement(root, "CustomName").text = NAME
ET.SubElement(root, "Unit").text = UNIT
ET.SubElement(root, "Angle").text = str(ANGLE)
+ ET.SubElement(root, "ThreadForm").text = str(THREAD_FORM)
ET.SubElement(root, "SortOrder").text = "3"
for size in profile.sizes():
From cf67676be0ce8207d4453ab697e200f9eee115d0 Mon Sep 17 00:00:00 2001
From: Autistaman <90534842+Autistaman@users.noreply.github.com>
Date: Thu, 25 Dec 2025 19:27:52 +0000
Subject: [PATCH 2/2] Updated readme to fix an error and add threadform
---
README.md | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 57e4380..24ad29f 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@ This project defines thread profiles that are aimed at 3D printing so that they
The provided `3DPrintedMetricV3.xml` file contains the thread profiles listed below.
Additional profiles can be easily generated from the included Python script.
-**Shape:** 60° trapezoidal
+**Shape:** 60° whitworth
**Size (OD):** 8-50mm
**Pitch:** 3.5mm, 5mm
**Classes:** O.0, O.1, O.2, O.4, O.8
@@ -51,10 +51,17 @@ The script has no parameters and can be executed like so:
python main.py
```
-This will create a file named `output.xml` in the working directory which you can then rename and install in Fusion as described above.
+This will create a file named `3DPrintedMetricV3.xml` in the working directory which you can then rename and install in Fusion as described above.
To customize the generated profiles, simply edit the values defined at the top of `main.py`.
+To change the profile of the thread change the "THREAD_FORM" variable and reference the below chart.
+
+0 = Trapezoidal
+1 = sharp V shape
+6 = Square
+8 = whitworth
+
```python
NAME = "3D-printed Metric Threads V3"
UNIT = "mm"
@@ -62,4 +69,5 @@ ANGLE = 60.0
SIZES = list(range(8, 51))
PITCHES = [3.5, 5.0]
OFFSETS = [.0, .1, .2, .4, .8]
+THREAD_FORM = 8
```