Semifinal version of mark II

This commit is contained in:
Sebastian 2016-08-03 19:57:55 +02:00
parent a5b199c549
commit 66f6fa529e
8 changed files with 212462 additions and 585586 deletions

View File

@ -1,4 +1,4 @@
all: top.stl lid.stl all: top.stl lid.stl bottom.stl
%.stl: %.scad constants.scad bayonetmount.scad %.stl: %.scad constants.scad bayonetmount.scad support.scad handle.scad
openscad -o $@ $< openscad -o $@ $<

28
bottom.scad Normal file
View File

@ -0,0 +1,28 @@
include <constants.scad>;
difference() {
translate([0, 0, bumper_height / 2])
minkowski() {
radius = bumper_diameter / 2 - bumper_edge_radius;
height = bumper_height - 2 * bumper_edge_radius;
cylinder(r = radius, h = height, center = true);
sphere(r = bumper_edge_radius, center = true);
}
translate([0, 0, lid_height / 2])
cylinder(r = tube_inner_diameter / 2,
h = lid_height,
center = true);
translate([0, 0, bumper_tube_depth / 2])
cylinder(r = tube_outer_diameter / 2,
h = bumper_tube_depth,
center = true);
}

119618
bottom.stl Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
$fn = 180; $fn = 90;
tube_inner_diameter = 71; tube_inner_diameter = 71;
tube_outer_diameter = 76; tube_outer_diameter = 76;
@ -10,9 +10,13 @@ latch_width = 20;
latch_height = 5; latch_height = 5;
brim_height = 2.5; brim_height = 2.5;
handle_length = 75;
handle_thickness = 10;
handle_height = 15;
handle_max_width = 30;
handle_min_width = 10;
handle_minkowski_dia = 5;
groove_depth = 7.5;
groove_length = 50;
// Top // Top
bumper_height = 15; bumper_height = 15;
@ -22,9 +26,4 @@ bumper_edge_radius = bumper_diameter - tube_outer_diameter - 4;
bumper_tube_depth = 5; bumper_tube_depth = 5;
handle_length = 70;
handle_thickness = 10;
handle_height = 15;
handle_max_width = 30;
handle_min_width = 10;
handle_minkowski_dia = 5;

View File

@ -1,14 +1,10 @@
//$fn = 90;
include <constants.scad>; include <constants.scad>;
module handle() { module handle() {
center_offset = (handle_length / 2) center_offset = (handle_length / 2)
- handle_height; - handle_height;
// Doesn't make much sense but gives nice proportions // Doesn't make much sense but gives nice proportions
handle_bevel_radius = 2 * handle_length - handle_min_width; handle_bevel_radius = 2 * handle_length - handle_min_width;
rotate([-90, 0, 0]) rotate([-90, 0, 0])
@ -22,12 +18,12 @@ module handle() {
h = handle_max_width, h = handle_max_width,
center = true); center = true);
translate([0, handle_height, 0]) translate([0, handle_height, 0])
cube([handle_length, cube([handle_length,
handle_length, handle_length,
handle_max_width handle_max_width
], ],
center = true); center = true);
for(z = [-handle_length, handle_length]) for(z = [-handle_length, handle_length])
translate([0, -center_offset, z]) translate([0, -center_offset, z])
rotate([90,0,0]) rotate([90,0,0])
@ -35,9 +31,7 @@ module handle() {
h =handle_max_width); h =handle_max_width);
} }
sphere(d = handle_minkowski_dia, center = true); sphere(d = handle_minkowski_dia, center = true);
} }
} }
handle();

View File

@ -1,48 +1,31 @@
include <constants.scad>; include <constants.scad>;
include <bayonetmount.scad>; include <bayonetmount.scad>;
include <handle.scad>;
include <support.scad>; include <support.scad>;
delta = 0.5; delta = 0.75;
wall_thickness = 5;
difference() { difference() {
union() { union() {
lid(tube_outer_diameter - delta * 2, lid(tube_outer_diameter - delta * 2,
tube_inner_diameter - delta * 2, tube_inner_diameter - delta * 2,
latch_width - delta, latch_width - delta,
latch_height - delta, latch_height - delta,
lid_height - delta); lid_height - delta);
translate([0, 0, lid_height])
handle();
translate([0, 0, lid_height - brim_height / 2]) translate([0, 0, lid_height - brim_height / 2])
cylinder(r = tube_outer_diameter / 2, cylinder(r = tube_outer_diameter / 2,
h = brim_height, h = brim_height,
center = true); center = true);
} }
hull() {
pos = groove_length / 2 - groove_depth;
for(x = [-pos, pos])
translate([x, 0, lid_height])
sphere(r = groove_depth, center = true);
}
difference() {
translate([0, 0, (lid_height - wall_thickness) / 2])
cylinder(r = (tube_inner_diameter - wall_thickness) / 2,
h = lid_height - wall_thickness,
center = true);
translate([0, 0, lid_height / 2])
cube([tube_outer_diameter,
groove_depth * 2,
lid_height],
center = true);
}
} }
translate([0, 0, lid_height /2]) { translate([0, 0, lid_height /2]) {
support(tube_outer_diameter, lid_height); support(tube_outer_diameter, lid_height);
support(tube_outer_diameter * 0.96, lid_height); support(tube_outer_diameter * 0.96, lid_height);
}
support(tube_inner_diameter * 0.75, lid_height);
}

159182
lid.stl

File diff suppressed because it is too large Load Diff

519142
top.stl

File diff suppressed because it is too large Load Diff