999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于AutoCAD二次開發批量繪制設備銘牌

2020-05-11 12:24:30張培媛秦少東
數字技術與應用 2020年2期
關鍵詞:二次開發

張培媛 秦少東

摘要:針對工作實際中批量制作設備銘牌的需要,采用Excel與AutoCAD相結合的方法,利用Visual Basic將兩個軟件建立連接。Excel表格中列出需要制作銘牌的各項信息,AutoCAD利Visual Basic編寫的程序將用Excel中內容放在指定的位置,從而實現批量制作銘牌。

關鍵詞:批量制作銘牌;AutoCAD;Visual Basic;二次開發

中圖分類號:TP391.7 文獻標識碼:A 文章編號:1007-9416(2020)02-0122-02

0 引言

AutoCAD是現在使用人數最多的CAD軟件,其交互菜單和命令行的設計使得很多非計算機專業人員也能很快入門這個軟件,從而提高工作效率。在我們平時的工作中,每個行業都有其特殊的一些重復工作,這時就可以利用AutoCAD的二次開發,快速而準確的完成這些重復工作。

1 準備數據與圖形模板

先按照Excel表格中的字段名稱A列序號,B列為設備名稱,C列為規格型號,D列為制造廠家,E列為出廠日期,F列為出廠編號。在CAD中繪制一個示例模板,以為之后的批量制作提供參考[1-3]。表格中共有5個制作銘牌使用的相關信息,即設備名稱,規格型號,制造廠家,出廠日期和出廠編號,據此畫出圖1所示的模板。繪制此模板需要注意,模板邊框是多段線,方便之后復制時設置選擇條件。

2 編寫程序

2.1 編寫Excel與AutoCAD連接程序,獲取銘牌內容

激活要與之通信的Excel應用程序,通過定位獲取表格的最后行數,將表中數據放入數組中。主要程序如下:

Set ExcelApp = CreateObject("excel.application")

lj = ExcelApp.Application.GetOpenFileName _

(FileFilter:="制作銘牌的數據 ,*.xlsx; *.xlsm; *.xlsb;*.xls")

ExcelApp.Workbooks.Open (lj)

ExcelApp.Visible = 1

ExcelApp.ScreenUpdating = False

Set excelsheet = ExcelApp.ActiveWorkbook.sheets("數據表格")

endA = excelsheet.usedrange.Rows.Count

arrex = ExcelApp.ActiveWorkbook.sheets("數據表格").range("A2:F" & endA)

2.2 過濾目標多段線

由于一個圖紙中可能會出現多種規格的銘牌,所以針對目標銘牌模板,可以建立一個選擇集,由用戶在屏幕框選,目標是獲取其選擇內容中多段線,同時獲取到該多段線的外邊框最大最小坐標。主要程序如下:

Set SSetbh = ThisDrawing.SelectionSets.Add("K_SSET")

fType1(0) = 0: fData1(0) = "LWPOLYLINE"

SSetbh.SelectOnScreen fType1, fData1

Set Ent = SSetbh.Item(0)

Ent.GetBoundingBox minExt, maxExt

2.3 批量繪制銘牌

利用獲取到數組中的數據,結合步驟1中提供的銘牌模板,由用戶指定排圖的起點坐標從而確定排圖位置,實現將獲取的數據批量繪制到圖形文件中。在本例中設置的參數為圖紙間隔是20,插入文件距離底邊是10,每行間距都是10,文字高度是3,寫文字的框寬度是55。需要注意的是Y向是間距加文字高度。主要程序如下:

For i = 1 To UBound(arrex)

Sbmc = arrex(i, 2) '設備名稱

Ggxh = arrex(i, 3) '規格型號

Zzcj = arrex(i, 4) '制造廠家

Ccrq = arrex(i, 5) '出廠日期

Ccbh = arrex(i, 6) '出廠編號

For Each sset1Entity In SSetyd

Set CopyEntity = sset1Entity.Copy()

point1(0) = minExt(0): point1(1) = minExt(1)

If i = 1 Then

point2(0) = ptget(0): point2(1) = ptget(1)

End If

CopyEntity.Move point1, point2

Next

根據模板的文字高度與間距設置插入點的橫向與縱向坐標。需要將其x向,y向,z向的坐標全部寫出,其中y向坐標需要根據文字高度和間距進行遞減,本例中遞減量是10。以設備名稱與型號為例,主要程序如下:

Sbmc_insertPt(0) = point2(0) + 30

Sbmc_insertPt(1) = point2(1) + 50

Sbmc_insertPt(2) = 0

Ggxh_insertPt(0) = point2(0) + 30

Ggxh_insertPt(1) = point2(1) + 40

Ggxh_insertPt(2) = 0

定好坐標后,可以插入文字,以設備名稱為例,程序如下:

Set textObj = ThisDrawing.ModelSpace.AddMText(Sbmc_insertPt, 55, Sbmc)

3 繪制結果確認

核對批量繪制的結果,若是第一次運行程序需要仔細核對五種信息對應的位置,字體的大小與間距,每個銘牌之間的間距,排列的總長度是否超出要求的尺寸以及銘牌上內容的書寫是否美觀等[4]。如果有大批量的銘牌需要繪制,可以在第2.3步設置橫坐標的程序部分按需要進行改動,例如每25個位于一行。

4 結語

上述代碼除了對銘牌的批量繪制,還可用于其他類似用表格數據批量繪制CAD圖形的情況。調試程序到符合自己的工作需要后,可以將文件存儲為.dvb文件,別的電腦使用時在命令行輸入vbaload將此文件加載后,輸入vbarun,在出現的界面中選擇本程序,然后運行即可。通過對AutoCAD的二次開發,可以高效準確的完成平時工作中的批量重復工作,提高人員的工作效率。

參考文獻

[1] 張帆,鄭立楷,盧擇臨,等.AutoCAD VBA 二次開發教程[M].北京:清華大學出版社,2006.

[2] 張帆,鄭立楷,王華杰.AutoCAD VBA 開發精彩實例教程[M].北京:清華大學出版社,2004.

[3] Excel Home.別怕,Excel VBA其實很簡單[M].北京:人民郵電出版社,2012.

[4] 羅剛君.Excel VBA程序開發自學寶典(第2版)[M].北京:電子工業出版社,2011.

Batch Drawing Equipment Nameplates Based on AutoCAD Secondary Development

ZHANG Pei-yuan1, QIN Shao-dong2

(1.Zhongwang(Liaoyang) Aluminum Formwork Manufacturing Co., Ltd., Liaoyang? Liaoning? 111000;

2.Liaoning Zhongwang Group Co., Ltd., Liaoyang? Liaoning? 111000)

Abstract:To meet the needs of batch production of equipment nameplates in practice, the method of combining Excel and AutoCAD is used, and Visual Basic is used to connect the two software. The Excel table lists all the information needed to make nameplates. Programs written in AutoCAD and Visual Basic will use the contents of Excel to be placed in designated locations, so as to make batches of nameplates.

Key words:nameplate production in batches; AutoCAD; Visual Basic; secondary development

猜你喜歡
二次開發
淺談基于Revit平臺的二次開發
甘肅科技(2020年20期)2020-04-13 00:30:02
西門子Operate高級編程的旋轉坐標系二次開發
淺談Mastercam后處理器的二次開發
模具制造(2019年3期)2019-06-06 02:11:02
基于C#的AutoCAD建筑構件庫二次開發
江西建材(2018年2期)2018-04-14 08:01:14
西門子Easy Screen對倒棱機床界面二次開發
基于全站儀二次開發的覆冰厚度測量與實現
電測與儀表(2016年9期)2016-04-12 00:29:52
Micaps3.2 版本二次開發入門淺析
西藏科技(2015年12期)2015-09-26 12:13:51
基于VB的ANSYS二次開發在變壓器抗短路性能分析中的應用
基于CATIA的橡皮囊成形毛料展開的二次開發
機械工程師(2015年9期)2015-02-26 08:38:10
ANSYS Workbench二次開發在汽車穩定桿CAE分析中的應用
汽車零部件(2014年5期)2014-11-11 12:24:32
主站蜘蛛池模板: 久一在线视频| a级毛片免费网站| 又爽又大又黄a级毛片在线视频| 国产99视频精品免费观看9e| lhav亚洲精品| 99re免费视频| 日韩欧美国产成人| 国产国语一级毛片| 亚洲精品第一页不卡| 国产精品无码AV中文| 亚洲人成影视在线观看| 国产乱人视频免费观看| 特级做a爰片毛片免费69| 国产尤物在线播放| 欧美午夜理伦三级在线观看| 中文字幕日韩久久综合影院| 欧美精品导航| 国产亚洲精品在天天在线麻豆 | 99精品一区二区免费视频| 亚洲a级毛片| 亚洲高清免费在线观看| 中国毛片网| 亚洲成网777777国产精品| 在线精品亚洲国产| 国产成人乱码一区二区三区在线| 国产精品第一区在线观看| 免费福利视频网站| 国产一区成人| 动漫精品中文字幕无码| 日韩高清无码免费| 亚洲欧洲日本在线| 一本大道无码日韩精品影视| 欧美第二区| 亚洲啪啪网| 国产福利一区二区在线观看| 日本精品视频一区二区| 伊人福利视频| 国产精品亚洲日韩AⅤ在线观看| 毛片大全免费观看| 国产在线精品网址你懂的| 欧美成人综合视频| 国产精品短篇二区| 四虎永久在线| 日本午夜视频在线观看| 精品国产91爱| 三上悠亚精品二区在线观看| 国产精品香蕉| 99久久无色码中文字幕| 欧美成人精品高清在线下载| 波多野结衣一二三| 思思热精品在线8| 国产91色在线| 国产精品嫩草影院视频| 精品国产成人av免费| 91福利免费视频| 97国产精品视频自在拍| 狠狠色成人综合首页| 日本欧美精品| 国产精品午夜福利麻豆| 在线观看精品国产入口| 婷婷色中文| AV网站中文| 国产午夜精品一区二区三| 亚洲人成人伊人成综合网无码| 亚洲精品无码抽插日韩| 不卡网亚洲无码| 欧美成人日韩| 1769国产精品免费视频| 多人乱p欧美在线观看| 亚洲天堂日韩av电影| 国产在线精品99一区不卡| 欧美第二区| 国产资源免费观看| 中文字幕在线一区二区在线| 99精品免费欧美成人小视频 | lhav亚洲精品| 天堂网国产| 婷婷丁香色| 九九久久精品免费观看| 色网站免费在线观看| 欧美a在线| 国产精品美女免费视频大全|