马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
2维点阵列,可设增量

- [FONT=century gothic]
- (defun c:2dpt (/ pt xn yn dx dxa dy dya j i)
- (setq xn (getint "\nx方向阵列数:")
- yn (getint "\ny方向阵列数:")
- pt (getpoint "\n起点:")
- dx (getdist pt "\n x方向间距:")
- dxa (getdist pt "\n x方向间距增量<0>:")
- dy (getdist pt"\n y方向间距:")
- dya (getdist pt "\n y方向间距增量<0>:")
- j 0
- pt2 pt)
- (if (not dxa)(setq dxa 0))
- (if (not dya)(setq dya 0))
- (repeat Yn
- (setq i 0)
- (repeat Xn
- (command ".point" (mapcar '+ (list (* i (+ DX (* (1- i) dxa))) 0 0) PT2))
- (setq i (1+ i)) )
- (setq PT (mapcar '- pt (list 0 (+ dy (* j dya)) 0) )
- pt2 pt
- j (1+ j) )
- )
- )[/FONT]
如果要线性增量,可改 (+ dy (* j dya)) -》(+ dy dya)
(+ DX (* (1- i) dxa)))-》(+ dx dxa)
http://xdsoft.myrice.com/forum/lxx/lxxlsp/2dpt.lsp |