home *** CD-ROM | disk | FTP | other *** search
- ;****** LPM\DMQP.LSP ******
- (if (null tb) (setq tb 1.0))
- ;----------
- (defun C:DMQP ( )
- ; (if (/= (getvar "clayer") "lp") (command "layer" "m" "lp" ""))
- (setq po (getpoint "enter SJSD po:"))
- (command "text" "c" po (* 300 tb) 0.0 "PO")
- (setq pox (car po) poy (cadr po))
- (setq Pn-1 (getpoint "Start point:" po))
- (if (= mmm "mm") (setq b 1100.0) (setq b 1.1))
- (setq b (- (+ (cadr pn-1) b) poy)) (setq yn-1 b)
- (setq xn-1 (- (car pn-1) pox))
- (setq f (getreal "enter PJ 800/850/900 <800>:"))
- (if (null f) (setq f 800.0))
- (if (= mmm "m") (setq f (* f 0.001)))
- (setq pn-1 (polar pn-1 0.0 (* -0.5 f)))
- (setq dc (getreal "enter DC 120/60/40 <60>:"))
- (if (null dc) (setq dc 60.0))
- (if (= mmm "m") (setq dc (* dc 0.001)))
- (setq se (getvar "elevation")) (setvar "elevation" 0.0)
- (setq st (getvar "thickness")) (setvar "thickness" 0.0)
- (setq wcy 1)
- (while wcy
- (setq wcy (getstring "continurse? y/n <y>"))
- (if (= wcy "n") (setq wcy nil) (progn
- (setq xn (+ xn-1 f))
- (setq yn (/ (* (+ yn-1 dc) xn) xn-1))
- (setq dh (- yn yn-1))
- (if (< dh (* 0.2 f))
- (command "pline" Pn-1
- (setq pn-1 (list (+ (car pn-1) f) (+ (cadr pn-1) dh))) "")
- (command "pline" Pn-1 (polar pn-1 0.0 f)
- (setq pn-1 (list (+ (car pn-1) f) (+ (cadr pn-1) dh))) "")
- )
- (setq xn-1 xn yn-1 yn))
- )
- )
- (setvar "elevation" se)
- (setvar "thickness" st)
- )