LIULISHENG 发表于 2020-5-20 13:45:08

这个太好了

jkop 发表于 2023-5-25 09:09:36

拆解他人图档的时候常用,这个程序真实用。

包哥 发表于 2023-7-8 09:35:14

只能合并顶点相互重合的直线,但是无法合并共线但是直线不相接的直线,盼望改进~~~

cghdy 发表于 2025-3-15 19:04:24

本帖最后由 cghdy 于 2025-3-15 19:26 编辑

黄大师,帮你改一下函数,浮点数精度导致的错误,有时会选错直线的点连接。

[*](defun joinLine (e e1 fuzz / ANG1 EN EN1 P1 P2 P3 P4 P5 P6 pa1 pa2 PLIST)
[*]    (setq en (entget e))
[*]    (setq p1 (LI_item 10 en))
[*]    (setq p2 (LI_item 11 en))
[*]    (setq ang1 (+ (angle p1 p2) (* pi 0.5)))
[*]    (setq en1 (entget e1))
[*]    (setq p3 (LI_item 10 en1))
[*]    (setq p4 (LI_item 11 en1))
[*]    (setq p5 (polar p3 ang1 20))
[*]    (setq p5 (inters p1 p2 p3 p5 nil))
[*]    (setq p6 (polar p4 ang1 20))
[*]    (setq p6 (inters p1 p2 p4 p6 nil))
[*]    (if (and (< (distance p5 p3) fuzz)
[*]          (< (distance p6 p4) fuzz)
[*]          (or (< (distance p3 p1) fuzz)
[*]            (< (distance p3 p2) fuzz)
[*]            (< (distance p4 p1) fuzz)
[*]            (< (distance p4 p2) fuzz)
[*]            (Between p3 p1 p2 fuzz)
[*]            (Between p4 p1 p2 fuzz)
[*]          )
[*]      )
[*]      (progn
[*]      (setq Plist (Sort_XYZ_pList (list p1 p2 p5 p6)))
[*]      (setq pa1 (car Plist))
[*]      (setq pa2 (last Plist))
[*]      (setq en (subst (cons 10 pa1) (assoc 10 en) en))
[*]      (entmod (subst (cons 11 pa2) (assoc 11 en) en))
[*]      (command "_.erase" e1 "")
[*]      )
[*]    )
[*])

页: 1 2 3 4 [5]
查看完整版本: 共线直线并批量连接-------多段线连接-------Join