求可堆叠可定制带孔圆柱垂直种植器的OpenSCAD代码
可堆叠定制化垂直种植器(OpenSCAD新手版)
下面是用基础形状(圆柱)实现的可堆叠、带种植孔的垂直种植器代码,所有参数都可根据需求直接调整:
// 可定制参数 - 修改数值即可调整尺寸 base_diameter = 150; // 种植器底部直径 height = 100; // 单个种植器高度 wall_thickness = 5; // 侧壁厚度 plant_hole_diameter = 40; // 种植孔直径 stack_lip_height = 10; // 堆叠接口高度 stack_lip_width = 8; // 堆叠接口宽度 num_plant_holes = 6; // 一圈种植孔数量 // 绘制种植器主体(外圆柱挖空内部) difference() { cylinder(d=base_diameter, h=height, center=false); cylinder(d=base_diameter - 2*wall_thickness, h=height, center=false); // 底部留支撑,避免完全镂空 translate([0,0,0]) cylinder(d=base_diameter - 2*wall_thickness, h=wall_thickness, center=false); } // 制作堆叠结构(顶部内凹+底部外凸,实现嵌套堆叠) // 顶部内凹槽 difference() { translate([0,0,height - stack_lip_height]) cylinder(d=base_diameter, h=stack_lip_height, center=false); translate([0,0,height - stack_lip_height]) cylinder(d=base_diameter - 2*stack_lip_width, h=stack_lip_height, center=false); } // 底部凸台 translate([0,0,-stack_lip_height]) cylinder(d=base_diameter - 2*stack_lip_width, h=stack_lip_height, center=false); // 批量绘制一圈种植孔 for (i = [0:num_plant_holes-1]) { angle = i * (360/num_plant_holes); // 计算种植孔的圆周位置 x = (base_diameter/2 - wall_thickness - plant_hole_diameter/2) * cos(angle); y = (base_diameter/2 - wall_thickness - plant_hole_diameter/2) * sin(angle); z = height/2; // 挖穿种植孔 translate([x,y,z]) cylinder(d=plant_hole_diameter, h=height + 10, center=true); }
新手易懂的细节说明
- 参数调整:开头的变量都是可视化的,比如想做更宽的种植器就调
base_diameter,想多开几个孔就改num_plant_holes - 堆叠逻辑:顶部的内凹槽刚好能卡住下一个种植器的底部凸台,堆叠后不会滑动
- 基础命令复用:全程只用了
cylinder(圆柱)、difference(挖空)、translate(平移)、for循环这些新手能快速掌握的基础语法
内容的提问来源于stack exchange,提问作者Urban Farm
相关产品推荐
相关产品推荐

