67 lines
1.7 KiB
OpenSCAD
67 lines
1.7 KiB
OpenSCAD
// secret nut adapter for my subaru impreza (not model, real car :))
|
|
|
|
spacing = 0.25;
|
|
hexagon_size = 19;
|
|
hexagon_height = 20;
|
|
inner_circle_dia = 15;
|
|
outer_circle_inner_dia = 22;
|
|
secret_hexagon_solid_spacing = 4;
|
|
secret_depth = 13;
|
|
|
|
module sekretka(extent) {
|
|
union() {
|
|
translate([0, 0, -3])
|
|
cylinder(r=inner_circle_dia/2+extent, h=secret_depth+3, $fn=200);
|
|
for (i = [0, 45, 90, 135, 180, 225, 292.5]) {
|
|
rotate([0, 0, i])
|
|
hull() {
|
|
translate([0, -2.5/2, 0]) cube([inner_circle_dia/2+1+extent, 2.5, secret_depth]);
|
|
translate([0, -4.5/2, 0]) cube([inner_circle_dia/2-0.5+extent, 4.5, secret_depth]);
|
|
}
|
|
}
|
|
translate([0, 0, -4])
|
|
difference() {
|
|
cylinder(r=outer_circle_inner_dia/2+2, h=secret_depth+4, $fn=200);
|
|
translate([0, 0, 4]) cylinder(r=outer_circle_inner_dia/2-extent, h=16, $fn=200);
|
|
}
|
|
}
|
|
}
|
|
|
|
/*difference() {
|
|
adapter();
|
|
//sekretka(0.25);
|
|
translate([0, -20, -1]) cube(size=[20, 40, 40]);
|
|
}*/
|
|
|
|
module adapter() {
|
|
union() {
|
|
translate([0, 0, secret_depth+secret_hexagon_solid_spacing]) cylinder(r=hexagon_size/2/sin(60), h=hexagon_height, $fn=6);
|
|
difference() {
|
|
translate([0, 0, -1]) cylinder(r=outer_circle_inner_dia/2-spacing, h=secret_depth+secret_hexagon_solid_spacing+1, $fn=200);
|
|
sekretka(spacing);
|
|
}
|
|
}
|
|
}
|
|
|
|
projection(cut = true)
|
|
translate([0, 0, -1])
|
|
adapter();
|
|
|
|
projection(cut = true)
|
|
translate([25, 0, -secret_depth-secret_hexagon_solid_spacing-1])
|
|
adapter();
|
|
|
|
projection(cut = false)
|
|
translate([50, 0, 0])
|
|
adapter();
|
|
|
|
projection(cut = false)
|
|
translate([-25, secret_depth+secret_hexagon_solid_spacing, 0])
|
|
rotate([90, 90, 0])
|
|
adapter();
|
|
|
|
projection(cut = true)
|
|
translate([-50, secret_depth+secret_hexagon_solid_spacing, 0])
|
|
rotate([90, 90, 0])
|
|
adapter();
|