国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Delphi的結(jié)構(gòu)設(shè)計(jì)計(jì)算可視化研究

2014-07-24 19:01胡幫義袁向榮
關(guān)鍵詞:命令計(jì)算結(jié)果結(jié)構(gòu)設(shè)計(jì)

胡幫義,袁向榮,黃 羚

(1.廣州大學(xué) 土木工程學(xué)院,廣州 510006; 2.石家莊鐵道大學(xué) 土木工程學(xué)院,河北 石家莊 050043)

基于Delphi的結(jié)構(gòu)設(shè)計(jì)計(jì)算可視化研究

胡幫義1,袁向榮1,黃 羚2

(1.廣州大學(xué) 土木工程學(xué)院,廣州 510006; 2.石家莊鐵道大學(xué) 土木工程學(xué)院,河北 石家莊 050043)

由于當(dāng)前眾多結(jié)構(gòu)設(shè)計(jì)計(jì)算軟件普遍不能生成帶計(jì)算公式的設(shè)計(jì)計(jì)算書(shū),導(dǎo)致結(jié)構(gòu)設(shè)計(jì)計(jì)算不可視化。針對(duì)這種情況,分析了結(jié)構(gòu)設(shè)計(jì)計(jì)算可視化的特點(diǎn),利用Delphi與Word的無(wú)縫鏈接技術(shù),提出了公式模板參數(shù)化命令流技術(shù)。介紹了該技術(shù)的編程思想和實(shí)現(xiàn)方法,并進(jìn)行結(jié)構(gòu)設(shè)計(jì)計(jì)算軟件的開(kāi)發(fā)。實(shí)踐表明,此技術(shù)簡(jiǎn)便可行、靈活高效、適用范圍廣。

參數(shù)化命令流;結(jié)構(gòu)設(shè)計(jì)可視化;Delphi;Word

在結(jié)構(gòu)設(shè)計(jì)過(guò)程中,傳統(tǒng)的手工計(jì)算方法既費(fèi)時(shí)又費(fèi)力,已不能滿足當(dāng)今結(jié)構(gòu)設(shè)計(jì)的需要,設(shè)計(jì)者更多的是依賴相關(guān)設(shè)計(jì)軟件。設(shè)計(jì)者如果不清楚設(shè)計(jì)軟件的計(jì)算依據(jù)和過(guò)程,那么不僅不能提高設(shè)計(jì)者自身設(shè)計(jì)的理論知識(shí)水平,而且很難判斷軟件計(jì)算結(jié)果的正確性。在目前眾多品牌軟件中,普遍能夠生成計(jì)算書(shū),但是計(jì)算書(shū)普遍不能顯示帶計(jì)算公式的計(jì)算過(guò)程,這時(shí)軟件就好比一個(gè)黑匣子,設(shè)計(jì)計(jì)算過(guò)程是不可視化的。另一方面,在Microsoft Word中輸入公式需要借助于公式編輯器,手動(dòng)輸入費(fèi)時(shí)費(fèi)力,而且極易出錯(cuò),難以自動(dòng)化。公式模板參數(shù)化命令流技術(shù)正是在此背景下提出的,是為了解決在各種設(shè)計(jì)規(guī)范下計(jì)算公式的自動(dòng)化生成問(wèn)題,實(shí)現(xiàn)結(jié)構(gòu)設(shè)計(jì)全過(guò)程可視化。

1 結(jié)構(gòu)設(shè)計(jì)計(jì)算可視化及實(shí)現(xiàn)方法

結(jié)構(gòu)設(shè)計(jì)計(jì)算可視化是指在結(jié)構(gòu)設(shè)計(jì)計(jì)算的過(guò)程中,計(jì)算者可以對(duì)計(jì)算的詳細(xì)過(guò)程、步驟可見(jiàn),而不僅僅是得到計(jì)算結(jié)果。結(jié)構(gòu)設(shè)計(jì)計(jì)算可視化是結(jié)構(gòu)設(shè)計(jì)過(guò)程中參數(shù)輸入和計(jì)算結(jié)果輸出的問(wèn)題,實(shí)現(xiàn)了邊計(jì)算邊輸出計(jì)算過(guò)程的效果,可視化是通過(guò)計(jì)算結(jié)果文件來(lái)體現(xiàn)。

結(jié)構(gòu)設(shè)計(jì)計(jì)算可視化實(shí)現(xiàn)過(guò)程如圖1所示:

圖1 結(jié)構(gòu)設(shè)計(jì)計(jì)算可視化實(shí)現(xiàn)過(guò)程Fig.1 The implementation of visualstructural design

Word是現(xiàn)今廣泛使用的文字處理軟件,具備強(qiáng)大的接口功能,故計(jì)算結(jié)果文件經(jīng)常采用Word格式。一篇計(jì)算結(jié)果文件的構(gòu)成要素主要包括以下幾類:

(1)文字

文字是計(jì)算書(shū)里最基本的單元,用來(lái)顯示計(jì)算中的相關(guān)說(shuō)明信息,比如工程概況、計(jì)算依據(jù)、尺寸說(shuō)明、材料參數(shù)說(shuō)明、設(shè)計(jì)結(jié)果評(píng)價(jià)等。調(diào)用Word中書(shū)寫(xiě)文字的命令即可實(shí)現(xiàn)。

(2)表格

當(dāng)計(jì)算中輸出的數(shù)據(jù)較規(guī)則或數(shù)據(jù)量較大時(shí),可以在計(jì)算書(shū)中采用表格顯示。調(diào)用Word中表格對(duì)象相關(guān)命令即可實(shí)現(xiàn)表格輸出、編輯等操作。

(3)圖片

在計(jì)算書(shū)中有時(shí)需要給出計(jì)算圖示,以形象化展示計(jì)算原理。需要插入圖片時(shí),調(diào)用Word中插入圖片命令即可將指定的圖片插入到Word中指定的位置。

(4)公式

公式是計(jì)算書(shū)中最重要的一類元素,也是設(shè)計(jì)的依據(jù),根據(jù)規(guī)范給出的公式進(jìn)行設(shè)計(jì)是設(shè)計(jì)的基本要求。公式的自動(dòng)化輸出是計(jì)算可視化的核心,也是本文論述的重點(diǎn)和核心。

結(jié)構(gòu)設(shè)計(jì)中用到的公式以分式和根式為主,根據(jù)Word中的相關(guān)命令可以編制相關(guān)輸入分式、根式等的基本函數(shù)命令,基本函數(shù)命令的組合又可以構(gòu)成新的類型公式的函數(shù)命令,利用函數(shù)命令可以實(shí)現(xiàn)靈活、高效、自動(dòng)輸出計(jì)算公式。

2 公式模板參數(shù)化命令流技術(shù)思想

公式模板參數(shù)化命令流技術(shù)是基于Microsoft Word ActiveX自動(dòng)化技術(shù)的命令接口,借助于Delphi來(lái)操縱Word的相關(guān)函數(shù)命令,通過(guò)編制不同公式模板的參數(shù)化計(jì)算函數(shù)命令,從而實(shí)現(xiàn)各種形式公式的自動(dòng)化生成。關(guān)于Delphi與Word的無(wú)縫鏈接和操縱,在參考文獻(xiàn)[1-2]中有較詳細(xì)的論述。在一個(gè)設(shè)計(jì)過(guò)程中,可能涉及規(guī)范中不同類型的幾個(gè)公式,通過(guò)對(duì)每個(gè)公式編制相應(yīng)的命令,最終組合而成的函數(shù)命令流便是實(shí)現(xiàn)計(jì)算可視化并生成Word計(jì)算書(shū)的全部命令集合。由于不同公式模板的命令可以交叉組合使用,使得其具備靈活多樣性,以便適應(yīng)紛繁復(fù)雜的設(shè)計(jì)規(guī)范的需要[3-7]。

公式模板參數(shù)化命令流技術(shù)思想如圖2所示:

圖2 “公式模板參數(shù)化命令流”技術(shù)思想Fig.2 Thought of “Parametric command stream technology based on equation templates”

3 公式模板參數(shù)化命令流及實(shí)現(xiàn)方法

3.1 公式模板化

在結(jié)構(gòu)設(shè)計(jì)中出現(xiàn)的公式可以對(duì)其進(jìn)行總結(jié)歸類,并對(duì)每一類型建立一公式模板,對(duì)每一模板編制一基本函數(shù),從而實(shí)現(xiàn)公式模板化。結(jié)構(gòu)設(shè)計(jì)中比較常見(jiàn)的公式類型有以下幾種,現(xiàn)對(duì)每種類型僅僅列出部分計(jì)算公式實(shí)例:

(1)連乘式

R=AB型;比如N=σ·A,G=mg等;

R=ABC型;比如P=C·R·A,Bs=0.85EcI0等;

R=ABCD型;比如W=K1K2K3w0,

(2)分式

(3)根式

3.2 公式模板參數(shù)化

A=f;shang=′;xia=y

通過(guò)控制參變量的取值可以輸出各種不同類型的公式,大大提高了公式模板的適用性。

3.3 參數(shù)化命令的具體實(shí)現(xiàn)

對(duì)于一個(gè)公式及代入數(shù)值后的計(jì)算過(guò)程,筆者將其定義為4個(gè)部分:公式頭、字母公式、代值計(jì)算、結(jié)果輸出,分別用ZuodenghaoYesOrNo、DaiZiMuYesOrNo、DaiZhiYesOrNo、YoudenghaoYesOrNo等4個(gè)邏輯型變量來(lái)控制其是否輸出。另外定義一個(gè)邏輯型變量WriteYesOrNo來(lái)控制是否全部輸出。對(duì)于每一部分的字母內(nèi)容定義相應(yīng)的變量來(lái)控制,比如R部分的輸出,定義StrResult變量控制R,Rshang變量控制R的上標(biāo),Rxia變量控制R的下標(biāo),A、B、C等部分同理。

為此在Delphi中可以編制如下的函數(shù)命令:

Function

WriteAndGetABbiC(StrResult,Rshang,Rxia,strA,Ashang,Axia,strB,Bshang,Bxia,strC,Cshang,Cxia:string;A,B,C:double;XiaoShuWei:integer=1;WriteYesOrNo:boolean=true;ZuodenghaoYesOrNo:boolean=true;DaiZiMuYesOrNo:boolean=true;DaiZhiYesOrNo:boolean=true;YoudenghaoYesOrNo:boolean=true):double; //通用R=AB/C型公式輸出,其中A,B,C分別為其具體數(shù)值,XiaoShuWei控制代值計(jì)算保留的小數(shù)位,默認(rèn)為1;

var

jieguo:double;

begin

ifWriteYesOrNothen//表示輸出公式文本

begin

ifZuodenghaoYesOrNothen//表示輸出公式

begin頭部分,即“R=”部分

WriteText(StrResult);//輸出R

addshangxiabiao(Rshang,Rxia);//輸出R的上下標(biāo)

WriteText('=');

endelse//表示不輸出公式頭部分

beginend;

ifDaiZiMuYesOrNothen//表示輸出字母公式部分

begin

addfenhao(strA+'s('+Ashang+','+Axia+')'+'·'+strB+'s('+Bshang+','+Bxia+')',strC+'s('+Cshang+','+Cxia+')');//輸出AB/C部分

endelse

beginend;

ifDaiZhiYesOrNothen//表示輸出代值計(jì)算部分

begin

WriteText('=');

ifShangbiaoIsNumber(Ashang)then

//判斷字母上標(biāo)是否是數(shù)字

Ashang:=Ashang//是數(shù)值則原樣輸出

else

Ashang:=''; //不是數(shù)值則不輸出

ifShangbiaoIsNumber(Bshang)then

Bshang:=Bshang

else

Bshang:='';

ifShangbiaoIsNumber(Cshang)then

Cshang:=Cshang

else

Cshang:='';

addfenhao(floattostr(A)+'s('+Ashang+', )'+'×'+floattostr(B)+'s('+Bshang+', )',floattostr(C)+'s('+Cshang+', )'); //輸出AB/C代值部分

endelse

beginend;

ifYoudenghaoYesOrNothen

begin//表示輸出結(jié)果輸出部分

jieguo:=Myround(A*B/C,xiaoshuwei);

//計(jì)算數(shù)值并保留相應(yīng)的小數(shù)位

WriteText('='+floattostr(jieguo)); //表示輸出結(jié)果

result:=jieguo;//函數(shù)返回值

end

else//表示不輸出結(jié)果輸出部分

beginend;

end

else//表示不輸出公式文本,

函數(shù)只返回計(jì)算結(jié)果

begin

result:=Myround(A*B/C,xiaoshuwei);

end;

end;

3.4 參數(shù)化命令流

在一個(gè)設(shè)計(jì)中往往涉及到多個(gè)公式或文本等,將每一個(gè)公式或文本等的操作命令按一定邏輯順序執(zhí)行,便構(gòu)成了參數(shù)化命令流。

4 公式模板參數(shù)化命令流應(yīng)用實(shí)例

公式模板參數(shù)化命令流技術(shù)廣泛應(yīng)用于工程實(shí)踐,結(jié)構(gòu)設(shè)計(jì)計(jì)算的可視化是其重要應(yīng)用之一,下面以混凝土軸心受壓柱正截面承載力的設(shè)計(jì)計(jì)算為例,具體以圓截面螺旋箍筋柱配筋設(shè)計(jì)計(jì)算為例進(jìn)行說(shuō)明。

4.1 規(guī)范要求

根據(jù)《混凝土結(jié)構(gòu)設(shè)計(jì)規(guī)范》[8]的要求,鋼筋混凝土軸心受壓構(gòu)件,如圖3所示。

圖3 圓截面鋼筋混凝土柱鋼筋布置Fig.3 Reinforcement detailing of a circular reinforced concrete column

當(dāng)配置的螺旋式或焊接環(huán)式間接鋼筋符合規(guī)范9.3.2條的規(guī)定時(shí),其正截面受壓承載力應(yīng)符合下列規(guī)定[8]:

4.2 參數(shù)獲取及程序界面

fc為混凝土軸心受壓強(qiáng)度設(shè)計(jì)值,通過(guò)查規(guī)范獲得;

a為間接鋼筋對(duì)混凝土約束的折減系數(shù),根據(jù)規(guī)范要求計(jì)算獲得;

fyv為間接鋼筋抗拉強(qiáng)度設(shè)計(jì)值,通過(guò)查規(guī)范獲得;

Ass0為螺旋式或焊接環(huán)式間接鋼筋的換算截面面積;

dcor為構(gòu)件的核心截面直徑,通過(guò)人工輸入獲得;

Ass1為螺旋式或焊接環(huán)式單根間接鋼筋的截面面積,通過(guò)人工輸入獲得;

s為間接鋼筋沿構(gòu)件軸線方向的間距,通過(guò)人工輸入獲得。

根據(jù)以上要求,編制如圖4所示的設(shè)計(jì)計(jì)算程序界面。

圖4 混凝土軸心受壓柱正截面承載力計(jì)算程序界面Fig.4 Calculating program interface of normal section bearing capacity of the axial compressive pillar

4.3 參數(shù)化命令流

在計(jì)算結(jié)果文件中,文字描述及結(jié)果評(píng)價(jià)等文本性內(nèi)容的輸出較簡(jiǎn)單,這里僅僅列出相關(guān)公式輸出的命令流。

則本設(shè)計(jì)中主要公式輸出命令流如下:

Ass0:=WriteAndGetABCbiD('A','','ss0','π','','','d','','cor','A','','ss1','s','','',3.14,dcor,Ass1,s,2,true,true,true,true); //輸出Ass0計(jì)算式

Acor:=WriteAndGetABbiC('A','','cor','π','','','d','2','','4','','',3.14,dcor*dcor,4,2,true,true,true,true); //輸出Acor計(jì)算式

WriteAndGetAB('','','','f','','c','A','','cor',fcd,Acor,2,true,false,false,true,false); //以下輸出Nu計(jì)算式

Writetext('+'); //輸出+號(hào)

WriteAndGetAB('','','','f',''','y','A',''','s',fsd,steelarea,2,true,false,false,true,false);

Writetext('+');

WriteAndGetABCD('','','','2','','','α','','','f','','yv','A','','ss0',2,afa,fsv,Ass0,1,true,false,false,true,false);

Nu:=0.9*(1000*fcd*Acor+fsd*steelarea/1000+2*afa*fsv*Ass0/1000);//計(jì)算承載力Nu

Writetext(′)=′+floattostr(Nu)+′kN′); //輸出計(jì)算結(jié)果

4.4 計(jì)算結(jié)果可視化

在程序界面輸入相關(guān)參數(shù)和選擇相關(guān)選項(xiàng),進(jìn)行計(jì)算,即可生成Word計(jì)算書(shū)如圖5所示,實(shí)現(xiàn)計(jì)算可視化、自動(dòng)化。

圖5 計(jì)算程序自動(dòng)生成Word計(jì)算書(shū)Fig.5 Automatically generate design calculations in Word format by the Calculating program

根據(jù)Word計(jì)算書(shū),可以對(duì)設(shè)計(jì)計(jì)算的全過(guò)程進(jìn)行察看,計(jì)算過(guò)程詳細(xì),計(jì)算結(jié)果一目了然,帶詳細(xì)計(jì)算過(guò)程的計(jì)算書(shū)對(duì)于設(shè)計(jì)者理解計(jì)算原理、檢查計(jì)算結(jié)果的正確性以及進(jìn)行設(shè)計(jì)復(fù)核和設(shè)計(jì)評(píng)價(jià)有著重要的作用。

5 結(jié) 語(yǔ)

在進(jìn)行結(jié)構(gòu)設(shè)計(jì)的過(guò)程中,計(jì)算書(shū)是反映設(shè)計(jì)過(guò)程和設(shè)計(jì)依據(jù)的重要技術(shù)文件,也是設(shè)計(jì)計(jì)算可視化的體現(xiàn)。手動(dòng)編制帶公式的計(jì)算書(shū)是一個(gè)費(fèi)時(shí)費(fèi)力的過(guò)程,而公式模板參數(shù)化命令流技術(shù)的提出,不僅解決了結(jié)構(gòu)設(shè)計(jì)的問(wèn)題,同時(shí)又解決了計(jì)算結(jié)果文件的編制問(wèn)題,把繁雜的設(shè)計(jì)工作和結(jié)果錄入、編輯工作(尤其是編輯公式)交給了計(jì)算機(jī),實(shí)現(xiàn)了結(jié)構(gòu)設(shè)計(jì)自動(dòng)化、計(jì)算可視化,提高了設(shè)計(jì)人員的工作效率。文中提出的設(shè)計(jì)計(jì)算可視化思想具有普遍適用性,為其他各類設(shè)計(jì)問(wèn)題,提供了很好的計(jì)算自動(dòng)化、設(shè)計(jì)可視化實(shí)現(xiàn)途徑,具有廣泛的應(yīng)用價(jià)值。

[1] 魯保玉,楊新芳.用Delphi生成Word報(bào)告及動(dòng)態(tài)結(jié)構(gòu)表格[J].計(jì)算機(jī)應(yīng)用與軟件,2007,24(3):180-183.

[2] 王莉,馮軍,何自立,等.用Delphi實(shí)現(xiàn)Word應(yīng)用程序二次開(kāi)發(fā)[J].電腦編程技巧與維護(hù),2010(19):18-24.

[3] 陳特放,方斌.VC平臺(tái)下基于OLE的Word自動(dòng)化操作應(yīng)用[J].計(jì)算機(jī)應(yīng)用與軟件,2009,26(9):123-125.

[4] 劉銘.基于VBA對(duì)Word2007二次開(kāi)發(fā)應(yīng)用研究[J].煤炭技術(shù),2011,30(2):247-249.

[5] 范章,李鑫.換熱器管板計(jì)算書(shū)生成方法的實(shí)現(xiàn)與應(yīng)用[J].科學(xué)技術(shù)與工程,2013,13(21):6 239-6 242.

[6] 馮超,林琳.基于AutoCAD參數(shù)化設(shè)計(jì)實(shí)現(xiàn)方法研究[J].電子技術(shù)與軟件工程,2013(18):85.

[7] 李媛.大跨建筑表皮的參數(shù)化設(shè)計(jì)方法研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2013.

[8] 中華人民共和國(guó)住房和城鄉(xiāng)建設(shè)部.混凝土結(jié)構(gòu)設(shè)計(jì)規(guī)范(GB50010-2010)[S].北京:中國(guó)建筑工業(yè)出版社,2010.

(責(zé)任編輯:李華云)

Study on Visual Structural Design Based on Delphi

HU Bangyi1,YUAN Xiangrong1,HUANG Ling2

1.School of Civil Engineering, Guangzhou University, Guangzhou 510006, China; 2.School of Civil Engineering, Shijiazhuang Railway University, Shijiazhuang Hebei 050043, China

Lots of current structural design software can not produce the calculation books with equations. This causes the invsualization of the structural design. In view of this, the key features of visual structural design were analyzed and the “Parametric command stream technology based on equation templates ”was presented by Delphi connecting to Microsoft Word. The paper introduces the idea and implementation of this technology. The structural design software development practice shows the practicality and effectiveness of this technology. Practical results demonstrate that the technology is simple, flexible, high-efficient and worth popularisation.

Parametric command stream; Visual structural design; Delphi; Word

2014-08-16

國(guó)家自然科學(xué)基金資助項(xiàng)目(51278137)

胡幫義(1987-),男,江西豐城人,助理工程師,碩士研究生,主要研究方向?yàn)闃蛄航Y(jié)構(gòu)設(shè)計(jì)及檢測(cè)技術(shù)。

TP391.72

A

1671-5322(2014)04-0042-05

猜你喜歡
命令計(jì)算結(jié)果結(jié)構(gòu)設(shè)計(jì)
超限高層建筑結(jié)構(gòu)設(shè)計(jì)與優(yōu)化思考
只聽(tīng)主人的命令
結(jié)構(gòu)設(shè)計(jì)優(yōu)化在房屋建筑結(jié)構(gòu)設(shè)計(jì)中的應(yīng)用
不等高軟橫跨橫向承力索計(jì)算及計(jì)算結(jié)果判斷研究
移防命令下達(dá)后
存放水泥
趣味選路
BIM結(jié)構(gòu)設(shè)計(jì)應(yīng)用
這是人民的命令
某排水虹吸井結(jié)構(gòu)設(shè)計(jì)