AutoCAD塊屬性的生成與提取
1.引言
目前,AutoCAD提供了五種二次開(kāi)發(fā)手段,分別是:AutoLISP, ADS ,ARX , VisualLlSP, VBA和Visual Basic。這五種開(kāi)發(fā)工具都具有強(qiáng)大和豐富的二次開(kāi)發(fā)能力及自己鮮明的特點(diǎn)。由于有些工具不適應(yīng)目前的可視 ..
1.引言
目前,AutoCAD提供了五種二次開(kāi)發(fā)手段,分別是:AutoLISP, ADS ,ARX , VisualLlSP, VBA和Visual Basic。這五種開(kāi)發(fā)工具都具有強(qiáng)大和豐富的二次開(kāi)發(fā)能力及自己鮮明的特點(diǎn)。由于有些工具不適應(yīng)目前的可視化編程要求,而逐漸被其他工具所替代。與其他幾種二次開(kāi)發(fā)方法相對(duì)比,VBA具有全開(kāi)放式的對(duì)象模型、良好的運(yùn)行速度、能夠使AutoCAD與其他應(yīng)用程序直接共享數(shù)據(jù)等優(yōu)點(diǎn)。 本文研究利用VBA操作AutoCAD文件中Block對(duì)象的屬性,將其中包含的明細(xì)欄信息導(dǎo)人Microsoft Excel的Worksheet對(duì)象中,生成符合要求明細(xì)表。研究基于對(duì)象模型的AutoCAD文件信息處理技術(shù),研究介于AutoCAD和Excel之間的數(shù)據(jù)信息交換程序的開(kāi)發(fā),以及對(duì)產(chǎn)生的明細(xì)表進(jìn)行后續(xù)處理的方法。 2.明細(xì)表自動(dòng)提取的實(shí)現(xiàn) 將AutoCAD中的明細(xì)表信息自動(dòng)導(dǎo)人Excel的實(shí)現(xiàn)過(guò)程為:首先通過(guò)VBA訪問(wèn)AutoCAD,然后從AutoCAD中獲取明細(xì)表信息,接著將明細(xì)表信息導(dǎo)人Excel,最后再Excel中對(duì)提取出來(lái)的明細(xì)表信息進(jìn)行進(jìn)一步的處理。 提取明細(xì)欄信息的過(guò)程主要包括通過(guò)塊屬性建立明細(xì)欄、利用VBA提取明細(xì)欄信息、在Excel中對(duì)提取的明細(xì)欄信息進(jìn)行整理等幾個(gè)步驟。 現(xiàn)在以一個(gè)實(shí)際工作中碰到的例子來(lái)具體說(shuō)明利用VBA從AutoCAD文件中提取明細(xì)表信息到Excel的全過(guò)程。因?yàn)樯婕氨C艿脑,刪去了圖紙中原有的具體設(shè)計(jì)內(nèi)容,僅保留了有關(guān)的圖框和明細(xì)欄的內(nèi)容。 2.1.明細(xì)欄的建立 當(dāng)裝配圖中需要輸人明細(xì)欄信息時(shí),按照國(guó)標(biāo)及所標(biāo)的要求,明細(xì)欄位于圖紙標(biāo)題欄的上方,按由下到上的順序填寫。首先在指定位置插入事先生成的標(biāo)示明細(xì)欄各項(xiàng)名稱的明細(xì)欄表頭圖塊:明細(xì)欄頭.dwg。 插人明細(xì)欄表頭后,就可以依次輸人明細(xì)欄的各項(xiàng)內(nèi)容了。為了統(tǒng)一明細(xì)欄的格式和便于以后的明細(xì)欄信息提取,這里采用了帶屬性的塊插人來(lái)輸入各項(xiàng)明細(xì)欄信息。 達(dá)到這個(gè)目的,需要建立一個(gè)帶有屬性的塊mxl。屬性是在一個(gè)塊內(nèi)的變量文字區(qū),利用屬性可以給塊加上文字或數(shù)據(jù)信息。首先按照有關(guān)明細(xì)欄的標(biāo)準(zhǔn)要求畫出一行符合要求的明細(xì)欄表格,然后選擇AutoCAD的下拉菜單中的繪圖Draw-塊Block-定義屬性Define Attributes,或者直接在命令行輸人attdef命令來(lái)生成明細(xì)欄的各項(xiàng)內(nèi)容屬性。 使用帶屬性的塊插人來(lái)創(chuàng)建明細(xì)欄,沒(méi)有具體格式限制,用戶可以根據(jù)實(shí)際需要設(shè)計(jì)白己的格式,具有很大的靈活性,也利于信息的統(tǒng)一提取。 在帶屬性的塊中有Attribute和Block兩個(gè)圖形對(duì)象,一個(gè)Attribute對(duì)象對(duì)應(yīng)明細(xì)欄中的一個(gè)欄月項(xiàng),將對(duì)應(yīng)明細(xì)欄中的所有欄目的Attribute對(duì)象組合在一起放人Block對(duì)象中,該對(duì)象就是用戶定義的一個(gè)明細(xì)欄記錄,然后將定義好的Block插人到圖中,就是在圖紙中放置了一條明細(xì)欄。 由于每張總裝圖或部件裝配圖中明細(xì)欄記錄的個(gè)數(shù)是不定的,因此只需為一個(gè)明細(xì)欄記錄定義一個(gè)Block,該Block包含若干Attribute對(duì)象,對(duì)應(yīng)于名稱、材料和數(shù)量等欄目,在AutoCAD圖形中生成明細(xì)欄時(shí),有多少個(gè)明細(xì)欄記錄就插人多少個(gè)明細(xì)欄Block。 我們用InsertBlock方法將塊插人到圖形中,用AddAttribute方法往塊中添加屬性,屬性的參數(shù)有標(biāo)記、屬性值、插入屬性時(shí)的提示、文本的插人點(diǎn)。 |
【溫馨提示】本頻道長(zhǎng)期接受投稿,內(nèi)容可以是:
1.行業(yè)新聞、市場(chǎng)分析。 2.新品新技術(shù)(最新研發(fā)出來(lái)的產(chǎn)品技術(shù)介紹,包括產(chǎn)品性能參數(shù)、作用、應(yīng)用領(lǐng)域及圖片); 3.解決方案/專業(yè)論文(針對(duì)問(wèn)題及需求,提出一個(gè)解決問(wèn)題的執(zhí)行方案); 4.技術(shù)文章、白皮書,光學(xué)軟件運(yùn)用技術(shù)(光電行業(yè)內(nèi)技術(shù)文檔);
如果想要將你的內(nèi)容出現(xiàn)在這里,歡迎聯(lián)系我們,投稿郵箱:service@opticsky.cn
1.行業(yè)新聞、市場(chǎng)分析。 2.新品新技術(shù)(最新研發(fā)出來(lái)的產(chǎn)品技術(shù)介紹,包括產(chǎn)品性能參數(shù)、作用、應(yīng)用領(lǐng)域及圖片); 3.解決方案/專業(yè)論文(針對(duì)問(wèn)題及需求,提出一個(gè)解決問(wèn)題的執(zhí)行方案); 4.技術(shù)文章、白皮書,光學(xué)軟件運(yùn)用技術(shù)(光電行業(yè)內(nèi)技術(shù)文檔);
如果想要將你的內(nèi)容出現(xiàn)在這里,歡迎聯(lián)系我們,投稿郵箱:service@opticsky.cn
文章點(diǎn)評(píng)
機(jī)械軟件
24小時(shí)人氣排行
最新文章
- 低成本高速度——一種新型高速三維隨機(jī)讀取顯微鏡
- “超構(gòu)光學(xué)與非線性光子學(xué)”國(guó)際研討會(huì)在天津舉行
- 小米“變焦鏡頭以及拍攝裝置”專利公布
- 國(guó)產(chǎn)首條超高世代基板玻璃生產(chǎn)線點(diǎn)火投產(chǎn)
- 舜宇光學(xué)“光學(xué)攝影鏡頭”專利公布
- 北京理工大學(xué)科研團(tuán)隊(duì)開(kāi)辟片上光學(xué)研究新領(lǐng)域
- 利用激光冷原子方法制備成基于自旋的薛定諤貓態(tài)
- 西南激光產(chǎn)業(yè)戰(zhàn)略發(fā)展聯(lián)盟成立
- 諾爾光電“單光子雪崩二極管圖像傳感器及其制造方法”專利公布
- 國(guó)家大科學(xué)裝置“先進(jìn)阿秒激光設(shè)施”(西安部分)啟動(dòng)建設(shè)