프로그램
캐드 분류

수치입력하였을때 다음명령어 쳐도 전에 적은 수치가 그대로남게하는법

컨텐츠 정보

  • 300 조회
  • 10 댓글
  • 0 추천
  • 0 비추천
  • 목록

본문

       (setq a (getreal "n : 수치입력 :  "))  

이렇게 수치를 입력하였는데요]
기존에 250이라고 쳤으면 다음 명령어 칠때도 250이 그대로 남아있게하려면 어떤구문을 입력해야하나요?

관련자료

댓글 10

캐드플러스님의 댓글

그냥 마지막 값을 보고 싶고 그냥 엔터 치면 값을 유지하는것 아닌가요?

조니1님의 댓글

세가지 방법이나 알려주시다니 감사합니다!!!! 

엔씨벤딩님의 댓글

———세번째 방법———- 전역변수를 사용하는 방법입니다. (defun c:aaa (  /  a b c )  로 시작하는 형식의 리습구문에서 / 뒤의 변수명은 지역변수입니다. (휘발성 변수) 사용되는 변수를 저 슬러쉬뒤에 나열하지 않으면 전역변수가 되어 리습명령이 종료된 후에도 여전히 값을 가지고 있습니다. 메모리 관리 측면에서 비효율적일 수도 있지만, 단순한 형태의 리습에서는 전혀 아무 상관없습니다.

엔씨벤딩님의 댓글

———– 두번째 방법—————— 사용자 변수를 이용합니다. 입력값이 실수형 변수값이니까 Userr1 ~ Userr5 중에 아무데나 넣어놓고 나중에 불러쓰면 됩니다. (setq TH (getvar "Userr1″))  ;;; 불러오는 코드 (setvar "Userr1″  a )  ;;; 저장하는 코드

사용자 변수는 각 도면마다 다른 값이 저장되기 때문에 이 방법을 사용하면, 다른 도면을 작업할 경우에 대한 주의가 필요합니다.

엔씨벤딩님의 댓글

———첫번째 방법 —————- a에 입력받은 값을 레지스트리에 저장해놓고 나중에 불러오면 됩니다.

불러오는 코드는 : (setq kkk (vl-registry-read "HKEY_CURRENT_USER\Software\VB and VBA Program Settings\myapp\fsgsmat" "enlong")) 저장하는 코드는 :  (vl-registry-write "HKEY_CURRENT_USER\Software\VB and VBA Program Settings\myapp\DCLKEY" "NCKLAYER" "nochange")

HKEY_CURRENT_USER\Software\VB and VBA Program Settings\myapp\  여기까지는 오토캐드의 레지스트리 기본저장 위치이니 안 건드리는게 좋습니다. 뒤에 2가지 키만 건드려서 저장하세요.

여분필드1 여분필드2 여분필드3
전체 7,337 / 1 페이지
RSS
번호
제목
이름
알림 0