현재 Dimension Arrange 라는 치수 정렬 리습을 사용하고 있습니다.
치수선 뿐만 아니라 치수 보조선도 함께정렬된느 리습이라..사용에 어려움이 있어
직접 수정해 보려니 쉽지 않네요..
치수 보조선만 정렬되게 했으면 합니다.
부탁드립니다.
;;========================================================
; 치수선 및 보조선 정렬하기(2004.3 주말농부)
; ->Dim의 치수선 및 보조선 끝을 일정하게 정렬하는 명령어
; ->사선으로된 치수선도 정렬됨(2007.4)
; ->치수선 및 보조선 정렬(2008.3)
;;—— Dimension Arrange ——————————-
(defun c:dex(/ ss ssn k ed p10 p13 p14 ag ag90 pt1 pt2 pt3)
(prompt “…치수선 및 보조선 정렬하기”)
(prompt “n변경할 치수을 선택->”)
(setq ss (ssget ‘((0 . “DIMENSION”))))
(setq pt1 (getpoint “n정렬점 선택->”))
(setq ssn (sslength ss))
(setq ed (entget (ssname ss 0)))
(setq p14 (cdr (assoc 14 ed)))
(setq p10 (cdr (assoc 10 ed)))
(setq ag (angle p14 p10))
(setq ag90 (+ ag (/ pi 2)))
(setq ds1 (distance pt1 p10))
(setq ds2 (distance pt1 p14))
(setq k 0)
(if (< ds1 ds2)
(repeat ssn
(setq ed (entget (ssname ss k)))
(setq ed (subst (cons 10 pt1) (assoc 10 ed) ed))
(entmod ed)
(setq k (+ k 1))
)
(repeat ssn
(setq ed (entget (ssname ss k)))
(setq p13 (cdr (assoc 13 ed)))
(setq p14 (cdr (assoc 14 ed)))
(setq p10 (cdr (assoc 10 ed)))
(setq pt2 (polar pt1 ag90 100))
(setq pt3 (polar p13 ag 100))
(setq pt14 (inters pt1 pt2 p14 p10 nil))
(setq pt13 (inters pt1 pt2 p13 pt3 nil))
(setq ed (subst (cons 13 pt13) (assoc 13 ed) ed))
(setq ed (subst (cons 14 pt14) (assoc 14 ed) ed))
(entmod ed)
(setq k (+ k 1))
)
)
(prin1))
GPknLv.0
치수 정렬 리습 수정 부탁 드립니다.
공유
(defun c:dex(/ ss ssn k ed p10 p13 p14 ag ag90 pt1 pt2 pt3)
(prompt “…치수선 및 보조선 정렬하기”)
(prompt “n변경할 치수을 선택->”)
(setq ss (ssget ‘((0 . “DIMENSION”))))
(setq pt1 (getpoint “n정렬점 선택->”))
(setq ssn (sslength ss))
(setq ed (entget (ssname ss 0)))
(setq p14 (cdr (assoc 14 ed)))
(setq p10 (cdr (assoc 10 ed)))
(setq ag (angle p14 p10))
(setq ag90 (+ ag (/ pi 2)))
(setq ds1 (distance pt1 p10))
(setq ds2 (distance pt1 p14))
(setq k 0)
(repeat ssn
(setq ed (entget (ssname ss k)))
(setq p13 (cdr (assoc 13 ed)))
(setq p14 (cdr (assoc 14 ed)))
(setq p10 (cdr (assoc 10 ed)))
(setq pt2 (polar pt1 ag90 100))
(setq pt3 (polar p13 ag 100))
(setq pt14 (inters pt1 pt2 p14 p10 nil))
(setq pt13 (inters pt1 pt2 p13 pt3 nil))
(setq ed (subst (cons 13 pt13) (assoc 13 ed) ed))
(setq ed (subst (cons 14 pt14) (assoc 14 ed) ed))
(entmod ed)
(setq k (+ k 1))
)
(prin1))