리습에서 점프문 같은 명령어가 있나요?
컨텐츠 정보
- 385 조회
- 4 댓글
- 0 추천
- 0 비추천
- 목록
본문
리습라인이 여러줄 있을때
(cond 같은 조건으로 결과값이 원하지 않을경우
다시 위쪽라인으로 가서 실행하고 싶습니다..
혹시 어셈의 점프문 같은 명령어가 존재할까요??
while 을 사용하면 유사 효과는 볼수 있을거같은데
입력값이 많을경우에는 너무많은 반복문 겹치기가 될거같아서요..
아, 위 방법으로 구현하려는건
입력값이 여러개(약 5~8개)인데 잘못입력한게 있어서
Undo 처럼 되돌아가서 재입력하는 것을 구현하려 합니다.
좋은 방법이나 약간의 힌트라도 주신다면 찾아서 해보겠습니다.
while 을 이용했을경우 예시…
(setq pt1 nil)
(while (= pt1 nil)
(setq hgO1 (getstring "입력1:"))
(initget 129)
(setq pt1 (getpoint "포인트:"))
(cond
((not pt1) nil)
((vl-consp pt1))
((wcmatch pt1 "u,U") (setq pt1 nil))
)
)
이걸 몇 십번 감싸는건 좀 아닌것 같아서..
이렇게 질문드립니다.
긴글 읽어주셔서 감사합니다.
관련자료
피시님의 댓글
답변 감사합니다.
원상복귀까지는 오히려 명령어를 다시 입력하는것과 같아서 조금이나마 중도 되돌리기가 필요할때가 필요했습니다.
예를들어 20 이란수치를 입력하고 그다음 포인트입력을 요구하는 리습일때 다시생각해보니 20보다 15가 낳다고 판단하여 포인트입력을 뒤로하고 다시 수치입력으로 돌아가는 느낌입니다.(그렇게 입력할게 조금 많을경우..) 그리고 해당 수치도 각각 저장해야하고 포인트도 저장해야하죠..
형상을 실시간으로 그려주면서 눈으로 판단하고 수정 하면서 결과물을 그려내는 리습을 작성중입니다.
GRDRAW 나Grvecs 같은경우는 라인만 그려지고 ARC 나 선과 선사이의 R을 미리그려 보여주기 같은게 힘들더군요(실력미숙..) 그래서 그냥 직접 그리는걸로 만들어보고 있습니다..