AutoCAD中自動(dòng)批量修改圖形文件的程序
(作者未知) 2009/7/19
一、概述
在工程CAD繪圖中,常常會(huì)遇到下列棘手的問題:
在施工圖后期,大部分圖形文件都已完成,但因某一條件的變化,需在某卷圖中增加(或減少)一些圖紙,這將導(dǎo)致許多相關(guān)圖形文件的內(nèi)容不得不進(jìn)行相應(yīng)的修改:如高層代號(hào)、圖紙編號(hào)等。
在實(shí)際工程設(shè)計(jì)中,為了提高效率,60%的圖形是通過修改已有的設(shè)計(jì)而形成新的圖形,這時(shí)常常進(jìn)行一些重復(fù)性的工作,比如圖框的替換、設(shè)備元器件的變更等,有時(shí),要幾張圖,甚至幾十張圖做同樣的修改。
對(duì)于上述情況,過去一般的作法是將每一圖形文件調(diào)出來,逐一修改。在圖幅比較大時(shí),只能反復(fù)使用ZOOM命令,當(dāng)所涉及的圖形文件較多時(shí)(有時(shí)會(huì)有幾百個(gè)),采用手動(dòng)操作,其工作量非常大,而且大部分操作都是重復(fù)性的工作,長時(shí)間操作很容易發(fā)生混淆和遺漏,不但效率低,圖紙質(zhì)量又不能保證。
能否將這些重復(fù)性的工作讓計(jì)算機(jī)來完成呢?
AutoCAD是圖形設(shè)計(jì)的通用軟件,它為各種專業(yè)用的CAD提供了盡可能多的圖形編輯功能,但很難實(shí)現(xiàn)自動(dòng)化作圖的功能。
在實(shí)踐中我們用C語言編寫了CHSCR應(yīng)用程序,采用該程序設(shè)計(jì)人員只需編寫一個(gè)簡(jiǎn)單的命令文件CH.SCR和要處理的文件表FILE.TAB,經(jīng)過CHSCREXE應(yīng)用程序轉(zhuǎn)換,形成一個(gè)可以處理FILETAB所列出的所有文件的CHGESCR命令文件。然后利用AutoCAD的 SCRIPT命令,就可使計(jì)算機(jī)按命令自動(dòng)批量修改圖形并存盤或生成PLT繪圖文件。由于采用了易于為非專業(yè)編程人員所接受的SCR文件方式來編寫命令CHSCR,使用非常方便。
二、如何使用CHSCR
1. 創(chuàng)建CHSCR命令文件
CH.SCR文件的內(nèi)容是由AutoCAD的命令和響應(yīng)序列所組成的ASCⅡ文件,是可在AotuCAD編輯狀態(tài)下執(zhí)行的文本文件。
CH.SCR包含了可在指定圖形中自動(dòng)重復(fù)執(zhí)行命令序列。
例:把圖形文件C800-01~ C800-98中的圖紙編號(hào)2066DD3改變2087DD2。高層代號(hào)C13改為D24,設(shè)備型號(hào)DZ20改為C45AD。
在DOS狀態(tài)下用文本編輯軟件建立CH.SCR文件:
CHTEXT_all _ _2066DD3﹤Enter﹥
2087DD2﹤Enter﹥
CHTEXT_all _ _C13﹤Enter﹥
D24〈Enter〉
CHTEXT _all _ _DZ20﹤Enter﹥
C45AD〈Enter〉
PLOT〈Enter〉
〈Enter〉
〈Enter〉
其中:
_代表一個(gè)空格
〈Enter〉代表回車
CHTEXT修改圖中文字的LISP程序
•AotoCAD中文字修改功能較弱,AutoCADR12.0中曾加了DDEDIT修改文字命令,但只能用鼠標(biāo)器手工修改,且一次只能改一個(gè)字符串不適用程序化操作。
因此,在編寫SCR命令文件時(shí)我們采用了修改圖中文字的LISP程序CHTEXT.LSP(其清單附后)。將其裝入ACAD.LSP后,只要鍵入CHTEXT,就可按漢字提示使用,它一次可以修改多個(gè)字符串。
•當(dāng)編寫命令文件時(shí),必須考慮每條AutoCAD命令中的所有響應(yīng)和提示。命令文件中的每個(gè)空格都是有意義的,因?yàn)锳otuCAD將它看作回車,所以不能隨意增減。
•如果不需要輸出PLT繪圖文件,PLOT后面四行可以不要。
•CHSCR有兩個(gè)作用:
①如果需要修改的圖形文件較少,可以在ACAD中通過SCRLPT命令直接調(diào)用CH.SCR。
②可以在ACAD中通過SCRIPT命令試運(yùn)行一次,看是否有錯(cuò)。
在ACAD命令狀態(tài)下,鍵入以下命令即可按CH.SCR文件要求,對(duì)當(dāng)前圖形完成所需的修改。
Command:script﹤Enter﹥
Script file:ch﹤Enter﹥
當(dāng)所涉及的圖形文件較多時(shí)(十幾個(gè)以上),采用手動(dòng)操作,將每一圖形文件調(diào)出來,逐一修改,效率太低。因此建議采用以下步驟,使計(jì)算機(jī)按命令自動(dòng)批量修改圖形文件。
2. 建立圖形文件表FILE.TAB
創(chuàng)建完CH.SCR后,下一步應(yīng)把需要修改圖形文件名(.DWG)存入FILE.TAB中:
例如:
C800-01
C800-02
C800-03(未完,下一頁)
|