Tharwat 发表于 2022-7-5 23:31:17

你经历过这个吗

你好
 
绘制任何被认为是直线的实体,如样条线、LW多段线、Xline。。。etc然后尝试以下代码行,并给出一个数字,而不是选择最后绘制的*行
 

(setq s (car (entsel "\n Select any object :")))

Lee Mac 发表于 2022-7-5 23:36:57

按预期返回零?

Tharwat 发表于 2022-7-5 23:41:44

它不是零,而是表示线的最后一个实体,例如*线,否则为零。
 

Lee Mac 发表于 2022-7-5 23:46:49

2014年可能是新的?

Tharwat 发表于 2022-7-5 23:51:47

我正在研究Cad 2013,我在2010年试过了,它也做了同样的事情。
Cad 2010中的示例。
 

hmsilva 发表于 2022-7-5 23:55:09

干得好Tharwat!
它也适用于圆弧。
 
 
它如何处理圆?
经过一些简短的测试,我无法让它工作,圆圈和椭圆。。。
 
 
编辑:(圆圈=55,44)但并不总是。。。
 
亨里克

Tharwat 发表于 2022-7-5 23:59:49

嗨,亨里克。
 
我不知道如何让它对圆起作用,尽管弧并不总是对它们起作用

Stefan BMR 发表于 2022-7-6 00:06:33

通过输入数字n,autocad返回一个距离(最后一个点)瞄准当前光标位置n的点。因此,如果该点距离最后一个点足够近(如果它在cursorsize范围内),就像您拾取的一样,因此最后一个实体被选中。尝试一个更大的数字,你就会看到。
试试这个
(if
(and
   (setq b (cadr (entsel "\nSelect: ")))
   (setq a (cadr (grread t)))
   )
(entmake
   (list
   '(0 . "LINE")
   (cons 10 b)
   (cons 11 a)
   )
)
)

Tharwat 发表于 2022-7-6 00:10:19

这很有道理Stefan
感谢您的输入和描述。

Stefan BMR 发表于 2022-7-6 00:16:32

不客气,塔瓦。。。我希望你的这个发现能有所帮助,但我看不到任何帮助。很抱歉。。。
页: [1] 2
查看完整版本: 你经历过这个吗