潍坊市公路勘察设计院山东潍坊261031
摘要:本文介绍了公路小桥涵八字墙计算的重要性,采购软件的局限性,本人开发的具体思路和应用案例,公开了大部分的程序代码,软件应用收到的绝佳效果。
关键词:公路小桥涵;八字墙计算;软件开发;程序代码
1引言
小桥涵设计在公路工程设计中十分占有重要位置,一般公路工程设计项目,大中桥数量不多,小桥涵数量特别多,少则几十道,多时上百道,采购的设计软件,出图风格与本单位相差很大,大多不能使用,这就需要我们开发出符合本单位的设计软件,小桥涵设计中,涵身部分断面单一,洞口部分由于斜度不同变化多样,八字墙是小桥涵洞口常常采用的形式,也是计算最为复杂的形式,开发非常有必要。
2开发思路
主要功能有三个个:1)单个计算,2)工程量汇总,3)清零。
单个计算采用子程序BaZiQiangJiSuan(),求的单个八字墙尺寸及工程量;
工程量共计,调用单个计算子程序,求的单个工程量,求和即得计算结果;
清零,所有计算结果归零,计算下一个项目。
3计算按纽代码
PrivateSubbtnSum_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbtnSum.Click
txtQiangDingXieChang.Text=""
txtQiangDingShuiPingChangDu.Text=""
txtQiangDingPianYiChangDu.Text=""
txtXieBeiPo.Text=""
txtNeiCeJinBianXieKuan.Text=""
txtWaiCeJinBianXieKuan.Text=""
txtQiangDuanDiXieChangDu.Text=""
txtQiangGenDiXieChangDu.Text=""
txtQiangDingMoMian.Text=Sum_MoMian_mj
txtQiangNeiCeXiangMianTiJi.Text=Sum_XiangMian_tj
txtQiangShenPianShiTiJi.Text=Sum_QiangShenPianshi_tj
txtJiChuTiJi.Text=Sum_JiChu_tj
txtJiKongKaiWaTiJi.Text=Sum_JiKongKaiWa_tj
EndSub
4汇总按纽代码
PrivateSubbtnSum_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbtnSum.Click
txtQiangDingXieChang.Text=""
txtQiangDingShuiPingChangDu.Text=""
txtQiangDingPianYiChangDu.Text=""
txtXieBeiPo.Text=""
txtNeiCeJinBianXieKuan.Text=""
txtWaiCeJinBianXieKuan.Text=""
txtQiangDuanDiXieChangDu.Text=""
txtQiangGenDiXieChangDu.Text=""
txtQiangDingMoMian.Text=Sum_MoMian_mj
txtQiangNeiCeXiangMianTiJi.Text=Sum_XiangMian_tj
txtQiangShenPianShiTiJi.Text=Sum_QiangShenPianshi_tj
txtJiChuTiJi.Text=Sum_JiChu_tj
txtJiKongKaiWaTiJi.Text=Sum_JiKongKaiWa_tj
EndSub
5八字墙计算子程序(示部分代码)
PrivateSubBaZiQiangJiSuan(jd0,zy,dx,jd1,m,a,e,n,hd,hx,xmhd,jchgd,jkzkd,jkshd,DuanQiangQiPing,c,g,t,n0,e1,e2,c1x,c1,MoMian_mj,XiangMian_tj,QiangShenPianshi_tj,JiChu_tj,JiKongKaiWa_tj)
'正交及斜交斜做八字墙工程量计算
DimbAsSingle'八字墙内侧相对于垂直行车方向上的偏角
DimjdAsSingle'八字墙斜度
jd=Abs(jd0-90)
DimdtAsSingle
Ifjd0<90And(zy="z"Orzy="Z"Orzy="y"Orzy="Y")And(dx="d"Ordx="D")Then'正八字
b=(jd+jd1)/180*Math.PI
n0=(n+Sin(b)/m)*Cos(b)
dt=Atan(Tan(b)-1/(m*n0))
c=a/Cos(b)
c1=c+hd/n0
c1x=c+hx/n0
e1=e/Cos(b)
e2=e/Cos(dt)
g=m*(hd-hx)
t=g*(Tan(b)-Tan(jd/180*Math.PI))
MoMian_mj=c*(hd-hx)*(1+m^2)^0.5/100^2
XiangMian_tj=g/Cos(b)*(hd+hx)/2*xmhd/100^3
QiangShenPianshi_tj=(0.5*c*m*(hd^2-hx^2)+m/(6*n0)*(hd^3-hx^3))/100^3
QiangShenPianshi_tj=Int(QiangShenPianshi_tj*100+0.5)/100-XiangMian_tj
JiChu_tj=0.5*((e1+e2+c1x)+(e1+e2+c1))*g*jchgd/100^3
JiKongKaiWa_tj=0.5*((e1+e2+c1x+2*jkzkd)+(e1+e2+c1+2*jkzkd))*(g+jkzkd)*jkshd/100^3
EndIf
EndSub
8应用效果
自从开发完成,本单位一直使用,简单实用,可以单个计算,也可以批量计算,效果非常不错。也可以修改成文件输入格式,更加灵活方便。
作者简介:杜惠荣(1975--),女,汉族,河北石家庄市人,本科。高级工程师,从事路桥设计工作。