Compare commits
No commits in common. "56c362fe0c4af08456d3b972913eefe41640c835" and "0de70a308c8fd5cba915645c942c9a9d21eae849" have entirely different histories.
56c362fe0c
...
0de70a308c
26
planter.scad
26
planter.scad
|
@ -1,5 +1,5 @@
|
||||||
// Diameter of the inside cylinder
|
// Diameter of the inside cylinder
|
||||||
diameter = 63;
|
diameter = 62;
|
||||||
// Height of the inside cyliner
|
// Height of the inside cyliner
|
||||||
height = 40;
|
height = 40;
|
||||||
// Number of cuts / ridges around the planter
|
// Number of cuts / ridges around the planter
|
||||||
|
@ -12,8 +12,6 @@ thickness = 3;
|
||||||
bottom_roundness_percent = 85;
|
bottom_roundness_percent = 85;
|
||||||
// Optional wall mount plate, 0 is no plate and 100 makes the planter a half-circle
|
// Optional wall mount plate, 0 is no plate and 100 makes the planter a half-circle
|
||||||
wall_mount_percent = 30;
|
wall_mount_percent = 30;
|
||||||
// Top angle
|
|
||||||
top_angle = 20;
|
|
||||||
|
|
||||||
module _end_of_customizer() {}
|
module _end_of_customizer() {}
|
||||||
|
|
||||||
|
@ -113,27 +111,19 @@ module planter() {
|
||||||
bottom();
|
bottom();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Planter with optional wall mount plate and angled top
|
// Planter with optional wall mount plate
|
||||||
//
|
//
|
||||||
// If `wall_mount_percent` is 0, no plate, if 100, the planter is a half circle
|
// If `wall_mount_percent` is 0, no plate, if 100, the planter is a half circle
|
||||||
difference() {
|
if(wall_mount_percent > 0) {
|
||||||
full_diameter = (diameter + thickness * 2) + cut_depth * 2;
|
full_diameter = (diameter + thickness * 2) + cut_depth * 2;
|
||||||
|
|
||||||
if(wall_mount_percent > 0) {
|
wall_x = full_diameter / 2 * (1 - wall_mount_percent / 100);
|
||||||
wall_x = full_diameter / 2 * (1 - wall_mount_percent / 100);
|
|
||||||
|
|
||||||
wall_depth = full_diameter * sqrt(1 - (1 - wall_mount_percent / 100)^2);
|
wall_depth = full_diameter * sqrt(1 - (1 - wall_mount_percent / 100)^2);
|
||||||
|
|
||||||
chop_off(wall_x, thickness) {
|
chop_off(wall_x, thickness) {
|
||||||
planter();
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
planter();
|
planter();
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
// Angled top
|
planter();
|
||||||
translate([-diameter / 2, -full_diameter / 2, height])
|
|
||||||
rotate([0, top_angle, 0])
|
|
||||||
translate([-full_diameter / 2 + diameter / 2, 0, 0])
|
|
||||||
cube([full_diameter / cos(top_angle), full_diameter, full_diameter]);
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue