一个用于 Fusion 360 的参数化储物罐生成插件(Add-in)。在活动设计中按输入参数自动生成罐体(Storage_Jar)与盖子(Jar_Lid)两个组件,所有特征自动归入时间轴上的一个折叠组,便于整体管理。
A parametric storage jar generator add-in for Autodesk Fusion 360. Generates a jar body and a matching lid in the active design from user-defined parameters.
- 参数化建模:罐体外径/高度、壁厚、颈部尺寸、盖子尺寸等全部由对话框输入,实时校验约束。
- 一体化生成:一次运行同时产出罐体 + 盖子两个组件,盖子自动悬停在罐口正上方(沿罐体轴向对齐颈部)。
- 可选基准平面:可将罐子生成到任意构造平面或实体平面(罐底中心对齐平面原点,罐体沿平面法向生长);草图直接建在所选平面上;留空则生成在世界原点。
- 参数联动:盖子内腔直径 = 颈部外径 + 2×单边间隙,界面中为只读派生值,颈部外径或单边间隙变化时自动刷新。
- 完备校验:内置 13 条参数约束(壁厚 < 外径/2、底部厚度 < 主体高度、颈部外径 < 罐体外径、过渡段高度 ≥ 半径差等),错误提示带具体数值(mm)。
- 整洁的时间轴:一次生成的全部特征归入一个折叠的 Timeline Group;组件重名时自动加序号后缀。
直接下载 StorageJarGenerator-v1.1.0.zip,解压后得到一个
StorageJarGenerator/文件夹。
- 打开 Fusion 360,进入 工具 > 脚本和附加模块(Utility > Scripts and Add-Ins)。
- 切到 附加模块 / Add-Ins 标签页,点击右下角 +(新建/添加)。
- 选择解压出的
StorageJarGenerator/文件夹(包含StorageJarGenerator.py与StorageJarGenerator.manifest)。 - 选中列表中的 StorageJarGenerator,点击 运行(Run)即可加载;若需每次启动自动加载,取消勾选
Run on startup下方的说明开关并设为常驻(点击 停止时保持运行 旁的按钮)。
提示:修改代码后需在「脚本和附加模块」里停止再重新运行(或重启 Fusion)才会生效。
- 打开(或新建)一个 Fusion 设计文档。
- 在 设计 > SOLID > 创建 面板中点击 储物罐生成器。
- 在对话框中填写参数(单位为 mm),或留空使用默认值。
- (可选)在 基准平面 选择框中点选一个构造平面或实体平面,将罐子放置到该平面上;留空则生成在世界原点。
- 点击 确定。生成完成后会弹出结果摘要。
生成结果:
- Storage_Jar:罐体,包含 6 步特征链——主体拉伸 → 内腔切割 → 外壁过渡放样 → 直颈拉伸 → 内腔过渡切割 → 颈部内孔贯通。
- Jar_Lid:盖子,外圆拉伸 + 内腔切割(开口朝下,可套住罐口)。
所有参数在对话框中以 mm 显示,默认值如下:
| 参数 | 默认值 | 说明 |
|---|---|---|
| 罐体外径 | 80.0 mm | 罐体最大外径 |
| 主体高度 | 85.0 mm | 罐身圆柱段高度 |
| 壁厚 | 2.0 mm | 罐身壁厚,决定内腔直径(外径 − 2×壁厚) |
| 内腔底部厚度 | 4.0 mm | 内腔底面到罐底的距离 |
| 颈部外径 | 74.6 mm | 直颈外径(必须小于罐体外径) |
| 直颈高度 | 10.0 mm | 颈部圆柱段高度 |
| 过渡段高度 | 5.0 mm | 罐身收窄到颈部的放样过渡高度(≥ 半径差) |
| 颈部壁厚 | 2.0 mm | 颈部壁厚,决定颈部内径 |
| 参数 | 默认值 | 说明 |
|---|---|---|
| 盖子外径 | 80.0 mm | 盖子外径 |
| 盖子高度 | 13.0 mm | 盖子总高 |
| 单边间隙 | 0.7 mm | 盖子内腔与颈部外径的单边间隙 |
| 盖子内腔直径 | 76.0 mm(派生) | = 颈部外径 + 2×单边间隙,只读,自动联动 |
| 盖子内腔深度 | 10.0 mm | 内腔深度(必须小于盖子高度) |
本插件生成的罐子可以直接用 ThreadFor3DPrinter 生成螺纹:
- 罐体:颈部外表面 生成外螺纹(默认参数下高度 10 mm,约可容纳 1 圈)。
- 盖子:内腔圆柱面 生成内螺纹(深度 10 mm)。
- 颈部内孔:内孔圆柱面 也可生成内螺纹。
- 单位处理:内部统一使用 Fusion 的 cm,界面与报错信息换算为 mm。
- 派生参数:盖子内腔直径由
颈部外径 + 2×单边间隙计算,inputChanged与validateInputs双通道联动刷新,执行时再独立重算兜底。 - Cut 特征隔离:
extrude/loft_between对切割操作显式设置participantBodies,避免误切其他组件的实体。 - 时间轴成组:新特征统一归入一个折叠的 Timeline Group,并处理了
markerPosition必须位于时间轴末尾才能成组的限制。 - 基准平面:通过组件内标准构造平面(XY/XZ/YZ)沿法向偏移到所选平面原点;法向朝下时自动翻转。避免使用
setByPlane/setByThreePoints(参数化模式受限)。
StorageJarGenerator/
├── StorageJarGenerator.py # 主代码:建模逻辑 + UI + 加载/卸载
├── StorageJarGenerator.manifest # Add-in 清单(Windows/Mac,runOnStartup: false)
├── LICENSE # GPL-3.0 许可证
└── README.md # 本文档
- v1.1.0:草图直接建在所选基准平面上(可选基准平面功能重写),修复基准平面变换被时间轴重置的问题;补充 README 与 Release 发布。
- v1.0.0:初始版本。参数化生成罐体 + 盖子,可选基准平面,13 条参数校验,时间轴成组。
本项目采用 GNU General Public License v3.0(GPL-3.0)。详见 LICENSE。