AutoLISP文字外加圆形框

AutoLISP文字外加圆形框,代码如下。

(defun c:test()
  (setvar "cmdecho" 0)
  (setq dd (getdist "\n输入文字与圆周距离:"))
  (if (null dd) (setq dd 2))
  (setq ss (ssget))
  (setq i 0)
  (repeat (sslength ss)
    (setq ssn (ssname ss i))
    (setq ssdata (entget ssn))
    (setq sstye (cdr (assoc 0 ssdata)))
    (if (= sstyp "TEXT")
      (progn
    (command "ucs" "e" ssn)
    (setq box (textbox ssdata))
    (setq p1 (car box))
    (setq p3 (cadr box))
    (setq p2 (list (car p3) (cadr p1)))
    (setq p4 (list (car p1) (cadr p3)))
    (setq dda (+ (/ (distance p1 p2) 2) dd))
    (setq cen (inters p1 p3 p2 p4))
    (command "circle" cen dda)
    )
      )
    (setq i (1+ i))
    )
  (command "ucs" "")
  (prin1)
  )

代码完。

只对单行文字有效。

作者:codee
文章千古事,得失寸心知。


原文地址:https://www.cnblogs.com/bimgoo/p/2502991.html