simplify the "longish" extended side
also do the same thing for a "longish" front/back, since I want to play around with windowed structural strength with this piece Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
This commit is contained in:
parent
97a6f52e07
commit
f3d0d4b6e2
30
src/frames/pieces/front-or-back-longish.scad
Normal file
30
src/frames/pieces/front-or-back-longish.scad
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: © 2025 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_frame_piece_wall() {
|
||||||
|
// get a slice of the whole wall, to use it for making the extended version
|
||||||
|
difference() {
|
||||||
|
front_or_back_frame_piece();
|
||||||
|
cube([frame_x, frame_y-frame_wall*2, frame_z], center=true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module front_or_back_frame_piece_extension() {
|
||||||
|
hull() {
|
||||||
|
front_or_back_frame_piece_wall();
|
||||||
|
translate([0, -frame_bevel_height*2, 0]) front_or_back_frame_piece_wall();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module front_or_back_longish_frame_piece() {
|
||||||
|
front_or_back_frame_piece_extension();
|
||||||
|
front_or_back_frame_piece();
|
||||||
|
}
|
||||||
|
|
||||||
|
front_or_back_longish_frame_piece();
|
@ -5,34 +5,28 @@
|
|||||||
|
|
||||||
include <parameters.scad>
|
include <parameters.scad>
|
||||||
include <components.scad>
|
include <components.scad>
|
||||||
use <frames/complete/left-frame.scad>
|
|
||||||
use <side.scad>
|
use <side.scad>
|
||||||
|
|
||||||
module side_frame_piece_wall() {
|
module side_frame_piece_wall() {
|
||||||
// get a slice of the piece, to use it in extruding
|
// get a slice of the whole wall, to use it for making the extended version
|
||||||
// this doesn't use the side_frame_piece because of the 45 degree angle geometry
|
difference() {
|
||||||
// not creating a clean thing to cut, so we just take the whole wall and use that
|
side_frame_piece();
|
||||||
projection(cut=true) rotate([0, 90, 0]) translate([frame_x/2-frame_wall-(frame_bevel_height/2), 0, 0])
|
cube([frame_x-frame_wall*2, frame_y, frame_z], center=true);
|
||||||
left_frame();
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module side_frame_piece_extension() {
|
module side_frame_piece_extension() {
|
||||||
// combine the original with a shrunken piece to "pull" the wall out
|
// hulling the two walls provides a wall with a thicker x
|
||||||
hull() {
|
hull() {
|
||||||
linear_extrude(height=frame_bevel_height*4)
|
side_frame_piece_wall();
|
||||||
square([frame_z-(frame_bevel_height*2), frame_y-(frame_bevel_height*2)], center=true);
|
translate([-frame_bevel_height*2, 0, 0]) side_frame_piece_wall();
|
||||||
linear_extrude(height=frame_bevel_height*3) side_frame_piece_wall();
|
|
||||||
linear_extrude(height=frame_bevel_height) side_frame_piece_wall();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module side_longish_frame_piece() {
|
module side_longish_frame_piece() {
|
||||||
difference() {
|
// combine the wider wall and the original piece
|
||||||
side_frame_piece();
|
side_frame_piece_extension();
|
||||||
// chop off the old edge which is getting replaced with the extension
|
side_frame_piece();
|
||||||
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();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
side_longish_frame_piece();
|
side_longish_frame_piece();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user