版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、AutoCAD內(nèi)常用術(shù)語(yǔ)的自動(dòng)標(biāo)注方法摘要HT5SS本文提出了一種用對(duì)話框?qū)崿F(xiàn) AutoCAD內(nèi)常用術(shù)語(yǔ)自動(dòng)標(biāo)注的方法。用這 種方法,可方便地將各種常用術(shù)語(yǔ)標(biāo)注在圖中,為CAD應(yīng)用提供了方便。一、引言漢字的標(biāo)注在CAD設(shè)計(jì)制圖中是一個(gè)重要的部分,也是一個(gè)較為繁瑣、困 難的部分。目前,在AutoCAD內(nèi)漢字的輸入大多采用拼音方式,對(duì)拼音不熟悉 人人來(lái)說(shuō)漢字的輸入就很困難。如果能將設(shè)計(jì)中常用的文字術(shù)語(yǔ)直觀地顯示出來(lái) 供設(shè)計(jì)人員調(diào)用,將會(huì)極大地提高工作效率。本文就此進(jìn)行研究,提出了一種用對(duì)話框(下圖)將常用術(shù)語(yǔ)顯示并供調(diào)用的方法,同時(shí)給出了源程序,供大家參 考。該程序已應(yīng)用于我院的實(shí)際生產(chǎn)中。二、原
2、理及方法AutoCAD對(duì)話框結(jié)構(gòu) 包含有多種構(gòu)件,如 edit_box(編輯框)、 list_box(列表框)、 radio_button(多選一按鈕) 等,利用這些工具,可以開(kāi) 發(fā)出界面友好的實(shí)用程序。左圖就是用這種方法實(shí) 現(xiàn)的。將常用詞組分類(lèi),分 別存于不同的文件中。根據(jù) 多選一按鈕中所驅(qū)動(dòng)的分組 號(hào)分別打開(kāi)不同的文件,將 文件內(nèi)容讀入并顯示于列表 框內(nèi),供設(shè)計(jì)人員使用。同 時(shí),設(shè)有一個(gè)編輯框,可將所點(diǎn)取的詞組顯示于編輯框中,便于用戶對(duì)詞組進(jìn)行 適當(dāng)?shù)男薷?,如刪除或增加字符等。 這種方法有一個(gè)優(yōu)點(diǎn),用戶可十分方便地根 據(jù)自己需要修改或添加詞組內(nèi)容。對(duì)話框文件及驅(qū)動(dòng)程序分別見(jiàn)#CAL.DCL
3、及#CAL.LSP。三、程序使用方法先用WPS、EDIT等編輯程序分類(lèi)建立詞組庫(kù)(注意,需要存成純文本格式), 每個(gè)詞組占一行。程序要求將常用術(shù)語(yǔ)、圖紙名稱(chēng)、房間名稱(chēng)等各分類(lèi)所對(duì) 應(yīng)的詞組庫(kù)文件名分別為 $TXT1.DAT、$TXT2.DAT、$TXT3.DAT龐。除第一個(gè) 文件不能少外,其它文件可空缺,但當(dāng)點(diǎn)取該分類(lèi)項(xiàng)時(shí),系統(tǒng)會(huì)提示有關(guān)文件不 存在的信息?;爻S眯g(shù)語(yǔ) 回圖紙名稱(chēng) 回房間名稱(chēng) 回衛(wèi)生器具 J管材配件 a器材儀表 巨常用設(shè)備 回梅筑物 回其它生曹一圖而層給排2圖?圖匿匿匿匿匿舊給所選詞組苜層給排水平面圖0K 取消然后將所建立的詞組庫(kù)文件及所提供的程序 #TXT.LSP 和對(duì)話框文
4、件#TXT.DCL拷貝到 AutoCAD 所能找到的目錄(環(huán)境變量ACAD 所設(shè)置的任一目錄如ACADSUPPORT 或當(dāng)前目錄) 中, 在 Command : 命令下鍵入 ( LOAD #TXT )進(jìn)行程序的加載,即可象其它 AutoCAD 內(nèi)部命令一樣使用 #TXT 了。也可在所使用的菜單文件(如 ACAD.MNU )中的下拉式菜單或屏幕菜單部分加上下面一行:常用詞組ACACAP(if (null c:#txt) (load#txt) #txt以后可直接從菜單中驅(qū)動(dòng)該程序。在 COMMAND :狀態(tài)下,鍵入 #TXT 后,系統(tǒng)彈出一個(gè)對(duì)話框,根據(jù)需要點(diǎn)取所需的詞組類(lèi)別,再?gòu)牧斜砜騼?nèi)選擇所需
5、詞組。 所點(diǎn)取的詞組會(huì)在編輯框 所選詞組中顯示。用戶可以在此對(duì)詞組進(jìn)行必要的修改,點(diǎn)取 OK 后,根據(jù)提示輸入字高及起點(diǎn)即可把詞組寫(xiě)到圖中。需要說(shuō)明的是,本程序中是將文字以HZ字型寫(xiě)到圖中,要求字體為 TXT.SHX及 HZTXT.SHX 。若您的軟件中無(wú)這兩種字體,可將其它字體改名為該兩種字體(要求一個(gè)為英文字體,一個(gè)為中文字體),或?qū)⒊绦蛐薷臑槟哂械淖煮w。但需要注意, 也許您的字體在用于設(shè)置字型時(shí)會(huì)多一個(gè)選項(xiàng), 詢問(wèn)是否垂直書(shū)寫(xiě)文字,此時(shí),可將字型設(shè)置一句改為: (command STYLE HZ txt,hztxt 0 0.70 n n n) 即可。本程序在 AutoCAD R12.
6、0 FOR DOS 及 FOR WINDOWS 版上均調(diào)試通過(guò)。(defun c:#txt ( / oldcmd olderr ok txt_tb txt dcl_id sty fp nn ht pt txterr diag initwr_txt old_nn); 定義錯(cuò)誤處理子程序(defun txterr(s)(if (and (/= s console break)(/= s Function cancelled)(/= s quit / exit abort)(princ (strcat nError: s)(if olderr (setq *error* olderr); 恢復(fù)原系統(tǒng)
7、設(shè)置(if oldcmd (setvar cmdecho oldcmd)(princ); 對(duì)話框顯示及驅(qū)動(dòng)程序(defun diag ( / i)(if ( (setq dcl_id (load_dialog #txt) 0) ;加載對(duì)話框文件(progn(if (new_dialog filetext dcl JX*6id); 顯示對(duì)話框(progn start_list what) ;將詞組顯示到列表框內(nèi) (mapcar add_list txt_tb )(end_list)(setq i 1)(repeat nn ;點(diǎn)取詞組分類(lèi)項(xiàng)后的操作(action_tile (strcat c (i
8、toa i) (wr_txt)(setq i (1+ i) )(action_tile what (setq i (atoi $value) ;選中詞組 (setq txt (nth i txt_tb)(set_tile sel_ok txt) )(action_tile sel_ok (setq txt $value)(action_tile accept (setq ok T)(done_dialog 1)(unload_dialog dcl_id) (action_tile cancel (unload_dialog dcl_id) (start_dialog)(prompt n 無(wú)法顯
9、示對(duì)話框FILETEXT! 請(qǐng)檢查對(duì)話框內(nèi)容!) )(prompt n 無(wú)法加載對(duì)話框文件#TXT.DCL! 請(qǐng)檢查文件是否存在及路徑是否正確!) ) ); 初始化程序, 把第 1 個(gè)分組項(xiàng)中的詞組讀入表txt_tb 中(defun init( / fname fp txt1)(setq fname (findfile $txt1.dat) (if (not fname)(progn (princ n 文件 $TXT1.DAT 不存在 !) (exit) ; 文件不存在, 則退出)(setq fp (open fname r)(setq txt_tb ()(while (setq txt1 (
10、read_line fp)(setq txt_tb (cons txt1 txt_tb)(close fp)(setq txt_tb (reverse txt_tb)(setq old_nn 1) ;記錄索引號(hào)); 更換列表框內(nèi)詞組顯示內(nèi)容(defun wr_txt ( / fname fname1 fp txt1 i)(setq i 1)(while (= i nn); 判別哪個(gè)詞組項(xiàng)被點(diǎn)中(if (= (get_tile (strcat c (itoa i) 1)(setq fname1 (strcat $txt (itoa i) .dat) i nn)(setq i (1+ i)(if
11、(setq fname (findfile fname1); 查找文件是否存在 (progn(setq old_nn (atoi (substr fname1 5) ;記錄索引號(hào)(setq fp (open fname r)(setq txt_tb ()(while (setq txt1 (read_line fp) ;依次讀出各詞組(setq txt_tb (cons txt1 txt_tb)(close fp)(setq txt_tb (reverse txt_tb)(start_list what) ;在列表框內(nèi)顯示詞組內(nèi)容(mapcar add_list txt_tb)(end_lis
12、t) ; progn(progn(alert (strcat 文件 fname1 不存在 !) (set_tile (strcat c (itoa old_nn) 1) ;恢復(fù)原記錄號(hào) ) ; if); 主程序開(kāi)始(setq olderr *error*error* txterroldcmd (getvar cmdecho)(setvar cmdecho 0) ; 命令不回顯(setq nn 9) ; 詞組分類(lèi)數(shù)(init) ; 初始化(diag) ; 驅(qū)動(dòng)對(duì)話框(if (and ok txt)(progn(if (or (= (setq sty (tblsearch STYLE HZ) ni
13、l); HZ 字型是否存在(/= (cdr (assoc 40 sty) 0) ; 字高是否為定值(/=(getvar TEXTSTYLE) HZ); 當(dāng)前字型是否為 HZ )(command STYLE HZ txt,hztxt” 0 0.7 0 n n); 設(shè)置HZ字型 ) (initget (+ 2 4) ;下面的輸入值要求大于 0(setq ht (getreal n 請(qǐng)輸入字高 :)(if (not ht) (setq ht 500)(setq pt (getpoint n 請(qǐng)點(diǎn)取文字起點(diǎn) :)(command text pt ht 0 txt)(setq *error* older
14、r) ;恢復(fù)原設(shè)置(setvar cmdecho oldcmd)(princ)/ #txt.dcl/ 供#txt.lsp 調(diào)用filetext : dialog / 對(duì)話框名稱(chēng)label = 常用詞組 ; / 對(duì)話框標(biāo)識(shí): row : boxed_column label = 索 引 ;: radio_button label = 常用術(shù)語(yǔ) ; / 多選一按鈕key = c1;value = 1; / 初始值為 1, 表示選中: radio_button label = 圖紙名稱(chēng) ;key = c2;: radio_button label = 房間名稱(chēng) ;key = c3;: radio_button label = 衛(wèi)生器具 ;key = c4;: radio_button label = 管材配件 ;key = c5;: radio_button label = 器材儀表 ;key = c6;: radio_button label = 常用設(shè)備 ;key = c7;: radio_but
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 感恩演講稿大全1200字(35篇)
- 課堂教學(xué)質(zhì)量檢測(cè)體系建設(shè)方案范文(3篇)
- 裝飾裝修工程承包合同范本(30篇)
- 新時(shí)代青年的使命與擔(dān)當(dāng)1
- 必修③-第六章-生態(tài)環(huán)境的保護(hù)
- 一元二次不等式及解法
- 各個(gè)班組三級(jí)安全培訓(xùn)試題全套
- 公司安全管理員安全培訓(xùn)試題及解析答案
- 班組安全培訓(xùn)試題帶答案(能力提升)
- 廠里安全培訓(xùn)試題完整參考答案
- 試用期員工轉(zhuǎn)正規(guī)章制度(8篇)
- 2023-2024學(xué)年全國(guó)小學(xué)二年級(jí)上數(shù)學(xué)人教版期中考試試卷(含答案解析)
- 3上修改病句練習(xí)
- 2024年廣東茂名高州市教師發(fā)展中心和高州市教育事務(wù)中心選聘歷年高頻難、易錯(cuò)點(diǎn)500題模擬試題附帶答案詳解
- 2024年建筑繼續(xù)教育-一級(jí)建造師繼續(xù)教育考試近5年真題集錦(頻考類(lèi)試題)帶答案
- 廣西七市聯(lián)考2025屆高三上學(xué)期10月摸底測(cè)試 歷史 含答案
- 大學(xué)生職業(yè)發(fā)展與就業(yè)指導(dǎo) 課件 模塊3、4 職業(yè)世界探索、大學(xué)生就業(yè)和未來(lái)發(fā)展的主要方式
- 教育家精神引領(lǐng)高校教師成長(zhǎng)的解釋框架、認(rèn)知坐標(biāo)與行動(dòng)路徑
- Unit3 My Weekend Plan(教學(xué)設(shè)計(jì))-2024-2025學(xué)年人教PEP版英語(yǔ)六年級(jí)上冊(cè)
- 體質(zhì)健康成績(jī)測(cè)試全自動(dòng)化計(jì)算模板
- 低壓柜試驗(yàn)報(bào)告
評(píng)論
0/150
提交評(píng)論