changyiran 发表于 2013-11-22 16:05:12

如何删除二维多段线的重复点

我这涉及的二维多段线都是由直线段组成的,有时候画的时候一个点上会点击两次甚至三次,如何编程实现删除多余点?请教各位大神们。

CAD小帮手 发表于 2018-7-16 11:54:55



作用:清除多余的节点

CAD小帮手技术交流群1: 115604002(视频和原图档请在群文件下载)       

CAD小帮手技术交流群2: 618984401(视频和原图档请在群文件下载)

ferious 发表于 2023-11-10 09:51:29

q3_2006 发表于 2013-11-22 16:17
ET命令OVERKILL

666666666666666

894560869 发表于 2018-7-22 18:38:47

http://bbs.mjtd.com/forum.php?mod=viewthread&tid=108149&highlight=%B6%E0%B6%CE%CF%DF

q3_2006 发表于 2013-11-22 16:17:51

ET命令OVERKILL

自贡黄明儒 发表于 2013-11-22 16:20:16

http://bbs.mjtd.com/thread-108149-1-1.html

changyiran 发表于 2013-11-22 16:34:58

自贡黄明儒 发表于 2013-11-22 16:20 static/image/common/back.gif
http://bbs.mjtd.com/thread-108149-1-1.html

不行啊,你的删除重点是针对多段线,我希望二维多段线也能删除啊!就是polyline

changyiran 发表于 2013-11-22 16:45:01

changyiran 发表于 2013-11-22 16:34 static/image/common/back.gif
不行啊,你的删除重点是针对多段线,我希望二维多段线也能删除啊!就是polyline

稍等啊,等会传。

Gu_xl 发表于 2013-11-22 16:51:36

changyiran 发表于 2013-11-22 16:34 static/image/common/back.gif
不行啊,你的删除重点是针对多段线,我希望二维多段线也能删除啊!就是polyline

(defun dump2dPoly (ent)
(if (= "POLYLINE"(cdr (assoc 0 (entget ent))))
    (progn
      (setq ent (entnext ent))
      (setq p0 (cdr (assoc 10 (entget ent))))
      (while (and
             (setq ent (entnext ent))
             (= "VERTEX" (cdr (assoc 0 (entget ent))))
             )
        (if (equal p0 (setq p1 (cdr (assoc 10 (entget ent)))) 1e-6)
          (vla-delete (vlax-ename->vla-object ent))
          (setq p0 p1)
          )
        )
      )
    )
ent
)

changyiran 发表于 2013-11-22 16:57:37

Gu_xl 发表于 2013-11-22 16:51 static/image/common/back.gif


G版厉害,我先慢慢研究下!

changyiran 发表于 2013-11-23 10:22:25

自贡黄明儒 发表于 2013-11-22 16:20 static/image/common/back.gif
http://bbs.mjtd.com/thread-108149-1-1.html

网速较慢,不好传,就是类型为polyline的图元,G版那个代码就是针对二维多段线的。

重慶崽兒 发表于 2015-5-21 22:16:50

本帖最后由 重慶崽兒 于 2015-5-21 23:08 编辑

Gu_xl 发表于 2013-11-22 16:51 static/image/common/back.gif

有个问题 G版   如果二维多段线的第一个点和最后一个点在同一个点上的话,此代码并没有达到除重效果
额另外还想请教G版普通多段线除重问题

zouxiren2007 发表于 2015-8-3 15:02:43

Gu_xl 发表于 2013-11-22 16:51 static/image/common/back.gif


下来好好学习!
页: [1] 2
查看完整版本: 如何删除二维多段线的重复点