竹天 发表于 2023-10-30 18:26:14

多段线沿顶点打断

本帖最后由 竹天 于 2023-10-30 18:25 编辑

天正电气的回路编号与标导线数等命令,在标注有3或3个以上顶点的多段线时不能使用或标注有问题。
没能力优化天正的命令,只能东拼西凑攒了个批量打断多段线的插件,功能如题。
有问题欢迎讨论。











xyp1964 发表于 2023-10-31 09:14:44


(defun c:tt ()
"多段线沿顶点打断"
(defun PlPtn (e)(mapcar 'cdr(vl-remove-if '(lambda (x) (/= (car x) 10)) (entget e))))
(setvar "osmode" 0)
(setq i -1)
(if (setq ss (ssget '((0 . "LWPOLYLINE"))))
    (while (setq s1 (ssname ss (setq i (1+ i))))
      (setq ptn (reverse (PlPtn s1)))
      (foreach pt ptn(command "break" (list s1 pt) pt))
    )
)
(princ)
)

ynhh 发表于 2023-10-30 21:38:22

这和分解有什么区别?

竹天 发表于 2023-10-31 08:53:43

ynhh 发表于 2023-10-30 21:38
这和分解有什么区别?

分解后是“直线”,这个打断后还是“多段线”,可以保留原多段线的宽度等参数

lzspain 发表于 2023-10-31 08:56:16

ynhh 发表于 2023-10-30 21:38
这和分解有什么区别?

多段线分解之后是直线,这个打断之后仍是多段线

竹天 发表于 2023-10-31 19:14:36

xyp1964 发表于 2023-10-31 09:14


大佬厉害

lxl217114 发表于 2023-11-1 09:47:10

谢谢楼主和院长分享代码

ZYX2129 发表于 2023-11-1 13:55:37

谢谢楼主和院长分享代码

菜鸟初来乍到 发表于 2023-11-2 06:56:14

感谢楼主分享
页: [1]
查看完整版本: 多段线沿顶点打断