added cryptex designs
This commit is contained in:
parent
11e3d2186a
commit
d336b04c67
137 changed files with 26 additions and 0 deletions
99
my_designs/parametric-radius-gauge/box.scad
Normal file
99
my_designs/parametric-radius-gauge/box.scad
Normal file
|
|
@ -0,0 +1,99 @@
|
|||
$fn = 128;
|
||||
|
||||
module tray(gauge_width, gauge_height, guage_thickness, gauge_range, t_radius, wall_thickness) {
|
||||
gauge_slots_length = ((gauge_range[1] - 1) * wall_thickness) + (gauge_range[1] * guage_thickness);
|
||||
gauge_slots_height = gauge_height * 0.25;
|
||||
|
||||
tray_length = gauge_slots_length + (wall_thickness * 2);
|
||||
tray_width = gauge_width + (wall_thickness * 2);
|
||||
tray_height = gauge_slots_height;
|
||||
|
||||
lip_length = tray_length + (wall_thickness * 2);
|
||||
lip_width = tray_width + (wall_thickness * 2);
|
||||
|
||||
union() {
|
||||
difference() {
|
||||
cube([gauge_width, gauge_slots_length, gauge_slots_height], center = true);
|
||||
|
||||
for(count = [gauge_range[0] : gauge_range[1]]) {
|
||||
start_y = -(gauge_slots_length / 2);
|
||||
wall_offset = (count - 1) * wall_thickness;
|
||||
gauge_offset = (count - 1) * guage_thickness;
|
||||
y_pos = start_y + gauge_offset + wall_offset;
|
||||
translate([-(gauge_width / 2), y_pos, -(gauge_height / 2)])
|
||||
cube([gauge_width, guage_thickness, gauge_height]);
|
||||
};
|
||||
};
|
||||
|
||||
difference() {
|
||||
cube([tray_width, tray_length, tray_height], center = true);
|
||||
|
||||
cube([gauge_width, gauge_slots_length, gauge_slots_height], center = true);
|
||||
};
|
||||
|
||||
translate([0, 0, -(wall_thickness / 2)])
|
||||
linear_extrude(tray_height - wall_thickness, center = true)
|
||||
difference() {
|
||||
offset(r = t_radius) {
|
||||
square([(lip_width - (t_radius * 2)), (lip_length - (t_radius * 2))], center = true);
|
||||
};
|
||||
|
||||
square([tray_width, tray_length], center = true);
|
||||
};
|
||||
|
||||
translate([0, 0, -((tray_height / 2) + (wall_thickness / 2))])
|
||||
difference() {
|
||||
minkowski() {
|
||||
cube([tray_width, tray_length, wall_thickness], center = true);
|
||||
cylinder(h = wall_thickness, r1 = 0, r2 = t_radius);
|
||||
};
|
||||
|
||||
translate([0, 0, wall_thickness])
|
||||
cube([lip_width, lip_length, wall_thickness], center = true);
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
module lid(gauge_width, gauge_height, guage_thickness, gauge_range, t_radius, wall_thickness, p_tolerance) {
|
||||
outer_length = ((gauge_range[1] - 1) * wall_thickness) + (gauge_range[1] * guage_thickness) + (wall_thickness * 4);
|
||||
outer_width = gauge_width + (wall_thickness * 4);
|
||||
|
||||
inner_height = (gauge_height * 0.75) + wall_thickness;
|
||||
inner_width = outer_width - (wall_thickness * 2);
|
||||
inner_length = outer_length - (wall_thickness * 2);
|
||||
|
||||
union() {
|
||||
linear_extrude(inner_height, center = true)
|
||||
difference() {
|
||||
offset(r = t_radius) {
|
||||
square([(outer_width - (t_radius * 2)), (outer_length - (t_radius * 2))], center = true);
|
||||
};
|
||||
|
||||
square([inner_width + p_tolerance, inner_length + p_tolerance], center = true);
|
||||
};
|
||||
|
||||
translate([0, 0, -((inner_height / 2) + (wall_thickness / 2))])
|
||||
difference() {
|
||||
minkowski() {
|
||||
cube([inner_width, inner_length, wall_thickness], center = true);
|
||||
cylinder(h = wall_thickness, r1 = 0, r2 = t_radius);
|
||||
};
|
||||
|
||||
translate([0, 0, wall_thickness])
|
||||
cube([outer_width, outer_length, wall_thickness], center = true);
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
tolerance = 0.5;
|
||||
radius = 2;
|
||||
w_thickness = 2;
|
||||
g_width = 65 + (tolerance);
|
||||
g_height = 35 + (tolerance);
|
||||
g_thickness = 1.5 + (tolerance);
|
||||
g_range = [1, 30];
|
||||
|
||||
translate([40, 0, 0])
|
||||
tray(g_width, g_height, g_thickness, g_range, radius, w_thickness);
|
||||
translate([-40, 0, 0])
|
||||
lid(g_width, g_height, g_thickness, g_range, radius, w_thickness, tolerance);
|
||||
Loading…
Add table
Add a link
Reference in a new issue