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

?

利用Excel VBA實(shí)現(xiàn)在AutoCAD中繪制潮流羽狀圖

2018-09-13 11:09祁祥禮
科技視界 2018年14期
關(guān)鍵詞:羽狀繪圖報(bào)表

祁祥禮

【摘 要】本文針對水文測驗(yàn)潮流數(shù)據(jù)繪圖時(shí)間長,大量重復(fù)性工作等問題,通過Excel VBA編程語言,批量寫入AutoCAD腳本文件,實(shí)現(xiàn)自動(dòng)化繪制潮流羽狀圖。

【關(guān)鍵字】Excel VBA ;AutoCAD;潮流羽狀圖

中圖分類號: TP391.72 文獻(xiàn)標(biāo)識碼: A 文章編號: 2095-2457(2018)14-0063-002

DOI:10.19694/j.cnki.issn2095-2457.2018.14.027

Using Excel VBA to realize power flow feather diagram in AutoCAD

QI Xiang-li

(Tianjin water transport engineering survey and Design Institute Tianjin Key Laboratory of water transport engineering surveying and mapping, Tianjin 300456, China)

【Abstract】In this paper, in view of the long time of drawing the tidal current data and a lot of repetitive work, this paper writes the AutoCAD script file in batch through the programming language of Excel VBA, and realizes the automatic drawing of the tidal plume.

【Key words】Excel VBA; AutoCAD; Tidal plumes

0 引言

隨著計(jì)算機(jī)硬件和軟件技術(shù)的發(fā)展,各種編程及繪圖軟件應(yīng)運(yùn)而生,大大提高了繪圖效率和美觀度,在水文數(shù)據(jù)的成果展示中,Surfer、Tecplot、mapinfo等軟件都得到了廣泛的應(yīng)用[1],但有些觀測的數(shù)據(jù),如潮流、余流、懸沙粒徑級配曲線的繪制,繪圖處理非常復(fù)雜。

以繪制潮流羽狀圖為例,數(shù)據(jù)一般存儲(chǔ)于excel表格中,再利用AutoCAD根據(jù)數(shù)據(jù)進(jìn)行矢量繪圖,繪圖操作簡單,但報(bào)表中數(shù)據(jù)量大,手動(dòng)繪制重復(fù)勞動(dòng)多,耗時(shí)長,效率較低,且容易出現(xiàn)錯(cuò)誤,此外,這種繪制方式因個(gè)人繪圖習(xí)慣不同,沒有統(tǒng)一的出圖標(biāo)準(zhǔn),隨意性大。

AutoCAD提供SCR文件、DXF文件和AutoLisp等多種接口方式[2],其中SCR文件為腳本文件,可批量寫入繪圖命令,解決重復(fù)勞動(dòng)的弊端,本文即利用Excel VBA編程語言,編寫代碼程序?qū)⒊绷鲾?shù)據(jù)循環(huán)寫入SCR文件,方便AutoCAD程序調(diào)用。

1 圖形各要素的繪制方法

潮流羽狀圖包含潮流矢量起點(diǎn)位置、流速、流向、箭頭、坐標(biāo)軸及其刻度標(biāo)注、比例尺及其刻度標(biāo)注、圖名等要素組成。采用Excel VBA向腳本文件中寫入的相應(yīng)要素的命令分為畫圓、線段、文字標(biāo)注等命令,各要素涉及到的命令如下。

2 程序的實(shí)現(xiàn)

基于Excel成果報(bào)表,通過VBA編程語言,將羽狀圖各組成要素以AutoCAD的命令格式批量寫入SCR文件。代碼中采用的函數(shù)命令:

表1 潮流羽狀圖組成要素及AutoCAD命令代碼

1)在潮流報(bào)表所在文件夾新建腳本文件并進(jìn)行寫入操作:

Open ActiveWorkbook.Path & "\" & ActiveSheet.Name & ".scr" For Output As #1

…(文件寫入操作)

Close #1

2)圖中的各要素均是以圓、線段、文字等命令繪制,因此,將此三個(gè)命令以自定義函數(shù)表示,方便循環(huán)調(diào)用,優(yōu)化代碼結(jié)構(gòu)。

‘畫圓的自定義函數(shù):

Function Yuan(X As Single,Y As Single,Spd As Single)

Dim R As Single

R=0.02

If Spd >0Then

Print #1,"Circle"

Print #1,CStr(X)&","& CStr(Y)

Print #1,CStr(R)

End If

End Function

‘畫線段的自定義函數(shù)

Function XianDuan(X As Single,Y As Single,Spd As Single,Dir As Single)

If Spd>0 Then

Print #1,"Line"

Print #1,CStr(X) &","&CStr;(Y)

Print #1,"@"& CStr(Spd)&"<"&CStr;(Dir)&vbCrLf;

End If

End Function

‘文字標(biāo)注的自定義函數(shù)

Function BiaoZhu(X As Single,Y As Single,H As Single,Ang As Single,Str_bz As String)

Print #1,"-text "& CStr(X)&","& CStr(Y)& " "& CStr(H)& " "& CStr(Ang)&" "& Str_bz & " "

End Function

3 工程實(shí)例

以某水文測驗(yàn)項(xiàng)目為例,共9個(gè)測站同步進(jìn)行水文觀測,形成潮流成果報(bào)表,報(bào)表文件共9個(gè)工作表,每個(gè)工作表表示1個(gè)測站的全潮數(shù)據(jù),每個(gè)工作表共有26組數(shù)據(jù),代表26小時(shí)整點(diǎn)剖面流速數(shù)據(jù),每組共分6層。若采用普通的交互式CAD命令繪制圖形,需要花費(fèi)大量的時(shí)間進(jìn)行重復(fù)的畫圓、線段、文字標(biāo)注等,現(xiàn)通過本程序的程序代碼,導(dǎo)入報(bào)表的代碼窗體中,進(jìn)行自動(dòng)化繪圖。

(1)首先建立Excel VBA與Auto CAD的通信機(jī)制,在excel VBA 引用Auto CAD類型庫,操作流程為:在工作表頁面,同時(shí)按ALT+F11,點(diǎn)擊”工具”-”引用”,選擇Auto CAD 2005 Type Library,如下圖所示。

(2)按F5彈出程序界面如下圖所示,輸出流速值比例,圖名等后執(zhí)行代碼,輸出相應(yīng)SCR文件。

(3)打開Auto CAD,關(guān)閉對象捕捉功能,在”格式”-”單位”中自定義坐標(biāo)系,以北方向?yàn)?°,選中”順時(shí)針(C)”。通過”工具”- ”運(yùn)行腳本(R)”,選擇SCR文件,即可自動(dòng)化繪制潮流羽狀圖,如下圖所示:

4 結(jié)束語

在測繪工作中,內(nèi)業(yè)畫圖是整個(gè)測繪成果的一個(gè)重要組成部分,本文通過Excel VBA 編寫程序軟件,在水文測驗(yàn)項(xiàng)目中取得了很好的實(shí)用效果,實(shí)踐表明,程序操作簡單,自動(dòng)化程度高,可快速、有效的進(jìn)行繪制工作,節(jié)約了大量人工及時(shí)間成本,極大的提高了工作效率。

【參考文獻(xiàn)】

[1]羅文彪,栗金釗.VBA在水工模型試驗(yàn)流速分布圖繪制中的應(yīng)用[J].中國水運(yùn)月刊,2016,16(6):191-195.

[2]徐明,劉功平,徐寧生等.Excel VBA與DXF在農(nóng)配網(wǎng)線路路徑圖繪制中的輔助應(yīng)用[J].低碳世界,2017(33):139-140.

猜你喜歡
羽狀繪圖報(bào)表
來自河流的你
“禾下乘涼圖”繪圖人
基于GUI 的冷泉羽狀流數(shù)值模型可視化系統(tǒng)研究與應(yīng)用
基于高精度海洋動(dòng)力模型的珠江口羽狀流季節(jié)和年際變化規(guī)律研究
LabWindows/CVI中Excel報(bào)表技術(shù)研究
基于HTML5 Canvas繪圖技術(shù)應(yīng)用
從三大報(bào)表讀懂養(yǎng)豬人的成績單
隨機(jī)介質(zhì)理論天然氣水合物羽狀流正演模擬
羽狀Fe-Co合金分級結(jié)構(gòu)粒子的合成與表征
Surfer和ArcView結(jié)合在氣象繪圖中的應(yīng)用
海淀区| 沿河| 慈溪市| 塔城市| 高雄县| 建水县| 分宜县| 宣汉县| 大关县| 浮梁县| 大足县| 海淀区| 樟树市| 三江| 南投县| 寿阳县| 蛟河市| 扶绥县| 团风县| 宜章县| 通许县| 永康市| 灵石县| 定边县| 登封市| 北宁市| 巍山| 修水县| 新疆| 石渠县| 湘潭市| 连城县| 天祝| 松阳县| 吴旗县| 汤阴县| 万宁市| 什邡市| 宜城市| 枞阳县| 中阳县|