Compare commits

...

3 Commits

Author SHA1 Message Date
fa05469e19
add a slightly extended side piece
adds a bit of length to the build but without the longer polygon
geometry. the name of this is terrible, I think I might get rid of the
angled corner pieces in a refactoring

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-12-04 08:04:16 -06:00
9375a3a1b7
alignment tweaks for the rectangles plate to fit the famicom style
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-12-02 08:22:29 -06:00
1557021be4
squeeze in one more slash in the slashes
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-12-02 08:19:54 -06:00
4 changed files with 61 additions and 20 deletions

View File

@ -9,13 +9,14 @@ use <front-or-back.scad>
use <front-or-back-inner-wall.scad>
module backslashes() {
translate([-60, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([-40, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([-20, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([0, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([20, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([40, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([60, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([-70, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([-50, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([-30, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([-10, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([10, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([30, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([50, -(frame_y-frame_wall)/2, 0]) slash_cutout();
translate([70, -(frame_y-frame_wall)/2, 0]) slash_cutout();
}
module backslashes_windowed_front_or_back_box_frame_piece() {

View File

@ -9,11 +9,12 @@ use <side.scad>
use <side-inner-wall.scad>
module backslashes() {
translate([-(frame_x-frame_wall)/2, -40, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, -20, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, 0, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, 20, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, 40, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, -50, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, -30, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, -10, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, 10, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, 30, 0]) rotate([0, 0, -90]) slash_cutout();
translate([-(frame_x-frame_wall)/2, 50, 0]) rotate([0, 0, -90]) slash_cutout();
}
module backslashes_windowed_side_box_frame_piece() {

View File

@ -0,0 +1,39 @@
/*
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
* SPDX-License-Identifier: GPL-3.0-or-later
*/
include <parameters.scad>
include <components.scad>
use <frames/complete/left-frame.scad>
use <frames/pieces/box/side.scad>
use <front-or-back-clean-for-extended-side.scad>
module side_frame_piece_wall() {
// get a slice of the piece, to use it in extruding
// this doesn't use the side_frame_piece because of the 45 degree angle geometry
// not creating a clean thing to cut, so we just take the whole wall and use that
projection(cut=true) rotate([0, 90, 0]) translate([frame_x/2-frame_wall-(frame_bevel_height/2), 0, 0])
left_frame();
}
module side_frame_piece_extension() {
// combine the original with a shrunken piece to "pull" the wall out
hull() {
linear_extrude(height=frame_bevel_height*4)
square([frame_z-(frame_bevel_height*2), frame_y-(frame_bevel_height*2)], center=true);
linear_extrude(height=frame_bevel_height*3) side_frame_piece_wall();
linear_extrude(height=frame_bevel_height) side_frame_piece_wall();
}
}
module extended_left_or_right_frame_piece() {
difference() {
side_box_frame_piece();
// chop off the old edge which is getting replaced with the extension
translate([-frame_x/2+frame_bevel_height/2, 0, 0]) cube([frame_bevel_height, frame_y, frame_z], center=true);
}
translate([-frame_x/2+frame_bevel_height*2, 0, 0]) rotate([0, -90, 0]) side_frame_piece_extension();
}
extended_left_or_right_frame_piece();

View File

@ -10,14 +10,14 @@ include <components.scad>
module dir_arc_plus_w_30mm_and_sega_2p_nine_decorative_plate_of_plates() {
difference() {
// layout offset + 30 = width for layout plus button width + 12+3 = space around button
left_plate_x = dir_arc_30mm_column_3_offset + 30 + 12;
// layout offset + 30 = width for layout plus button width + 12+3 = space around button
left_plate_y = dir_arc_w_30mm_row_4_offset + 30 + 12;
left_plate_center_x = (left_plate_x + sega_2p_column_1_left_panel_edge_offset - 15)/2;
// layout offset + 30 = width for layout plus button width + 12+3 = space around button
right_plate_x = sega_2p_column_4_offset + 30 + 12;
right_plate_center_x = (right_plate_x + sega_2p_column_1_left_panel_edge_offset - 15)/2;
// layout offset + 30 = width for layout plus button width + 19+3 = space around button
left_plate_x = dir_arc_30mm_column_3_offset + 30 + 19;
// layout offset + 30 = width for layout plus button width + 19+3 = space around button
left_plate_y = dir_arc_w_30mm_row_4_offset + 30 + 19;
left_plate_center_x = (left_plate_x + sega_2p_column_1_left_panel_edge_offset - 22)/2;
// layout offset + 30 = width for layout plus button width + 19+3 = space around button
right_plate_x = sega_2p_column_4_offset + 30 + 19;
right_plate_center_x = (right_plate_x + sega_2p_column_1_left_panel_edge_offset - 22)/2;
union() {
// y values are based on the other half below