home *** CD-ROM | disk | FTP | other *** search
/ Current Shareware 1994 January / SHAR194.ISO / cad_util / v8n7_cad.zip / PAR.LSP < prev    next >
Lisp/Scheme  |  1993-07-23  |  1KB  |  55 lines

  1. (defun c:par ()
  2.    (setvar "filletrad" 0)
  3.    (setq od (getdist "\nEnter offset distance  "))
  4.    (setq pt1 (getpoint "\nEnter first point  "))
  5.    (setq pt0 pt1)
  6.    (drawline)
  7.    (setq e 1)
  8.    (while e
  9.      (drawline)
  10.      (command "fillet" e0 e1)
  11.    )
  12.  )
  13.    
  14.    
  15.  (defun drawline ()
  16.    (setq pt2 (getpoint pt1 "\nEnter next point  "))
  17.    (if (= pt2 nil)
  18.      (progn
  19.        (setq cs (getstring "\nDo you want to close ? <N>  "))
  20.        (if (= (strcase cs) "Y") (closit))
  21.      )
  22.    )
  23.    (command "line" pt1 pt2 "")
  24.    (setq ang (angle pt1 pt2))
  25.    (setq pt3 (polar pt1 (- ang (dtr 90)) od))
  26.    (setq pt4 (polar pt2 (- ang (dtr 90)) od))
  27.    (command "line" pt3 pt4 "")
  28.    (setq e0 e1)
  29.    (setq e1 (entlast))
  30.    (setq pt1 pt2)
  31.  )
  32.    
  33.    
  34.  (defun closit ()
  35.    (setq pt2 pt0)
  36.    (command "line" pt1 pt2 "")
  37.    (setq ang (angle pt1 pt2))
  38.    (setq pt3 (polar pt1 (- ang (dtr 90)) od))
  39.    (setq pt4 (polar pt2 (- ang (dtr 90)) od))
  40.    (command "line" pt3 pt4 "")
  41.    (setq e0 e1)
  42.    (setq e1 (entlast))
  43.    (command "fillet" e0 e1)
  44.    (setq os (getvar "osmode"))
  45.    (setvar "osmode" 512)
  46.    (setq pt01 (getpoint "\Pick anywhere on intersecting line  "))
  47.    (setvar "osmode" os)
  48.    (command "fillet" e1 pt01)
  49.    (setq pt2 nil)
  50.  )
  51.    
  52.    
  53.  (defun dtr (angg)
  54.    (* pi (/ angg 180.0)))
  55.