home *** CD-ROM | disk | FTP | other *** search
- ;******FA\3DPOM.LSP******
- (if (null sol) (setq sol "off"))
- (if (null lbl0) (setq lbl0 0.0))
- (if (null lbb0) (setq lbb0 0.0))
- (if (null lhh0) (setq lhh0 (cadr (getvar "viewctr"))))
- (if (null bhb0) (setq bhb0 (car (getvar "viewctr"))))
- (defun e0t0 ( )
- (setq se (getvar "elevation"))
- (setq st (getvar "thickness"))
- (setvar "elevation" 0)
- (setvar "thickness" 0)
- )
- (defun ests ( )
- (setvar "elevation" se)
- (setvar "thickness" st)
- )
- ;******
- (defun C:PLP0 ( )
- (e0t0)
- (setq plp0 (getpoint "\n enter point plp0<viewctr>:"))
- (if (null plp0) (setq plp0 (getvar "viewctr")))
- (if (/= (getvar "clayer") "plp0") (command "layer" "m" "plp0" ""))
- (if (/= (getvar "cecolor") "1") (command "color" "1"))
- (setq vl (* (getvar "viewsize") 0.5))
- (command "pline" (setq p1 (polar plp0 (* -0.5 pi) vl))
- (setq p1 (polar p1 (* 0.5 pi) (* vl 2))) plp0
- (setq p1 (polar plp0 pi (* 1.267666 vl)))
- (setq p1 (polar p1 0.0 (* vl 2.535333))) "")
- )
- (defun rplp0 ( )
- (command "osnap" "int")
- (setq ppp (entsel "enter point to pline:"))
- (command "osnap" "")
- (setq plp0 (cadr ppp))
- (setq lhh0 (cadr plp0) bhb0 (car plp0))
- (setq lbb0 (caddr (assoc 10 (entget (entnext (car ppp))))))
- (setq lbl0 (cadr (assoc 10 (entget (entnext
- (entnext (entnext (entnext (entnext)))))))))
- )
- ;******3D-PO******
- (defun C:3dPOLH ( )
- (if (/= (getvar "clayer") "po") (command "layer" "m" "polh" ""))
- (setq pq1 (getpoint "enter point PQ1:"))
- (setq pq2 (getpoint "enter point PQ2:"))
- (setq 2dpto2d 2dptolh)
- (setq 3dpto2d 3dptolh)
- (3dpo0)
- )
- (defun C:3dPOBH ( )
- (if (/= (getvar "clayer") "po") (command "layer" "m" "pobh" ""))
- (setq 2dpto2d 2dptobh)
- (setq 3dpto2d 3dptobh)
- (setq pq1 (getpoint "enter point PQ1:"))
- (setq pq2 (getpoint "enter point PQ2:"))
- (setq pq2 (list (car pq1) (cadr pq2)))
- (command "pline" (polar pq1 pi (* 1000 tb)) "w" (* 50 tb) "" pq1
- (polar pq1 (* 0.5 pi) (* 2000 tb)) "")
- (command "pline" (polar pq2 (* -0.5 pi) (* 2000 tb)) pq2
- (polar pq2 pi (* 1000 tb)) "")
- (3dpo0)
- )
- (defun 3dpo0 ( )
- (setq ppp (ssget))
- (e0t0)
- (setq wcy 0 n (sslength ppp))
- (while (< wcy n)
- (setq s (cdr (assoc 0 (setq e (entget (ssname ppp wcy))))))
- (command "color" (cdr (assoc 62 e)))
- (if (= "LINE" s) (lpo))
- (if (= "POINT" s) (pto2d))
- (if (= "INSERT" s) (bto2d))
- (if (= "3DLINE" s) (3dlto2d))
- (if (= "3DFACE" s) (3dfto2d))
- (setq wcy (1+ wcy))
- (prompt "Working...")
- )
- (ests)
- )
- ;------------
- (defun 2dptolh (2dp)
- (setq 2dp (list (car 2dp) (+ h01 lhh0)))
- )
- (defun 2dptobh (2dp)
- (setq 2dp (list (+ (- (cadr 2dp) lbb0) bhb0) (+ h01 lhh0)))
- )
- (defun 3dptolh (3dp)
- (setq 2dp (list (car 3dp) (+ (caddr 3dp) lhh0)))
- )
- (defun 3dptobh (3dp)
- (setq 2dp (list (+ bhb0 (- (cadr 3dp) lbb0))
- (+ (caddr 3dp) lhh0)))
- )
- (defun 3dptolb (3dp)
- (setq 2dp (list (- (+ (car 3dp) bhb0) lbl0) (cadr 3dp)))
- )
- ;------------
- (defun pto2d ( )
- (setq 2dp1 (cdr (assoc 10 e)))
- (setq h01 (cdr (assoc 38 e)))
- (if (= h01 nil) (setq h01 0.0))
- (setq h11 (cdr (assoc 39 e)))
- (if (= h11 nil) (setq h11 0.0))
- (setq p1 (2dpto2d 2dp1))
- (if (= h11 0) (command "point" p1)
- (command "line" p1 (polar p1 1.570796 h11) "")
- )
- )
- ;------------
- (defun bto2d ( )
- (setq 2dp1 (cdr (assoc 10 e)))
- (setq h01 (cdr (assoc 38 e)))
- (if (= h01 nil) (setq h01 0.0))
- (setq p1 (2dpto2d 2dp1))
- (setq bname (cdr (assoc 2 e)))
- (setq bname (strcat "fa/2dl" (substr bname 3)))
- (setq xc (cdr (assoc 41 e)))
- (setq zc (cdr (assoc 43 e)))
- (setq af (cdr (assoc 50 e)))
- (if (null af) (setq af 0.0))
- (if (= 2dpto2d 2dptolh)
- (setq xc (* xc (cos af))) (setq xc (* xc (sin af))))
- (command "insert" bname p1 xc zc 0.0)
- )
- ;------------
- (defun lpo ( )
- (setq 2dp1 (cdr (assoc 10 e)))
- (setq 2dp2 (cdr (assoc 11 e)))
- (setq h01 (cdr (assoc 38 e)))
- (if (= h01 nil) (setq h01 0.0))
- (setq h11 (cdr (assoc 39 e)))
- (if (= h11 nil) (setq h11 0.0))
- (setq pint (inters pq1 pq2 2dp1 2dp2))
- (if pint (progn
- (setq p1 (2dpto2d pint))
- (if (= h11 0) (command "point" p1)
- (command "line" p1 (polar p1 (* 0.5 pi) h11) ""))))
- )
- ;------------
- (defun 3dlto2d ( )
- (setq 3dp1 (cdr (assoc 10 e)))
- (setq 3dp2 (cdr (assoc 11 e)))
- (setq p1 (3dpto2d 3dp1))
- (setq p2 (3dpto2d 3dp2))
- (command "line" p1 p2 "")
- )
- (defun 3dfto2d ( )
- (setq 3dp1 (cdr (assoc 10 e)))
- (setq 3dp2 (cdr (assoc 11 e)))
- (setq 3dp3 (cdr (assoc 12 e)))
- (setq 3dp4 (cdr (assoc 13 e)))
- (setq p1 (3dpto2d 3dp1))
- (setq p2 (3dpto2d 3dp2))
- (setq p3 (3dpto2d 3dp3))
- (setq p4 (3dpto2d 3dp4))
- (if (= sol "on") (command "solid" p1 p2 p4 p3 "")
- (command "line" p1 p2 p3 p4 "c"))
- )
- (defun 3df-lb ( )
- (setq px (car 3dp1) py (cadr 3dp1))
- (setq p1 (list (+ px nl0) (+ py nb0)))
- (setq px (car 3dp2) py (cadr 3dp2))
- (setq p2 (list (+ px nl0) (+ py nb0)))
- (setq px (car 3dp3) py (cadr 3dp3))
- (setq p3 (list (+ px nl0) (+ py nb0)))
- (setq px (car 3dp4) py (cadr 3dp4))
- (setq p4 (list (+ px nl0) (+ py nb0)))
- (3dfdwg)
- )
- ;----------
- (defun C:CLEAN2 ( )
- (setq atomlist (member 'C:CLEAN2 atomlist))
- 'DONE2
- )