oypk51 发表于 2018-1-7 18:11:52

这段代码能增加一个同心圆的么

论坛找到一段代码想把同心圆也加进去 有大神能够帮忙改改么

(defun Hidden->blk (sset)
(setq      i -1)
(while (setq s1 (ssname sset (setq i (1+ i))))
    (setq ent (entget s1)
          pt(cdr (assoc 10 ent))
          rr(cdr (assoc 40 ent))
    )
    (cond ((= rr 5.15)
         (command "insert" "xm12H" pt 1 1 0)
         (ssadd s1 ssA)
          )
          ((= rr 4.15)
         (command "insert" "xm10H" pt 1 1 0)
         (ssadd s1 ssA)
          )
    )
)
)

(defun Center->blk (sset)
(setq i -1)
(while (setq s1 (ssname sset (setq i (1+ i))))
    (setq ent (entget s1)
          pt(cdr (assoc 10 ent))
          rr(cdr (assoc 40 ent))
    )
    (cond ((= rr 5.15)
         (command "insert" "xm12C" pt 1 1 0)
         (ssadd s1 ssA)
          )
          ((= rr 4.15)
         (command "insert" "xm10C" pt 1 1 0)
         (ssadd s1 ssA)
          )
    )
)
)

;; tt(圆替换成块)
(defun c:tt ()
(princ "\n根据圆直径替换成块: ")
(if (setq ss (ssget '((0 . "circle"))))
    (progn
      (setq ss1 (ssget "P" '((6 . "Center"))))
      (command "select" ss "")
      (setq ss2 (ssget "P" '((6 . "Hidden"))))
      (setq ssA (ssadd))
      (if ss1
      (Center->blk ss1)
      )
      (if ss2
      (Hidden->blk ss2)
      )
      (command "erase" ssA "")
    )
)
(princ)
)

前生 发表于 2018-1-7 23:32:37

看起来,像画螺钉的
页: [1]
查看完整版本: 这段代码能增加一个同心圆的么