캐드 리습은 이렇습니다.
; 평면상의 원에 핀의 이름을 기록하는 프로그램입니다.
(defun C:ctt()
(setq osmm (getvar “osmode”))
(setvar “cmdecho” 0)
(setvar “osmode” 0)
(prompt “n같은명칭의 원을 선택하시요.”)
(setq p (ssget))
(setq sbm (strcase (getstring “n기호문자를 입력하시요.<RP, GP…>:”)))
(setq htxt (getreal “n문자의 높이를 입력하시요.:”))
(setq dtang (getreal “n문자의 회전각도를 입력하시요.:”))
(setq dtcol (getvar “dimclrt”))
(setq l 0)
(while (/= p nil)
(if (= “CIRCLE” (cdr (assoc 0 (entget (ssname p l)))))
(progn
(setq cp (cdr (assoc 10 (entget (ssname p l)))))
(command “text” “c” cp htxt dtang sbm)
(command “change” “l” “” “p” “la” “dim” “c” dtcol “”)
) ; progn
) ; if
(setq l (1+ l))
) ; while
(setvar “osmode” osmm)
(setvar “cmdecho” 1)
) ; defun
명령어가 많이 불안정한가 봅니다.
이 명령어 실행하면 온스냅도 리셋되어있고, 실행하면 뭔가 에러가 뜨구요..;;
그리고 기울기는 0도에서 계속 쓸꺼니까 기울기 설정 안나오게 좀 바꿔주세요..
MIDDLE CENTER는 TEXT 명령어 후 MC로 바꾸니까 미들센터로 가더군요.(이건 해결햇씁니다)
DATANG가 기울기 같은데 지우니 첨부터 다시 입력하라고 뜨고..;;
리습 책 사서 배워야겠내요..
도와주세요 ㅠㅠ;;
넵..
제이에게님… 위문제는 고캐드상단의 질문자료 – LISP/VBA 에
전문가분들이 구름같이 많으십니다….
그쪽에 올리시면 아마도 커피한잔 마실시간도 안되
해결해 주실겁니다… 덤으로 주석도 달아서 배우실수있도록도 해주십니다…
볼록2