while 은 제시한 조건에 부합하는 동안 계속 실행하며 조건에 맞지 않으면 종료합니다

 

 

 

예제는 특정객체이후의 생성된 객체 모두를 ss 로 저장하는 목적의 리습문 입니다

더이상 추가된 객체가 없어 변수 enext 값이 nil 이되면 while 문을 종료합니다

(while enext (setq ss (ssadd enext ss) enext (entnext enext)) ) 

 

 

 

 

 

(command "-insert" blkname "none" pt) ; 블록 삽입 명령 진행 사용자 점지정까지

(while (= (getvar "cmdactive") 1)  ; 사용자가 점을 지정하는한 계속 실행

(command 1 1 pause "-insert" blkname pause) ; 점지정 이후의 scale 입력 및 블록 삽입 절차 진행

)

 

 

 

 

예제는 한점을 중심으로 직경값 입력을 멈출때까지 계속하여 동심원을 그리는 기능

(setq p1(getpoint "\n 중심점 클릭  "))

(while (/= cd nil)  

 (setq cd(getdist "직경 입력 "))
 (if (null cd)(setq cd cd1) (setq cd1 cd))  

 (setq r(/ cd 2))

(setvar "osmode" 0)

(command "circle" p1 r )

(setvar "osmode" osm) 

 ) ; end while

 

 

 

 

(>  aaa bbb) ; 조건 bbb 보다 aaa 가 큰 경우

 

(<  aa bb) ; bb 보다 aa 가 작은 경우

 

(= ccc ddd) ; 조건 ccc 와 ddd 가 같은 경우

 

(<= eee fff) ; 조건 fff 가 eee 와 같거나 큰경우

 

(>= ee ff) ; ee 가 ff 보다 크거나 같은 경우

 

(= ggg nil) ; 조건 ggg 값이 nil (오류) 인 경우

 

(= hhh "") ; 사용자 입력 hhh 문자값이 그냥엔터로 값이 없는 경우

 

(/= cd nil) ; nil아니면 참 응답

 

 

 

 

 

 

 

+ Recent posts