xskfq
发表于 2013-11-26 23:25:05
改了,不行
xskfq
发表于 2013-11-26 23:30:05
本帖最后由 xskfq 于 2013-11-26 23:31 编辑
命令: tt
选择对象: 指定对角点: 找到 7 个
选择对象:
10
10
10
10
10
10
10
10
10
10
flyfox1047
发表于 2013-11-26 23:44:26
cable2004 发表于 2013-11-26 23:19 static/image/common/back.gif
改成试试(= (sslength(ssget "C" p1 p1)) 1)
不行的,Z版应该不会犯这种错误吧
xyp1964
发表于 2013-11-26 23:48:43
xskfq
发表于 2013-11-26 23:52:00
本帖最后由 xskfq 于 2013-11-27 00:54 编辑
xyp1964 发表于 2013-11-26 23:48 static/image/common/back.gif
就是这种效果
xskfq
发表于 2013-11-27 12:48:28
ZZXXQQ 发表于 2013-11-26 22:42 static/image/common/back.gif
1.没解决排除圆的情况。
2.没解决,标记圆被选中情况
ljpnb
发表于 2013-11-27 16:36:29
(defun c:tt ()
(if (setq ss (ssget '((0 . "LINE"))))
(progn
(setq i -1)
(repeat (sslength ss)
(setq K1 T
K2 T
)
(setq ent (entget (ssname ss (setq i (1+ i))))
p1(cdr (assoc 10 ent))
p2(cdr (assoc 11 ent))
)
(if (setq ss1 (ssget "F" (list p1 p2) '((0 . "CIRCLE"))))
(progn
(setq ent1 (entget (ssname ss1 0)))
(setq p3 (cdr (assoc 10 ent1)))
(setq l1 (distance p1 p3)
l2 (distance p2 p3)
)
(if (< l1 l2)
(setq K1 nil)
(setq K2 nil)
)
)
)
(if (and (= (sslength (ssget "C" p1 p1)) 1) k1)
(command "CIRCLE" p1 10)
)
(if (and (= (sslength (ssget "C" p2 p2)) 1) k2)
(command "CIRCLE" p2 10)
)
)
)
)
(princ)
)
llsheng_73
发表于 2013-11-27 20:52:02
(defun c:tt(/ ss i ob p a)
(if(setq ss(ssget '((0 . "*LINE"))))
(progn (setq i -1 p nil)
(repeat (sslength ss)
(setq p(append p(list(vlax-ename->vla-object(ssname ss(setq i(1+ i))))))))
(foreach o p
(setq a(list(vlax-curve-getStartPoint o)(vlax-curve-getendPoint o)))
(foreach b a
(if(and(null(vl-remove'nil(mapcar'(lambda(e)(if(vlax-curve-getdistatpoint e b)b))(vl-remove o p))))
(null(ssget"F"(list b'(-1e30 -1e30))'((0 . "circle")))))(command "CIRCLE" b 10))))
))
(princ))
xskfq
发表于 2013-11-27 21:16:08
cable2004 发表于 2013-11-26 21:52 static/image/common/back.gif
(defun c:tt ( / a c1 ent ent1 i p1 p2 r1 ss sslast x1)
(setq sslast (ssadd))
(if (setq ss...
没成功,加油,继续努力!
xskfq
发表于 2013-11-27 21:16:45
ljpnb 发表于 2013-11-27 16:36 static/image/common/back.gif
没成功,加油,继续努力!