add recent prints
This commit is contained in:
parent
9d2bf074ea
commit
7884e9b19e
5 changed files with 440 additions and 0 deletions
76
bedclip/bedclip_thin_backhook8.scad
Normal file
76
bedclip/bedclip_thin_backhook8.scad
Normal file
|
@ -0,0 +1,76 @@
|
|||
raild = 64.9;
|
||||
railh = 18.5;
|
||||
clipt = 5;
|
||||
|
||||
module rail_latch(x, y, z, m) {
|
||||
translate([1.1,0,0]) rotate([0,m*7,0]) difference() {
|
||||
cube([x,y,z], center=true);
|
||||
translate([0*-m,0,10-z]) rotate([0,25*-m,0]) cube([x+1,y+1,z], center=true);
|
||||
translate([4.9,0,0]) rotate([0,-5,0]) cube([x,y+1,z], center=true);
|
||||
//translate([5*-m,0,30.8-z]) rotate([0,5*-m,0]) cube([x+1,y+1,10], center=true);
|
||||
//translate([5*-m,0,30.8-z]) rotate([0,25*-m,0]) cube([x+1,y+1,10], center=true);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
module back_latch(x, y, z, m) {
|
||||
|
||||
union() {
|
||||
translate([0,0,1.251]) translate([1.35,0,-8]) cube([x-0.1,y,z+15], center=true);
|
||||
translate([-3,0,-26.25]) cube([x-0.5,y,3], center=true);
|
||||
translate([-1.85,0,-22.2]) rotate([0,50,0]) cube([x+0.5,y,9], center=true);
|
||||
translate([-1.85,0,-19.6]) rotate([0,30,0]) cube([x-1.5,y,11], center=true);
|
||||
//translate([0*-m,0,10-z]) rotate([0,25*-m,0]) cube([x+1,y+1,z], center=true);
|
||||
//translate([5*-m,0,30.8-z]) rotate([0,5*-m,0]) cube([x+1,y+1,10], center=true);
|
||||
//translate([5*-m,0,30.8-z]) rotate([0,25*-m,0]) cube([x+1,y+1,10], center=true);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
module back_latch2(x, y, z, m) {
|
||||
|
||||
union() {
|
||||
translate([0,0,1.251]) translate([1.35,0,-8]) cube([x-0.1,y,z+19], center=true);
|
||||
translate([-3,0,-28.25]) cube([x-0.5,y,3], center=true);
|
||||
translate([-1.85,0,-24.2]) rotate([0,50,0]) cube([x+0.5,y,9], center=true);
|
||||
//translate([-1.85,0,-21.6]) rotate([0,30,0]) cube([x-1.5,y,11], center=true);
|
||||
//translate([0*-m,0,10-z]) rotate([0,25*-m,0]) cube([x+1,y+1,z], center=true);
|
||||
//translate([5*-m,0,30.8-z]) rotate([0,5*-m,0]) cube([x+1,y+1,10], center=true);
|
||||
//translate([5*-m,0,30.8-z]) rotate([0,25*-m,0]) cube([x+1,y+1,10], center=true);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
module rail_clip() {
|
||||
//cube([raild, clipt, railh], center=true);
|
||||
union() {
|
||||
//color([1,0,1,0.2]) translate([raild/2+2,0.1,-5]) back_latch(5,clipt,27,1);
|
||||
translate([raild/2+4,0,-5]) rotate([0,10,0]) back_latch2(5,clipt,27,1);
|
||||
translate([-raild/2-2,0,-5]) rail_latch(5,clipt,30,-1);
|
||||
translate([2.5,0,railh/2+3.5]) cube([81.5,clipt,7], center=true);
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
module hook() {
|
||||
union() {
|
||||
translate([0,0,4.251]) cube([3,3,8.502], center=true);
|
||||
rotate([0, 25, 0]) translate([-1.6,0,0.651]) cube([3,3,5.602], center=true);
|
||||
rotate([0, -45, 0]) translate([1.5,0,-0.51]) cube([3,3,3.502], center=true);
|
||||
|
||||
//translate([0,0,6.5+1.5]) cube([3,3,3], center=true);
|
||||
//translate([5,0,6.5+1.5]) rotate([0,90,0]) rotate([0,0,45]) cylinder(h=7,d1=4.2, d2=1, center=true, $fn=4);
|
||||
translate([4.5,0,8.5+1.5]) cube([12,3,3], center=true);
|
||||
}
|
||||
}
|
||||
|
||||
module hooked_rail_clip() {
|
||||
union() {
|
||||
translate([-37.5,3/2,10]) rotate([0,-90,0]) hook();
|
||||
translate([0,clipt/2,0]) rail_clip();
|
||||
}
|
||||
}
|
||||
|
||||
rotate([90,0,0]) hooked_rail_clip();
|
35
eyepiece_holder/eyepiece_holder.scad
Normal file
35
eyepiece_holder/eyepiece_holder.scad
Normal file
|
@ -0,0 +1,35 @@
|
|||
real_diam = 35.8;
|
||||
real_depth = 17.2;
|
||||
fudge = 0.1;
|
||||
diam = real_diam + fudge;
|
||||
depth = real_depth + fudge;
|
||||
detail = 100;
|
||||
thickness = 15;
|
||||
plate = 150;
|
||||
front = 6;
|
||||
|
||||
module mock_scope(x, y) {
|
||||
cylinder(h = depth + y, d = diam + x, $fn=detail);
|
||||
}
|
||||
|
||||
module billet() {
|
||||
union() {
|
||||
cylinder(h = depth, d = diam + thickness, $fn=detail);
|
||||
cylinder(h = depth/front, d = (diam + thickness)*1.8, $fn=detail);
|
||||
translate([-plate/2,-thickness/2,0]) cube([plate, thickness, depth/front]);
|
||||
rotate([0,0,90]) translate([-plate/2,-thickness/2,0]) cube([plate, thickness, depth/front]);
|
||||
}
|
||||
}
|
||||
|
||||
module product() {
|
||||
difference() {
|
||||
billet();
|
||||
translate([0,0,-thickness]) mock_scope(0,thickness*2);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
|
||||
product();
|
||||
|
||||
|
59
eyepiece_holder/target_aimer.scad
Normal file
59
eyepiece_holder/target_aimer.scad
Normal file
|
@ -0,0 +1,59 @@
|
|||
real_diam = 25.8;
|
||||
real_depth = 40.2;
|
||||
fudge = 0.1;
|
||||
diam = real_diam + fudge;
|
||||
depth = real_depth + fudge;
|
||||
detail = 100;
|
||||
thickness = 3;
|
||||
plate = 80;
|
||||
front = 32;
|
||||
focus = 1.2;
|
||||
|
||||
module mock_scope(x, y) {
|
||||
cylinder(h = depth + y, d = diam + x, $fn=detail);
|
||||
}
|
||||
|
||||
module slices() {
|
||||
translate([-diam,-focus/2,0]) cube([diam*2, focus, depth+0.02]);
|
||||
rotate([0,0,90]) translate([-diam,-focus/2,0]) cube([diam*2, focus, depth+0.02]);
|
||||
}
|
||||
|
||||
module aim_slices() {
|
||||
difference() {
|
||||
slices();
|
||||
translate([0,0,depth-diam/2]) rotate([0,0,45]) cylinder(h=diam/2+2, d1=diam*3.14159/2, d2=focus*3.14159/2, $fn=4);
|
||||
translate([0,0,1.2]) mock_scope(0.01,-diam/2);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
module mock_scope2(x, y) {
|
||||
difference() {
|
||||
mock_scope(x, y);
|
||||
aim_slices();
|
||||
}
|
||||
}
|
||||
|
||||
module billet() {
|
||||
union() {
|
||||
cylinder(h = depth, d = diam + thickness, $fn=detail);
|
||||
cylinder(h = depth/front, d = (diam + thickness)*1.8, $fn=detail);
|
||||
translate([-plate/2,-thickness/2,0]) cube([plate, thickness, depth/front]);
|
||||
rotate([0,0,90]) translate([-plate/2,-thickness/2,0]) cube([plate, thickness, depth/front]);
|
||||
//inner_cut();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
module product() {
|
||||
difference() {
|
||||
billet();
|
||||
translate([0,0,-0.01]) mock_scope2(0,thickness*2);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
|
||||
product();
|
||||
//mock_scope2(0,0);
|
||||
|
135
m585_battery_door/m585_battery_door.scad
Normal file
135
m585_battery_door/m585_battery_door.scad
Normal file
|
@ -0,0 +1,135 @@
|
|||
h=42.35;
|
||||
d=2.85;
|
||||
bd=5.35;
|
||||
brad=26.45;
|
||||
isec_inc=5;
|
||||
isec_off=1;
|
||||
hookd = 6;
|
||||
batc_to_clipleftguide = 49.45;
|
||||
bclipd = 2.0;
|
||||
eclipw = 6.0;
|
||||
bc_left=12.5;
|
||||
|
||||
module baseplate_circle() {
|
||||
}
|
||||
|
||||
module baseplate_circle_cut() {
|
||||
intersection() {
|
||||
baseplate_circle();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
module bclip_ghost() {
|
||||
translate([0,0,6.1]) union() {
|
||||
rotate([0,0,14.6]) cube([49.45, 0.1, 0.1]);
|
||||
translate([49.45*0.966,0,0]) cube([0.1,12.5,0.1]);
|
||||
translate([49.45*0.966,12.5,-5.35]) cube([0.1,0.1,5.35]);
|
||||
}
|
||||
};
|
||||
|
||||
module bclip_spine_negative_top() {
|
||||
translate([0,0,6.1]) union() {
|
||||
translate([0,-8,0]) rotate([0,0,14.6]) cube([69.45, 15.1, 15.1]);
|
||||
translate([49.45*0.966,0,0]) cube([5.1,12.5,5.1]);
|
||||
}
|
||||
};
|
||||
|
||||
module bclip_spine_negative_fore() {
|
||||
translate([49.45*0.966,0,0]) cube([15.1,22.5,15.1]);
|
||||
}
|
||||
|
||||
module bclip_spine_negative_aft() {
|
||||
translate([-10,-2,0]) cube([10,10,10]);
|
||||
}
|
||||
|
||||
module bclip_spine_old() {
|
||||
rotate([0,0,14.6]) rotate([0,-4.5,0]) cube([49.45, 5.0, 2.1]);
|
||||
|
||||
}
|
||||
|
||||
module bclip_spine() {
|
||||
rotate([0,0,11.6]) rotate([0,-6.5,0]) cube([59.45, 5.0, 10.1]);
|
||||
translate([0,0,6.1-4.5]) rotate([0,0,11.6]) cube([59.45, 5.0, 10.1]);
|
||||
|
||||
}
|
||||
|
||||
module bclip_spine_bulk() {
|
||||
difference() {
|
||||
bclip_spine();
|
||||
bclip_spine_negative_top();
|
||||
bclip_spine_negative_fore();
|
||||
bclip_spine_negative_aft();
|
||||
}
|
||||
}
|
||||
|
||||
module bclip_aft_slot_negative_ramp() {
|
||||
translate([0,-1.2,0]) rotate([0,45,0]) cube([8,0.92,8]);
|
||||
//translate([1.5,-0.92,-0.1]) cube([20,0.92,2]);
|
||||
}
|
||||
|
||||
module bclip_aft_tab_negative_top() {
|
||||
translate([0.9,-15.9199,0.9]) cube([5,15,30]);
|
||||
|
||||
}
|
||||
|
||||
module bclip_aft_ghost() {
|
||||
translate([0,-0.92,0]) cube([5.0,0.1,0.1]);
|
||||
translate([5.1,-0.921,0]) rotate([0,-90,0]) cube([5.0,0.1,0.1]);
|
||||
translate([1.51,-0.921,0]) rotate([0,-90,0]) cube([1.0,0.1,0.1]);
|
||||
}
|
||||
|
||||
module bclip_aft_tab() {
|
||||
difference() {
|
||||
union() {
|
||||
translate([-0.1,-6.5,0]) cube([4,8,6.1]);
|
||||
translate([-3 ,-6.5,0]) cube([4,8,6.1]);
|
||||
}
|
||||
bclip_aft_slot_negative_ramp();
|
||||
bclip_aft_tab_negative_top();
|
||||
}
|
||||
}
|
||||
|
||||
module bclip_fore_tab() {
|
||||
translate([49.45*0.966,10.8,1.6]) cube([5.1,4.1,2.1]);
|
||||
difference() {
|
||||
translate([49.45*0.966+2,10.8,0.81]) rotate([0,-36,0]) cube([3.8,4.1,2.7]);
|
||||
translate([0,0,6.1-6.5]) rotate([0,0,11.6]) cube([69.45, 10.0, 2]);
|
||||
}
|
||||
color([0,0,1,0.25]) bclip_fore_ghost();
|
||||
|
||||
}
|
||||
|
||||
module bclip_fore_ghost() {
|
||||
translate([49.45*0.967,11.8,6.1-2.0]) rotate([0,-90,0]) cube([2.0,0.1,0.1]);
|
||||
}
|
||||
|
||||
module bclip_circular_pad() {
|
||||
difference() {
|
||||
union() {
|
||||
difference() {
|
||||
translate([23.15,-2.5,3.05]) cylinder(h=6.1,r=26.45,center=true,$fn=200);
|
||||
translate([21.15,-2.5,3.05]) cylinder(h=10.1,r=20.45,center=true,$fn=200);
|
||||
translate([13.45, -50, -1.9]) cube([100,100,12]);
|
||||
}
|
||||
translate([8.45, -22, 6.1-6]) cube([5,40,6]);
|
||||
}
|
||||
translate([-10,-50,-1-100]) rotate([0,-5.5,0]) cube([100,100,100]);
|
||||
}
|
||||
}
|
||||
|
||||
module bclip() {
|
||||
union() {
|
||||
bclip_spine_bulk();
|
||||
bclip_aft_tab();
|
||||
bclip_fore_tab();
|
||||
bclip_circular_pad();
|
||||
}
|
||||
}
|
||||
|
||||
//color([0,0,1,0.25]) bclip_ghost();
|
||||
bclip();
|
||||
//color([1,0.3,0,0.25]) bclip_aft_ghost();
|
||||
//bclip_aft_slot_negative_ramp();
|
||||
|
135
m585_battery_door/m585_battery_door_v3.scad
Normal file
135
m585_battery_door/m585_battery_door_v3.scad
Normal file
|
@ -0,0 +1,135 @@
|
|||
h=42.35;
|
||||
d=2.85;
|
||||
bd=5.35;
|
||||
brad=26.45;
|
||||
isec_inc=5;
|
||||
isec_off=1;
|
||||
hookd = 6;
|
||||
batc_to_clipleftguide = 49.45;
|
||||
bclipd = 2.0;
|
||||
eclipw = 6.0;
|
||||
bc_left=12.5;
|
||||
|
||||
module baseplate_circle() {
|
||||
}
|
||||
|
||||
module baseplate_circle_cut() {
|
||||
intersection() {
|
||||
baseplate_circle();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
module bclip_ghost() {
|
||||
translate([0,0,6.1]) union() {
|
||||
rotate([0,0,14.6]) cube([49.45, 0.1, 0.1]);
|
||||
translate([49.45*0.966,0,0]) cube([0.1,12.5,0.1]);
|
||||
translate([49.45*0.966,12.5,-5.35]) cube([0.1,0.1,5.35]);
|
||||
}
|
||||
};
|
||||
|
||||
module bclip_spine_negative_top() {
|
||||
translate([0,0,6.1]) union() {
|
||||
translate([0,-8,0]) rotate([0,0,14.6]) cube([69.45, 15.1, 15.1]);
|
||||
translate([49.45*0.966,0,0]) cube([5.1,12.5,5.1]);
|
||||
}
|
||||
};
|
||||
|
||||
module bclip_spine_negative_fore() {
|
||||
translate([49.45*0.966,0,0]) cube([15.1,22.5,15.1]);
|
||||
}
|
||||
|
||||
module bclip_spine_negative_aft() {
|
||||
translate([-10,-2,0]) cube([10,10,10]);
|
||||
}
|
||||
|
||||
module bclip_spine_old() {
|
||||
rotate([0,0,14.6]) rotate([0,-4.5,0]) cube([49.45, 5.0, 2.1]);
|
||||
|
||||
}
|
||||
|
||||
module bclip_spine() {
|
||||
rotate([0,0,11.6]) rotate([0,-6.5,0]) cube([59.45, 5.0, 10.1]);
|
||||
translate([0,0,6.1-4.5]) rotate([0,0,11.6]) cube([59.45, 5.0, 10.1]);
|
||||
|
||||
}
|
||||
|
||||
module bclip_spine_bulk() {
|
||||
difference() {
|
||||
bclip_spine();
|
||||
bclip_spine_negative_top();
|
||||
bclip_spine_negative_fore();
|
||||
bclip_spine_negative_aft();
|
||||
}
|
||||
}
|
||||
|
||||
module bclip_aft_slot_negative_ramp() {
|
||||
translate([0,-1.2,0]) rotate([0,45,0]) cube([8,0.92,8]);
|
||||
//translate([1.5,-0.92,-0.1]) cube([20,0.92,2]);
|
||||
}
|
||||
|
||||
module bclip_aft_tab_negative_top() {
|
||||
translate([0.9,-15.9199,0.9]) cube([5,15,30]);
|
||||
|
||||
}
|
||||
|
||||
module bclip_aft_ghost() {
|
||||
translate([0,-0.92,0]) cube([5.0,0.1,0.1]);
|
||||
translate([5.1,-0.921,0]) rotate([0,-90,0]) cube([5.0,0.1,0.1]);
|
||||
translate([1.51,-0.921,0]) rotate([0,-90,0]) cube([1.0,0.1,0.1]);
|
||||
}
|
||||
|
||||
module bclip_aft_tab() {
|
||||
difference() {
|
||||
union() {
|
||||
translate([-0.1,-6.5,0]) cube([4,8,6.1]);
|
||||
translate([-3 ,-6.5,0]) cube([4,8,6.1]);
|
||||
}
|
||||
bclip_aft_slot_negative_ramp();
|
||||
bclip_aft_tab_negative_top();
|
||||
}
|
||||
}
|
||||
|
||||
module bclip_fore_tab() {
|
||||
translate([49.45*0.966,10.8,1.6]) cube([5.1,4.1,2.1]);
|
||||
difference() {
|
||||
translate([49.45*0.966+2,10.8,0.81]) rotate([0,-36,0]) cube([3.8,4.1,2.7]);
|
||||
translate([0,0,6.1-6.5]) rotate([0,0,11.6]) cube([69.45, 10.0, 2]);
|
||||
}
|
||||
color([0,0,1,0.25]) bclip_fore_ghost();
|
||||
|
||||
}
|
||||
|
||||
module bclip_fore_ghost() {
|
||||
translate([49.45*0.967,11.8,6.1-2.0]) rotate([0,-90,0]) cube([2.0,0.1,0.1]);
|
||||
}
|
||||
|
||||
module bclip_circular_pad() {
|
||||
difference() {
|
||||
union() {
|
||||
difference() {
|
||||
translate([23.15,-2.5,3.05]) cylinder(h=6.1,r=26.45,center=true,$fn=200);
|
||||
translate([21.15,-2.5,3.05]) cylinder(h=10.1,r=20.45,center=true,$fn=200);
|
||||
translate([13.45, -50, -1.9]) cube([100,100,12]);
|
||||
}
|
||||
translate([8.45, -22, 6.1-6]) cube([5,40,6]);
|
||||
}
|
||||
translate([-10,-50,-1-100]) rotate([0,-5.5,0]) cube([100,100,100]);
|
||||
}
|
||||
}
|
||||
|
||||
module bclip() {
|
||||
union() {
|
||||
bclip_spine_bulk();
|
||||
bclip_aft_tab();
|
||||
bclip_fore_tab();
|
||||
bclip_circular_pad();
|
||||
}
|
||||
}
|
||||
|
||||
//color([0,0,1,0.25]) bclip_ghost();
|
||||
bclip();
|
||||
//color([1,0.3,0,0.25]) bclip_aft_ghost();
|
||||
//bclip_aft_slot_negative_ramp();
|
||||
|
Loading…
Add table
Reference in a new issue