home *** CD-ROM | disk | FTP | other *** search
- (vmon)
-
- (defun werr(s)
- (if (/= s "Function cancelled")
- (princ (strcat "\nError:") s)
- )
- (setvar "cmdecho" 1)
- (setq *error* oer)
- (princ)
- )
-
- (defun C:DIRT(/ oer loop sn en bn ename)
- (setvar "cmdecho" 0)
- (setq oer *error* *error* werr)
- (setq loop t)
- (while loop
- (setq sn (entsel "\n╤í╘±╥¬╕─▒Σ┐¬╞⌠╖╜╧≥╡─├┼┤░: "))
- (if sn (progn
- (setq en (entget (car sn)) ename (cdr (assoc 0 en)) bn (cdr (assoc 2 en)))
- (if (and (= ename "INSERT") (or (= (substr bn 1 1) "M") (= (substr bn 1 1) "C")))
- (progn
- (setq en (subst (cons 42 (* -1 (cdr (assoc 42 en)))) (assoc 42 en) en))
- (entmod en)
- )
- (princ "\n**╤í╘±╡─╩╡╠σ▓╗╩╟├┼┤░!")
- )
- )
- (setq loop nil)
- )
- )
- (setvar "cmdecho" 1)
- (setq *error* oer)
- (princ)
- )
-
- (defun C:FIX(/ oer sn en ename bn p)
- (setvar "cmdecho" 0)
- (setq oer *error* *error* werr)
- (setq loop t)
- (while loop
- (setq sn (entsel "\n╤í╘±╥¬╕─▒Σ├┼╓ß╬╗╓├╡─├┼┤░: "))
- (if sn (progn
- (setq en (entget (car sn)) ename (cdr (assoc 0 en)) bn (cdr (assoc 2 en)))
- (if (and (= ename "INSERT") (or (= (substr bn 1 1) "M") (= (substr bn 1 1) "C")))
- (progn
- (setq en (subst (cons 41 (* -1 (cdr (assoc 41 en)))) (assoc 41 en) en))
- (entmod en)
- (initget "Yes")
- (setq p (getpoint "\n╕─▒Σ┐¬╞⌠╖╜╧≥ <N>:"))
- (if p (progn
- (setq en (subst (cons 42 (* -1 (cdr (assoc 42 en)))) (assoc 42 en) en))
- (entmod en)
- ))
- )
- (princ "\n**╤í╘±╡─╩╡╠σ▓╗╩╟├┼┤░!")
- )
- )
- (setq loop nil)
- )
- )
- (setvar "cmdecho" 1)
- (setq *error* oer)
- (princ)
- )
-
- (defun C:CALC(/ oer fn name ss ssl sn en ename elay n rn wlist wn ww wh f one wl dl)
- (setvar "cmdecho" 0)
- (setq oer *error* *error* werr)
- (setq loop t)
- (while loop
- (setq name (getstring "\╩Σ╚δ▓π├√ <1>:"))
- (if (= name "") (setq name "1"))
- (if (findfile (strcat name ".dat")) (progn
- (princ (strcat "** " name " ▓π├┼┤░▒φ╥╤┤µ╘┌, ╓╪╨┤┬≡ <N>"))
- (initget "Yes No")
- (setq kw (getkword))
- (if (= kw "Yes") (setq loop nil))
- ) (setq loop nil))
- ) ;while
- (setq ss (ssget))
- (if ss (progn
- (setq wl nil dl nil ssl (sslength ss) n 0)
- (repeat ssl
- (setq sn (ssname ss n) en (entget sn))
- (setq ename (cdr (assoc 0 en)) elay (cdr (assoc 8 en)))
- (if (and (= "INSERT" ename) (= "PWINDOW" elay)) (progn
- (setq rn (cdr (assoc 1 (entget (entnext sn)))))
- (strdv rn) (setq one wlist)
- (setq wn (nth 0 one) ww (nth 1 one) wh (nth 2 one))
- (if (= (substr wn 1 1) "C")
- (if (setq one (assoc wn wl)) (setq wl (subst (list (car one) (cadr one) (1+ (last one))) one wl))
- (setq wl (cons (list wn (strcat ww "x" wh) 1) wl)))
- (if (setq one (assoc wn dl)) (setq dl (subst (list (car one) (cadr one) (1+ (last one))) one dl))
- (setq dl (cons (list wn (strcat ww "x" wh) 1) dl)))
- )
- )) ;endif "Insert"
- (setq n (1+ n))
- )
- ))
- (princ "╒²╘┌╨┤╬─╝■......╟δ╔╘║≥")
- (setq f (open (strcat name ".dat") "w"))
- (setq n 0 l (length wl))
- (repeat l
- (setq one (nth n wl))
- (write-line (strcat (car one) " " (cadr one) " " (itoa (last one))) f)
- (setq n (1+ n))
- )
- (setq n 0 l (length dl))
- (repeat l
- (setq one (nth n dl))
- (write-line (strcat (car one) " " (cadr one) " " (itoa (last one))) f)
- (setq n (1+ n))
- )
- (close f)
- (setvar "cmdecho" 1)
- (setq *error* oer)
- (princ)
- )
-
- (defun C:MCB(/ oer sn en p wl dl f one rn wlist o1 o2 o3 n l)
- (setvar "cmdecho" 0)
- (setq oer *error* *error* werr)
- (setq fn (getstring "\n╩Σ╚δ╕≈▓π├√ <1>:"))
- (if (= fn "") (setq fn "1"))
- (strdv0 fn) (setq ll (length wlist) fn wlist)
- (command "insert" "mcb" "x" blx "y" blx "r" 0 pause)
- (setq sn (entlast) en (entget sn))
- (setq p (cdr (assoc 10 en)) wl nil dl nil n0 0)
- (repeat ll
- (setq f (open (strcat (nth n0 fn) ".dat") "r"))
- (while (/= (setq rn (read-line f)) nil)
- (strdv rn) (setq one wlist)
- (setq o1 (car one) o2 (cadr one) o3 (atoi (last one)))
- (if (/= (substr o1 1 2) "**") (progn
- (if (= (substr o1 1 1) "C")
- (if (setq one (assoc o1 wl)) (setq wl (subst (list o1 o2 (+ o3 (last one))) one wl))
- (setq wl (cons (list o1 o2 o3) wl)))
- (if (setq one (assoc o1 dl)) (setq dl (subst (list o1 o2 (+ o3 (last one))) one dl))
- (setq dl (cons (list o1 o2 o3) dl)))
- )))
- )
- (close f)
- (setq n0 (1+ n0))
- )
- (setq n 0 l (length wl) p (polar p -1.57079 (* 1700 blx)))
- (repeat l
- (setq one (nth n wl) o1 (car one) o2 (cadr one) o3 (itoa (last one)))
- (command "insert" "mcb0" (list (car p) (- (cadr p) (* n 700 blx)) (last p)) blx blx 0 o1 o2 o3)
- (setq n (1+ n))
- )
- (setq l (length dl) p (polar p -1.57079 (* n 700 blx)) n 0)
- (repeat l
- (setq one (nth n dl) o1 (car one) o2 (cadr one) o3 (itoa (last one)))
- (command "insert" "mcb0" (list (car p) (+ (cadr p) (* n 700 blx)) (last p)) blx blx 0 o1 o2 o3)
- (setq n (1+ n))
- )
- (setvar "cmdecho" 1)
- (setq *error* oer)
- (princ)
- )
-
- (defun strdv(rn / loop l x)
- (setq wlist nil loop t)
- (while loop
- (setq l (instr 1 rn " "))
- (if (= l 0) (setq wlist (cons rn wlist) loop nil)
- (progn ;else
- (setq x (substr rn 1 (1- l)))
- (setq wlist (cons x wlist))
- (setq rn (substr rn (1+ l) (- (strlen rn) l)))
- (setq loop t)
- )
- )
- )
- (setq wlist (reverse wlist))
- )
-
- (defun strdv0(rn / loop l x)
- (setq wlist nil loop t)
- (while loop
- (setq l (instr 1 rn ","))
- (if (= l 0) (setq wlist (cons rn wlist) loop nil)
- (progn ;else
- (setq x (substr rn 1 (1- l)))
- (setq wlist (cons x wlist))
- (setq rn (substr rn (1+ l) (- (strlen rn) l)))
- (setq loop t)
- )
- )
- )
- (setq wlist (reverse wlist))
- )
-
- (defun instr(st s0 s00 / l n loop x n0 l0)
- (setq l (+ (- (strlen s0) st) 1) l0 0 n0 st n 1 loop t)
- (while (and (<= n l) loop)
- (setq x (substr s0 n0 1))
- (if (eq x s00) (setq loop nil l0 n0) (setq n0 (1+ n0) n (1+ n)))
- )
- (eval l0)
- )