Autolisp到转换Pline t
我有一些用Leader替换的PLINE,不需要附加文本或多行文字。如何将PLINE仅转换为引线?如果提取每个Pline顶点的xyz值并相应地绘制引线,则会发生这种情况。这里有一件事,引导头将绘制在Pline的较长一侧,较短的将绘制引导尾。这可能吗?
请帮忙:哭: 欢迎来到CADTutor。
确保您的Qleader设置的点数等于3
(defun c:Test (/ e o ss i sn l p)
;; Tharwat 17.10.2015 ;;
(if (setq e(entlast)
ss (ssget "_:L" '((0 . "LWPOLYLINE") (-4 . "=") (90 . 3)))
)
(repeat (setq i (sslength ss))
(setq sn (ssname ss (setq i (1- i)))
l(mapcar
'cdr
(vl-remove-if-not '(lambda (p) (eq (car p) 10)) (entget sn))
)
)
(if (> (distance (car l) (cadr l))
(distance (caddr l) (cadr l))
)
(setq p l)
(setq p (reverse l))
)
(command "_.qleader"
"_none"
(car p)
"_none"
(cadr p)
"_none"
(caddr p)
""
""
)
(if (not (eq e (setq o (entlast))))
(progn
(entdel sn)
(setq e o)
)
)
)
)
(princ)
)
工作完美,
这正是我所期望的。
我真的很感谢你的帮助。
你太棒了!
谢谢!!:大声笑:
非常欢迎你。 嗨Tharwat!
它工作得很好,但我的问题是-是否可以更改您的程序,以使箭头标志在领导的右侧(我的意思是-以“敬畏”领导)。
谢谢你的努力! 嗨,丹格拉,
如果你只是想改变程序的工作方式,只需替换以下内容,否则你需要给出一个示例或更多细节。
(setq p (reverse l))
(setq p l)
嗨Tharwat!
现在它工作得更好了,但是如果你有一堆pline,你需要在转换过程中转换成qleaders,你必须多次按下“回车”键才能禁用多行文字。为了在qleader automaticaly中禁用多行文字,我在您的程序中做了一些改进,但我需要您对这些改进进行修改。您可以在附件中看到代码:
多段线到引线-P2L。lsp 我的程序不是通用程序,它只是在当前qleader上进行您想要的设置,然后使用该程序。
但是,如果你想用同一个程序进行设置,这取决于你,我以前确实没有玩过Qleader设置的字典。 谢谢你的合作塔尔瓦!祝您有个美好的一天! 对其进行了一些修饰:(dubble命令和echo已禁用)
多段线到引线-P2L。lsp
页:
[1]