base_dia = head_size / cos(30);
+pos_z_min = -base_th;
+pos_z_max = thread_len - 0.1;
+
module ScrewThread(){
translate([0, 0, -0.1])
render()
module TestThread(){
difference(){
union(){
- linextr(-base_th, 0)
- square(center=true, base_sz);
-
- linextr(-base_th, thread_len - 0.1)
+ linextr(pos_z_min, pos_z_max)
+ rotate([0,0,30])
circle(r= base_dia/2, $fn=6);
}
}
}
-TestThread($thread_slop = 0.375);
+module Test() {
+ translate([-24 -1, 4, 0]) linextr(pos_z_min, pos_z_max) square([2, 3]);
+ translate([-24, 0, 0]) TestThread($thread_slop = 0.000);
+ translate([-16, 0, 0]) TestThread($thread_slop = 0.125);
+ translate([ -8, 0, 0]) TestThread($thread_slop = 0.250);
+ translate([ 0, 0, 0]) TestThread($thread_slop = 0.375);
+ translate([ 8, 0, 0]) TestThread($thread_slop = 0.500);
+}
+
+Test();