notview 发表于 2022-7-6 06:53:36

多次创建多段线b

你能想象这条河或小溪吗。。我在上述水体的中间创建多段线。有1000多个角,这意味着1000次放置快捷命令“中点或m2p”。
 
有人可以帮助您制作一个lisp例程/程序,像cad中的普通命令一样创建多段线,但这次在运行时有一个m2p选项,使用该选项,您下次指定下一个点时会自动询问两点之间的中间点,直到此时(也有一个选项)结束m2p,并返回到正常创建多段线。
 
我这样问是因为在对象Osnaps模式上,没有中点/m2p选项。
 
非常感谢。

Lee Mac 发表于 2022-7-6 07:22:42

这里有一个非常简单的选项:
(defun c:pmid ( / p1 p2 )
   (command "_.pline")
   (while
       (and
         (setq p1 (getpoint "\n1st point of mid <Exit>: "))
         (setq p2 (getpoint "\n2nd point of mid <Exit>: " p1))
       )
       (command "_non" (mapcar '(lambda ( a b ) (/ (+ a b) 2.0)) p1 p2))
   )
   (command "")
   (princ)
)

notview 发表于 2022-7-6 07:50:26

非常好!!
 
这真的很有用!!
它是这样运行的:
中间第一点:
中间第二点:
中间第一点:
中间第二点:
(输入E将不会退出;按空格键将结束命令;但按Esc键-将其返回到正常创建多段线,
这很好!)
 
如果您有时间,可以在运行并返回到正常创建多段线后,按
Esc键返回m2p,询问两点之间的中点,按Esc键将返回正常创建
再次使用多段线。如果将工作结束命令,则更好。但是,按空格键是
只有这样才能结束命令,这是确定的。
 
非常感谢!!

eldon 发表于 2022-7-6 07:56:09

也许这条线索会引起人们的兴趣。
页: [1]
查看完整版本: 多次创建多段线b