明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3099|回复: 4

串多义线

[复制链接]
发表于 2004-11-5 21:07:00 | 显示全部楼层 |阅读模式
;将所选择的line或arc串成多义线 (defun c:ddx (/ ssa ssa-ent ent-p i)
(command "undo" "be");设置返回起始点
(setq ssa (ssget))
(setq i 0)
(while (< i (sslength ssa))
(setq ssa-ent (ssname ssa i))
(setq ent-p (cdr(assoc 0 (entget ssa-ent))))
(if (not (null ent-p));判断原图元是否已串入多义线
(if (or (= ent-p "LWPOLYLINE") (= ent-p "POLYLINE"));判断原图元属性
(command "pedit" ssa-ent "j" ssa "" "")
(command "pedit" ssa-ent "y" "j" ssa "" "")
))
(setq i (1+ i))
)
(command "undo" "e");设置返回终止点
(princ)
)
发表于 2004-11-6 10:23:00 | 显示全部楼层
谢谢!


能否加一个提示生成多义线数量,及是否封闭?
发表于 2005-1-13 01:10:00 | 显示全部楼层
谢谢大哥,帮我解决了一个问题 ;将所选择的line或arc串成多义线 (defun c:ddx (/ ssa ssa-ent ent-p i)
(command "undo" "be");设置返回起始点
(command "qselect" "" "")
(setq ssa (ssget))
(setq i 0)
(while (< i (sslength ssa))
(setq ssa-ent (ssname ssa i))
(setq ent-p (cdr(assoc 0 (entget ssa-ent))))
(if (not (null ent-p));判断原图元是否已串入多义线
(if (or (= ent-p "LWPOLYLINE") (= ent-p "POLYLINE"));判断原图元属性
(command "pedit" ssa-ent "w" "5" "j" ssa "" "")
(command "pedit" ssa-ent "y" "w" "0.5" "j" ssa "" "")
))
(setq i (1+ i))
)
(command "undo" "e");设置返回终止点
(princ)
) 我这样一改就可以实现先选择其中一层的线,实现先选择线后 PE 线了。
发表于 2005-1-16 08:54:00 | 显示全部楼层
如果不考虑不同图层的问题,不用程序,pedit-&gt;m或mpedit就可搞定
发表于 2023-2-10 09:15:51 | 显示全部楼层
这个代码可以参考,谢谢楼主分享啊。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 06:59 , Processed in 0.145388 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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