发布于:2006-10-17 16:50:17
来自:建筑设计/CAD下载及教程
[复制转发]
LISP编成请教
选择部分图元
基点PT1
复制到PT2
并以PT2为基点旋转一个角度
看看以下的程序错在什么地方???
(defun C:ffc ()
(setq OM (getvar "OSMODE"))
(setvar "OSMODE" 33)
(setq SS nil)
(setq SS (ssget))
(setq PT1 (getpoint "\n 指定复制基点:"))
(setq PT2 (getpoint "\n 指定旋转基点:" PT1))
(setq ANG0 (getangle PT2 "\n 指定旋转角度:"))
(setq ANG (* (/ ANG0 PI) 180))
;
(setq n 0.0)
(setq slen (sslength SS))
(while (< n slen)
(setq ss1 (ssname ss n))
(command "copy" ss1 "" PT1 PT2)
(command "ROTATE" ss1 "" PT2 ANG)
)
(setvar "OSMODE" OM)
(PRINC)
)
全部回复(6 )
只看楼主 我来说两句-
hvac_wh
沙发
你的程序有错误,在于没有对程序n的变化进行调整,另外,while语句条件应该为(= n slen),因为实体序号是从0开始的,当实体数等于nslen后,传到while循环语句外。另外在while循环语句中加入(setq n (+ n 1))
2007-01-09 12:52:09
赞同0
-
sp51086462
板凳
什么意思?有什么功能?
2006-10-31 19:08:31
赞同0
加载更多回复 举报
回复 举报