ludaweb 发表于 2014-11-13 21:45:05

批量圆开洞源码

本帖最后由 ludaweb 于 2014-11-15 12:21 编辑

批量给圆开洞的源码。


;圆开洞
(defun c:tt (/ ss i en ent ptc rad an)
      (if (and (princ "\n选择圆:") (setq ss (ssget '((0 . "CIRCLE")))))
                (progn
                        (setq i 0)
                        (repeat (sslength ss)
                              (setq en (ssname ss i)
                              ent (entget en)
                              i (1+ i)
                              ptc (cdr(assoc 10 ent))
                              rad (cdr(assoc 40 ent))
                              an (/ pi -4))
                                        (entmake
                                                (list
                                                '(0 . "ARC")
                                                (cons 10 (polar ptc an (* 0.3 rad)))
                                                (cons 40 rad)
                                                (cons 50 (- (* pi 0.75) (atan (/ (sqrt 9775) 15))))
                                                (cons 51 (+ (* pi 0.75) (atan (/ (sqrt 9775) 15))))
                                                (cons 62 8)
                                                )
                                        )
                        )
                )
      )
      (princ)
)


Gu_xl 发表于 2014-11-13 22:02:07

不太明白你的意思!请上图示来表述你的问题!

ludaweb 发表于 2014-11-14 08:03:09


sicky111 发表于 2014-11-14 10:45:58

什么叫圆开洞

ludaweb 发表于 2014-11-14 12:12:44

sicky111 发表于 2014-11-14 10:45 static/image/common/back.gif
什么叫圆开洞

就是圆里面画个弧线,表示这个圆是个洞。

sicky111 发表于 2014-11-14 12:29:13

选择圆,向右下角45度方向十分之三半径的距离复制一个出来,修剪,完成。

ludaweb 发表于 2014-11-14 12:52:27

查阅了一些基本函数,计算出来了。
(- (* pi 0.75) (atan (/ (sqrt 9775) 15)))
(+ (* pi 0.75) (atan (/ (sqrt 9775) 15)))

水仙的错 发表于 2016-2-20 20:08:37

看上去不错的

szx025 发表于 2016-2-21 10:24:13

如果能把给矩形开洞口的功能加入这个程序,那就更完美了

shcvip 发表于 2022-2-15 12:04:17

szx025 发表于 2016-2-21 10:24
如果能把给矩形开洞口的功能加入这个程序,那就更完美了

支撑矩形开洞
页: [1] 2
查看完整版本: 批量圆开洞源码