²÷¾îÁø °³º°¼± ¿¬°áÇÏ´Â ¸®½ÀÀÔ´Ï´Ù.  
;;;²÷¾îÁø Á÷¼± ¶óÀο¬°á
(defun C:LJ(/ osm cla ort E1 b SP EP LA P SPA EPA PAP LAA TP FP Q
SPB EPB PB Xx y ) 
  (setq osm (getvar "osmode"))
  (setq cla (getvar "clayer"))
  (setq ort (getvar "orthomode"))
  (setvar "orthomode" 0)
  (setvar "cmdecho" 0)
  (SETQ E1 (entsel "nSelect 1st line"))
  (SETQ B (ENTGET (CAR E1)))
  (SETQ SP (CDR (ASSOC 10 B)))
  (SETQ EP (CDR (ASSOC 11 B)))
  (SETQ LA (CDR (ASSOC 8 B)))
  (SETQ P (CDR (ASSOC 11 B)))
  (SETQ SPA SP EPA EP PA P LAA LA)
  (SETQ E2 (entsel "nSelect 2st line"))
  (SETQ C (ENTGET (CAR E2)))
  (SETQ TP (CDR (ASSOC 10 C)))
  (SETQ FP (CDR (ASSOC 11 C)))
  (SETQ Q (CDR (ASSOC 10 C)))
  (SETQ SPB TP EPB FP PB Q)
  (setq x (angle spa epb))
  (setq y (angle epa spb))
  (if (equal x y 0.00001) (progn
  (if (< (distance pa epb) (distance pa spb)) (setq np2 spb) (setq np2 epb))
  (if (< (distance pb epa) (distance pb spa)) (setq np1 spa) (setq np1 epa))
  (entdel (car e1)) (entdel (car e2))
  (command "line" np1 np2 ""))
  (progn (terpri) (princ "cannot join....error")))
  (setvar "osmode" osm)
  (setvar "orthomode" ort)
  (princ)
)
;;;;²÷¾îÁø T ¶óÀÎ ¿¬°á
(defun dtr (a) (* pi (/ a 180.0)))
(defun c:TJ (/ ss ent1 ent2 ent3 sp1 ep1 sp2 ep2 sp3 ep3 intp temp p1 p2 p3) 
  (setq ss (ssget (list (cons 0 "line"))))
  (if (and ss (>= (sslength ss) 3))
    (progn
      (setq ent1 (entget (ssname ss 0)))
      (setq ent2 (entget (ssname ss 1)))
      (setq ent3 (entget (ssname ss 2)))
      (setq sp1 (cdr (assoc 10 ent1)))
      (setq ep1 (cdr (assoc 11 ent1)))
      (setq sp2 (cdr (assoc 10 ent2)))
      (setq ep2 (cdr (assoc 11 ent2)))
      (setq sp3 (cdr (assoc 10 ent3)))
      (setq ep3 (cdr (assoc 11 ent3)))
      (if (inters sp1 ep1 sp2 ep2 nil)
        (if (inters sp1 ep1 sp3 ep3 nil)
          (progn
            (setq intp (inters sp1 ep1 sp3 ep3 nil))
            (setq temp sp1 sp1 sp3 sp3 temp)
            (setq temp ep1 ep1 ep3 ep3 temp)
          )
          (progn
            (setq intp (inters sp2 ep2 sp3 ep3 nil))
            (setq temp sp2 sp2 sp3 sp3 temp)
            (setq temp ep2 ep2 ep3 ep3 temp)
          )
        )
        (progn
          (setq intp (inters sp1 ep1 sp3 ep3 nil))
        )
      )
      (if (> (distance intp sp1) (distance intp ep1)) (setq p1 sp1) (setq p1 ep1))
      (if (> (distance intp sp2) (distance intp ep2)) (setq p2 sp2) (setq p2 ep2))
      (if (> (distance intp sp3) (distance intp ep3)) (setq p3 sp3) (setq p3 ep3))
      (entdel (ssname ss 2))
      (setq ent1 (subst (cons 10 p1) (assoc 10 ent1) ent1))
      (setq ent1 (subst (cons 11 p2) (assoc 11 ent1) ent1))
      (entmod ent1)
      (setq ent2 (subst (cons 10 p3) (assoc 10 ent2) ent2))
      (setq ent2 (subst (cons 11 intp) (assoc 11 ent2) ent2))
      (entmod ent2)
    )
  )
  (princ)
)

 
;;¸Þ¸ðÀå¿¡ º¹»ç¸¦ Çϼż­ ÀúÀåÀ» ÇϽðí È®ÀåÀÚ¸¦ .lsp ·Î ¹Ù²Ù½Ã¸é µË´Ï´Ù.