|
|
@@ -112,11 +112,38 @@ module frame(size) { |
|
|
|
|
|
|
|
module walls() { |
|
|
|
walls_height=height-plate*2; |
|
|
|
up(plate) linear_extrude(height=walls_height) { |
|
|
|
//back_bumpers(); |
|
|
|
shell2d(thickness=-wall) { |
|
|
|
square([width, depth]); |
|
|
|
difference() { |
|
|
|
up(plate) linear_extrude(height=walls_height) { |
|
|
|
//back_bumpers(); |
|
|
|
shell2d(thickness=-wall) { |
|
|
|
square([width, depth]); |
|
|
|
} |
|
|
|
} |
|
|
|
translate(get_holodisk_laserwindow_pos_center()) cube(get_holodisk_laserwindow_size(), center=true); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
module front_plates() { |
|
|
|
th = get_holodisk_front_plate_thickness(); |
|
|
|
slide_pos = get_holodisk_slide_pos(); |
|
|
|
offset=4.5; |
|
|
|
plate_len_side=slide_pos.y - offset/2; |
|
|
|
plate_len_left=plate_len_side/2; |
|
|
|
plate_len_right=plate_len_left*3; |
|
|
|
// front |
|
|
|
fwd(th) left(th) up(offset) { |
|
|
|
cube([plate_len_left / 2 + th*2, th, height - offset*2]); |
|
|
|
} |
|
|
|
fwd(th) right(width-plate_len_right-th) up(offset) { |
|
|
|
cube([plate_len_right + th*2, th, height - offset*2]); |
|
|
|
} |
|
|
|
// left |
|
|
|
fwd(th) left(th) up(offset) { |
|
|
|
cube([th, plate_len_side, height - offset*2]); |
|
|
|
} |
|
|
|
// right |
|
|
|
fwd(th) right(width) up(offset) { |
|
|
|
cube([th, plate_len_side, height - offset*2]); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
@@ -169,6 +196,7 @@ module frame(size) { |
|
|
|
color("grey") walls(); |
|
|
|
color("Silver") slides(); |
|
|
|
color("SaddleBrown") bottom_cover(); |
|
|
|
color("SaddleBrown") front_plates(); |
|
|
|
//color("silver") back_bolts(); |
|
|
|
//color("silver") front_bolts(); |
|
|
|
} |
|
|
|