;´ÙµëÁú±âÈ£
(defun dtr (a) (* pi (/ a 180.0)))
(defun rtd (a) (/ (* a 180.0) pi))
(defun c:DDG(/ os bl cl ts skk num ag p0 p1 p2 p3 p4 p5 p6 tp e1)
   (setq os (getvar "osmode") cl (getvar "clayer")
         ts (getvar "dimscale") dtxt (getvar "dimtxt"))
   (setq txt (* dtxt 0.6) skk ( * dtxt ts))
   (princ " ´ÙµëÁú ±âÈ£ ±×¸®±â...¾Æ·¡ ¸ñ·ÏÀÇ ¹øÈ£¸¦ ¼±ÅÃÇϼ¼¿ä")
   (setq num (getint "n[0=(~) 1=(¡ä) 2=(¡ä¡ä) 3=(¡ä¡ä¡ä) 4=(3+G) 5=(3+REAM) 6=(4+POLISH) 7=(4+LAPPING) 8=(4+HONING)] <3>: "))
   (if (= num nil) (setq num 3))
   (setvar "osmode" 546);mid,int,nea
   (setq p0 (getpoint "n »ðÀÔÁ¡ ¼±Åà :"))
   (setq ag (getangle p0 " ȸÀü°¢ ÀÔ·Â<0> : "))
   (if (= ag nil) (setq ag 0) (setq ag (rtd ag)))
   (setvar "osmode" 0)  
      (setq p1 (polar p0  (dtr   60) skk))
       (setq p2 (polar p1  (dtr  -60) skk))
       (setq p3 (polar p2  (dtr   60) skk))
       (setq p4 (polar p0  (dtr  120) skk))
       (setq p5 (polar p4  (dtr -120) skk))
       (setq p6 (polar p5  (dtr  120) skk))   
       (setq p7 (polar p2  (dtr  0)   skk)) 
       (setq p8 (polar p7  (dtr   60) skk))
    (command "layer" "s" "88" "")    ;;;88 »ç¿ëÀÚ ÁöÁ¤ ·¹À̾î
   (cond
     ((= num 0);~
       (setq tp (polar p0 (dtr -90) (* ts 1.65)))
       (command "text" "j" "ce" tp (* dtxt 2) "0" "~") (setq e1 (entlast))
       (command "rotate" e1 "" p0 ag))
     ((= num 1);¡ä
       (command "pline" p0 p1 p4 "c")     (setq e1 (entlast))
       (command "rotate" e1 "" p0 ag))
     ((= num 2);¡ä¡ä
       (command "pline" p0 p1 p2 p3 p4 "c") (setq e1 (entlast))
       (command "rotate" e1 "" p0 ag))
     ((= num 3);¡ä¡ä¡ä
       (command "pline" p0 p1 p2 p3 p6 p5 p4 "c") (setq e1 (entlast))
       (command "rotate" e1 "" p0 ag))
     ((= num 4);¡ä¡ä¡ä(G)
       (command "pline" p0 p1 p2 p3 p6 p5 p4 "c") (setq e2 (entlast))   
       (setq tp (polar p0 (dtr 90) (+ (/ ts 2) skk)))
       (command "text" "j" "ce" tp txt "0" "(G)") (setq e1 (entlast))
       (command "rotate" e1 e2 "" p0 ag))   
     ((= num 5);¡ä¡ä¡ä(REAM)
       (command "pline" p0 p1 p2 p3 p6 p5 p4  "c") (setq e2 (entlast))
       (setq tp (polar p0 (dtr 90) (+ (/ ts 2) skk)))
       (command "text" "j" "ce" tp txt "0" "(REAM)") (setq e1 (entlast))
       (command "rotate" e1 e2 "" p0 ag))   
     ((= num 6);¡ä¡ä¡ä¡ä(POLISH)
  (command "pline" p0 p1 p2 p3 p7 p8 p6 p5 p4  "c") (setq e2 (entlast))
       (setq tp (polar p0 (dtr 90) (+ (/ ts 2) skk)))
   (command "text" "j" "ce" (polar tp (dtr 0) (/ skk 2)) txt "0" "(POLISH)") (setq e1 (entlast))
       (command "rotate" e1 e2 "" p0 ag))
 ((= num 7);¡ä¡ä¡ä¡ä(LAPPING)
  (command "pline" p0 p1 p2 p3 p7 p8 p6 p5 p4  "c") (setq e2 (entlast))
       (setq tp (polar p0 (dtr 90) (+ (/ ts 2) skk)))
       (command "text" "j" "ce" (polar tp (dtr 0) (/ skk 2)) txt "0" "(LAPPING)") (setq e1 (entlast))
       (command "rotate" e1 e2 "" p0 ag))
 ((= num 8);¡ä¡ä¡ä¡ä(HONING)
  (command "pline" p0 p1 p2 p3 p7 p8 p6 p5 p4  "c") (setq e2 (entlast))
       (setq tp (polar p0 (dtr 90) (+ (/ ts 2) skk)))
       (command "text" "j" "ce" (polar tp (dtr 0) (/ skk 2)) txt "0" "(HONING)") (setq e1 (entlast))
       (command "rotate" e1 e2 "" p0 ag))
   );cond
   (setvar "clayer" cl)
   (setvar "osmode" os)
(princ));end of defun