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:
37
src/frames/pieces/front-or-back-trapezoid.scad
Normal file
37
src/frames/pieces/front-or-back-trapezoid.scad
Normal file
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* 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 clean_front_or_back() {
|
||||
difference() {
|
||||
front_or_back_frame_piece();
|
||||
// chop off the lip we left on the basic piece
|
||||
translate([-frame_x/2+frame_wall/2, 0, 0]) cube([frame_wall, frame_y, frame_z], center=true);
|
||||
};
|
||||
}
|
||||
|
||||
module bottom_piece_wall() {
|
||||
// get a slice of the piece (before the bevel), to use it in extruding
|
||||
projection(cut=true) rotate([-90, 0, 0]) translate([0, frame_y/2-(frame_wall-frame_bevel_height)*3/2, 0])
|
||||
clean_front_or_back();
|
||||
}
|
||||
|
||||
module bottom_piece_extension() {
|
||||
// combine the original with a shrunken piece to "pull" the wall out
|
||||
hull() {
|
||||
linear_extrude(height=frame_extension_y) scale([1, 0.5, 1]) bottom_piece_wall();
|
||||
linear_extrude(height=(frame_wall-frame_bevel_height)) bottom_piece_wall();
|
||||
}
|
||||
}
|
||||
|
||||
module front_or_back_trapezoid_frame_piece() {
|
||||
clean_front_or_back();
|
||||
translate([0, -frame_y/2+frame_wall, 0]) rotate([90, 0, 0]) bottom_piece_extension();
|
||||
}
|
||||
|
||||
front_or_back_trapezoid_frame_piece();
|
||||
Reference in New Issue
Block a user