3D-prints/recipe-holder.scad

38 lines
1.1 KiB
OpenSCAD

// Base is the bottom part where the recipe will go into
$base_width = 150;
$base_depth = 14;
$base_height = 14;
// The size of the gap the recipe needs to fit into
$recipe_gap_lip = 8;
$recipe_gap = 5;
$recipe_angle = 30; // degrees
// The support part in the back to hold the recipe
$frame_width = 20;
$frame_depth = $base_depth / 2 - $recipe_gap / 2;
$frame_height = 180;
$support_width = $frame_width;
$support_depth = $frame_height * cos(90 - $recipe_angle);
$support_height = 5;
translate([$base_width / 2 - $support_width / 2, -1 * $support_depth, 0])
support();
rotate([$recipe_angle, 0, 0])
holder();
module support() {
cube([$support_width, $support_depth, $support_height]);
};
module holder() {
translate([$base_width / 2 - $frame_width / 2, 0, 0])
cube([$frame_width, $frame_depth, $frame_height]);
difference() {
cube([$base_width, $base_depth, $base_height]);
translate([-1 * $base_width, $base_depth / 2 - $recipe_gap / 2, $base_height - $recipe_gap_lip])
cube([$base_width * 3, $recipe_gap, $base_height * 2]);
};
};