home *** CD-ROM | disk | FTP | other *** search
- (princ "\n┤╦│╠╨≥╬¬▒Σ╚²╘▓(╗í)╬¬╥╗:╙├├ⁿ┴ε 3t1 ╡≈╙├.")
- (princ)
- (defun C:3t1 ()
- (setvar "pickbox" 2)
- (setvar "cmdecho" 1)
- (princ "\n╟δ╓╕│÷╨▐╕─╡─╟°╙≥:")
- (setq pt (getpoint "\n╡┌╥╗╜╟:"))
- (setq pt1(getcorner pt "\n┴φ╥╗╜╟:"))
- (setq p (ssget "w" pt pt1))
- (if (/= p nil)
- (progn (setq n (sslength p))
- (setq i 0)
- (while (< i n)
- (setq e (ssname p i))
- (if (or (= (cdr (assoc 0 (entget e))) "CIRCLE")
- (= (cdr (assoc 0 (entget e))) "ARC"))
- (hj02)
- (setq i (1+ i))
- )
- )
- ))
- )
- (defun hj02 ()
- (setq na (cdr (assoc 0 (entget e)))
- pt (cdr (assoc 10 (entget e)))
- r (cdr (assoc 40 (entget e))))
- (setq p1 (ssget "c" (polar pt 0 (+ r 3.5))
- (polar pt 0 (- r 3.5))))
- (setq k (sslength p1) j 0 r2 nil r3 nil)
- (while (< j k)
- (print "j= ") (princ j)
- (setq e1 (ssname p1 j))
- (if (and (/= e1 e)
- (equal pt (cdr (assoc 10 (entget e1))))
- (= (cdr (assoc 0 (entget e1))) NA))
- (progn
- (if (<= (abs (- r (cdr (assoc 40 (entget e1))))) 3.5)
- (progn (cond ((and (= r2 nil) (= r3 nil))
- (setq r2 (cdr (assoc 40 (entget e1))))
- (setq e2 e1 i (1+ i))
- (if (> r2 r) (setq a 1) (setq a 0)))
- ((and (/= r2 nil) (= r3 nil))
- (setq r3 (cdr (assoc 40 (entget e1))))
- (if (and (> a 1) (< r3 r))
- (progn (setq a e2 b e1)))
- (if (and (> a 1) (> r3 r2))
- (progn (setq a e b e2)))
- (if (and (< a 1) (> r3 r))
- (progn (setq a e1 b e2))
- (progn (setq a e1 b e)))
- (entdel a)
- (entdel b)
- (setq p (ssdel e p))
- (setq p (ssdel e1 p))
- (setq p (ssdel e2 p))
- (setq i 0 n (sslength p))
- (setq r2 nil r3 nil)
- (princ "\n╒╥╡╜╥╗╕÷─┐▒Ω.")
- )
- )
- )
- (setq i (1+ i))
- )
- )
- )
- (setq j (1+ j))
- )
- )