谢谢你花时间处理我的请求,我很感激。
效果很好
我已经按照自己的意愿更改了值
(defun c:Test (/ *error* j ss i e)
;;--- Tharwat 31. March, 2013 ---;;
(defun *error* (msg)
(princ
"\n*Cancelled by user or by coincidence ,Nothings more*"
)
)
(if (setq j0.
ss (ssget "_:L" '((0 . "INSERT") (2 . "180DEG,360DEG,90DEG")))
)
(repeat (setq i (sslength ss))
(setq e (entget (ssname ss (setq i (1- i)))))
(cond ((eq (cdr (assoc 2 e)) "90DEG")
(setq j (+ 0.06 j))
)
((eq (cdr (assoc 2 e)) "180DEG")
(setq j (+ 0.12 j))
)
(t
(eq (cdr (assoc 2 e)) "360DEG")
(setq j (+ 0.23 j))
)
)
)
)
(if (> j 0)
(alert (strcat "Total Values : " (rtos j 2 4)))
)
(princ)
)
很好,很高兴听到这个消息。 你好
我需要lisp来执行以下操作,以便将放置块放置在pline边界上:
步骤1
1.要求选择pline/line的命令(命令行或警报)
2.显示拾取对象的列表长度(警报消息)。
要求用户输入“输入头部间距”(输入应在这些数字中的任意一个上)
3.将显示值除以用户输入值
4.将除法值显示为“没有可能的磁头。(警报消息)
5.要求用户输入“所需的头数为(这将是上述的四舍五入值)。(警报消息)
6.计算长度除以所需的无压头,在输入值的+-0.25范围内(输入为1.25,2.25,2.75,3.25,4.25)
然后继续执行步骤7
如果与输入值不在+-0.25范围内,则要求用户“输入不同的值或按ESC取消操作
如果输入了不同的值,请重复步骤6
7.使用autocad divide命令,一旦通过标准,将输入作为步骤6中的段数。
8、使用块选项
9.如果用户输入为1.25,则输入块名为5-180
2.25然后输入块名为8-180
2.75然后输入块名为10-180
3.25然后输入块名为12-180
4.25然后输入块名为15-180
10.结束
提前感谢
Suriwaits。 请阅读代码发布指南,以后将您的代码放入代码标签中。这次我帮你修好了。
页:
1
[2]