remove the box frame pieces, all pieces are of the extended lineage
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
This commit is contained in:
parent
439333c154
commit
73b55861b6
@ -5,9 +5,9 @@
|
|||||||
|
|
||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <frames/pieces/extended/side-trapezoid.scad>
|
use <frames/pieces/side-trapezoid.scad>
|
||||||
use <frames/pieces/extended/front-or-back-clean-for-extended-side-aux-and-neutrik.scad>
|
use <frames/pieces/front-or-back-aux-and-neutrik.scad>
|
||||||
use <frames/pieces/extended/front-or-back-clean-for-extended-side-windowed-horiz-stripes.scad>
|
use <frames/pieces/front-or-back-windowed-horiz-stripes.scad>
|
||||||
use <panels/inset/lever-and-dir_arc-plus-w-30mm-panel.scad>
|
use <panels/inset/lever-and-dir_arc-plus-w-30mm-panel.scad>
|
||||||
use <panels/inset/sega-2p-nine-plus-control-panel-with-mount.scad>
|
use <panels/inset/sega-2p-nine-plus-control-panel-with-mount.scad>
|
||||||
use <misc/decorative-plate-24mm-button.scad>
|
use <misc/decorative-plate-24mm-button.scad>
|
||||||
@ -24,10 +24,10 @@ color(top_panel_color) translate([-panel_x/2, 0, frame_z/2-panel_z+0.01]) lever_
|
|||||||
color(top_panel_color) translate([panel_x/2, 0, frame_z/2-panel_z+0.01]) sega_2p_nine_plus_control_panel_with_mount();
|
color(top_panel_color) translate([panel_x/2, 0, frame_z/2-panel_z+0.01]) sega_2p_nine_plus_control_panel_with_mount();
|
||||||
color(frame_side_color) translate([-frame_x/2+4, 0, -2.5]) side_trapezoid_frame_piece();
|
color(frame_side_color) translate([-frame_x/2+4, 0, -2.5]) side_trapezoid_frame_piece();
|
||||||
color(frame_side_color) translate([frame_x/2-4, 0, -2.5]) mirror([1, 0, 0]) side_trapezoid_frame_piece();
|
color(frame_side_color) translate([frame_x/2-4, 0, -2.5]) mirror([1, 0, 0]) side_trapezoid_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([-frame_x/2+4, 0, -2.5]) horiz_striped_windowed_front_or_back_box_frame_piece_for_extended_side();
|
color(frame_top_bottom_color) translate([-frame_x/2+4, 0, -2.5]) horiz_striped_windowed_front_or_back_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([frame_x/2-4, 0, -2.5]) horiz_striped_windowed_front_or_back_box_frame_piece_for_extended_side();
|
color(frame_top_bottom_color) translate([frame_x/2-4, 0, -2.5]) horiz_striped_windowed_front_or_back_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([-frame_x/2+4, 0, -2.5]) rotate([180, 0, 0]) front_or_back_aux_and_neutrik_box_frame_piece_for_extended_side();
|
color(frame_top_bottom_color) translate([-frame_x/2+4, 0, -2.5]) rotate([180, 0, 0]) front_or_back_aux_and_neutrik_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([frame_x/2-4, 0, -2.5]) rotate([180, 180, 0]) front_or_back_aux_and_neutrik_box_frame_piece_for_extended_side();
|
color(frame_top_bottom_color) translate([frame_x/2-4, 0, -2.5]) rotate([180, 180, 0]) front_or_back_aux_and_neutrik_frame_piece();
|
||||||
color(bottom_panel_color) translate([-panel_x/2, 0, -5-frame_z/2+5]) panel();
|
color(bottom_panel_color) translate([-panel_x/2, 0, -5-frame_z/2+5]) panel();
|
||||||
color(bottom_panel_color) translate([panel_x/2, 0, -5-frame_z/2+5]) panel();
|
color(bottom_panel_color) translate([panel_x/2, 0, -5-frame_z/2+5]) panel();
|
||||||
|
|
||||||
|
@ -5,9 +5,9 @@
|
|||||||
|
|
||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <frames/pieces/extended/front-or-back-trapezoid.scad>
|
use <frames/pieces/front-or-back-trapezoid.scad>
|
||||||
use <frames/pieces/extended/side-trapezoid-extended-to-front.scad>
|
use <frames/pieces/side-trapezoid-extended-to-front-trapezoid.scad>
|
||||||
use <frames/pieces/extended/front-or-back-clean-for-extended-side-aux-and-neutrik.scad>
|
use <frames/pieces/front-or-back-aux-and-neutrik.scad>
|
||||||
use <panels/inset/lever-and-dir_arc-plus-w-30mm-panel.scad>
|
use <panels/inset/lever-and-dir_arc-plus-w-30mm-panel.scad>
|
||||||
use <panels/inset/sega-2p-nine-plus-control-panel-with-mount.scad>
|
use <panels/inset/sega-2p-nine-plus-control-panel-with-mount.scad>
|
||||||
use <misc/decorative-plate-24mm-button.scad>
|
use <misc/decorative-plate-24mm-button.scad>
|
||||||
@ -26,8 +26,8 @@ color(frame_side_color) translate([-frame_x/2+4, 0, -2.5]) side_trapezoid_extend
|
|||||||
color(frame_side_color) translate([frame_x/2-4, 0, -2.5]) mirror([1, 0, 0]) side_trapezoid_extended_to_front_frame_piece();
|
color(frame_side_color) translate([frame_x/2-4, 0, -2.5]) mirror([1, 0, 0]) side_trapezoid_extended_to_front_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([-frame_x/2+4, 0, -2.5]) front_or_back_trapezoid_frame_piece();
|
color(frame_top_bottom_color) translate([-frame_x/2+4, 0, -2.5]) front_or_back_trapezoid_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([frame_x/2-4, 0, -2.5]) front_or_back_trapezoid_frame_piece();
|
color(frame_top_bottom_color) translate([frame_x/2-4, 0, -2.5]) front_or_back_trapezoid_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([-frame_x/2+4, 0, -2.5]) rotate([180, 0, 0]) front_or_back_aux_and_neutrik_box_frame_piece_for_extended_side();
|
color(frame_top_bottom_color) translate([-frame_x/2+4, 0, -2.5]) rotate([180, 0, 0]) front_or_back_aux_and_neutrik_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([frame_x/2-4, 0, -2.5]) rotate([180, 180, 0]) front_or_back_aux_and_neutrik_box_frame_piece_for_extended_side();
|
color(frame_top_bottom_color) translate([frame_x/2-4, 0, -2.5]) rotate([180, 180, 0]) front_or_back_aux_and_neutrik_frame_piece();
|
||||||
color(bottom_panel_color) translate([-panel_x/2, 0, -5-frame_z/2+5]) panel();
|
color(bottom_panel_color) translate([-panel_x/2, 0, -5-frame_z/2+5]) panel();
|
||||||
color(bottom_panel_color) translate([panel_x/2, 0, -5-frame_z/2+5]) panel();
|
color(bottom_panel_color) translate([panel_x/2, 0, -5-frame_z/2+5]) panel();
|
||||||
|
|
||||||
|
@ -5,9 +5,9 @@
|
|||||||
|
|
||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <frames/pieces/extended/front-or-back-trapezoid.scad>
|
use <frames/pieces/front-or-back-trapezoid.scad>
|
||||||
use <frames/pieces/extended/side-trapezoid-extended-to-front.scad>
|
use <frames/pieces/side-trapezoid-extended-to-front-trapezoid.scad>
|
||||||
use <frames/pieces/extended/front-or-back-clean-for-extended-side-aux-and-neutrik.scad>
|
use <frames/pieces/front-or-back-aux-and-neutrik.scad>
|
||||||
use <panels/inset/lever-and-dir_arc-plus-w-30mm-panel.scad>
|
use <panels/inset/lever-and-dir_arc-plus-w-30mm-panel.scad>
|
||||||
use <panels/inset/lever-and-sega-2p-6-button-panel-with-aux-with-mount.scad>
|
use <panels/inset/lever-and-sega-2p-6-button-panel-with-aux-with-mount.scad>
|
||||||
use <misc/dustwasher-jlf.scad>
|
use <misc/dustwasher-jlf.scad>
|
||||||
@ -22,7 +22,7 @@ color(top_panel_color) translate([0, 0, frame_z/2-panel_z+0.01]) lever_and_sega_
|
|||||||
color(frame_side_color) translate([0, 0, -2.5]) side_trapezoid_extended_to_front_frame_piece();
|
color(frame_side_color) translate([0, 0, -2.5]) side_trapezoid_extended_to_front_frame_piece();
|
||||||
color(frame_side_color) translate([0, 0, -2.5]) mirror([1, 0, 0]) side_trapezoid_extended_to_front_frame_piece();
|
color(frame_side_color) translate([0, 0, -2.5]) mirror([1, 0, 0]) side_trapezoid_extended_to_front_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([0, 0, -2.5]) front_or_back_trapezoid_frame_piece();
|
color(frame_top_bottom_color) translate([0, 0, -2.5]) front_or_back_trapezoid_frame_piece();
|
||||||
color(frame_top_bottom_color) translate([0, 0, -2.5]) rotate([180, 0, 0]) front_or_back_aux_and_neutrik_box_frame_piece_for_extended_side();
|
color(frame_top_bottom_color) translate([0, 0, -2.5]) rotate([180, 0, 0]) front_or_back_aux_and_neutrik_frame_piece();
|
||||||
color(bottom_panel_color) translate([0, 0, -5-frame_z/2+5]) panel();
|
color(bottom_panel_color) translate([0, 0, -5-frame_z/2+5]) panel();
|
||||||
|
|
||||||
color(top_deco_color) translate([-65, 5, 3+frame_z/2-panel_z]) jlf_dustwasher();
|
color(top_deco_color) translate([-65, 5, 3+frame_z/2-panel_z]) jlf_dustwasher();
|
||||||
|
@ -5,9 +5,9 @@
|
|||||||
|
|
||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <frames/pieces/extended/side.scad>
|
use <frames/pieces/side.scad>
|
||||||
use <frames/pieces/extended/front-or-back.scad>
|
use <frames/pieces/front-or-back.scad>
|
||||||
use <frames/pieces/extended/front-or-back-aux-and-neutrik.scad>
|
use <frames/pieces/front-or-back-aux-and-neutrik.scad>
|
||||||
use <panels/inset/lever-and-dir_arc-plus-w-30mm-panel.scad>
|
use <panels/inset/lever-and-dir_arc-plus-w-30mm-panel.scad>
|
||||||
use <panels/inset/sega-2p-nine-plus-control-panel-with-mount.scad>
|
use <panels/inset/sega-2p-nine-plus-control-panel-with-mount.scad>
|
||||||
use <misc/decorative-plate-24mm-button.scad>
|
use <misc/decorative-plate-24mm-button.scad>
|
||||||
|
@ -6,9 +6,9 @@
|
|||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <frames/pieces/interconnect.scad>
|
use <frames/pieces/interconnect.scad>
|
||||||
use <frames/pieces/extended/side.scad>
|
use <frames/pieces/side.scad>
|
||||||
use <frames/pieces/extended/front-or-back.scad>
|
use <frames/pieces/front-or-back.scad>
|
||||||
use <frames/pieces/extended/front-or-back-aux-and-neutrik.scad>
|
use <frames/pieces/front-or-back-aux-and-neutrik.scad>
|
||||||
use <panels/overhang/left-lever-and-dir_arc-plus-w-30mm-panel.scad>
|
use <panels/overhang/left-lever-and-dir_arc-plus-w-30mm-panel.scad>
|
||||||
use <panels/overhang/right-sega-2p-nine-plus-control-panel-with-mount.scad>
|
use <panels/overhang/right-sega-2p-nine-plus-control-panel-with-mount.scad>
|
||||||
use <panels/overhang/left-or-right-panel.scad>
|
use <panels/overhang/left-or-right-panel.scad>
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <frames/pieces/extended/front-or-back-trapezoid.scad>
|
use <frames/pieces/front-or-back-trapezoid.scad>
|
||||||
|
|
||||||
module back_piece_extension() {
|
module back_piece_extension() {
|
||||||
// combine the original wall with a copy to "pull" the wall out
|
// combine the original wall with a copy to "pull" the wall out
|
||||||
|
@ -7,8 +7,8 @@
|
|||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <frames/complete/left-frame.scad>
|
use <frames/complete/left-frame.scad>
|
||||||
use <frames/pieces/extended/side.scad>
|
use <frames/pieces/side.scad>
|
||||||
use <frames/pieces/extended/front-or-back-trapezoid.scad>
|
use <frames/pieces/front-or-back-trapezoid.scad>
|
||||||
|
|
||||||
module side_frame_piece_wall() {
|
module side_frame_piece_wall() {
|
||||||
// this doesn't use the side_frame_piece because of the 45 degree angle geometry
|
// this doesn't use the side_frame_piece because of the 45 degree angle geometry
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <frames/pieces/extended/front-or-back.scad>
|
use <frames/pieces/front-or-back.scad>
|
||||||
|
|
||||||
module interconnect_frame_half_piece() {
|
module interconnect_frame_half_piece() {
|
||||||
translate([0, frame_y/2-frame_wall, 0]) difference() {
|
translate([0, frame_y/2-frame_wall, 0]) difference() {
|
||||||
|
@ -1,28 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <front-or-back.scad>
|
|
||||||
|
|
||||||
module front_or_back_aux_and_neutrik_box_frame_piece() {
|
|
||||||
difference() {
|
|
||||||
front_or_back_box_frame_piece();
|
|
||||||
|
|
||||||
// aux button holes
|
|
||||||
translate([-35.25, -101.5, 0]) rotate([90, 0, 0]) aux_control_three_button_cluster();
|
|
||||||
translate([-35.25, -(frame_y/2)+neutrik_panel_thickness+4, 0]) frame_cutout();
|
|
||||||
translate([-72.25, -(frame_y/2)+neutrik_panel_thickness+4, 0]) frame_cutout();
|
|
||||||
translate([2, -(frame_y/2)+neutrik_panel_thickness+4, 0]) frame_cutout();
|
|
||||||
|
|
||||||
// neutrix button hole
|
|
||||||
translate([frame_center_to_neutrik, -(frame_y/2)+neutrik_panel_thickness, 0])
|
|
||||||
rotate([270, 0, 0]) neutrik_d_mount();
|
|
||||||
translate([frame_center_to_neutrik, -(frame_y/2)+neutrik_panel_thickness+4, 0])
|
|
||||||
frame_cutout();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
front_or_back_aux_and_neutrik_box_frame_piece();
|
|
@ -1,39 +0,0 @@
|
|||||||
/* The inner top/bottom wall of the frame, for being displayed through a windowed part.
|
|
||||||
*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <front-or-back.scad>
|
|
||||||
|
|
||||||
module mount_column_cutout() {
|
|
||||||
intersection() {
|
|
||||||
frame_mount_column();
|
|
||||||
cube([frame_mount_column_width*3/2, frame_mount_column_width*3/2, inner_frame_z*5/8], center=true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module front_or_back_inner_wall_frame_base_piece() {
|
|
||||||
difference() {
|
|
||||||
// Z is scaled so that some part of the original part inner wall is retained
|
|
||||||
scale([1, 1, inner_frame_z_decorative_scale]) front_or_back_box_frame_piece();
|
|
||||||
// minus the outer wall
|
|
||||||
translate([0, -(frame_y-frame_wall)/2, 0]) cube([frame_x, frame_wall, frame_z], center=true);
|
|
||||||
// minus half of the mounting posts (the other half provided by the outer wall)
|
|
||||||
translate([-panel_to_frame_point_x, -(panel_to_frame_point_y), 0]) rotate([0, 0, 180])
|
|
||||||
mount_column_cutout();
|
|
||||||
translate([panel_to_frame_point_x, -(panel_to_frame_point_y), 0]) rotate([0, 0, 270])
|
|
||||||
mount_column_cutout();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module front_or_back_inner_wall_frame_piece() {
|
|
||||||
front_or_back_inner_wall_frame_base_piece();
|
|
||||||
// extend the outward face 2mm in order to have it cut deeper into the frame outer wall
|
|
||||||
translate([0, -(frame_y-frame_wall)/2, 0]) rotate([-90, 0, 0]) linear_extrude(height=2) projection()
|
|
||||||
translate([0, 0, 50]) rotate([90, 0, 0]) front_or_back_inner_wall_frame_base_piece();
|
|
||||||
}
|
|
||||||
|
|
||||||
front_or_back_inner_wall_frame_piece();
|
|
@ -1,32 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <front-or-back.scad>
|
|
||||||
use <front-or-back-inner-wall.scad>
|
|
||||||
|
|
||||||
module backslashes() {
|
|
||||||
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() {
|
|
||||||
difference() {
|
|
||||||
front_or_back_box_frame_piece();
|
|
||||||
// subtract slashes from the frame wall
|
|
||||||
backslashes();
|
|
||||||
// subtract the inner wall area that will be provided by the other piece
|
|
||||||
front_or_back_inner_wall_frame_piece();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
backslashes_windowed_front_or_back_box_frame_piece();
|
|
@ -1,22 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <front-or-back.scad>
|
|
||||||
use <front-or-back-inner-wall.scad>
|
|
||||||
use <front-or-back-windowed-backslashes.scad>
|
|
||||||
|
|
||||||
module forwardslashes_windowed_front_or_back_box_frame_piece() {
|
|
||||||
difference() {
|
|
||||||
front_or_back_box_frame_piece();
|
|
||||||
// subtract slashes from the frame wall
|
|
||||||
mirror([0, 0, 1]) backslashes();
|
|
||||||
// subtract the inner wall area that will be provided by the other piece
|
|
||||||
front_or_back_inner_wall_frame_piece();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
forwardslashes_windowed_front_or_back_box_frame_piece();
|
|
@ -1,29 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <front-or-back.scad>
|
|
||||||
use <front-or-back-inner-wall.scad>
|
|
||||||
|
|
||||||
module front_stripe() {
|
|
||||||
cube([frame_x-(frame_mount_column_width*1.75)*2, frame_wall, 5], center=true);
|
|
||||||
}
|
|
||||||
|
|
||||||
module horiz_striped_windowed_front_or_back_box_frame_piece() {
|
|
||||||
difference() {
|
|
||||||
front_or_back_box_frame_piece();
|
|
||||||
// subtract frame wall windows
|
|
||||||
translate([0, -(frame_y-frame_wall)/2, 18]) front_stripe();
|
|
||||||
translate([0, -(frame_y-frame_wall)/2, 9]) front_stripe();
|
|
||||||
translate([0, -(frame_y-frame_wall)/2, 0]) front_stripe();
|
|
||||||
translate([0, -(frame_y-frame_wall)/2, -9]) front_stripe();
|
|
||||||
translate([0, -(frame_y-frame_wall)/2, -18]) front_stripe();
|
|
||||||
// subtract the inner wall area that will be provided by the other piece
|
|
||||||
front_or_back_inner_wall_frame_piece();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
horiz_striped_windowed_front_or_back_box_frame_piece();
|
|
@ -1,27 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <front-or-back.scad>
|
|
||||||
use <front-or-back-inner-wall.scad>
|
|
||||||
|
|
||||||
module front_or_back_window() {
|
|
||||||
translate([0, -frame_y/2, 0])
|
|
||||||
cube([frame_x-frame_mount_column_width*3.5, (frame_wall+panel_support_width)*2,
|
|
||||||
frame_z-panel_z*3], center=true);
|
|
||||||
}
|
|
||||||
|
|
||||||
module windowed_front_or_back_box_frame_piece() {
|
|
||||||
difference() {
|
|
||||||
front_or_back_box_frame_piece();
|
|
||||||
// subtract frame wall window
|
|
||||||
front_or_back_window();
|
|
||||||
// subtract the inner wall area that will be provided by the other piece
|
|
||||||
front_or_back_inner_wall_frame_piece();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
windowed_front_or_back_box_frame_piece();
|
|
@ -1,30 +0,0 @@
|
|||||||
/*
|
|
||||||
* 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>
|
|
||||||
|
|
||||||
module front_or_back_box_frame_piece() {
|
|
||||||
piece_width = panel_support_width+frame_wall+frame_mount_column_width;
|
|
||||||
intersection() {
|
|
||||||
left_frame();
|
|
||||||
difference() {
|
|
||||||
// include the whole bottom wall (including mount columns)
|
|
||||||
translate([0, -(frame_y/2)+(piece_width/2), 0]) cube([frame_x, piece_width, frame_z], center=true);
|
|
||||||
// ...minus the frame wall and lip on the left
|
|
||||||
translate([-frame_x/2+frame_wall/2, 0, 0])
|
|
||||||
cube([frame_wall, frame_y-frame_wall*2, frame_z], center=true);
|
|
||||||
linear_extrude(height=frame_z, center=true) polygon([
|
|
||||||
[-frame_x/2, -frame_y/2], [-frame_x/2+frame_wall, -frame_y/2+frame_wall],
|
|
||||||
[-frame_x/2, -frame_y/2+frame_wall]
|
|
||||||
]);
|
|
||||||
// ...minus a slot for the combining piece to go into
|
|
||||||
cube([frame_x, frame_y-(panel_support_width+frame_wall)*2, inner_frame_z/3], center=true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
front_or_back_box_frame_piece();
|
|
@ -1,43 +0,0 @@
|
|||||||
/* The inner side wall of the frame, for being displayed through a windowed part.
|
|
||||||
*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <side.scad>
|
|
||||||
|
|
||||||
module mount_column_cutout() {
|
|
||||||
intersection() {
|
|
||||||
frame_mount_column();
|
|
||||||
cube([frame_mount_column_width*3/2, frame_mount_column_width*3/2, inner_frame_z*21/24], center=true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module side_inner_wall_frame_base_piece() {
|
|
||||||
difference() {
|
|
||||||
// Z is scaled so that some part of the original part inner wall is retained
|
|
||||||
scale([1, 1, inner_frame_z_decorative_scale]) side_box_frame_piece();
|
|
||||||
// minus the outer wall
|
|
||||||
translate([-(frame_x-frame_wall)/2, 0, 0]) cube([frame_wall, frame_y, frame_z], center=true);
|
|
||||||
// minus half of the mounting posts (the other half provided by the outer wall)
|
|
||||||
translate([-panel_to_frame_point_x, panel_to_frame_point_y, inner_frame_z/2]) rotate([0, 0, 90])
|
|
||||||
mount_column_cutout();
|
|
||||||
translate([-panel_to_frame_point_x, -(panel_to_frame_point_y), -inner_frame_z/2]) rotate([0, 0, 180])
|
|
||||||
mount_column_cutout();
|
|
||||||
translate([-panel_to_frame_point_x, panel_to_frame_point_y, -inner_frame_z/2]) rotate([0, 0, 90])
|
|
||||||
mount_column_cutout();
|
|
||||||
translate([-panel_to_frame_point_x, -(panel_to_frame_point_y), inner_frame_z/2]) rotate([0, 0, 180])
|
|
||||||
mount_column_cutout();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module side_inner_wall_frame_piece() {
|
|
||||||
side_inner_wall_frame_base_piece();
|
|
||||||
// extend the outward face 2mm in order to have it cut deeper into the frame outer wall
|
|
||||||
translate([-(frame_x-frame_wall)/2, 0, 0]) rotate([0, 90, 0]) linear_extrude(height=2) projection()
|
|
||||||
translate([0, 0, 50]) rotate([0, -90, 0]) side_inner_wall_frame_base_piece();
|
|
||||||
}
|
|
||||||
|
|
||||||
side_inner_wall_frame_piece();
|
|
@ -1,30 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <side.scad>
|
|
||||||
use <side-inner-wall.scad>
|
|
||||||
|
|
||||||
module backslashes() {
|
|
||||||
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() {
|
|
||||||
difference() {
|
|
||||||
side_box_frame_piece();
|
|
||||||
// subtract slashes from the frame wall
|
|
||||||
backslashes();
|
|
||||||
// subtract the inner wall area that will be provided by the other piece
|
|
||||||
side_inner_wall_frame_piece();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
backslashes_windowed_side_box_frame_piece();
|
|
@ -1,22 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <side.scad>
|
|
||||||
use <side-inner-wall.scad>
|
|
||||||
use <side-windowed-backslashes.scad>
|
|
||||||
|
|
||||||
module forwardslashes_windowed_side_box_frame_piece() {
|
|
||||||
difference() {
|
|
||||||
side_box_frame_piece();
|
|
||||||
// subtract slashes from the frame wall
|
|
||||||
mirror([0, 0, 1]) backslashes();
|
|
||||||
// subtract the inner wall area that will be provided by the other piece
|
|
||||||
side_inner_wall_frame_piece();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
forwardslashes_windowed_side_box_frame_piece();
|
|
@ -1,29 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <side.scad>
|
|
||||||
use <side-inner-wall.scad>
|
|
||||||
|
|
||||||
module side_stripe() {
|
|
||||||
cube([frame_wall, frame_y-(frame_mount_column_width*1.75)*2, 5], center=true);
|
|
||||||
}
|
|
||||||
|
|
||||||
module horiz_striped_windowed_side_box_frame_piece() {
|
|
||||||
difference() {
|
|
||||||
side_box_frame_piece();
|
|
||||||
// subtract frame wall windows
|
|
||||||
translate([-(frame_x-frame_wall)/2, 0, 18]) side_stripe();
|
|
||||||
translate([-(frame_x-frame_wall)/2, 0, 9]) side_stripe();
|
|
||||||
translate([-(frame_x-frame_wall)/2, 0, 0]) side_stripe();
|
|
||||||
translate([-(frame_x-frame_wall)/2, 0, -9]) side_stripe();
|
|
||||||
translate([-(frame_x-frame_wall)/2, 0, -18]) side_stripe();
|
|
||||||
// subtract the inner wall area that will be provided by the other piece
|
|
||||||
side_inner_wall_frame_piece();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
horiz_striped_windowed_side_box_frame_piece();
|
|
@ -1,23 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <side.scad>
|
|
||||||
use <side-inner-wall.scad>
|
|
||||||
|
|
||||||
module windowed_side_box_frame_piece() {
|
|
||||||
difference() {
|
|
||||||
side_box_frame_piece();
|
|
||||||
// subtract frame wall window
|
|
||||||
translate([-frame_x/2, 0, 0])
|
|
||||||
cube([(frame_wall+panel_support_width)*2, frame_y-frame_mount_column_width*3.5,
|
|
||||||
frame_z-panel_z*3], center=true);
|
|
||||||
// subtract the inner wall area that will be provided by the other piece
|
|
||||||
side_inner_wall_frame_piece();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
windowed_side_box_frame_piece();
|
|
@ -1,23 +0,0 @@
|
|||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
|
||||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
*/
|
|
||||||
|
|
||||||
include <parameters.scad>
|
|
||||||
include <components.scad>
|
|
||||||
use <front-or-back.scad>
|
|
||||||
|
|
||||||
module side_box_frame_piece() {
|
|
||||||
piece_width = panel_support_width+frame_wall+frame_mount_column_width;
|
|
||||||
difference() {
|
|
||||||
// side piece is left/right agnostic
|
|
||||||
frame();
|
|
||||||
// minus the top and bottom
|
|
||||||
front_or_back_box_frame_piece();
|
|
||||||
rotate([180, 0, 0]) front_or_back_box_frame_piece();
|
|
||||||
// and just chop out the rest of the frame
|
|
||||||
translate([piece_width, 0, 0]) cube([frame_x, frame_y+1, frame_z+1], center=true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
side_box_frame_piece();
|
|
@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <extended/side.scad>
|
use <side.scad>
|
||||||
|
|
||||||
module interconnect_frame_half_piece() {
|
module interconnect_frame_half_piece() {
|
||||||
translate([frame_x/2-frame_wall, 0, 0]) difference() {
|
translate([frame_x/2-frame_wall, 0, 0]) difference() {
|
||||||
|
Loading…
Reference in New Issue
Block a user