找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 571|回复: 7

[求助] 隔一定距离打断多义线

[复制链接]

已领礼包: 7个

财富等级: 恭喜发财

发表于 2019-6-24 22:03:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
自己写的隔一定距离打断PL线。但是打断完变的不成样子,不是一体的了,求大神帮忙啊。
(defun c:dib (/ obj piece plen ptlst dis npt)
  (setq        obj   (vlax-ename->vla-object (setq en (car (entsel "\n选择多义线: "))))
        piece (getint "\n间隔距离(米): ")
        plen
              (vlax-curve-getdistatpoint obj (vlax-curve-getendpoint obj))
        ;ptlss
              ;(list (vlax-curve-getstartpoint obj))
        dis
              0
  )
  (repeat (1- (fix(/ plen piece)))
    (setq dis        (+ dis  piece)
          npt        (vlax-curve-getpointAtdist obj dis)
          ptlst        (cons npt ptlst)
    )
  )
  ;(setq ptlst (reverse (cons (vlax-curve-getendpoint obj) ptlst)))
  (foreach pt ptlst
    (vl-cmdf "break" (list en pt) pt)
  )
;;;  ptlst
  (princ)
)

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 960个

财富等级: 财运亨通

发表于 2019-6-25 08:01:14 | 显示全部楼层
打断完,肯定不是一体的多段线了啊
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 13个

财富等级: 恭喜发财

发表于 2019-6-25 09:16:33 | 显示全部楼层
打断完再结合成组
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 7个

财富等级: 恭喜发财

 楼主| 发表于 2019-6-25 10:13:32 | 显示全部楼层
Yruz 发表于 2019-6-25 09:16
打断完再结合成组

对我就是想要这种的,你看怎么改啊。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 7个

财富等级: 恭喜发财

 楼主| 发表于 2019-6-25 10:14:59 | 显示全部楼层
zhystar 发表于 2019-6-25 08:01
打断完,肯定不是一体的多段线了啊

是不是一体的了,再自动连上就是一体的了,可我不知道怎么实现。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2019-6-25 10:42:47 | 显示全部楼层
Break以后,一个实体变成两个实体,靠近起点的一个实体保留原实体名,另一段由系统赋予新的实体名,所以,连续打断时,应从实体尾端开始打断,才能保证下一个需要打断的是“原实体”。
可以先把需要打断的点全部计算出来,然后从最后一个点打断,只到第一个点。
对于打断后生成的新实体,可以使用entnext(entlast)的方法收集,最后再组合。

评分

参与人数 1D豆 +10 收起 理由
/db_自贡黄明儒_ + 10 很给力!经验;技术要点;资料分享奖!

查看全部评分

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 7个

财富等级: 恭喜发财

 楼主| 发表于 2019-6-25 11:39:56 | 显示全部楼层
ll_j 发表于 2019-6-25 10:42
Break以后,一个实体变成两个实体,靠近起点的一个实体保留原实体名,另一段由系统赋予新的实体名,所以, ...

entnext(entlast)这个具体怎么用呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 7个

财富等级: 恭喜发财

 楼主| 发表于 2019-6-25 15:43:05 | 显示全部楼层
打断的问题已经解决了

然后问题是打断成线段了。怎么让他们再自动连接上,闭合成一条多义线。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-23 12:32 , Processed in 0.200090 second(s), 47 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表