클릭한 지점의 좌표를 바로 기록
현황점, 기준점, 구조 그리드의 좌표를 별도 메모 없이 도면에 남깁니다. Enter를 누를 때까지 연속으로 표기합니다.
현재 UCS를 기준으로 표기
- 표기 형식은 X=값, Y=값입니다.
- 좌표값은 현재 UCS 기준이며 소수 자릿수는 DIMDEC가 기본입니다.
- 문자는 클릭점 위로 현재 문자 높이의 1.5배만큼 떨어져 생성됩니다.
사용 순서
- 1
APPLOAD로 coordinate-label.lsp를 로드합니다.
- 2
XYLABEL을 입력합니다.
- 3
소수 자릿수와 문자 높이를 지정합니다.
- 4
좌표를 표기할 점들을 클릭하고 Enter로 종료합니다.
코드 전문
다운로드 파일은 아래 코드와 100% 동일합니다. 붙여넣기보다 파일 다운로드 후 APPLOAD 로드를 권장합니다.
;;; ------------------------------------------------------------
;;; AutoCATS 리습 자료실
;; 명령: XYLABEL
;; 기능: 클릭한 점의 현재 UCS X,Y 좌표를 연속으로 문자 표기
;; 출처: https://www.autocats.co.kr/lisp/coordinate-label
;; 버전: 1.0 (2026-07-23)
;; 라이선스: 자유 사용·수정, 재배포 시 출처(autocats.co.kr) 표기
;; 안전: *error* 핸들러 + UNDO 그룹, 기존 객체 수정 없음
;;; ------------------------------------------------------------
(vl-load-com)
(defun autocats-xylabel-string (point precision)
(strcat "X=" (rtos (car point) 2 precision)
", Y=" (rtos (cadr point) 2 precision)))
(defun autocats-xylabel-create (point precision height / insertion)
(setq insertion
(trans
(list (car point) (+ (cadr point) (* 1.5 height)) (caddr point))
1 0))
(entmakex
(list
(cons 0 "TEXT")
(cons 10 insertion)
(cons 40 height)
(cons 1 (autocats-xylabel-string point precision))
(cons 7 (getvar "TEXTSTYLE")))))
(defun c:XYLABEL (/ *error* doc undo-open precision height point count)
(defun *error* (msg)
(if undo-open
(progn (vla-EndUndoMark doc) (setq undo-open nil)))
(if (and msg (not (wcmatch (strcase msg) "*CANCEL*,*QUIT*,*EXIT*,*취소*")))
(princ (strcat "\n[XYLABEL] 중단: " msg)))
(princ))
(setq precision (getint (strcat "\n[XYLABEL] 소수 자릿수 <" (itoa (getvar "DIMDEC")) ">: ")))
(if (or (null precision) (< precision 0) (> precision 8))
(setq precision (getvar "DIMDEC")))
(setq height (getreal (strcat "\n문자 높이 <" (rtos (getvar "TEXTSIZE") 2 precision) ">: ")))
(if (or (null height) (<= height 0.0)) (setq height (getvar "TEXTSIZE")))
(setq doc (vla-get-ActiveDocument (vlax-get-acad-object))
count 0)
(vla-StartUndoMark doc)
(setq undo-open T)
(while (setq point (getpoint "\n좌표를 표기할 점 클릭 (Enter 종료): "))
(if (autocats-xylabel-create point precision height)
(setq count (1+ count))))
(vla-EndUndoMark doc)
(setq undo-open nil)
(princ (strcat "\n[XYLABEL] " (itoa count) "개 좌표 표기 완료."))
(princ))
(princ "\n[AutoCATS] XYLABEL 로드 완료 - 명령행에 XYLABEL 를 입력하세요.")
(princ)
호환 CAD
위 환경에서 확인했습니다. 목록에 없는 CAD는 샘플 도면에서 먼저 결과를 대조한 뒤, CAD 종류·버전과 함께 네이버 카페에 알려주세요.
이 기능, CATS Pro에는 버튼으로 있습니다
XYP / CATS_XYPCATS Pro에서는 좌표 형식과 표기 옵션을 더 세밀하게 설정할 수 있습니다.CATS Pro는 계속 무료입니다. 리습 로드 없이 버튼 클릭으로 같은 작업을 처리할 수 있습니다.
함께 쓰면 좋은 CATS 명령
자주 묻는 질문
WCS 좌표가 아닌 값이 나옵니다.
XYLABEL은 현재 UCS 좌표를 표시합니다. WCS 값이 필요하면 UCS를 World로 바꾼 뒤 실행하세요.
Z 좌표도 표시하나요?
이 가벼운 버전은 X와 Y만 표시합니다. 고급 좌표 작업은 CATS Pro의 좌표 명령을 사용하세요.