탭 치수를 자동 기입해주는 리습인데요.
수량을 쓰라고 나오는 부분에서 수량이 0일경우
수량자표시가 안되게 해주세요 지금은 0-M8 이런식으로 나오거든요.
그리구, 치수선 끝에 화살표도 나오게 해주세요.
그리고 탭그리면 보통 안쪽에 원 있고 바깥쪽 원이 탭 치수잖아요.
바깥쪽 원은 4분에 3정도만 그리고 그러니까 c 모양처럼 그리잖아요.
그런데 그런 경우에는 객체 선택이 안되거든요.
명령어를 치면 처음에 외경 선택하라고 하는데 원이 잘라져 있으면
선택이 안되요, 잘라져 있는 원도 선택될수 있게해주세여.
또. 지금은 지시선이 임의로 생성되는데 그걸 일반적으로 저희가
지시선 그릴때처럼 되게 해주세요 (끝점 중간점 마우스로 지정하는것)
지시선과 문자는 dim 이라는 레이어로 변환되게,
부탁드립니다.
(defun c:MMM()
(setvar “cmdecho” 0)
(setq es (entsel “nTAP 외경을 선택하세요: “))
(if (and (/= es nil) (= (cdr (assoc 0 (entget (car es)))) “CIRCLE”))
(progn
(setq e (car es))
(setq ep (cadr es))
(setq en (entget e))
(setq dia (fix (* (cdr (assoc 40 en)) 2)))
(initget “Yes No”)
(setq k (getkword “n관통 … < Yes > / No : “))
(if (= k “No”)
(progn
(setq dp (getint (strcat “n깊이< " (itoa (1+ dia)) " >: “)))
(if (= dp nil) (setq dp (1+ dia)))
)
)
(setq n (getint “n수량< 0 >: “))
(if (= n nil) (setq n 0))
(cond
((or (= k nil) (= k “Yes”)) (setq txt (strcat (itoa n) “-” “M” (itoa dia) ” TAP THRU”)))
((= k “No”) (setq txt (strcat (itoa n) “-” “M” (itoa dia) ” TAP DP” (itoa dp))))
)
(setq ep1 (polar ep (/ pi 4) (/ dia 2)))
(setq ep2 (polar ep1 0 (/ dia 4)))
(command “qleader” ep ep1 ep2 “0” txt “”)
)
)
(princ)
)