중심선 긋기 리습을 다운받았는데… 쓸 때… 오스냅이 꺼집니다.
오스냅이 안꺼지게 수정 좀 부탁드립니다.
( 사용 오스냅 : 끝점, 교차점. 중심점, 수직점 )
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
(defun c:la-cl () (command “layer” “m” “cl” “c” “1” “” “lt” “center2” “” “”)
(command “layer” “s” “0” “”) (princ)) (c:la-cl)
(defun clerr (s)
(if (/= s “Function cancelled”)
(princ (strcat “nError: ” s))
)
(command “UCS” “P”)
(setvar “BLIPMODE” sblip)
(setvar “GRIDMODE” sgrid)
(setvar “HIGHLIGHT” shl)
(setvar “UCSFOLLOW” sucsf)
(command “layer” “m” clay “”)
(command “undo” “e”)
(setvar “CMDECHO” scmde)
(setq *error* olderr)
(princ)
)
(defun C:ce (/ olderr clay sblip scmde sgrid shl sucsf e cen rad d ts xx)
(setq olderr *error*
*error* clerr)
(setq scmde (getvar “CMDECHO”))
(command “undo” “group”)
(setq clay (getvar “CLAYER”))
(setq sblip (getvar “BLIPMODE”))
(setq sgrid (getvar “GRIDMODE”))
(setq shl (getvar “HIGHLIGHT”))
(setq sucsf (getvar “UCSFOLLOW”))
(COMMAND “OSNAP” “NONE”)
(setvar “CMDECHO” 0)
(setvar “GRIDMODE” 0)
(setvar “UCSFOLLOW” 0)
(setq e nil xx “Yes”)
(setq ts (tblsearch “LAYER” “CL”))
(if (null ts)
(prompt “nCreating new layer – CL. “)
(progn
(if (= (logand 1 (cdr (assoc 70 ts))) 1)
(progn
(prompt “nLayer CL is frozen. “)
(initget “Yes No”)
(setq xx (getkword “nProceed? : “))
(if (= xx “Yes”)
(command “LAYER” “T” “CL” “”)
)
)
)
)
)
(if (= xx “Yes”)
(progn
(while (null e)
(setq e (entsel “nSelect arc or circle: “))
(if e
(progn
(setq e (car e))
(if (and
(/= (cdr (assoc 0 (entget e))) “ARC”)
(/= (cdr (assoc 0 (entget e))) “CIRCLE”)
)
(progn (prompt “nEntity is a “)
(princ (cdr (assoc 0 (entget e))))
(setq e nil)
)
)
)
)
)
(command “UCS” “e” e)
(setq cen (trans (cdr (assoc 10 (entget e))) e 1))
(setq rad (cdr (assoc 40 (entget e))))
(prompt “nRadius is “)
(princ (rtos rad))
(initget 7 “Length”)
(setq d (* rad 0.2))
(if (= d “Length”)
(progn
(initget 7)
(setq d (getdist cen “nLength: “))
)
(setq d (+ rad d))
)
(setvar “BLIPMODE” 0)
(setvar “HIGHLIGHT” 0)
(command “LAYER” “M” “CL” “”)
(command “LINE” (list (car cen) (- (cadr cen) d) (caddr cen))
(list (car cen) (+ (cadr cen) d) (caddr cen))
“”
)
(command “CHANGE” “l” “” “P” “LT” “bylayer” “”)
(command “LINE” (list (- (car cen) d) (cadr cen) (caddr cen))
(list (+ (car cen) d) (cadr cen) (caddr cen))
“”
)
(command “CHANGE” “l” “” “P” “LT” “bylayer” “”)
(command “LAYER” “m” clay “”)
)
)
(command “UCS” “P”)
(setvar “BLIPMODE” sblip)
(setvar “GRIDMODE” sgrid)
(setvar “HIGHLIGHT” shl)
(setvar “UCSFOLLOW” sucsf)
(command “undo” “e”)
(setvar “CMDECHO” scmde)
(setq *error* olderr)
(princ)
)
(princ)