캐드 분류
while문의 결과값을 변수에 저장하는 방법
컨텐츠 정보
- 1,502 조회
- 6 댓글
- 0 추천
- 0 비추천
-
목록
본문
(defun c:Test ()
;; Tharwat 15. April. 2013 ;;
(progn (princ "n Select single attributed block :")
(setq ss (ssget "_+.:S" '((0 . "INSERT") (66 . 1))))
)
(setq n (entnext (ssname ss 0)))
(while (not (eq (cdr (assoc 0 (setq e (entget n)))) "SEQEND" ))
(if (eq (cdr (assoc 0 e)) "ATTRIB")
(print (cdr (assoc 1 e)))
)
(setq n (entnext n))
)
(princ)
)
===================================================
위 리습은 리습을 실행하고 블록을 선택하면
그 블록의 고급 속성의 값들만 따로 출력해주는 리습입니다.
제가 궁극적으로 만드려고 하는 리습은 이 값들을 현재 엑셀에 띄워져 있는 일정 위치의 값들로 일괄변경 하는 리습인데요.
일단 그러려면 블록들의 속성값을 변수에 저장해야 한다고 생각해서
고급 블록의 속성값을 get해주는 리습을 외국 포럼에서 찾아다니다가 발견한 게 위 리습입니다.
while문으로 속성값들을 걸러서 결과값이 출력되는것까지는 이해했습니다.
이게 while문으로 나온 값들이 print되는것까지는 좋은데
여기서 이 결과값들을 도저히 변수로 넣는 방법을 모르겠습니다..
프로그램쪽 전공도 아니고 리습 제작도 처음 해보느라 맨땅에 헤딩 수준입니다…
일주일동안 포럼찾고 검색 계속 돌리다가(고급 블록, 블록 속성 등등으로 여기서도 검색해봄..)
도저히 모르겠어서 이렇게 올립니다.. 도와주세요.. 어떻게 해야 할까요
관련자료
댓글 6
/ 1 페이지







