모르는것들은 질문을 하면서 고생 끝에 완성?? 했는데..에러가 발생합니다.-_-
에러 이유를 못 찾겠네요..
PLINE으로 그린 사각 박스의 레이어를 plot으로 하여
사각 박스의 왼쪽하단 끝점(pt1)과 오른쪽 상단 끝점(pt2)을 찾아내 윈도우로 자동PLOT하는 리습을 짜는 중입니다.

콘솔창에서 테스트 해보면 거의 이상이 없는거 같은데…
아래 부분에 문제가 있지 않나 생각이 듭니다.
(if
(setq ss (ssget ‘((8 . “plot”))))
(progn ; 하나의 표현식으로 묶어줌
(setvar “cmdecho” 0) ; 커멘드 명령어를 보여주지 않음
(setq ea (sslength ss) i 0) ; 선택된 레이어 개수를 세고 카운터를 0으로 초기화
(repeat ea ; 반복문
(setq s1 (ssname ss i)) ; 엔티티 이름 추출
(setq ent (entget s1)) ; 레이어 선택
(setq s3 (vl-remove-if ‘(lambda (x) (/= (car x) 10)) ent)) ;4개의 끝점(교차점) 추출
제 머리로는 도저히, 풀지 못하겠네요..뭐가 문제일까요?
고수님들의 도움 부탁드립니다. (_ _)
(DEFUN C:FP1(/ ss ea i s1 ent pt1 pt2 xys )
(defun dtr (a) (* pi (/ a 180.0)))
(defun dtd (b) (/ (* 180.0 b) pi))
(if
(setq ss (ssget ‘((8 . “plot”))))
(progn ; 하나의 표현식으로 묶어줌
(setvar “cmdecho” 0) ; 커멘드 명령어를 보여주지 않음
(setq ea (sslength ss) i 0) ; 선택된 레이어 개수를 세고 카운터를 0으로 초기화
(repeat ea ; 반복문
(setq s1 (ssname ss i)) ; 엔티티 이름 추출
(setq ent (entget s1)) ; 레이어 선택
(setq s3 (vl-remove-if ‘(lambda (x) (/= (car x) 10)) ent)) ;4개의 끝점(교차점) 추출
(setq pta1 (cdr (nth 0 s3))) ; 첫번째 값 추출
(setq ptb1 (cdr (nth 1 s3))) ; 두번째 값 추출
(setq ptc1 (cdr (nth 2 s3))) ; 세번째 값 추출
(setq ptd1 (cdr (nth 3 s3))) ; 마지막 값 추출
(setq pta11 (car pta1)) ; 첫번째 x 좌표값
(setq pta12 (cadr pta1)) ; 첫번째 y 좌표값
(setq ptb11 (car ptb1)) ; 두번째 x 좌표값
(setq ptb12 (cadr ptb1)) ; 두번째 y 좌표값
(setq ptc11 (car ptc1)) ; 세번째 x 좌표값
(setq ptc12 (cadr ptc1)) ; 세번째 y 좌표값
(setq ptd11 (car ptd1)) ; 마지막 x 좌표값
(setq ptd12 (cadr ptd1)) ; 마지막 y 좌표값
(setq min_min (min pta11 ptb11 ptc11 ptd11)) ; x좌표 최소값
(setq min_max (max pta11 ptb11 ptc11 ptd11)) ; x좌표 최대값
(setq max_min (min pta12 ptb12 ptc12 ptd12)) ; y좌표 최소값
(setq max_max (max pta12 ptb12 ptc12 ptd12)) ; y좌표 최대값
(setq B1 (rtos min_min 2))
(setq B2 (rtos min_max 2))
(setq C1 (rtos max_min 2))
(setq C2 (rtos max_max 2))
(setq aa “,”)
(setq a1 (strcat b1 aa c1)) ;x, y 좌표 최소값
(setq a2 (strcat b2 aa c2)) ;x, y 좌표 최대값
(setq ang1 (angle a1 a2))
(setq ang (dtd ang1)) ;각도
(setq x01 (and (<= 0 ang) (< ang 40)))
(setq x02 (and (<= 40 ang) (< ang 90)))
(cond ((= x01 t)
(command “-PLOT” “Y” “” “PaperPort” “A4” “M” “Landscape” “” “w” a1 a2 “F” “C” “Y” “ACAD.CTB” “Y” “” “” “” “Y” ))
((= x02 t)
(command “-PLOT” “Y” “” “PaperPort” “A4” “M” “p” “” “w” a1 a2 “F” “C” “Y” “ACAD.CTB” “Y” “” “” “” “Y” ))
) ;cond end
(setq i (1+ i))
) ;repeat end
) ;progn end
) ;if end
) ;program end