| Aşağıdaki kodu internette buldum, biraz değiştirdim. İşinizi çözer mi?
 [code](defun C:DISLI (/ p1 p2 r1 r2 n ang ang1 ang2 cmd blip a1 a2 a3 a4 a5)
 (setq p1 (getpoint "\nDişlinin merkezi: ")
 p2 (getpoint p1 "\nDış yarıçapı: ")
 r1 (getdist P1 "\nİç yarıçapı: ")
 n  (getint "\nDiş sayısı <10>:"))
 
 (if (null n)(setq n 10))
 
 
 (setq ang  (angle p1 p2)
 r2   (distance p1 p2)
 ang1 (/ (* 2.0 pi) n)
 ang2 (/ ang1 6.0)
 cmd  (getvar "CMDECHO")
 blip (getvar "BLIPMODE")
 )
 
 (setvar "CMDECHO" 0)
 (setvar "BLIPMODE" 0)
 
 (command "_.POLYLINE")
 (repeat n
 (setq ang (+ ang ang1))
 (setq a1 (polar p1 ang r1)
 a2 (polar p1 (+ ang ang2) r2)
 a3 (polar p1 (+ ang (* 3 ang2)) r2)
 a4 (polar p1 (+ ang (* 4 ang2)) r1)
 a5 (polar p1 (+ ang (* 6 ang2)) r1))
 
 (command a1 a2 a3 a4 a5)
 )
 (command "")
 
 (setvar "BLIPMODE" blip)
 (setvar "CMDECHO" cmd)
 (princ)
 )
 [/code]
 
 
 |