ÀÌÁß Á߽ɼ± ±×¸®±â (Àå°ø-Slot)
;=====================================================================
; Auto lisp...Double circle center line
; (c) Jeong, yong-sik June 1994
;=====================================================================
(defun clerr (s)
(if (/= s "Function cancelled") ; If an error (such as CTRL-C) occurs
(princ (strcat "nError: " s)) ; while this command is active...
);;if
(setvar "CLAYER" clay)
(setvar "CMDECHO" scmde)
(setq *error* olderr) ; Restore old *error* handler
(princ)
);;defune
;------------------------------------------------------------
(defun C:DC (/ olderr clay sblip scmde sgrid shl sucsf ts xx) ;program name
(setq olderr *error*
*error* clerr)
(setq scmde (getvar "CMDECHO"))
(setq clay (getvar "CLAYER"))
(setq os (getvar "OSMODE"))
(setvar "CMDECHO" 0)
(setvar "CMDECHO" 0)
(setvar "OSMODE" 4)
(setq pt1 (getpoint "n¡í Select 1st circle : "))
(setq pt2 (getpoint pt1 "n¡í Select 2nd circle : "))
(setq c (angle pt1 pt2))
(setvar "OSMODE" 0)
(setq b (getdist pt1 "n¡í Extansion Length ?: "))
(command "LAYER" "m" "22" "") ;>>Á߽ɼ± ·¹À̾î 22 (»ç¿ëÀÚ º¯°æ ºÎºÐ)
;---------------------------------------------------------------------
(setq p1 (polar pt1 (+ (* pi 1.0) c) b))
(setq p2 (polar pt2 (+ (/ 0 1.0) c) b))
(setq p3 (polar pt1 (+ (/ pi 2.0) c) b))
(setq p4 (polar pt1 (+ (* pi 1.5) c) b))
(setq p5 (polar pt2 (+ (/ pi 2.0) c) b))
(setq p6 (polar pt2 (+ (* pi 1.5) c) b))
;---------------------------------------------------------
(command "LINE" p1 p2 "")
(command "LINE" p3 p4 "")
(command "LINE" p5 p6 "")
(setvar "CMDECHO" scmde)
(setvar "CLAYER" clay)
(setvar "OSMODE" os)
(setq *error* olderr) ; Restore old *error* handler
(princ)
);;end of defune
|