桁架用量计算器
输入长宽,给出多种方案供选,并算出螺丝用量
尺寸
长(米,可填 .5)
宽(米,可填 .5)
长边走向(哪一对包住另一对)
长边包住端头(长边通长,端头内收 0.4 m)
端头包住长边(端头通长,长边内收 0.4 m)
中间加档数量(道)
左右两端加厚
不加厚
两端加厚(每端一条满宽,含上下各 0.2)
结构示意
方案选择
采购清单
下料明细
部位
有效长
拼法
条数
接头
螺丝用量
按接头数换算
接头类型
处数
按 2 钉
按 3 钉
每接头 2 个螺丝
0
个
每接头 3 个螺丝
0
个
自定义:段间接头每处
钉,固定接头每处
钉 → 共
0
个
算法说明
加厚条为什么比端头长 0.4 m
端头在主体内
:两端被长边包住,各让出 0.2 m,所以有效长 = 宽 − 0.4(4 m 的架子 → 3.6 m)。
加厚贴在主体之外
:要覆盖上下两条长边各 0.2 m 的厚度,所以取
满宽
(4 m 的架子 → 4.0 m)。
两者相差 0.4 m,正是"在主体内"与"在主体外"的区别。
受力原则:为什么长边要包住端头
让
长边通长包住端头
、端头两端各内收 0.2 m,上层压力直接落在下层桁架的
承压面
上。
若反过来让端头通长、长边内收,承重点会落在
螺栓
上(受剪,薄弱)。
可切换走向,程序自动把
0.4 m
扣到内收的那一对上。
方案如何生成:同根数、同螺丝,多规格搭配
每个部位独立求出
段数最少
的全部拼法。例如 3.6 m 有两种:
2+1+0.6
与
2+0.8+0.8
——段数都是 3,
根数与螺丝数完全相同
。
各部位的拼法做笛卡尔积,按总清单去重,得到若干候选方案。
排序:优先
长段占比高
(同样是 3 段时优先 1 m 而非 0.8 m),所以主推方案就是你口算的
2+1+0.6
。
所有候选方案的
总根数与总螺丝数都相同
——差别只在规格搭配,按手里现货选即可。
为什么"段数最少"就是"螺丝最少"
一根长条由若干标准段对接,
每处对接至少 1 组螺栓
,每条边的段间接头数 =
段数 − 1
。
所以"螺丝最少" ⟺ "每条边的标准段数最少",用背包 DP 遍历所有恰好拼满的组合取最优,是
全局最优
,不像贪心会漏解。
长度统一换算成
0.1 m
整数运算,浮点零误差。