home *** CD-ROM | disk | FTP | other *** search
- ;
- ; to dim any object
- ;
- (Defun hj01 ()
- (princ "\n│▀┤τ╧▀▓╬╩²╬¬╙├╗º╫╘╨╨╔Φ╢¿")
- (grtext -1 "\n│▀┤τ╧▀▓╬╩²╬¬╙├╗º╫╘╨╨╔Φ╢¿")
- (setvar "cmdecho" 0)
- (setvar "blipmode" 0)
- (command "layer" "s" "chi" "")
- (setq p 1 qs "3" as "0")
- (while (= p 1)
- (menucmd "s=ds1b")
- (setq a0 (getangle (strcat "\n╩Σ╚δ│▀┤τ╧▀╡─╖╜╧≥╜╟<" as ">:")))
- (if (= a0 nil) (setq a0 (/ (* (read as) pi) 180))
- (setq as (angtos a0 0 0))
- )
- (setq e 1)
- (while (= e 1)
- (princ "\n╫ó╥Γ! ╩Σ╚δ╕±╩╜--╩²─┐X╛α└δ m x d ,╓╨╝Σ╥╘╢║║┼╕⌠┐¬.╡▒m=1╩▒┐╔╓▒╜╙╩Σ╛α└δ")
- (grtext -1 " ╫ó╥Γ! ╩Σ╚δ╕±╩╜,└α═¼╓ß═°╩Σ╚δ╕±╩╜")
- (menucmd "s=ds28")
- (setq zm (strcat (getstring "\n╦│╨≥╩Σ╚δ╕≈│▀┤τ╡─╛α└δ: ") "."))
- (princ "\n│▀┤τ╛α└δ:") (princ zm)
- (menucmd "s=dx")
- (menucmd "s=ds15")
- (setq e (getstring "\n╙├<Enter>╚╖╚╧╗≥╞Σ╦ⁿ╝ⁿ╓╪╩Σ:"))
- (if (/= e "") (setq e 1))
- )
- (hj02 zm) (setq zm (strcat "(" ns ")"))
- (hj05)
- (hj03 zm) (setq l (reverse nl) zm nil)
- (initget 1)
- (setq pt0 (getpoint "\n╟δ╡π│÷╜½╥¬▒Ω╫ó╡─│▀┤τ╞≡╡π:"))
- (if (or (= (getvar "dimse1") 0) (= (getvar "dimse2") 0))
- (progn
- (initget 1)
- (setq a1 (getangle pt0 "\n╚╖╢¿│▀┤τ╧▀╤╙╔∞╧▀╖╜╧≥:"))
- )
- (setq a1 (+ a0 (/ pi 2)))
- )
- (setq q (getstring (strcat "\n╩Σ│▀┤τ╧▀╛α─┐▒Ω╛α└δ<" qs ">:")))
- (if (= q "") (setq q qs) (setq qs q))
- (setq q (atof q))
- (setq dm (apply '+ l))
- (cond ((< (abs (- a0 pi)) 0.02)
- (setq l (reverse l) pt0 (polar pt0 a0 dm))
- (setq a0 0))
- ((or (< (abs (- a0 (* 3 (/ pi 2)))) 0.02)
- (< (abs (+ a0 (/ pi 2))) 0.02))
- (setq l (reverse l) pt0 (polar pt0 a0 dm))
- (setq a0 (/ pi 2)))
- (T 1)
- )
- (if (> a1 pi) (setq a1 (- a1 (* 2 pi))))
- (cond ((and (< (- a0 a1) 0) (> (- a0 a1) (- 0 pi)))
- (setq a1 (+ a0 (/ pi 2))))
- (T (setq a1 (- a0 (/ pi 2))))
- )
- (setq n (length l) i 0)
- (setq pt1 pt0)
- (while (< i n)
- (setq d (nth i l))
- (setq pt2 (polar pt1 a0 d))
- (setq pt (polar pt1 a1 q))
- (command "dim" "rotate" (angtos a0 0 1) pt1 pt2
- pt (rtos (* d sc) 2 0) ^c)
- (if (= i 0) (setq pt3 (polar pt (+ a0 pi) 2)))
- (setq pt1 pt2)
- (if (= i (1- n)) (setq pt4 (polar pt a0 (+ 2 (/ d sc)))))
- (setq i (1+ i))
- )
- (command "LINE" pt3 pt4 "")
- (initget "e")
- (menucmd "s=ds22a")
- (setq p (getkword "╙├<Enter>╝╠╨°,<E>╜ß╩°."))
- (if (= p nil) (setq p 1))
- )
- (setq ns nil nl nil)
- (menucmd "s=screen")
- (grtext)
- (print "END!")
- )
- (defun hj02 (s)
- (setq n (strlen s))
- (setq k 2) (setq ns (substr s 1 1))
- (setq b 0 c 0)
- (while (<= k n)
- (setq a (substr s k 1))
- (if (and (= a ",") (= k (1- n))) (setq c 1) (setq c 0))
- (cond ((or (= a "*") (= a "X") (= a "x")) (setq a " ") (setq b 1))
- ((= a ",") (if (= b 1) (setq a " ") (setq a " 1 "))
- (setq b 0))
- (T 1)
- )
- (setq k (1+ k))
- (cond
- ((and (= a ".") (/= b 1)) (setq ns (strcat ns " 1")))
- ((and (/= c 1) (/= a ".")) (setq ns (strcat ns a)))
- (T 1)
- )
- )
- )
- (defun hj03 (l)
- (setq n (length l))
- (setq n (/ n 2))
- (setq k 1 nl nil)
- (while (<= k n)
- (setq a (car l))
- (setq b (cadr l))
- (cond ((= a 1) (setq nl (cons b nl)))
- ((= b 1) (setq nl (cons a nl)))
- (T (repeat a (setq nl (cons b nl))))
- )
- (setq l (cdr (cdr l)))
- (setq k (1+ k))
- )
- )
- (Defun hj05 ()
- (setq n (strlen zm))
- (setq l nil k 3 a (substr zm 2 1))
- (while (<= k n)
- (setq q (substr zm k 1))
- (if (or (= q " ") (= q ")"))
- (progn (setq a (atof a))
- (if (> a 30) (setq a (/ a sc))
- (progn (setq a (rtos a 2 0))
- (setq a (atoi a))
- )
- )
- (setq l (cons a l))
- (setq a (substr zm (1+ k) 1) k (1+ k))
- )
- (setq a (strcat a q))
- )
- (setq k (1+ k))
- )
- (setq zm (reverse l))
- )