用途:把想法、文字提示或草图/图纸转成命名 .scad 文件的可读参数化 OpenSCAD 模型,并生成同名 .png 预览,面向 FDM 3D 打印;仅覆盖全新设计,若要复刻已有 STL 应改用 stl-to-scad。
默认设置:单位 mm,按打印方向建模、底面在 z=0,FDM/0.4mm 喷嘴/0.2mm 层高/220×220×250mm 热床,最小壁厚 1.2mm,无支撑悬垂不超过与竖直方向 45°,尺寸检查容差 ±0.1mm,仅用 OpenSCAD 内置库(BOSL2 可选);写入前最多细化 5 轮。间隙、孔补偿、五金尺寸等见 references/fdm-printability.md,代码布局与命名见 references/scad-style.md。
流程:1) 预检 openscad --version 与 uv --version,选定 snake_case 名称并建临时目录;2) 解析输入,草图中每项标注尺寸须记录来源,未标尺寸只能同视图按比例推算并标记待确认;3) 设计简报闸门,仅就有疑问处每轮 2–5 个问题,给出特征树、参数与 Customizer 分组、打印方向,等用户明确批准后再写代码;4) 库选择,默认内置,仅在需要打印螺纹、齿轮、复杂 3D 圆角或扫掠时建议 BOSL2,并用探针验证,不自行安装;5) 写出 iter-N.scad 并运行 uv run --script scripts/render_check.py 检查,退出码 0 无硬失败、1 硬失败、2 渲染或加载错误,悬垂与薄壁仅为复查项;6) 检查四视图、尺寸、悬垂与薄壁;7) 按硬失败、简报偏差、复查项顺序修正;8) 清理并按参数范围上下限再跑检查;9) 交付最终 .scad 与 .png,说明尺寸、体数、水密性、打印方向、支撑、复查项处理、可调参数与假设,并删除临时目录。
限制与边界:多零件用一个文件加 part 选择器,all 需平铺分开放置以便打印,assembly 仅出 PNG;超出热床应告知并建议在平面处拆分加定位销或燕尾,不得缩小;有机或雕塑形状不适合 OpenSCAD,只能近似或建议用网格/雕刻工具;慢渲染时避免 3D minkowski() 与大型布尔栈上的高 $fn。缺失事实:收费、价格、平台支持等未提供。