简化阵列
麻烦哪位大神帮忙优化下,感激不尽简化阵列
(defun c:rrR(/ *hang2 *jj2 *lie2 a1 ab1 b1 ss xlen ylen)
(setq ss (ssget))
(setq ab1 (box ss) a1 (car ab1) b1 (cadr ab1))
(setq xlen (abs (- (car b1) (car a1))))
(setq ylen (abs (- (cadr b1) (cadr a1))))
(if (not *hang)(setq *hang 1))
(setq *hang (if (setq *hang2 (getint (strcat "\n输入行数:<" (itoa *hang) ">:"))) *hang2*hang))
(if (not *lie)(setq *lie 1))
(setq *lie (if (setq *lie2 (getint (strcat "\n输入列数:<" (itoa *lie) ">:"))) *lie2 *lie))
(if (not *jj)(setq *jj 100))
(setq *jj (if (setq *jj2 (getdist (strcat "\n输入间距:<" (rtos *jj 2 2) ">:"))) *jj2 *jj))
(command "ARRAY" ss "" "r" *hang *lie (+ ylen *jj) (+ xlen *jj))
;(princ)
)
按x轴阵列是没有问题但是按Y轴阵列就会出现重叠的现象 (command "ARRAY" ss "" "r" *hang *lie (+ ylen *jj) (+ xlen *jj))
改为:
(if (= 1 *hang) (command "ARRAY" ss "" "r" *hang *lie (+ xlen *jj)) (command "ARRAY" ss "" "r" *hang *lie (+ ylen *jj) (+ xlen *jj))) start4444 发表于 2020-12-10 17:18
(command "ARRAY" ss "" "r" *hang *lie (+ ylen *jj) (+ xlen *jj))
改为:
(if (= 1 *hang) (command " ...
可以了,谢谢 start4444 发表于 2020-12-10 17:18
(command "ARRAY" ss "" "r" *hang *lie (+ ylen *jj) (+ xlen *jj))
改为:
(if (= 1 *hang) (command " ...
错误: no function definition: BOX 出现问题了 box这个函数?在哪里呢,没上传啊 vlisp2012 发表于 2020-12-11 08:03
box这个函数?在哪里呢,没上传啊
已经好了,谢谢 GDFGFGF 发表于 2020-12-10 19:46
错误: no function definition: BOX 出现问题了
已经好了,谢谢
页:
[1]