519995995 发表于 2013-12-13 09:33:35

与选择批量画圆有关~请大家帮忙

工作中图纸审完后常常需要修改,我想以选择的夹点为中心批量画圆,比如说我一次选择了10个单位,在每个单位上画一个圆,(半径可以由我定,圆的图层随当前层),

zyhandw 发表于 2013-12-13 09:45:53

说这么多,还不如上个图来得更明白、直接

519995995 发表于 2013-12-14 12:46:28

当你每选择一个单位时就有个夹点,我就是想在每个夹点上画个圆。。。希望有人帮忙,

1993063 发表于 2013-12-15 00:15:07

(Defun c:tt ( / cir i maxp mid minp s1 ss x y )
(setq cir (cond ((getreal (strcat "\n圆半径[" (rtos (setq cir (cond ( cir ) ( 1.1 )))) "] ")))( cir )))
(setq i-1 ss (ssget))   ;自己另行添加对象选择类型
(while (setq s1 (ssname ss (setq i (1+ i))))
(vla-GetBoundingBox (vlax-ename->vla-object s1) 'MinP 'MaxP)
(setq MinP (vlax-safearray->list MinP))
(setq MaxP (vlax-safearray->list MaxP))
(setq mid (mapcar '(lambda (X Y) (/ (+ X Y) 2.0)) MinP MaxP))
    (entmake (list '(0 . "CIRCLE") (cons 62 1) (cons 10 mid) (cons 40 cir)))
)
(princ)
)

519995995 发表于 2013-12-15 19:02:31

; error: no function definition: VLAX-ENAME->VLA-OBJECT   谢谢楼上的朋友。但是好像差点

lenlenq 发表于 2013-12-15 21:51:14

在前面加(vl-load-com)

519995995 发表于 2013-12-24 11:23:39

来晚了。。。本人是菜鸟,前面指的是哪儿的前面?

519995995 发表于 2015-5-16 17:06:45

高手都忙,谢谢大家哈

YueFeng 发表于 2015-5-16 23:00:47

第一行加上

云往哪里飞 发表于 2015-10-22 15:41:25

看不太懂,请上图
页: [1]
查看完整版本: 与选择批量画圆有关~请大家帮忙