如何以闭合多段线为边界选择其中的图元?菜鸟求教!
zzx385000
zzx385000 Lv.2
2010年09月20日 17:10:22
只看楼主

RT,以已有的闭合多段线为边界选择其中被包围的图元,请各位高手指教。有什么插件或是LISP可以实现吗?

RT,以已有的闭合多段线为边界选择其中被包围的图元,请各位高手指教。有什么插件或是LISP可以实现吗?
免费打赏
liaoyiquan
2010年09月22日 15:41:08
2楼
先输入你要操作的命令,如复制,当提示选择对象时,输wp回车,沿着多段线边界点一圈,就选中了里面的图元了
回复
zzx385000
2010年09月25日 16:01:22
3楼
这个我知道啊,我想说的是根据已有的多段线,因为有的边界很复杂,用WP很累啊。
回复
feng582304
2010年09月29日 21:31:00
4楼
(defun c:asdf ( / ss li n li1 )
(princ "请输入多段线:")
(setq ss (ssget '((0 . "LWPOLYLINE"))));只认第一个你选的多段线对象
(if ss
(progn
(setq li (vlax-safearray->list (vlax-variant-value (vla-get-coordinates (vlax-ename->vla-object (ssname ss 0))))))
(setq n 0)
(repeat (/ (length li) 2)
(setq li1 (append li1 (list (list (nth n li) (nth (1+ n) li)))))
(setq n (+ 2 n))
)
)
)
(setq ss (ssdel (ssname ss 0) (ssget "cp" li1)))
(sssetfirst ss ss)
(princ)
)

[ 本帖最后由 feng582304 于 2010-9-29 21:32 编辑 ]
回复
jjyf0208
2010年11月19日 01:28:17
5楼
很好用,谢谢!
回复

相关推荐

APP内打开