add metcalf e clip
This commit is contained in:
parent
684c8a50af
commit
d8452f29b2
66
outdoor/metcalfCclip.scad
Normal file
66
outdoor/metcalfCclip.scad
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
// E clip type hardware for mystery ranch metcalf ultralite frame
|
||||||
|
|
||||||
|
legDiam=10;
|
||||||
|
bodyDiam=11.5;
|
||||||
|
ctcLength=20;
|
||||||
|
legLength=20;
|
||||||
|
cordDiam=3;
|
||||||
|
cordHoleGap=0.75;
|
||||||
|
flattenBottom=0.3;
|
||||||
|
$fn = 40;
|
||||||
|
|
||||||
|
difference(){
|
||||||
|
|
||||||
|
// half of e mirrored across yz +++++++++++++++++++++++++++++++++++++++++++
|
||||||
|
color("blue"){
|
||||||
|
for (dir = [-1 : 1] ) mirror([dir, 0, 0]){
|
||||||
|
union(){
|
||||||
|
rotate([0,90,0]){
|
||||||
|
cylinder(ctcLength / 2, d = bodyDiam, center=false);
|
||||||
|
}
|
||||||
|
// rounded corner
|
||||||
|
translate([ctcLength / 2, 0, 0]){
|
||||||
|
sphere(d = bodyDiam);
|
||||||
|
}
|
||||||
|
// e leg outer
|
||||||
|
translate([ctcLength / 2, legLength / 2 + bodyDiam / 4, 0]){
|
||||||
|
rotate([90, 0, 0]){
|
||||||
|
cylinder( legLength + bodyDiam / 2, d = legDiam, center = true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// rounded leg ends
|
||||||
|
translate([ctcLength / 2, legLength + bodyDiam / 2, 0]){
|
||||||
|
sphere(d = legDiam);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// flatten bottom for better print and interface ---------------------------
|
||||||
|
color("red"){
|
||||||
|
translate([0, 0, -1 * (1 - flattenBottom) * legDiam]){
|
||||||
|
cube( [2 * ctcLength, 4 * legLength, legDiam], center=true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//holes for cord
|
||||||
|
color("green"){
|
||||||
|
for (dir = [-1 : 1]) mirror([dir, 0, 0]){
|
||||||
|
translate([cordHoleGap * cordDiam, 0, bodyDiam/7]){
|
||||||
|
rotate([90, 0, 0]){
|
||||||
|
cylinder( bodyDiam * 1.1, d = cordDiam, center = true);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//relief for cord bend
|
||||||
|
color("yellow"){
|
||||||
|
translate([0, bodyDiam / -2, bodyDiam/7]){
|
||||||
|
rotate([0, 90, 0]){
|
||||||
|
cylinder(cordDiam * cordHoleGap * 2, d = cordDiam, center = true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
64
outdoor/metcalfEclip.scad
Normal file
64
outdoor/metcalfEclip.scad
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
// E clip type hardware for mystery ranch metcalf ultralite frame
|
||||||
|
|
||||||
|
legDiam=9.5;
|
||||||
|
bodyDiam=11.5;
|
||||||
|
ctcLength=20;
|
||||||
|
legLength=21;
|
||||||
|
cordDiam=3;
|
||||||
|
cordHoleGap=0.75;
|
||||||
|
flattenBottom=0.3;
|
||||||
|
$fn = 40;
|
||||||
|
|
||||||
|
difference(){
|
||||||
|
|
||||||
|
// half of e mirrored across yz +++++++++++++++++++++++++++++++++++++++++++
|
||||||
|
color("blue"){
|
||||||
|
for (dir = [-1 : 1] ) mirror([dir, 0, 0]){
|
||||||
|
union(){
|
||||||
|
rotate([0,90,0]){
|
||||||
|
cylinder(ctcLength / 2, d = bodyDiam, center=false);
|
||||||
|
}
|
||||||
|
// rounded corner
|
||||||
|
translate([ctcLength / 2, 0, 0]){
|
||||||
|
sphere(d = bodyDiam);
|
||||||
|
}
|
||||||
|
// e leg outer
|
||||||
|
translate([ctcLength / 2, legLength / 2 + bodyDiam / 4, 0]){
|
||||||
|
rotate([90, 0, 0]){
|
||||||
|
cylinder( legLength + bodyDiam / 2, d = legDiam, center = true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// e leg inner
|
||||||
|
translate([0, legLength * 3 / 4, 0]){
|
||||||
|
rotate([90, 0, 0]){
|
||||||
|
cylinder(0.75 * legLength, d = 0.75 * legDiam);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// rounded end, e leg inner
|
||||||
|
translate([0, legLength * 3 / 4, 0]){
|
||||||
|
sphere(d = 0.75 * legDiam);
|
||||||
|
}
|
||||||
|
// rounded leg ends
|
||||||
|
translate([ctcLength / 2, legLength + bodyDiam / 2, 0]){
|
||||||
|
sphere(d = legDiam);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// flatten bottom for better print and interface ---------------------------
|
||||||
|
color("red"){
|
||||||
|
translate([0, 0, -1 * (1 - flattenBottom) * legDiam]){
|
||||||
|
cube( [2 * ctcLength, 4 * legLength, legDiam], center=true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//hole for cord
|
||||||
|
color("green"){
|
||||||
|
translate([0, legLength * 3 / 4 * 0.9, 0]){
|
||||||
|
cylinder( bodyDiam * 1.1, d = cordDiam, center = true);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
BIN
outdoor/metcalfEclip.stl
Normal file
BIN
outdoor/metcalfEclip.stl
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user