這是一個自動獲取多段線內圖形的插件,可以選擇成功,但是確定之后剛剛選好的圖形會消失,執行任何操作都是一樣的結果。下面是代碼:
;Polyline/circle select - www.xanadu.cz - www.cadforum.cz
;(use the WPS command or 'WPS inside an object selection prompt)
(defun C:WPS ( / i elist at cmde cen rad p1)
(setq cmde (getvar "cmdecho"))
(setvar "cmdecho" 0)
(setq i 0 elist (entget (car (entsel "\nPick a circle or polyline: "))))
(setvar "OSMODE" (boole 7 (getvar "OSMODE") 16384))
(if (zerop (getvar "CMDACTIVE")) (command "_select"))
(command "_wp") ; or _CP
(if (= (cdr(assoc 0 elist)) "CIRCLE")
(progn
(setq cen (cdr (assoc 10 elist))
rad (cdr (assoc 40 elist))
)
(repeat 90 ; 360/4 0.06981317=4*pi/180
(setq p1 (polar cen (* i 0.06981317) rad) i (1+ i))
; (command "_POINT" (trans p1 0 1))
(command (trans p1 0 1))
)); else
(repeat (length elist)
(setq at (nth i elist) i (1+ i))
; (if (= (car at) 10) (command (cdr at)))
(if (= (car at) 10) (command (trans (cdr at) 0 1)))
)
);if CIRCLE
(command "")
(setvar "OSMODE" (boole 2 (getvar "OSMODE") 16384))
(setvar "cmdecho" cmde)
(princ)
)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/54199.html
標籤:其他開發語言
