프로그램
캐드 분류

좌표 치수 자동리습입니다만.. 수정 부탁드립니다.

컨텐츠 정보

본문

현재 탭및 밀핀 좌표 표로 만들어주는 리습 요기서 받아서 쓰고있습니다. 약간 안맞는 부분이 있어서 수정을 하고싶습니다.

1. 소숫점 3자리에서 반올림이 되어서 소숫점 2자리만 나오고있습니다.
요고를 소숫점3자리까지 나오고 4자리는 내림으로 했으면합니다.
2. 탭 밀핀 CB 냉각좌표 요 4가지가 있는데 넘버링, x, y 이외에 나머지는 필요가없는지라…
나머지를 버려도 리습이 작동을 할까요? 아니면 수정을 해야될까요?


요 2가지만 해결된다면 업무속도가 어마무시하게 올라갈것 같습니다. 죄송하지만 부탁드리겠습니다^^









(setq tp (polar (list cenx ceny) (dtr 45) (* ds 2.)))
(setq tp (polar (list cenx ceny) (dtr 45) (+ rad1 ds)))
)
(setq ha (strcat cool (itoa count1)))
(command "layer" "s" "0″ "")
(command "text" tp (* ts 1.5) "0″ ha)
(command "text" "mr" lb5 ts "0″ ha)
(command "text" "mr" sp1 ts "0″ cx)
(command "text" "mr" sp2 ts "0″ cy)
(command "text" "mr" sp3 ts "0″ (strcat "%%c" (abc dd)))
(command "text" "mr" (polar sp2 0.0 60) ts "0″ (strcat "%%C" (abc (+ 2 dd ))))
(command "text" "mr" (polar sp2 0.0 90) ts "0″ "0″)
(command "layer" "s" "1″ "")
(command "line" pt2 (polar pt2 0.0 (* ts 65.0)) "")
(setq count2 1)
(setq count1 (+ 1 count1))
(setq lb5 (polar lb5 (dtr 270) (* ts 2.)))
(setq pt2 pt1)
(setq pt1 (polar pt1 (dtr 270) (* ts 2.0)))
)
)
(setq count (+ 1 count))
);while close
(setq pt1 (polar pt1 (dtr 90) (* ts 2.0)))
(command "layer" "s" "1″ "")
(command "line" tt1 pt1 "")
(command "line" (polar tt1 0.0 (* ts 5.0))  (polar pt1 0.0 (* ts 5.0)) "")
(command "line" (polar tt1 0.0 (* ts 15.0))  (polar pt1 0.0 (* ts 15.0)) "")
(command "line" (polar tt1 0.0 (* ts 25.0))  (polar pt1 0.0 (* ts 25.0)) "")
(command "line" (polar tt1 0.0 (* ts 35.0))  (polar pt1 0.0 (* ts 35.0)) "")
(command "line" (polar tt1 0.0 (* ts 45.0))  (polar pt1 0.0 (* ts 45.0)) "")
(command "line" (polar tt1 0.0 (* ts 55.0))  (polar pt1 0.0 (* ts 55.0)) "")
(command "line" (polar tt1 0.0 (* ts 65.0))  (polar pt1 0.0 (* ts 65.0)) "")
(command "line" pt1  (polar pt1 0.0 (* ts 65.0)) "")
(command "layer" "s" "3″ "")
(setvar "osmode" osmod)
(setvar "cmdecho" 1)
)


(defun tapxy ()
(setq ts 3.0)
(setq tspx (car tsp) tspy (cadr tsp))
(setq pt1x (- tspx (* ts 4.)) pt1y (- tspy (* ts 0.5)))
(setq pt1 (list pt1x pt1y))
(setq pt2 (polar pt1 (dtr 90) (* ts 2.0)))
(setq tt1 (polar pt1 (dtr 90) (* ts 4.)))
(setq tt5 (polar tt1 0. (* ts 45.0)))
(setq pp1 (polar (polar tsp (dtr 90) (* ts 2.0)) pi (* ts 2.0)))
(setq lb1 (polar (polar tt1 (dtr 270) ts) 0.0 7.5))
(setq lb2 (polar (polar tt1 (dtr 270) ts) 0.0 30.0))
(setq lb3 (polar (polar tt1 (dtr 270) ts) 0.0 60.0))
(setq lb4 (polar (polar tt1 (dtr 270) ts) 0.0 90.0))
(setq lb5 (polar (polar lb1 (dtr 270) 6) 0.0 4.0))
(setq lb6 (polar (polar tt1 (dtr 270) ts) 0.0 120.0))
(setq titl (polar tt1 (dtr 90) ts))
(command "layer" "s" "1″ "")
(command "line" tt1 tt5 "")
(command "layer" "s" "0″ "")
(command "text" titl (* ts 1.5) "0″ "TAP COORDINATE.")
(command "text" "mc" lb1 ts "0″ "SYM") 
(command "text" "mc" lb2 ts "0″ "X") 
(command "text" "mc" lb3 ts "0″ "Y") 
(command "text" "mc" lb4 ts "0″ "TAP") 
(command "text" "mc" lb6 ts "0″ "REM")
(while (< count slen)
(setq gg (entget (ssname ss count)))
(setq entname (cdr (assoc 0 gg)))
(if (= entname "ARC")
(progn
(setq sp1 (polar lb5 0 (* ts 8.5)))
(setq sp2 (polar sp1 0 (* ts 10.0)))
(setq sp3 (polar sp2 0.0 (* 10.0 ts )))
(setq cen (cdr (assoc 10 gg)))
(setq rad1 (cdr (assoc 40 gg)))
(setq dd (* rad1 2.))
(setq cenx (car cen ) ceny (cadr cen ))
(setq cx1 (- cenx bx) cy1 (- ceny by))
(setq cx (abc cx1) cy (abc cy1))
(setq rad2 (/ rad1 2.))
(if (< ts rad2)
(setq tp (polar (list cenx ceny) (dtr 45) (* ds 2.)))
(setq tp (polar (list cenx ceny) (dtr 45) (+ rad1 ds)))
)
(setq ha (strcat cool (itoa count1)))
(command "layer" "s" "0″ "")
(command "text" tp (* ts 1.5) "0″ ha)
(command "text" "mr" lb5 ts "0″ ha)
(command "text" "mr" sp1 ts "0″ cx)
(command "text" "mr" sp2 ts "0″ cy)
(command "text" "mr" sp3 ts "0″ (strcat "M" (abc dd)))
;(command "text" "mr" (polar sp2 0.0 60) ts "0″ (strcat "(M" (abc (- dd 2))")"))
(command "layer" "s" "1″ "")
(command "line" pt2 (polar pt2 0.0 (* ts 45.0)) "")
(setq count2 1)
(setq count1 (+ 1 count1))
(setq lb5 (polar lb5 (dtr 270) (* ts 2.)))
(setq pt2 pt1)
(setq pt1 (polar pt1 (dtr 270) (* ts 2.0)))
)
)
(setq count (+ 1 count))
);while close
(setq pt1 (polar pt1 (dtr 90) (* ts 2.0)))
(command "layer" "s" "1″ "")
(command "line" tt1 pt1 "")
(command "line" (polar tt1 0.0 (* ts 5.0))  (polar pt1 0.0 (* ts 5.0)) "")
(command "line" (polar tt1 0.0 (* ts 15.0))  (polar pt1 0.0 (* ts 15.0)) "")
(command "line" (polar tt1 0.0 (* ts 25.0))  (polar pt1 0.0 (* ts 25.0)) "")
(command "line" (polar tt1 0.0 (* ts 35.0))  (polar pt1 0.0 (* ts 35.0)) "")
(command "line" (polar tt1 0.0 (* ts 45.0))  (polar pt1 0.0 (* ts 45.0)) "")
(command "line" pt1  (polar pt1 0.0 (* ts 45.0)) "")
(command "layer" "s" "3″ "")
(setvar "osmode" osmod)
(setvar "cmdecho" 1)
)


(defun defxy ()
(setq ts 3.0)
(setq tspx (car tsp) tspy (cadr tsp))
(setq pt1x (- tspx (* ts 4.)) pt1y (- tspy (* ts 0.5)))
(setq pt1 (list pt1x pt1y))
(setq pt2 (polar pt1 (dtr 90) (* ts 2.0)))
(setq tt1 (polar pt1 (dtr 90) (* ts 4.)))
(setq tt5 (polar tt1 0. (* ts 45.0)))
(setq pp1 (polar (polar tsp (dtr 90) (* ts 2.0)) pi (* ts 2.0)))
(setq lb1 (polar (polar tt1 (dtr 270) ts) 0.0 7.5))
(setq lb2 (polar (polar tt1 (dtr 270) ts) 0.0 30.0))
(setq lb3 (polar (polar tt1 (dtr 270) ts) 0.0 60.0))
(setq lb4 (polar (polar tt1 (dtr 270) ts) 0.0 90.0))
(setq lb5 (polar (polar lb1 (dtr 270) 6) 0.0 4.0))
(setq lb6 (polar (polar tt1 (dtr 270) ts) 0.0 120.0))
(setq titl (polar tt1 (dtr 90) ts))
(command "layer" "s" "1″ "")
(command "line" tt1 tt5 "")
(command "layer" "s" "0″ "")
(command "text" titl (* ts 1.5) "0″ "DEFULT COORDINATE.")
(command "text" "mc" lb1 ts "0″ "SYM") 
(command "text" "mc" lb2 ts "0″ "X") 
(command "text" "mc" lb3 ts "0″ "Y") 
(command "text" "mc" lb4 ts "0″ "DIA") 
(command "text" "mc" lb6 ts "0″ "REM")
(while (< count slen)
(setq gg (entget (ssname ss count)))
(setq entname (cdr (assoc 0 gg)))
(if (= entname "CIRCLE")
(progn
(setq sp1 (polar lb5 0 (* ts 8.5)))
(setq sp2 (polar sp1 0 (* ts 10.0)))
(setq sp3 (polar sp2 0.0 (* 10.0 ts )))
(setq cen (cdr (assoc 10 gg)))
(setq rad1 (cdr (assoc 40 gg)))
(setq dd (* rad1 2.))
(setq cenx (car cen ) ceny (cadr cen ))
(setq cx1 (- cenx bx) cy1 (- ceny by))
(setq cx (abc cx1) cy (abc cy1))
(setq rad2 (/ rad1 2.))
(if (< ts rad2)
(setq tp (polar (list cenx ceny) (dtr 45) (* ds 2.)))
(setq tp (polar (list cenx ceny) (dtr 45) (+ rad1 ds)))
)
(setq ha (strcat "(" cool (itoa count1) ")" ))
(command "layer" "s" "0″ "")
(command "text" tp (* ts 1.5) "0″ ha)
(command "text" "mr" lb5 ts "0″ ha)
(command "text" "mr" sp1 ts "0″ cx)
(command "text" "mr" sp2 ts "0″ cy)
(command "text" "mr" sp3 ts "0″ (strcat "%%c" (abc dd)))
(command "layer" "s" "1″ "")
(command "line" pt2 (polar pt2 0.0 (* ts 45.0)) "")
(setq count2 1)
(setq count1 (+ 1 count1))
(setq lb5 (polar lb5 (dtr 270) (* ts 2.)))
(setq pt2 pt1)
(setq pt1 (polar pt1 (dtr 270) (* ts 2.0)))
)
)
(setq count (+ 1 count))
);while close
(setq pt1 (polar pt1 (dtr 90) (* ts 2.0)))
(command "layer" "s" "1″ "")
(command "line" tt1 pt1 "")
(command "line" (polar tt1 0.0 (* ts 5.0))  (polar pt1 0.0 (* ts 5.0)) "")
(command "line" (polar tt1 0.0 (* ts 15.0))  (polar pt1 0.0 (* ts 15.0)) "")
(command "line" (polar tt1 0.0 (* ts 25.0))  (polar pt1 0.0 (* ts 25.0)) "")
(command "line" (polar tt1 0.0 (* ts 35.0))  (polar pt1 0.0 (* ts 35.0)) "")
(command "line" (polar tt1 0.0 (* ts 45.0))  (polar pt1 0.0 (* ts 45.0)) "")
(command "line" pt1  (polar pt1 0.0 (* ts 45.0)) "")
(command "layer" "s" "3″ "")
(setvar "osmode" osmod)
(setvar "cmdecho" 1)
)


(defun boltcbxy ()
(setq ts 3.0)
(setq tspx (car tsp) tspy (cadr tsp))
(setq pt1x (- tspx (* ts 4.)) pt1y (- tspy (* ts 0.5)))
(setq pt1 (list pt1x pt1y))
(setq pt2 (polar pt1 (dtr 90) (* ts 2.0)))
(setq tt1 (polar pt1 (dtr 90) (* ts 4.)))
(setq tt5 (polar tt1 0. (* ts 65.0)))
(setq pp1 (polar (polar tsp (dtr 90) (* ts 2.0)) pi (* ts 2.0)))
(setq lb1 (polar (polar tt1 (dtr 270) ts) 0.0 7.5))
(setq lb2 (polar (polar tt1 (dtr 270) ts) 0.0 30.0))
(setq lb3 (polar (polar tt1 (dtr 270) ts) 0.0 60.0))
(setq lb4 (polar (polar tt1 (dtr 270) ts) 0.0 90.0))
(setq lb5 (polar (polar lb1 (dtr 270) 6) 0.0 4.0))
(setq lb6 (polar (polar tt1 (dtr 270) ts) 0.0 120.0))
(setq lb7 (polar (polar tt1 (dtr 270) ts) 0.0 150.0))
(setq lb8 (polar (polar tt1 (dtr 270) ts) 0.0 180.0))
(setq titl (polar tt1 (dtr 90) ts))
(command "layer" "s" "1″ "")
(command "line" tt1 tt5 "")
(command "layer" "s" "0″ "")
(command "text" titl (* ts 1.5) "0″ "BOLT C'B COORDINATE.")
(command "text" "mc" lb1 ts "0″ "SYM") 
(command "text" "mc" lb2 ts "0″ "X") 
(command "text" "mc" lb3 ts "0″ "Y") 
(command "text" "mc" lb4 ts "0″ "DIA") 
(command "text" "mc" lb6 ts "0″ "DIA+2″)
(command "text" "mc" lb7 ts "0″ "DP")
(command "text" "mc" lb8 ts "0″ "REM")
(while (< count slen)
(setq gg (entget (ssname ss count)))
(setq entname (cdr (assoc 0 gg)))
(if (= entname "CIRCLE")
(progn
(setq sp1 (polar lb5 0 (* ts 8.5)))
(setq sp2 (polar sp1 0 (* ts 10.0)))
(setq sp3 (polar sp2 0.0 (* 10.0 ts )))
(setq cen (cdr (assoc 10 gg)))
(setq rad1 (cdr (assoc 40 gg)))
(setq dd (* rad1 2.))
(setq cenx (car cen ) ceny (cadr cen ))
(setq cx1 (- cenx bx) cy1 (- ceny by))
(setq cx (abc cx1) cy (abc cy1))
(setq rad2 (/ rad1 2.))
(if (< ts rad2)
(setq tp (polar (list cenx ceny) (dtr 45) (* ds 2.)))
(setq tp (polar (list cenx ceny) (dtr 45) (+ rad1 ds)))
)
(setq ha (strcat cool (itoa count1)))
(command "layer" "s" "0″ "")
(command "text" tp (* ts 1.5) "0″ ha)
(command "text" "mr" lb5 ts "0″ ha)
(command "text" "mr" sp1 ts "0″ cx)
(command "text" "mr" sp2 ts "0″ cy)
(command "text" "mr" sp3 ts "0″ (strcat "%%c" (abc dd)))
(command "text" "mr" (polar sp2 0.0 60) ts "0″ (strcat "%%C" (abc (+ 2 dd ))))
(command "text" "mr" (polar sp2 0.0 90) ts "0″ "0″)
(command "layer" "s" "1″ "")
(command "line" pt2 (polar pt2 0.0 (* ts 65.0)) "")
(setq count2 1)
(setq count1 (+ 1 count1))
(setq lb5 (polar lb5 (dtr 270) (* ts 2.)))
(setq pt2 pt1)
(setq pt1 (polar pt1 (dtr 270) (* ts 2.0)))
)
)
(setq count (+ 1 count))
);while close
(setq pt1 (polar pt1 (dtr 90) (* ts 2.0)))
(command "layer" "s" "1″ "")
(command "line" tt1 pt1 "")
(command "line" (polar tt1 0.0 (* ts 5.0))  (polar pt1 0.0 (* ts 5.0)) "")
(command "line" (polar tt1 0.0 (* ts 15.0))  (polar pt1 0.0 (* ts 15.0)) "")
(command "line" (polar tt1 0.0 (* ts 25.0))  (polar pt1 0.0 (* ts 25.0)) "")
(command "line" (polar tt1 0.0 (* ts 35.0))  (polar pt1 0.0 (* ts 35.0)) "")
(command "line" (polar tt1 0.0 (* ts 45.0))  (polar pt1 0.0 (* ts 45.0)) "")
(command "line" (polar tt1 0.0 (* ts 55.0))  (polar pt1 0.0 (* ts 55.0)) "")
(command "line" (polar tt1 0.0 (* ts 65.0))  (polar pt1 0.0 (* ts 65.0)) "")
(command "line" pt1  (polar pt1 0.0 (* ts 65.0)) "")
(command "layer" "s" "3″ "")
(entmod (subst save (assoc 40 ent) ent))
(setvar "osmode" osmod)
(setvar "cmdecho" 1)
)

입니다. 

관련자료

댓글 0
등록된 댓글이 없습니다.
여분필드1 여분필드2 여분필드3
전체 70 / 4 페이지
번호
제목
이름
알림 0