2018 LT 버전을 사용하고있습니다.
아이컴툴스에서 지원하는 보조프로그램 을 사용하여 리습 사용중입니다.
밑에 리습은 VL 함수를 사용하여 지원을 못한다고하더군요 ..
혹시 다른식으로 변환을 하여 사용할수있는지 답변부탁드리겠습니다.
;;============================================================
; 배열
;;============================================================
;===============================================================
(defun c:aar ( / ss->list copyv dx gr nl nx obs obx p0 pd pw px vx ) (vl-load-com)
;; Lee Mac 2011
(defun ss->list ( ss / i l )
(if ss
(repeat (setq i (sslength ss))
(setq l (cons (vlax-ename->vla-object (ssname ss (setq i (1- i)))) l))
)
)
)
(defun copyv ( ob n v / i b l ) (setq i 1 b (vlax-3D-point ‘(0. 0. 0.)))
(repeat n
(foreach obj ob
(vla-move (car (setq l (cons (vla-copy obj) l))) b (vlax-3D-point (mapcar ‘* v (list i i i))))
)
(setq i (1+ i))
)
l
)
(if
(and
(setq obs (ss->list (ssget ‘((0 . “~VIEWPORT”)))))
(setq p0 (getpoint “nBase Point: “))
(setq px (getpoint “nArray Vector: ” p0))
(setq pw (trans p0 1 0)
pd (trans p0 1 3)
vx (trans (mapcar ‘- px p0) 1 0) dx (distance ‘(0. 0. 0.) vx)
)
(not (equal dx 0.0 1e-14))
(princ “nArray Endpoint: “)
)
(while (= 5 (car (setq gr (grread ‘t 13 0)))) (redraw)
(setq obx (car (mapcar ‘vla-delete obx))
nx (fix (setq nl (/ (caddr (trans (setq gr (mapcar ‘- (cadr gr) p0)) 1 vx)) dx)))
obx (copyv obs (abs nx) (mapcar (if (minusp nx) ‘- ‘+) vx))
)
(grvecs (list -3 ‘(0. 0. 0.) (mapcar ‘* (trans vx 0 3) (list nl nl nl)))
(list
(list 1. 0. 0. (car pd))
(list 0. 1. 0. (cadr pd))
(list 0. 0. 1. (caddr pd))
(list 0. 0. 0. 1.)
)
)
)
)
(redraw) (princ)
)
,그리 추천하고픈 방법은 아니지만 command 명령을 사용하여 약간의 버벅임이 있습니다
도움주셔서 감사합니다.
다시 올립니다 리습 무덤인 캐디안에서도 되는거 보니 안될리는 없을꺼 같습니다