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

?

基于AutoCAD VBA的排洪渠快速設(shè)計

2019-09-10 07:22符裕紅張代杰
水利水電快報 2019年1期

符裕紅 張代杰

摘要:以AutoCAD VBA為基礎(chǔ),制定方案,選擇參數(shù),通過編程繪制排洪渠縱斷面圖,界面清楚且操作簡單,經(jīng)不斷優(yōu)化和完善,選定具體的排洪渠案例進(jìn)行演示。程序運(yùn)行后,只需在界面中輸入相應(yīng)的高程比(縱比)和里程比(橫比)分母值、測量數(shù)據(jù)中的最高與最低高程、各個樁號對應(yīng)的地面高程、渠底高程,即可實(shí)現(xiàn)排洪渠縱斷面的自動成圖。使排洪渠斷面繪制快速、高效、準(zhǔn)確,加速了制圖進(jìn)度,減少了工作量,提高了工作效率,使設(shè)計工作更加簡化??纱龠M(jìn)AutoCAD VBA在水利工程設(shè)計中的二次開發(fā)以及快速制圖方法的應(yīng)用與推廣。

關(guān)鍵詞:排洪渠;快速設(shè)計;AutoCAD VBA

中圖法分類號:TV87文獻(xiàn)標(biāo)志碼:A

文章編號:1006-0081(2019)01-0038-04

排洪渠是為了預(yù)防洪水災(zāi)害而修筑的溝渠,也稱為排洪溝[1],是水利工程的重要組成部分,主要用于保護(hù)某些建筑或工程項目的安全,如堤防護(hù)岸工程、清淤疏浚工程等[2]。在其設(shè)計過程中,斷面設(shè)計處理的關(guān)鍵是設(shè)計一個能夠常年保證有水的水道及能夠應(yīng)付不同水位、水量的水道邊緣[3],涉及到水位、洪峰流量、地形等諸多因素,故需改變單純梯形橫斷面。采用多層臺階狀復(fù)式斷面[4],通過增加行洪斷面來降低水流流速,減小水流侵蝕,提高蓄洪能力,增加生境多樣性。工程圖是世界范圍通用的“工程技術(shù)語言”,是生產(chǎn)施工中必不可少的技術(shù)文件[5]。加快制圖速度能有效縮短工期,提高工程效率。AutoCAD是水利工程設(shè)計中的主要繪圖軟件,也是一個全球通用的繪圖軟件包[6],在測繪行業(yè)應(yīng)用普遍[7],特別是其縱橫斷面的設(shè)計更是必不可少。經(jīng)常用于渠道縱斷面設(shè)計制圖的軟件,包括AutoCAD+R14、Auto CAD + Excel、AutoCAD二次開發(fā),但由于具體設(shè)計及要求不同,在軟件使用過程中不盡完善。AutoCAD+R14易修改、成圖好、繪圖快,但需依次繪制直線連接各個實(shí)測地面線坐標(biāo);Auto CAD + Excel需要在繪圖前進(jìn)行坐標(biāo)轉(zhuǎn)換[8-11];AutoCAD二次開發(fā),能最大限度地滿足用戶需求,更加方便、快速和規(guī)范[12-13]。在以往的水利實(shí)踐中,AutoCAD VBA主要應(yīng)用于地形圖的處理及公路斷面、河道、渠道、管道[14-18]等方面。

在研究中,作者經(jīng)過實(shí)踐,對原先使用的AutoCAD VBA工程模塊程序[11,18]作了進(jìn)一步的優(yōu)化和完善,達(dá)到直接成線和自動成圖的效果,大大提高了制圖的速度。其優(yōu)勢主要表現(xiàn)在以下幾個方面:①原有工程模塊在高程比例中需要對比例尺進(jìn)行換算后再進(jìn)行數(shù)值的輸入,優(yōu)化后的程序只需在其對話框中直接輸入比例尺分母的數(shù)值即可;②原有“挖深”和“填筑”需要按照對應(yīng)的高程進(jìn)行換算后再輸入,優(yōu)化后的程度只需直接在其對話框輸入具體的數(shù)值即可;③原有成圖顯示在每個對應(yīng)的高程點(diǎn)處不能自動形成圖框,優(yōu)化后的程序能進(jìn)行標(biāo)示線和圖框的自動繪制。為此,本文對AutoCAD VBA在管線工程設(shè)計中的運(yùn)用展開了研究。

1 排洪渠選擇

本文所選擇的排洪渠兼顧河道排洪與農(nóng)田灌溉功能,建成后的主要任務(wù)是提高該地的防洪標(biāo)準(zhǔn)、有效保護(hù)人民的生命財產(chǎn)安全。該項目位于貴州省貴陽市花溪區(qū)高坡鄉(xiāng)杉坪村。工程設(shè)計按照相關(guān)規(guī)范[19-21]執(zhí)行,按Ⅵ等5級小型水利工程設(shè)計,按照10 a一遇洪水標(biāo)準(zhǔn)設(shè)防,排洪渠總長1 464 m。①排洪渠斷面一(0+000-0+640,0+820-1+464),長1 284 m,設(shè)計坡降0.07,過水?dāng)嗝鏋榫匦螖嗝?,?nèi)底寬1.2 m,設(shè)計水深1.15 m,安全超高0.05 m;防洪渠邊墻寬度0.5 m,采用M7.5漿砌塊石砌筑,內(nèi)側(cè)為M10水泥砂漿抹面,表面用M10水泥砂漿壓頂,縱向每10 m設(shè)伸縮縫,縫寬0.02 m,縫間用瀝青混凝土回填;底板為C15混凝土墊層0.1 m,碎石墊層0.15 m。②斷面二(0+640~0+820),長180 m,設(shè)計坡降0.07,過水?dāng)嗝鏋榫匦螖嗝?,?nèi)底寬0.2 m,設(shè)計水深0.75 m,安全超高0.05 m;修補(bǔ)、加高部分防洪渠邊墻,采用M7.5漿砌塊石砌筑,全段內(nèi)側(cè)為M10水泥砂漿抹面,表面用M10水泥砂漿壓頂,縱向每10 m設(shè)伸縮縫,縫寬0.02 m,縫間用瀝青混凝土回填;底板為C15混凝土墊層0.1 m,碎石墊層0.15 m。渠線根據(jù)排除洼地洪澇的要求和當(dāng)?shù)氐牡匦?、地質(zhì)、水文條件進(jìn)行布設(shè),并在實(shí)地的0+320和0+680處設(shè)放水斗門調(diào)節(jié)水池,以適應(yīng)灌溉用水的放水要求。地面及排洪渠高程如表1所示。

2 VBA編程設(shè)計思路

編程之前要先制定程序開發(fā)方案,設(shè)計程序編寫流程,最后通過具體程序來實(shí)現(xiàn)相關(guān)功能并輸出所需的結(jié)果。本文根據(jù)排洪渠的需要,綜合考慮參數(shù)設(shè)置、轉(zhuǎn)換以及數(shù)據(jù)輸入與運(yùn)行輸出等主要步驟。在確定初始條件和參數(shù)選擇基礎(chǔ)上,對相關(guān)參數(shù)進(jìn)行轉(zhuǎn)換,以AutoCAD的原點(diǎn)為基準(zhǔn),確定首個坐標(biāo)點(diǎn)在AutoCAD中的位置,依此來確定各高程點(diǎn)位置,并進(jìn)行自動連線[11]。

3 繪圖界面

在程序運(yùn)行后的繪圖界面中,用戶通過直接在相應(yīng)的標(biāo)題欄中輸入排洪渠對應(yīng)的高程比例(縱比)與里程比例(橫比)的分母值、最高點(diǎn)高程、最低點(diǎn)高程、樁號、各地面高程、渠底高程的相應(yīng)數(shù)值,程序即可進(jìn)行自動換算并確定各坐標(biāo)點(diǎn)在圖中的位置。

本文采用案例的排洪渠工程項目參數(shù)如下:高程比例(縱比)為1/100,里程比例(橫比)為1/2 000,起始樁號為0+000,結(jié)束樁號為1+464;排洪渠縱斷面繪制選擇排洪渠斷面一中的第一段為例,樁號為0+000-0+640,其中渠底最高高程為1 264.38 m(0+000)的地面高程、最低高程為1 252.38 m(0+640)的地面高程。

具體操作為:根據(jù)排洪渠工程測量中的具體參數(shù)和數(shù)值,在高程比例對應(yīng)的文本框中輸入其高程比例(縱比)值100,在里程比例對應(yīng)的文本框中輸入里程比例(橫比)值2 000;選擇所有測定高程值中的最高高程和最低高程填入其相應(yīng)文本框內(nèi),在最高高程處輸入1 264.38,在最低高程處輸入1 252.38;點(diǎn)擊“輸入”命令按鈕自動繪制坐標(biāo)及相應(yīng)表格;分別在樁號、地面高程、渠底高程文本框內(nèi)輸入每個樁號具體對應(yīng)的高程值,單擊“確定”命令按鈕自動進(jìn)行地面和渠底高程線的繪制;“挖深”和“填高”在相應(yīng)數(shù)據(jù)輸入后即可自動換算。程序運(yùn)行完成后,在圖中補(bǔ)充相應(yīng)的圖框、標(biāo)題、標(biāo)注、工程量、備注等后即可完成制圖。

4 部分程序代碼

高程柱定義:

Private Subsr_Click()

Dim zgdz As Double

Dim zddz As Double

Dim gcbz As Double

…… ?……

高程柱文字定義

Dimgctext As Double

Dimgcd(0 To 2) As Double

Dim height As Double

表格文字定義:

Dimbgtext As String

Dimbgd(0 To 2) As Double

Dimbgheight As Double

…… ?……

高程柱線繪制及高程文字:

Dim mAs Integer

gcbz = Format(gcb.Text, "#####")

lcbz = Format(lcb.Text, "#####")

zgdz = Format(zgd.Text / (gcbz / 100), "####") * (gcbz / 100)

zddz = Format(zdd.Text / (gcbz / 100), "####") * (gcbz / 100)

表格文字:

Next m

bgtext = "樁 號"

bgd(0) = -50

bgd(1) = -7.5

bgd(2) = 0

bgheight = 6

SettextObj = ThisDrawing.ModelSpace.AddText(bgtext, bgd, bgheight)

bgtext = "地面高程"

bgd(0) = -50

bgd(1) = -17.5

bgd(2) = 0

bgheight = 6

SettextObj = ThisDrawing.ModelSpace.AddText(bgtext, bgd, bgheight)

…… ?……

表格線:

For m = 1 To 8

bg(1) = -20: bg(2) = -(m - 1) * 10

bg(3) = -55: bg(4) = -(m - 1) * 10

…… ?……

里程轉(zhuǎn)換:

…… ?……

zdmgcz = Format(dmgc.Text, "####.##")

zdmgcxz = Format(dmgcx.Text, "####.##")

zdmgc1 = (zdmgcz - zddz + gcbz / 100) * gcbzv * 1000

zdmgc2 = (zdmgcxz - zddz + gcbz / 100) * gcbzv * 1000

…… ?……

高程轉(zhuǎn)換:

Dimdmx(1 To 4) As Double

Dimdmxline As AcadLWPolyline

dmx(1) = d2: dmx(2) = zdmgc2

dmx(3) = d1: dmx(4) = zdmgc1

Setdmxline = ThisDrawing.ModelSpace.AddLightWeightPolyline(dmx)

地面線、渠底線……

…… ?……

End Sub

5 結(jié) 語

AutoCAD VBA提供了強(qiáng)大的二次開發(fā)功能,可滿足不同用戶的需求。其主要優(yōu)勢為:基于AutoCAD VBA所進(jìn)行的二次開發(fā),能快速、高效、準(zhǔn)確地繪制水利工程中的各種坡面溝渠、農(nóng)飲工程管道、截排水溝等水利管線縱斷面圖;能減少工作量、加快繪圖速度、縮短設(shè)計周期、增強(qiáng)設(shè)計質(zhì)量、提高工作效率。通過研究與實(shí)踐,旨在使AutoCAD VBA二次開發(fā)能全面應(yīng)用于水利工程設(shè)計中,并對基于AutoCAD VBA排洪渠快速設(shè)計方法的應(yīng)用和推廣起到積極促進(jìn)作用。

參考文獻(xiàn):

[1] GB/T 16453.4排洪溝設(shè)計規(guī)范[S].

[2] 楊羅忠.淺議排洪渠在山洪溝道治理工程中的應(yīng)用[J].水利水電建設(shè),2016(29):145-146.

[3] 滿慧,李飛.排洪水道的“近自然”生態(tài)設(shè)計——以無錫市基康里排洪渠景觀改造為例[J].現(xiàn)代農(nóng)業(yè)科技,2009(22):241-244.

[4] 李新民.對農(nóng)機(jī)維修行業(yè)管理工作發(fā)展趨勢的探討[J]. 山西農(nóng)機(jī),2002(2):20-21.

[5] 李研.計算機(jī)軟件在工程制中的應(yīng)用[J].計算機(jī)與數(shù)學(xué)工程,2010(12):192-195.

[6] 曾令宜,曾令琴,婁梅,等.應(yīng)用AutoCAD繪制水利工程圖的思考[J].人民黃河,2005,9(27):50-51.

[7] 狄鋼. AutoCAD VBA在工程測量中的應(yīng)用[J].鐵道勘察,2006(6):3-5.

[8] 李銳,劉洋.Excel/AutoCAD軟件在渠道設(shè)計中的組合應(yīng)用[J].現(xiàn)代化農(nóng)業(yè),2005(9):32-33.

[9] 馬章進(jìn),楊祎,陳立新.淺談Excel、AutoCAD在渠道設(shè)計中的應(yīng)用[J].工程地質(zhì)計算機(jī)應(yīng)用,2004(1):31-33.

[10]曾桂香,朱連斌. AutoCAD及 Excel在水利工程設(shè)計中的應(yīng)用[J].黑龍江水利科技,2006(3):185.

[11]符裕紅,張代杰.AutoCAD VBA在渠道縱斷面設(shè)計中的應(yīng)用[J].中國農(nóng)村水利水電,2009(9):133-136.

[12]王若慧.基于VBA的AutoCAD二次開發(fā)及應(yīng)用實(shí)例[J].自動化技術(shù)與應(yīng)用,2007,26( 9):30-33.

[13]張帆.AutoCAD二次開發(fā)教程[M].北京:清華大學(xué)出版社,2006.

[14]羌樹華,王訓(xùn)霞.利用AutoCAD VBA實(shí)現(xiàn)地形圖圖廓的批量生成[J].現(xiàn)代測繪,2017,4(37):31-32.

[15]紀(jì)凱.基于AutoCAD VBA的公路施工橫斷面圖的繪制和土方量計算[J].城市勘測,2010,8(4):133-136.

[16]牛先玄.AutoCAD VBA在河道斷面套繪中的應(yīng)用[J].中國市政工程,2015,10(5):82-88.

[17]付少波,王超.VBA在AutoCAD 渠道橫斷面繪圖中的應(yīng)用[J].廣東水利水電,2016,8(8):61-64.

[18]符裕紅,張代杰.基于AutoCAD VBA二次開發(fā)的壓力管道設(shè)計[J].節(jié)水灌溉,2011(8):73-76.

[19]GB50201-2014防洪標(biāo)準(zhǔn)[S].

[20]GB50288-99灌溉與排水工程設(shè)計規(guī)范[S].

[21]GB/T50805-2012城市防洪工程設(shè)計規(guī)范[S].

洮南市| 杨浦区| 马龙县| 亚东县| 通海县| 萝北县| 郁南县| 民和| 无为县| 巴南区| 襄垣县| 耒阳市| 蒙山县| 合阳县| 鸡泽县| 太保市| 静海县| 张北县| 淳安县| 金湖县| 峨山| 麻栗坡县| 台江县| 万年县| 高淳县| 太仆寺旗| 互助| 连城县| 喀喇沁旗| 阿克陶县| 武功县| 开封市| 广平县| 兴国县| 黄陵县| 佛教| 永泰县| 鹤壁市| 依兰县| 金秀| 边坝县|