本帖最后由 mvehu 于 2016-1-9 22:01 编辑
bai2000 发表于 2016-1-9 20:25
谢楼主。改后程序好用多了,如果吧槽钢也加进去怎么做?,举个例子(8号槽钢米重8.03,10号槽钢米重10.00)
找了一下槽钢的理论计算公式,参数太多。如果只用到少数几个槽钢型号,比如8号、10号。
有4个地方要改。
槽钢型号 用 u 表示
第一个地方 函数 weight 增加 计算槽钢重量
- ((= form 'u) ;槽钢 (u 8 length)
- (cond ((= (nth 1 guige-list) '8) (* (nth 2 guige-list) 8.03e-3))
- ;8号角钢8.03kg/m
- ((= (nth 1 guige-list) '10) (* (nth 2 guige-list) 0.01))
- ;10号角钢10kg/m
-
-
- )
- )
第二个地方,函数 test-str 增加对槽钢输入算式的支持 8号10号槽钢
- ((regex-test "^\\d+-u(8|10)[x*l]\\d+$" str "ig") t)
第三个地方,函数 str->weight 规格表转换处,增加对槽钢的支持
- ((= form 'u) (setq form "槽钢U"))
第四个地方,主体函数中,对已有算式重新计算时,增加对槽钢的支持。
- (setq str (vl-string-subst "-u" "个槽钢U" str))
下面的代码是改后的。没有太仔细测试。
|