大数跨境
0
0

关于PDMS E3D管道充水重量的统计(技术分享)

关于PDMS E3D管道充水重量的统计(技术分享) 维图
2025-11-07
9
导读:这近有人问我怎么计算管道冲水量。提供一个程序
这近有人问我怎么计算管道冲水量。
管道冲水量需要通过管道的内径计算体积,牵扯到的属性有:
对于直段:
外径: PARA[2]
壁厚: PWALLT[1]
长度ltlength
对于附件
外径: Aodiam
壁厚: PWALLT[1]
长度:Fitlength
流体体积通过体积计算公式:(外径 * 0.2 - 壁厚)的平方 * π * 长度
可以根据这些信息很简单的写一个程序进行计算,下面是很久以前我写的程序和源代码,给大家参考
源代码
setup form !!pipeflushing    list .lisElement 'Element' width 50 hei 20    button .bntAdd 'Add' at xmin.lisElement ymax + 0.1    button .bntAddMember 'Add member'     button .bntRem 'Remove'      button .bntRemall 'Remove All'      text .result 'Volume' at xmin.bntAddMember ymax + 0.5 width 25 is string     button .Calculate 'Calculate'exitdefine method .pipeflushing()    !this.formtitle = 'Flushing Volume'    !this.bntAdd.callback = '!this.AddCE()'    !this.bntAddMember.callback = '!this.AddMember()'    !this.bntRem.callback = '!this.Remove()'    !this.bntRemall.callback = '!this.lisElement.dtext = array()'    !this.Calculate.callback = '!this.Calculate()'endmethoddefine method .AddCE()    !list = !this.lisElement.dtext    !name = !!ce.fullname    if(!list.Find(!name).size() gt 0)then        return    endif    !list.append(!name)    !this.lisElement.dtext = !list   endmethoddefine method .AddMember()    !list = !this.lisElement.dtext    do !x value !!ce.member         !name = !x.fullname        if(!list.Find(!name).size() gt 0)then            return        endif        !list.append(!name)        !this.lisElement.dtext = !list       enddo endmethoddefine method .Remove()     if(!This.lisElement.val eq 0)then        return    endif    !list = !this.lisElement.dtext    !list.Remove(!This.lisElement.val    !this.lisElement.dtext = !listendmethoddefine method .Calculate()    !total = 0    do !x value !this.lisElement.dtext       !element = !x.dbref()       handle any            skip       endhandle        var !members coll all bran member for $!element       do !item value !members            !element = !item.dbref()            if(!element.type eq 'TUBI')then                !od = !element.para[2]                !Wallthickness = !element.PWALLT[1]                !len = !element.ltlength                !radius = !od * 0.5 - !Wallthickness                !vol = !radius.Power(2) * 3.1415926 * !len                !total = !total + !vol            else                !od = !element.Aodiam                !Wallthickness = !element.PWALLT[1]                handle (2,244)                    skip                endhandle                !len = !element.Fitlength                !radius = !od * 0.5 - !Wallthickness                !vol = !radius.Power(2) * 3.1415926 * !len                !total = !total + !vol            endif        enddo    enddo    !this.result.val = !total.string('D0')endmethod
可以将源代码复制到文本文件后将文件名改为pipeflushing.pmlfrm放进pmllib文件夹直接使用。

【声明】内容源于网络
0
0
维图
为企业提供AVEVA PDMS E3D SP3D,开发定制,出图软件,项目实施培训等增值服务。PDMS E3D出图软件,综合材料表,ISO图,CAESAR双向接口,欢迎联系我们!
内容 100
粉丝 0
维图 为企业提供AVEVA PDMS E3D SP3D,开发定制,出图软件,项目实施培训等增值服务。PDMS E3D出图软件,综合材料表,ISO图,CAESAR双向接口,欢迎联系我们!
总阅读208
粉丝0
内容100