updated metric bolts code to fix a tension issue, also the nut needs to be ON the thread, not off the end... oops
This commit is contained in:
parent
2d3d215368
commit
e797a980e9
1 changed files with 21 additions and 12 deletions
|
@ -1,35 +1,42 @@
|
|||
module metricBoltHex(mSize, structural=false, recessNut=0, chamfer=false){
|
||||
hexDiameter = mSize * (structural?2.0:1.8);
|
||||
// Hex diameter = mSize * 1.8, (or 2.0 if structural
|
||||
// We add 1% to make the hex slip in better
|
||||
hexDiameter = mSize * (structural?2.0:1.8) * 1.01;
|
||||
|
||||
translate([0,0,(mSize*0.7)/2])
|
||||
cylinder(d=hexDiameter,h=mSize * 0.7, $fn=6, center=true);
|
||||
|
||||
if(recessNut > 0){
|
||||
#translate([0,0,(recessNut/2)*-1])
|
||||
translate([0,0,(recessNut/2)*-1])
|
||||
cylinder(d=mSize * (structural?2.0:1.8),h=recessNut, $fn=6, center=true);
|
||||
}
|
||||
if(chamfer){
|
||||
chamferHeight = mSize*1.5*0.595;
|
||||
translate([0,0,(mSize * 0.7)+(chamferHeight/2)])
|
||||
#cylinder(d1=hexDiameter,d2=0,h=chamferHeight, center=true, $fn=6);
|
||||
cylinder(d1=hexDiameter,d2=0,h=chamferHeight, center=true, $fn=6);
|
||||
}
|
||||
}
|
||||
|
||||
module metricSocketCap(mSize, length, structural=false,recessCap=0, chamfer=false){
|
||||
//cap size = M number * 1.5.
|
||||
// We add 1% to make the cap head spin nicely in the hole.
|
||||
capSize = mSize * 1.5 * 1.01;
|
||||
|
||||
translate([0,0,(length + ((mSize*1.25)/2))])
|
||||
cylinder(d=mSize*1.5,h=mSize*1.25, center=true, $fn=360);
|
||||
cylinder(d=capSize,h=mSize*1.25, center=true, $fn=360);
|
||||
if(recessCap > 0){
|
||||
translate([0,0,(length + ((recessCap/2)+(mSize*1.25)))])
|
||||
#cylinder(d=mSize*1.5,h=recessCap, center=true, $fn=360);
|
||||
cylinder(d=mSize*1.5,h=recessCap, center=true, $fn=360);
|
||||
}
|
||||
if(chamfer){
|
||||
translate([0,0,(length-((mSize*1.5*0.595)/2))])
|
||||
#cylinder(d2=mSize*1.5,d1=0,h=mSize*1.5*0.595, center=true, $fn=360);
|
||||
cylinder(d2=mSize*1.5,d1=0,h=mSize*1.5*0.595, center=true, $fn=360);
|
||||
}
|
||||
}
|
||||
|
||||
module metricShaft(mSize, length, structural=false){
|
||||
translate([0,0,(length/2)])
|
||||
cylinder(d=mSize, h=length, center=true, $fn=360);
|
||||
cylinder(d=mSize, h=length+0.01, center=true, $fn=360);
|
||||
}
|
||||
|
||||
module metricSocketScrew(mSize, length, structural=false, recessCap=0, chamfer=false){
|
||||
|
@ -45,18 +52,20 @@ module metricCapheadAndBolt(mSize, length=40, structural=false, recessCap=0, rec
|
|||
if(recessNut){
|
||||
echo (str("It has a ", recessCap, "mm recessed nut"));
|
||||
}
|
||||
translate([0, 0, mSize * 0.7])
|
||||
translate([0, 0, 0])
|
||||
metricSocketScrew(mSize, length, structural=structural, recessCap=recessCap, chamfer=chamfer);
|
||||
metricBoltHex(mSize,structural, recessNut=recessNut, chamfer=chamfer);
|
||||
}
|
||||
|
||||
/*
|
||||
translate([0,0,0])
|
||||
metricCapheadAndBolt(6, 20);
|
||||
|
||||
translate([0,0,0])
|
||||
metricCapheadAndBolt(8, 40);
|
||||
translate([10,0,0])
|
||||
cylinder(h=40,d=1);
|
||||
/*
|
||||
translate([0,10,0])
|
||||
metricCapheadAndBolt(6, 20, recessNut=10, recessCap=10);
|
||||
|
||||
/*
|
||||
translate([0,20,0])
|
||||
metricCapheadAndBolt(6, 20, chamfer=true);
|
||||
|
||||
|
|
Loading…
Reference in a new issue