Skip to content

Commit be38143

Browse files
Eliminate spurious warning from screw() in dev snapshot
1 parent 422b4e3 commit be38143

1 file changed

Lines changed: 27 additions & 17 deletions

File tree

threading.scad

Lines changed: 27 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2029,26 +2029,29 @@ module generic_threaded_rod(
20292029
assert(r1adj+pmax-clip_bev1>0, "bevel1 is too large to fit screw diameter")
20302030
assert(r2adj+pmax-clip_bev2>0, "bevel2 is too large to fit screw diameter")
20312031
assert(abs(clip_bev1)+abs(clip_bev2)<len, "Combined bevel size exceeds length of screw");
2032+
20322033
attachable(anchor,spin,orient, r1=r1adj, r2=r2adj, l=len) {
20332034
union(){
20342035
difference() {
2035-
vnf_polyhedron(thread_vnf,convexity=10);
2036-
if (clip_bev1>0)
2037-
rotate_extrude()
2038-
polygon([[ 0,-len/2],
2039-
[r1adj+pmax-clip_bev1 ,-len/2],
2040-
[r1adj+pmax-slope*clip_bev1,-len/2+clip_bev1],
2041-
[ rmax+1,-len/2+clip_bev1],
2042-
[ rmax+1, len1-1],
2043-
[ 0, len1-1]]);
2044-
if (clip_bev2>0)
2045-
rotate_extrude()
2046-
polygon([[ 0, len/2],
2047-
[r2adj+pmax-clip_bev2 , len/2],
2048-
[r2adj+pmax+slope*clip_bev2, len/2-clip_bev2],
2049-
[ rmax+1, len/2-clip_bev2],
2050-
[ rmax+1, len2+1],
2051-
[ 0, len2+1]]);
2036+
vnf_polyhedron(thread_vnf,convexity=10);
2037+
__rot_if_old(){ // works around change in rotate_extrude starting point
2038+
if (clip_bev1>0)
2039+
rotate_extrude(angle=360)
2040+
polygon([[ 0,-len/2],
2041+
[r1adj+pmax-clip_bev1 ,-len/2],
2042+
[r1adj+pmax-slope*clip_bev1,-len/2+clip_bev1],
2043+
[ rmax+1,-len/2+clip_bev1],
2044+
[ rmax+1, len1-1],
2045+
[ 0, len1-1]]);
2046+
if (clip_bev2>0)
2047+
rotate_extrude(angle=360)
2048+
polygon([[ 0, len/2],
2049+
[r2adj+pmax-clip_bev2 , len/2],
2050+
[r2adj+pmax+slope*clip_bev2, len/2-clip_bev2],
2051+
[ rmax+1, len/2-clip_bev2],
2052+
[ rmax+1, len2+1],
2053+
[ 0, len2+1]]);
2054+
}
20522055
if (!blunt_start1 && clip_bev1<=0)
20532056
down(len/2) cuboid([2*rmax+1,2*rmax+1, -len1+1], anchor=TOP);
20542057
if (!blunt_start2 && clip_bev2<=0)
@@ -2094,6 +2097,13 @@ module generic_threaded_rod(
20942097

20952098

20962099

2100+
module __rot_if_old()
2101+
{
2102+
if (version_num()>=20250314) children();
2103+
else zrot(180) children();
2104+
}
2105+
2106+
20972107
// Module: generic_threaded_nut()
20982108
// Synopsis: Creates a generic threaded nut.
20992109
// SynTags: Geom

0 commit comments

Comments
 (0)