Interactive Preview & Customizer
3D preview with OpenSCAD rendering on parameter changes.
Loading preview...
Length of the box (X axis) in inches
step 0.05
Depth / Width of the box (Y axis) in inches
step 0.05
Height of the box (Z axis) in inches
step 0.05
Wall thickness in mm
step 0.2
Floor / Bottom thickness in mm
step 0.2
Corner rounding radius in mm (outer)
step 0.5
Quality
step 0.5
--- Calculations ---
step 0.1
WASM compiler loads on first parameter change.
Prompt
An open box 1 1/4โ inch high, 1 1/4 inch depth, and 2 1/4 inch length
OpenSCAD Code
// Open Organizer Box
// Dimensions specified: 2 1/4" Length (X), 1 1/4" Depth (Y), 1 1/4" Height (Z)
// --- Customizer Parameters ---
// Length of the box (X axis) in inches
box_length_in = 2.25; // [1.0:0.05:10.0]
// Depth / Width of the box (Y axis) in inches
box_depth_in = 1.25; // [0.5:0.05:10.0]
// Height of the box (Z axis) in inches
box_height_in = 1.25; // [0.5:0.05:10.0]
// Wall thickness in mm
wall_thickness = 2.0; // [1.0:0.2:5.0]
// Floor / Bottom thickness in mm
bottom_thickness = 2.0; // [1.0:0.2:5.0]
// Corner rounding radius in mm (outer)
corner_radius = 2.0; // [0.0:0.5:10.0]
// Quality
$fn = 40;
// --- Calculations ---
inch_to_mm = 25.4;
length_mm = box_length_in * inch_to_mm; // 57.15 mm
depth_mm = box_depth_in * inch_to_mm; // 31.75 mm
height_mm = box_height_in * inch_to_mm; // 31.75 mm
module rounded_box(l, w, h, r) {
if (r > 0) {
hull() {
translate([r, r, 0]) cylinder(r=r, h=h);
translate([l - r, r, 0]) cylinder(r=r, h=h);
translate([r, w - r, 0]) cylinder(r=r, h=h);
translate([l - r, w - r, 0]) cylinder(r=r, h=h);
}
} else {
cube([l, w, h]);
}
}
// @name Open Box
difference() {
// Outer body
rounded_box(length_mm, depth_mm, height_mm, corner_radius);
// Inner cavity (open at top)
inner_l = length_mm - 2 * wall_thickness;
inner_w = depth_mm - 2 * wall_thickness;
inner_h = height_mm - bottom_thickness + 1; // +1 to cleanly cut through top
inner_r = max(0, corner_radius - wall_thickness);
translate([wall_thickness, wall_thickness, bottom_thickness])
rounded_box(inner_l, inner_w, inner_h, inner_r);
}


