add box pieces for a vent kind of look
no particular reference for this, just took some "slashes" and cut them out of the walls with the expectation of using the inner wall in a different color. designed, as much as I'd call it a design, for the Eva stick, but this is mostly just me trying stuff at the moment Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
This commit is contained in:
parent
db887b668f
commit
244ace1b4a
38
src/frames/pieces/box/side-windowed-backslashes.scad
Normal file
38
src/frames/pieces/box/side-windowed-backslashes.scad
Normal file
@ -0,0 +1,38 @@
|
||||
/*
|
||||
* 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 backslash() {
|
||||
polyhedron([[-frame_x/2, -5, -(frame_z-panel_z*3)/2], [-frame_x/2, -20, -(frame_z-panel_z*3)/2],
|
||||
[-frame_x/2+frame_wall, -20, -(frame_z-panel_z*3)/2], [-frame_x/2+frame_wall, -5, -(frame_z-panel_z*3)/2],
|
||||
[-frame_x/2, 20, (frame_z-panel_z*3)/2], [-frame_x/2, 5, (frame_z-panel_z*3)/2],
|
||||
[-frame_x/2+frame_wall, 5, (frame_z-panel_z*3)/2], [-frame_x/2+frame_wall, 20, (frame_z-panel_z*3)/2]],
|
||||
[[0, 1, 2, 3], [4, 5, 1, 0], [7, 6, 5, 4], [5, 6, 2, 1], [6, 7, 3, 2], [7, 4, 0, 3]]
|
||||
);
|
||||
}
|
||||
|
||||
module backslashes() {
|
||||
translate([0, -40, 0]) backslash();
|
||||
translate([0, -20, 0]) backslash();
|
||||
backslash();
|
||||
translate([0, 20, 0]) backslash();
|
||||
translate([0, 40, 0]) backslash();
|
||||
}
|
||||
|
||||
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();
|
22
src/frames/pieces/box/side-windowed-forwardslashes.scad
Normal file
22
src/frames/pieces/box/side-windowed-forwardslashes.scad
Normal file
@ -0,0 +1,22 @@
|
||||
/*
|
||||
* 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();
|
23
src/frames/pieces/box/side-windowed.scad
Normal file
23
src/frames/pieces/box/side-windowed.scad
Normal file
@ -0,0 +1,23 @@
|
||||
/*
|
||||
* 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();
|
@ -0,0 +1,40 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*/
|
||||
|
||||
include <parameters.scad>
|
||||
include <components.scad>
|
||||
use <top-or-bottom.scad>
|
||||
use <top-or-bottom-inner-wall.scad>
|
||||
|
||||
module backslash() {
|
||||
polyhedron([[5, -frame_y/2, -(frame_z-panel_z*3)/2], [20, -frame_y/2, -(frame_z-panel_z*3)/2],
|
||||
[20, -frame_y/2+frame_wall, -(frame_z-panel_z*3)/2], [5, -frame_y/2+frame_wall, -(frame_z-panel_z*3)/2],
|
||||
[-20, -frame_y/2, (frame_z-panel_z*3)/2], [-5, -frame_y/2, (frame_z-panel_z*3)/2],
|
||||
[-5, -frame_y/2+frame_wall, (frame_z-panel_z*3)/2], [-20, -frame_y/2+frame_wall, (frame_z-panel_z*3)/2]],
|
||||
[[0, 1, 2, 3], [4, 5, 1, 0], [7, 6, 5, 4], [5, 6, 2, 1], [6, 7, 3, 2], [7, 4, 0, 3]]
|
||||
);
|
||||
}
|
||||
|
||||
module backslashes() {
|
||||
translate([-60, 0, 0]) backslash();
|
||||
translate([-40, 0, 0]) backslash();
|
||||
translate([-20, 0, 0]) backslash();
|
||||
backslash();
|
||||
translate([20, 0, 0]) backslash();
|
||||
translate([40, 0, 0]) backslash();
|
||||
translate([60, 0, 0]) backslash();
|
||||
}
|
||||
|
||||
module backslashes_windowed_top_or_bottom_box_frame_piece() {
|
||||
difference() {
|
||||
top_or_bottom_box_frame_piece();
|
||||
// subtract slashes from the frame wall
|
||||
backslashes();
|
||||
// subtract the inner wall area that will be provided by the other piece
|
||||
top_or_bottom_inner_wall_frame_piece();
|
||||
}
|
||||
}
|
||||
|
||||
backslashes_windowed_top_or_bottom_box_frame_piece();
|
@ -0,0 +1,22 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*/
|
||||
|
||||
include <parameters.scad>
|
||||
include <components.scad>
|
||||
use <top-or-bottom.scad>
|
||||
use <top-or-bottom-inner-wall.scad>
|
||||
use <top-or-bottom-windowed-backslashes.scad>
|
||||
|
||||
module forwardslashes_windowed_top_or_bottom_box_frame_piece() {
|
||||
difference() {
|
||||
top_or_bottom_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
|
||||
top_or_bottom_inner_wall_frame_piece();
|
||||
}
|
||||
}
|
||||
|
||||
forwardslashes_windowed_top_or_bottom_box_frame_piece();
|
Loading…
Reference in New Issue
Block a user