CAD氣泡式標(biāo)注程序.doc_第1頁
CAD氣泡式標(biāo)注程序.doc_第2頁
CAD氣泡式標(biāo)注程序.doc_第3頁
CAD氣泡式標(biāo)注程序.doc_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

(defun C:BALLOON (/ tmp ts th nh ip sp ali le errexit bx acadver LBLOCK BLAYER TEXTGAP CHARWIDTH BWIDTH) (setq LBLOCK T) ;“氣泡”創(chuàng)建為塊,除非這里L(fēng)BLOCK設(shè)為nil (setq BLAYER sdim) ;放置“氣泡”的圖層:XXXX=放置在層XXXX,nil=使用當(dāng)前層 (setq TEXTGAP 0.8) ;希望的文本和“氣泡”的間距(1單位=尺寸文本高) (setq CHARWIDTH 1.0) ;1個(gè)單位高字符的平均寬度(僅用于R11) (setq BWIDTH 0.04) ;“氣泡”線寬:nil=無寬度(1單位=尺寸文本高,如果氣泡是橢圓,無效,且在R13中PELLIPSE=0) (setq acadver (read (substr (getvar ACADVER) 1 2) (if (/= (type acadver) INT) (setq acadver 0) (defun errexit (s) (princ n錯(cuò)誤: ) (princ s) (restore) ) (defun bx () (if le (entdel le) (setvar CMDECHO (car oldvar) (setvar BLIPMODE (cadr oldvar) (setvar OSMODE (nth 2 oldvar) (setvar CLAYER (nth 3 oldvar) (setvar DONUTID (nth 4 oldvar) (setvar DONUTOD (nth 5 oldvar) (setq *error* olderr) (princ) ) ;Main Program (setq T (not nil) (setq olderr *error* restore bx *error* errexit ) (setq oldvar (list (getvar CMDECHO) (getvar BLIPMODE) (getvar OSMODE) (getvar CLAYER) (getvar DONUTID) (getvar DONUTOD) ) ) (setvar CMDECHO 0) (setvar BLIPMODE 0) (setvar OSMODE 0) (terpri) (if (= acadver 11) ;是R11嗎? (defun textbox (elist) ;如果是,定義一個(gè)定制的文本框函數(shù) (list (0 0 0) (list (* (strlen (cdr (assoc 1 elist) (cdr (assoc 40 elist) CHARWIDTH) (cdr (assoc 40 elist) 0 ) ) ) ) (if (= 0 (setq th (cdr (assoc 40 (tblsearch style (getvar textstyle) ) ) (setq nh (setq th (* (getvar DIMTXT) (getvar DIMSCALE) (setq nh nil) ) (if BLAYER (command ._LAYER (if (tblsearch LAYER BLAYER) _S _M) BLAYER ) ) (if (setq ip (setq sp (getpoint 拾取旁注線起點(diǎn): ) (progn (entmake (list (0 . POINT) (cons 10 (trans sp 1 0) (setq le (entlast) (command ._DIM1 _LEADER) (setvar CMDECHO 1) (command sp) (while (progn (initget 128) (setq sp (getpoint sp) ) (command sp) ) (setvar CMDECHO 0) (command) (setq sp (trans (cdr (assoc 11 (entget (entlast) 0 1) (setq ali (angle (trans (cdr (assoc 10 (entget (entlast) 0 1) sp) (setq tmp (getstring T 鍵入文本: ) (setq ts (textbox (list (cons 1 tmp) (cons 40 th) (setq ts (list (+ (- (car (cadr ts) (car (car ts) (* 2 TEXTGAP th) (* 3 TEXTGAP th) ) ) (command ._TEXT _M (polar sp ali (* 0.5 (if (= (strlen tmp) 2) (cadr ts) (car ts) ) ) (if nh (command th) (command (if (= (strlen tmp) 2) 0 (rtd (if (and ( ali (/ pi 2) (+ ali pi) ali ) ) ) tmp ) (if (= (strlen tmp) 2) (command ._DONUT (cadr ts) (cadr ts) (polar sp ali (* 0.5 (if (= (strlen tmp) 2) (cadr ts) (car ts) ) ) (command ._ELLIPSE sp (polar sp ali (if ( BWIDTH 0) (not (and (= acadver 13) (zerop (getvar PELLIPSE) ( (strlen tmp) 2) ) (command ._PEDIT (entlast) W (* th BWIDTH) X) ) (if LBLOCK (progn (entmake (list (cons 0 BLOCK) (cons 2 *U) (cons 70 1) (cons 10 ip) ) (setq th (setq tmp le) (while (setq tmp (entnext tmp) (entmake (entget tmp) ) (setq tmp (entmake (list (cons 0 ENDBLK) (wh

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論