(defun cupartno (/ olderr ocmd oblp )
(setq olderr *error*
*error* myerror)
(setq ocmd (getvar “cmdecho”))
(setq oblp (getvar “blipmode”))
(setvar “cmdecho” 0)
(setvar “blipmode” 0)
(SETQ A (GETVAR “CLAYER”))
(SETQ OSM (GETVAR “OSMODE”))
(SETVAR “OSMODE” 0)
(SETQ P1 (GETPOINT “nFirst point :”))
(SETQ P2 (GETPOINT “nSecond point :” P1))
(SETQ NUM (GETSTRING “nParts No. :”))
(COMMAND “LAYER” “M” “3” “”)
(COMMAND “DIM” “STYLE” “ROMANS” “EXIT”)
(SETQ D0 (GETVAR “DIMSCALE”))
(SETQ D1 (* D0 12.0))
(SETQ P3 (ANGLE P1 P2))
(SETQ P5 (POLAR P2 (+ P3 PI) (/ D1 2.0)))
(SETQ HI (* D0 5))
(COMMAND “DONUT” 0 D0 P1 “”)
(COMMAND “CIRCLE” P2 “D” D1)
(COMMAND “LINE” P1 P5 “”)
(COMMAND “LAYER” “M” “4” “”)
(COMMAND “TEXT” “M” P2 HI “0” NUM)
(COMMAND “LAYER” “S” A “”)
(SETVAR “OSMODE” OSM)
(setq *error* olderr) ; Restore old *error* handler
(princ)
)
(defun c:pn ()
(cupartno)
(princ)
)
(defun c:partno ()
(cupartno)
도면 품번 넣은 리습인데요.
가르키는 끝점이랑 품번을 이어주는 선이랑 따로 분리가 되어있어서
하나의 객체로 하고 싶은데 고수님들 수정좀 부탁드립니다…