728x90
; 좌표표기하기(2008.3.20 주말농부)
; ->텍스트로 된 X,Y 좌표을 찍어 위치에 박스을 표현하기
(defun c:pt(/ os ss1 ss2 pt1 pt2 ptx pty en1 en2 ds p1 p2)
(setq os (getvar "osmode"))
(setq ss1 (entsel "\nX좌표값을 선택->"))
(setq ss2 (entsel " Y좌표값을 선택->"))
(setvar "osmode" 0)
(setq pt1 (cadr ss1))
(setq en1 (car ss1) en2 (car ss2))
(setq ptx (cdr (assoc 1 (entget en1))))
(setq pty (cdr (assoc 1 (entget en2))))
(setq pt2 (list (atof ptx) (atof pty)))c
(command "line" pt1 pt2 "")
(setq ds 23) ;박스 규격
(setq p1 (polar pt2 0 (/ ds 2)))
(setq p1 (polar p1 (/ pi 2) (/ ds 2)))
(setq p2 (polar p1 pi ds))
(setq p2 (polar p2 (* pi 1.5) ds))
(command "rectangle" p2 p1)
(setvar "osmode" os)
(prin1))
; ->텍스트로 된 X,Y 좌표을 찍어 위치에 박스을 표현하기
(defun c:pt(/ os ss1 ss2 pt1 pt2 ptx pty en1 en2 ds p1 p2)
(setq os (getvar "osmode"))
(setq ss1 (entsel "\nX좌표값을 선택->"))
(setq ss2 (entsel " Y좌표값을 선택->"))
(setvar "osmode" 0)
(setq pt1 (cadr ss1))
(setq en1 (car ss1) en2 (car ss2))
(setq ptx (cdr (assoc 1 (entget en1))))
(setq pty (cdr (assoc 1 (entget en2))))
(setq pt2 (list (atof ptx) (atof pty)))c
(command "line" pt1 pt2 "")
(setq ds 23) ;박스 규격
(setq p1 (polar pt2 0 (/ ds 2)))
(setq p1 (polar p1 (/ pi 2) (/ ds 2)))
(setq p2 (polar p1 pi ds))
(setq p2 (polar p2 (* pi 1.5) ds))
(command "rectangle" p2 p1)
(setvar "osmode" os)
(prin1))

728x90
'■ 유용한 캐드&리습 > ▫ AutoLISP' 카테고리의 다른 글
리습 - 범위선택 pdf 자동출력하기 (1) | 2024.12.31 |
---|---|
텍스트로 된 X,Y 좌표을 찍어 위치표현하기 (1) | 2024.12.31 |
속성블럭 되돌리기 (0) | 2024.12.31 |
리습 - 선택한 블럭의 좌표 뽑기-2 (7-0815) (0) | 2024.12.31 |
선택한 블럭의 좌표 뽑기-1 (7-0814) (0) | 2024.12.31 |