在多段线conta内选择
你好我试图找到一个lisp例程,它允许我使用拾取多条闭合多段线,并使用它们在其中创建对象的选择集。有几个例程,但没有一个处理圆弧、椭圆或样条曲线。
这是一个2007年的老帖子,想知道是否有人有时间来进步。
http://www.cadtutor.net/forum/showthread.php?11682-选择-objects-within-a-polyline&高亮显示=选择+多段线
如果有人能提供任何指导,我将不胜感激。只是澄清一下,我不能编程。感谢你能给这个人任何时间。
非常感谢。
瑞克 试试这个。。。。
(if (setq adds (ssadd)
ss (ssget '((0 . "*POLYLINE") (-4 . "&=") (70 . 1)))
)
(repeat (setq i (sslength ss))
(foreach p (entget (ssname ss (setq i (1- i))))
(if (eq (car p) 10)
(setq l (cons (list (cadr p) (caddr p)) l))
)
)
(if (setq s (ssget "_WP" l))
(repeat (setq in (sslength s)) (ssadd (ssname s (setq in (1- in))) adds))
)
(setq l nil)
)
)
(sssetfirst nil adds)
@Tharwat:起初我也这么想,但在检查了OP链接的前一个线程后,我相信他/她实际上正在寻找一个更高级的解决方案,一个允许使用带圆弧段的多段线,可能还有椭圆和闭合样条线的解决方案。有一个示例图形将非常有用。 非常简单的方法:
测试功能:
否则,使用我的实体到点列表函数通过点列表近似对象。 哇!
你们能用这么少的代码做什么,我一直都很惊讶。非常优雅。或者我应该说,如果我知道这一切是如何运作的,它看起来非常优雅。只需说它对多段线、圆弧、圆和样条曲线有效。谢谢大家的及时回复。我已经签约,并将尽我所能帮助初学者。我想这就是一切。
谢谢
瑞克 还有一件事。是否可以使用撇号将此例程用作透明命令。我试过了,但似乎不起作用。我想在制作积木时使用它。
再次感谢。 只需调用Lee的命令,在创建要从中构建块的项的选择集后,调用block命令。请确保PICKFIRST系统变量设置为1。 为了透明地使用选择工具,您需要稍微调整代码,以确保返回预期结果:
3 此外,您可以调整代码,使其既能按李的意图使用,又能透明地使用。
4 我不确定,但我的会将选择集发送到激活命令,否则先执行SSSET。无论如何,我以前就是这样做的——允许在命令结束时仍然发出princ。
页:
[1]
2