Robotics Hobbyist

How I create threads in Shapr3D

Here is the solution to the problem I had with Shapr3D and bolts. I have only tested this for an M8 Bolt and plan to test it with a few other sizes. But I suspect the issue is now solved.

Here is how to create a UNC M8 x 1.25 x 16 bolt in Shapr3D.

Note: This was tested with version 3.6.1 of the app.

• M8 = 8 mm diameter
• 1.25 = thread pitch
• 16 = length of thread

To calculate the Angle in Shapr3D (number of rotations/revolve) you need to know the TPI (Threads per Inch). Since this is a metric bolt, 1” = 25.400 mm.

In this example you would divide length of thread by thread pitch to calculate the number of expected threads. (16 / 1.25 = 12.8). Based on the screenshot below you need divide the thread pitch by 2 and subtract that from the 12.8 ((1.25 / 2 = .625) → (12.8 - .625 = 12.175). So we now know that we need 12.175 threads over 16 mm for an M8 bolt.

Now to calculate the Angle in Shapr3D you multiply the new TPI (12.175) by 360 (12.175 x 360 = 4383). Now we have an angle of 4383. So in the revolve menu you would enter an angle of 4,383 and a height of 16. Anything over 4383 should not be allowed to be entered as it wouldn’t fit if you follow the math.

Now this give an exact spec bolt for the M8 example listed. Now for 3D printing I found that I had to shrink the diameter by .1 in total. So rather than a 4 mm length I had to set it to 3.95 mm before I revolve.

Here is a 3D Printed bolt using the formula above. You can see it has a real steel M8 nut on it.

Here is an image of the formulas I used for these 3 bolts. This way if anyone else wants to give it a try.

Here they are printed, the M3 and M8 work as expected. I don’t have an M6 nut test the M6 one, I should have made an M4. But it looks like the issue is resolved.

The key is where you start the triangle in your sketch, make sure it is symmetrical and remember to subtract half the thread pitch if you start it outside the bolt sketch as I did. I am not sure how the numbers will work if the triangle is moved inside of the sketch, but I prefer it outside like this as I can sketch it right away and it will be correct.

Each of these had their diameter shrunk in the sketches by .1 mm to allow for any deviations in the 3D print. I may be able to bring that to .05 mm as my printers and PLA do a good job at retaining size.

Here is another example I did for an M42 x .75 (fine pitch metric).

I moved the triangle half way in the rectangle and used my formula above and got the expected result.

M42 Bolt
.75 thread pitch
7.5 mm height/length

7.5 / .75 = 10. (Number of threads over 7.5mm)

10 - .375 = 9.625. (Threads - 1/2 thread)

9.625 x 360 = 3465. (New threads x 1 revolve)

Angle = 3465 and Heigth = 7.5 mm

Pay particular attention to the triangle placement. I also extruded the base with half triangle deselected, to give a slight taper to the first thread.

Hi Denns,

I‘m still struggling with the maths a little bit…

Let’s be clear - your calculations work finely when printed and this is the goal(!), but just for the theory and understanding I‘ll ask further :wink:

A M42x0.75 thread has a pitch of -wonder- .75mm (per revolution).

After ten revolutions (3600deg) the thread has advanced 7.5mm.
This has to be ignorant of the position of the
triangle, because this defines the pitch or steepness of the thread itself.
If you make little alterations to those values it is supposed to be within the mechanical or printing tolerance of this thread, but formally I suspect that it‘s no longer a .75 thread but perhaps a .74864 thread (or any other fancy number).

Again… Your calculations work for any printing needs and that‘s what counts, but I’m still not fully content :slight_smile:

I‘ll keep being investigative…

Cheers Chris

Hi Chris, I fully understand your thinking here and I had the same concern at first. But after looking closely at my end resulted formula you shall see that I am not changing the pitch at all. Based on where I start my triangle outside of the rectangle that creates the shaft you revolve on, I am either 1/2 thread to 1 whole thread extra. So I subtract the entire 1/2 thread or whole thread from the total. I am not changing the pitch, I am changing the number of threads you end up with based on where you start the triangle.

If you look closely at a couple examples using said math and just re position the triangle you can see that there is either a full thread extra or a 1/2 thread extra. So you have to subtract it to get the exact length.

so when you dived your 3600 / 360 you get 10 threads, but if you count them without subtracting anything when you start outside of the rectangle you will have 10.5 or 11 threads. All your doing is removing the extra thread whether it is 1 full thread or 1 half thread.

At least this is what is supposed to be happening. If I am confusing the numbers somewhere then I am just missing it for some reason. But the logic is there.

Hopefully I will have some more time to experiment with this so I can try and better make sense of it myself. Maybe I am totally missing something, but it seems to work, when I print the parts in PLA they work as I would expect.

Hi Dennis,

I‘ve re-re-re-thought the problematic back and forth… :slight_smile:

The thread pitch is defined by the number of revolutions of the defining shape (an equilateral triangle in our ISO-metric approaches) per given length.
Any variation from this alters the thread pitch.

As mentioned in another thread - this may be a very effective and successful way of achieving a working printed part.

Regardless of the beginning of the subtracted revolved body (that is our thread cutout) the revolutions per length stay the same - even if there’s no bolt from which we substract our shape.
I can create a revolved cutout just on its own and with a .75 pitch it always has to have 10 revolutions per 7.5mm thread-length - this is a characteristic of the thread itself and not depending on its positioning.

This said, Shapr3D hindered us to create exactly this kind of revolved body.
A sketch with 10mm sidelength couldn‘t be revolved fully on 10mm (aka 360deg/10mm settings in the revolve tool).

As I mentioned in the Shapr3D-forum it works with a trick - if you enter 10.0001 in the height it is rounded to 10mm and voilá it works.

O.k. that much for the theory at the moment…
I hope everything is comprehensible, since neither English not technical slang is my motherlanguage :slight_smile:

Cheers Chris