Compare commits

...

5 Commits

Author SHA1 Message Date
3c8aa4e090
rename overhang panel files for clarity and sorting
Signed-off-by: Brian S. Stephan <bss@incorporeal.org
2024-02-06 19:19:37 -06:00
dac1073aa0
move the bottom plate with overhang into the only part that uses it
also that component *is* the part so it's easier to just reuse the part

Signed-off-by: Brian S. Stephan <bss@incorporeal.org
2024-02-06 19:19:35 -06:00
d3940c4109
s/topplate/panel/ --- just better naming
Signed-off-by: Brian S. Stephan <bss@incorporeal.org
2024-02-06 19:19:33 -06:00
53834363a6
add overhang amount to the chopper, to chop those properly too
Signed-off-by: Brian S. Stephan <bss@incorporeal.org
2024-02-06 19:19:31 -06:00
02993ab6a6
the overhang plates don't need the sunken tray
Signed-off-by: Brian S. Stephan <bss@incorporeal.org
2024-02-06 19:19:22 -06:00
25 changed files with 27 additions and 34 deletions

View File

@ -8,7 +8,7 @@ include <components.scad>
module bottom_panel() { module bottom_panel() {
difference() { difference() {
mirror([0, 0, 1]) topplate(); mirror([0, 0, 1]) panel();
translate([0, 0, top_plate_z/2]) cube([top_plate_x-40, top_plate_y-40, top_plate_z], center=true); translate([0, 0, top_plate_z/2]) cube([top_plate_x-40, top_plate_y-40, top_plate_z], center=true);
} }
} }

View File

@ -8,8 +8,8 @@ include <components.scad>
module bottom_panel_solo() { module bottom_panel_solo() {
difference() { difference() {
bottom_plate_with_overhang(); rotate([180, 0, 0]) base_top_plate_with_raised_overhang();
translate([0, 0, top_plate_z/2]) cube([top_plate_x-40, top_plate_y-40, top_plate_z], center=true); rotate([180, 0, 0]) top_plate_holes();
} }
} }

View File

@ -162,19 +162,26 @@ module levermountholes() {
m4_hole_countersink(); m4_hole_countersink();
} }
module base_topplate() { module base_panel() {
cube([top_plate_x, top_plate_y, top_plate_z], center=true); cube([top_plate_x, top_plate_y, top_plate_z], center=true);
} }
module panel() {
difference() {
base_panel();
top_plate_holes();
}
}
module overhang_plate() { module overhang_plate() {
roundedcube([overhang_top_plate_x, overhang_top_plate_y, top_plate_z], center=true, radius=1); roundedcube([overhang_top_plate_x, overhang_top_plate_y, top_plate_z], center=true, radius=1);
} }
// this takes the base_topplate and makes it a small frame, putting a larger top plate // this takes the base_panel and makes it a small frame, putting a larger top plate
module base_top_plate_with_raised_overhang() { module base_top_plate_with_raised_overhang() {
// make a frame out of the top plate (and keep the main plate on the center plane) // make a frame out of the top plate (and keep the main plate on the center plane)
translate([0, 0, -5]) difference() { translate([0, 0, -5]) difference() {
base_topplate(); base_panel();
cube([top_plate_x-(panel_support_width*2), top_plate_y-(panel_support_width*2), top_plate_z*2], center=true); cube([top_plate_x-(panel_support_width*2), top_plate_y-(panel_support_width*2), top_plate_z*2], center=true);
} }
translate([plate_to_frame_point_x, plate_to_frame_point_y, -2.5]) resize([0, 0, 10]) frame_mount_column(); translate([plate_to_frame_point_x, plate_to_frame_point_y, -2.5]) resize([0, 0, 10]) frame_mount_column();
@ -184,20 +191,6 @@ module base_top_plate_with_raised_overhang() {
overhang_plate(); overhang_plate();
} }
module topplate() {
difference() {
base_topplate();
top_plate_holes();
}
}
module bottom_plate_with_overhang() {
difference() {
rotate([180, 0, 0]) base_top_plate_with_raised_overhang();
rotate([180, 0, 0]) top_plate_holes();
}
}
module top_plate_with_raised_overhang() { module top_plate_with_raised_overhang() {
difference() { difference() {
base_top_plate_with_raised_overhang(); base_top_plate_with_raised_overhang();
@ -218,7 +211,8 @@ module frame_mount_column() {
} }
module side_chopper() { module side_chopper() {
translate([(frame_x-frame_wall)/2, 0, 0]) cube([frame_wall, frame_y, frame_z], center=true); translate([(frame_x-frame_wall)/2+top_plate_overhang_amount, 0, 0])
cube([frame_wall+top_plate_overhang_amount*2, overhang_top_plate_y, frame_z], center=true);
} }
module frame_connection_holes() { module frame_connection_holes() {
@ -248,8 +242,8 @@ module base_frame() {
module frame() { module frame() {
difference() { difference() {
base_frame(); base_frame();
translate([0, 0, frame_z/2]) scale([1, 1, 2]) base_topplate(); translate([0, 0, frame_z/2]) scale([1, 1, 2]) base_panel();
translate([0, 0, -frame_z/2]) scale([1, 1, 2]) base_topplate(); translate([0, 0, -frame_z/2]) scale([1, 1, 2]) base_panel();
translate([plate_to_frame_point_x, plate_to_frame_point_y, 0]) frame_hex_bolt_hole(); translate([plate_to_frame_point_x, plate_to_frame_point_y, 0]) frame_hex_bolt_hole();
translate([-plate_to_frame_point_x, plate_to_frame_point_y, 0]) frame_hex_bolt_hole(); translate([-plate_to_frame_point_x, plate_to_frame_point_y, 0]) frame_hex_bolt_hole();
translate([plate_to_frame_point_x, -plate_to_frame_point_y, 0]) frame_hex_bolt_hole(); translate([plate_to_frame_point_x, -plate_to_frame_point_y, 0]) frame_hex_bolt_hole();

View File

@ -8,7 +8,7 @@ include <components.scad>
module dir_arc_w_30mm_plus_one_panel() { module dir_arc_w_30mm_plus_one_panel() {
difference() { difference() {
topplate(); panel();
dir_arc_w_30mm_plus_one(); dir_arc_w_30mm_plus_one();
} }
} }

View File

@ -9,8 +9,9 @@ include <components.scad>
module top_panel_inset_lever_and_dir_arc_w_30mm() { module top_panel_inset_lever_and_dir_arc_w_30mm() {
difference() { difference() {
union() { union() {
topplate(); panel();
translate([(-top_plate_x/2)+55, (top_plate_y/2)-75, -((top_plate_z/2)+(lever_mount_z/2))]) levermountbase(); translate([(-top_plate_x/2)+55, (top_plate_y/2)-75, -((top_plate_z/2)+(lever_mount_z/2))])
levermountbase();
} }
dir_arc_w_30mm(); dir_arc_w_30mm();
translate([(-top_plate_x/2)+55, (top_plate_y/2)-75, 0]) levermountholes(); translate([(-top_plate_x/2)+55, (top_plate_y/2)-75, 0]) levermountholes();

View File

@ -11,10 +11,8 @@ module lever_panel() {
difference() { difference() {
// base plate // base plate
union() { union() {
translate([0,-20,0]) translate([0,-20,0]) panel();
topplate(); translate([0, 0, -((top_plate_z/2)+(lever_mount_z/2))]) levermountbase();
translate([0, 0, -((top_plate_z/2)+(lever_mount_z/2))])
levermountbase();
} }
// holes to mount the lever // holes to mount the lever
levermountholes(); levermountholes();

View File

@ -8,7 +8,7 @@ include <components.scad>
module namco_noir_plus_one_panel() { module namco_noir_plus_one_panel() {
difference() { difference() {
topplate(); panel();
noir_plus_one(); noir_plus_one();
} }
} }

View File

@ -8,7 +8,7 @@ include <components.scad>
module namco_noir_plus_two_panel() { module namco_noir_plus_two_panel() {
difference() { difference() {
topplate(); panel();
noir_plus_one(); noir_plus_one();
translate([32.94-3.47-3.47, -78+7.37+4.49, 0]) noir_button_p1(); translate([32.94-3.47-3.47, -78+7.37+4.49, 0]) noir_button_p1();
} }

View File

@ -8,7 +8,7 @@ include <components.scad>
module top_panel_inset_sega_2p_plus_one_plus_control() { module top_panel_inset_sega_2p_plus_one_plus_control() {
difference() { difference() {
topplate(); panel();
sega_2p_plus_one(); sega_2p_plus_one();
rotate([0, 0, 180]) side_chopper(); rotate([0, 0, 180]) side_chopper();
translate([89, 30, 0]) button_24mm_hole(); translate([89, 30, 0]) button_24mm_hole();

View File

@ -8,7 +8,7 @@ include <components.scad>
module sega_2p_plus_one_panel() { module sega_2p_plus_one_panel() {
difference() { difference() {
topplate(); panel();
sega_2p_plus_one(); sega_2p_plus_one();
} }
} }