2011년 10월 19일 수요일


(defun c:test()
  (setq select_set(ssget '((0 . "line"))))
  (setq setname(ssname select_set 0))
  (setq ent (entget setname))

  (setq xpon1(abs(nth 1(assoc 10 ent))))
  (setq xpon2(abs(nth 1(assoc 11 ent))))
  (setq ypon1(abs(nth 2(assoc 10 ent))))
  (setq ypon2(abs(nth 2(assoc 11 ent))))
  (setq len(rtos(distance
    (setq p2(cdr(assoc 10 ent)))
    (setq p2(cdr(assoc 11 ent)))
    )2 0))

  (if (> xpon1 xpon2)
    (setq xlen(rtos(- xpon1 xpon2)2 0))
    (setq xlen(rtos(- xpon2 xpon1)2 0))
    )

  (if (> ypon1 ypon2)
    (setq ylen(rtos(- ypon1 ypon2)2 0))
    (setq ylen(rtos(- ypon2 ypon1)2 0))
    )
  (setq p1(getpoint))
  (command "-insert" "vbal" p1 "" "" len ylen xlen)

  (princ xlen)
  (princ "\n")
  (princ ylen)

  (princ)
 )

선택한 라인의 길이를 써준다.

댓글 없음 :

댓글 쓰기