工程圖中標序號的程序

tags: 工程圖    時間:2014-03-06 12:19:24
工程圖中標序號的程序簡介
在工程設計工作中,經常要對設備、零件等標註序號。根據標準化要求,在標註點處要加上實心小圓點,然後引出直線 ;在另一端畫出一個8~10mm的圓 ;在圓中寫上所標註的序號文字。用AutoCAD……
工程圖中標序號的程序正文

在工程設計工作中,經常要對設備、零件等標註序號。根據標準化要求,在標註點處要加上實心小圓點,然後引出直線 ;在另一端畫出一個810mm的圓 ;在圓中寫上所標註的序號文字。用AutoCAD基本命令完成上述工作費工費時,並且不易修改,特別是在圖形密集處,效果很不理想,圖面質量差。


我們利用AutoLISP語言編製了BXH.LSP(標序號),很好地解決了以上問題,該程序為AutoCAD增加了一條BXH命令,可方便地在圖紙中標註序號,並且如果修改或刪除標註也十分方便,工效提高十倍以上。根據該程序的編製原理,可演繹出使用在機械製圖中標註序號,標註焊接符號等程序。


BXH.LSP源程序如下:

  ;---------------------------

 (defun C:Bxh (/ p1 p2 p3 1 ang 1 bx bxh radi txth) ;標序號


(setq radi 5) ;圓圈半徑


(setq txth 5) ;字高


(if (not bx) (setq bx 1))


(setq p1 (getpoint "\n請選擇起點:")) ;在零件上選一點


(setq p2 (getpoint "\n請選擇第二點或回車表示無第二點")) ;標註位置處一點


(setq bxh (getint (gstr "\n請輸入序號" bx))) ;序號數


(if bxh (setq bx bxh))


(cond (p2


(command "layer" "set" 2 " ") ;改到畫細線圖層


(setq ang 1 (angle p1 p2))


(setq p3 (polar p1 ang (-(distance p1 p2) radi))) ;畫圓、線


(command "pline"


(polar p1 ang 1 0.25)


 "w" 0.5 0,5 "A" "CE"p1"A"359.9"L""W"0 0 p3"")


(command"circle"p2 radi)


(command "layer" "set" 6 " " ;改到寫文字圖層


"text" "J" "M" p2 txth 0 bx) ;寫文字


)


((not p2) ;如果在零件中直接標註


(command "layer" "set" 2 " ") ;改到畫細線圖層


(Command "circle" p1 radi) ;畫圓


(command "layer" "set" 6 " " ;改到寫文字圖層


 "text" "J" "M" p1 txth 0 bx) ;寫文字


)


)


(setq bx (+ bx 1))


(princ))

  ;-----------------------


程序的使用方法,在Command:提示符下,鍵入(Load"BXH")回車后再鍵入BXH,然後按屏幕提示輸入對應項即可。因為這個命令經常使用,建議把它裝在菜單文件,在ACAD.MNU適當位置中加入一項:


標序號]^c^c(LOAD "BXH") ;BXH ;用滑鼠點取最為方便

 

Bookmark the permalink ,來源:
One thought on “工程圖中標序號的程序