明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1370|回复: 4

[提问] 什么语句可以使LSP反复运行,直到按ESC或右键退出呢?

[复制链接]
发表于 2014-3-1 19:08:52 | 显示全部楼层 |阅读模式
如题,请高手指点!
发表于 2014-3-1 19:51:37 | 显示全部楼层
(while
.....
)
这个也可以
(repeat.....
)
 楼主| 发表于 2014-3-1 20:12:25 | 显示全部楼层
搞了半天没搞好,请问下面这个程序如何使它执行完一个操作以后继续重复这个命令,拜托了

(defun c:dt()
(princ"选择直线或多线")
(setq ss (ssget))
(setq n 0)
(setq fz1 (getpoint "请选择延伸的点"))
(repeat (sslength ss)

(setq xn (ssname ss n))
(setq xn_dat (entget xn))
(setq xn_type (cdr (assoc 0 xn_dat)))
(if (= xn_type "LINE")
(progn
(setq xn_qd (cdr (assoc 10 xn_dat)))
(setq xn_zd (cdr (assoc 11 xn_dat)))
(setq fz2 (polar fz1 (+ (angle xn_qd xn_zd) (/ pi 2)) 100))
(setq jd (inters xn_qd xn_zd fz1 fz2 nil))
(if (> (distance xn_qd jd) (distance xn_zd jd))
(progn
(setq oldr (assoc 11 xn_dat))
(setq newr (cons 11 jd))
(setq xn_dat (subst newr oldr xn_dat))
(entmod xn_dat)
);progn1完成
(progn
(setq oldr (assoc 10 xn_dat))
(setq newr (cons 10 jd))
(setq xn_dat (subst newr oldr xn_dat))
(entmod xn_dat)
);progn2完成
);if1完成
);progn0完成
);if0完成

(if (= xn_type "LWPOLYLINE")
(progn
(setq xn_qd (cdr (assoc 10 xn_dat)))
(setq xn_zd (cdr (assoc 10 (reverse xn_dat))))
(setq fz2 (polar fz1 (+ (angle xn_qd xn_zd) (/ pi 2)) 100))
(setq jd (inters xn_qd xn_zd fz1 fz2 nil))
(setq xn_zd (cdr (assoc 10 (reverse xn_dat))))

(if (> (distance xn_qd jd) (distance xn_zd jd))
(progn
(setq oldr (assoc 10 (reverse xn_dat)))
(setq newr (cons 10 jd))
(setq xn_dat (subst newr oldr xn_dat))
(entmod xn_dat)
);progn1完成
(progn
(setq oldr (assoc 10 xn_dat))
(setq newr (cons 10 jd))
(setq xn_dat (subst newr oldr xn_dat))
(entmod xn_dat)
);progn2完成
);if完成

);progn5完成
);if3完成
(setq n (+ 1 n)));repeat完成
(princ)
)
发表于 2014-3-1 20:37:30 | 显示全部楼层
MULTIPLE DT
发表于 2014-3-2 06:27:45 | 显示全部楼层
while循环,或defun子程序
最简单的在最后的(princ)语句前加(c:dt),命令名改了也跟着改。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-25 10:34 , Processed in 0.170665 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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