Reader uses specs for laser pos. Holoview in holodisk. Improved side sliders. Added front plates.
This commit is contained in:
parent
814f47b1a8
commit
dc84b366ab
@ -112,11 +112,38 @@ module frame(size) {
|
|||||||
|
|
||||||
module walls() {
|
module walls() {
|
||||||
walls_height=height-plate*2;
|
walls_height=height-plate*2;
|
||||||
up(plate) linear_extrude(height=walls_height) {
|
difference() {
|
||||||
//back_bumpers();
|
up(plate) linear_extrude(height=walls_height) {
|
||||||
shell2d(thickness=-wall) {
|
//back_bumpers();
|
||||||
square([width, depth]);
|
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("grey") walls();
|
||||||
color("Silver") slides();
|
color("Silver") slides();
|
||||||
color("SaddleBrown") bottom_cover();
|
color("SaddleBrown") bottom_cover();
|
||||||
|
color("SaddleBrown") front_plates();
|
||||||
//color("silver") back_bolts();
|
//color("silver") back_bolts();
|
||||||
//color("silver") front_bolts();
|
//color("silver") front_bolts();
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,8 @@
|
|||||||
|
|
||||||
function get_holodisk_size() = [55, 100, 16];
|
function get_holodisk_size() = [55, 100, 16];
|
||||||
|
|
||||||
|
function get_holodisk_front_plate_thickness() = 1;
|
||||||
|
|
||||||
// -- tape --
|
// -- tape --
|
||||||
|
|
||||||
function get_holodisk_tape_height() = 5;
|
function get_holodisk_tape_height() = 5;
|
||||||
@ -28,11 +30,11 @@ srx = 2;
|
|||||||
srz = 2;
|
srz = 2;
|
||||||
function get_holodisk_slide_slider_size() = [get_holodisk_slide_size().x + srx, 15, get_holodisk_slide_size().z + srz];
|
function get_holodisk_slide_slider_size() = [get_holodisk_slide_size().x + srx, 15, get_holodisk_slide_size().z + srz];
|
||||||
|
|
||||||
function get_holodisk_slide_slider_pos() = [get_holodisk_slide_sliding_pos().x, get_holodisk_slide_sliding_pos().y, get_holodisk_slide_sliding_pos().z - get_holodisk_slide_slider_size().z/2 + srz];
|
function get_holodisk_slide_slider_pos() = [get_holodisk_slide_sliding_pos().x, get_holodisk_slide_sliding_pos().y + 5, get_holodisk_slide_sliding_pos().z - get_holodisk_slide_slider_size().z/2 + srz];
|
||||||
|
|
||||||
// -- laser --
|
// -- laser --
|
||||||
|
|
||||||
function get_holodisk_laser_cutout_size() = [15, 9, 20];
|
function get_holodisk_laser_cutout_size() = [12, 9, 20];
|
||||||
|
|
||||||
function get_holodisk_laser_cutout_pos() = [
|
function get_holodisk_laser_cutout_pos() = [
|
||||||
get_holodisk_size().x/2 - get_holodisk_laser_cutout_size().x/2,
|
get_holodisk_size().x/2 - get_holodisk_laser_cutout_size().x/2,
|
||||||
|
11
reader.scad
11
reader.scad
@ -43,6 +43,10 @@ module reader(disk_size) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module laser_space() {
|
||||||
|
translate(get_holodisk_laser_cutout_pos_center()) cube(get_holodisk_laser_cutout_size(), center=true);
|
||||||
|
}
|
||||||
|
|
||||||
module head_space() {
|
module head_space() {
|
||||||
/*stube=[head_size.x-head_frame*2, head_size.y+head_frame*3, head_size.z-head_frame*2];
|
/*stube=[head_size.x-head_frame*2, head_size.y+head_frame*3, head_size.z-head_frame*2];
|
||||||
up(head_size.z/4 + head_frame)
|
up(head_size.z/4 + head_frame)
|
||||||
@ -65,7 +69,7 @@ module reader(disk_size) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
head();
|
//head();
|
||||||
|
|
||||||
retraction=laser_tower_size.z;
|
retraction=laser_tower_size.z;
|
||||||
down(retraction)
|
down(retraction)
|
||||||
@ -81,7 +85,10 @@ module reader(disk_size) {
|
|||||||
fwd(frame) cube([width, frame, height]);
|
fwd(frame) cube([width, frame, height]);
|
||||||
head_space();
|
head_space();
|
||||||
}
|
}
|
||||||
fwd(frame) down(frame) cube([width, depth + frame, frame]);
|
down(frame) difference() {
|
||||||
|
fwd(frame) cube([width, depth + frame, frame]);
|
||||||
|
scale(1.01) down(0.01) laser_space();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user