; TIP760.LSP BATTING2.LSP Batt Insulation (c)1992 Watson Kilbourne (defun newerr (NE) (if (/= NE "Function cancelled") (princ (strcat "\nError: " NE)) ) (setvar "OSMODE" OM) (setvar "CMDECHO" CE) (setvar "BLIPMODE" BM) (princ) ) (defun c:BATTING2 (/ SP EP HT OM CE BM DX AN NX NU AX PX P1 P2 P3 P4 P5 P6 P7 P8 P9 XT) (while (= SP nil) (setq SP (getpoint "\nPick start point of batting: "))) (while (= EP nil) (setq EP (getpoint "\nPick end point of batting: "))) (while (= HT nil) (setq HT (getdist "\nPick or enter height of batting: "))) (setq OM (getvar "OSMODE")) (setvar "OSMODE" 0) (setq CE (getvar "CMDECHO")) (setvar "CMDECHO" 0) (setq BM (getvar "BLIPMODE")) (setvar "BLIPMODE" 0) (setq DX (distance SP EP) AN (angle SP EP) NX (/ HT 2) NU (/ DX NX) AX (+ AN (/ pi 2)) PX (polar SP AX HT) P1 (polar SP AX (/ HT 1.25)) P2 (polar P1 AN (/ HT 20)) P3 (polar P1 AN (/ HT 4)) P4 (polar P2 AN (/ HT 2.5)) P5 (polar SP AX (/ HT 5)) P6 (polar P5 AN (/ HT 5)) P7 (polar P6 AN (/ HT 10)) P8 (polar P5 AN (/ HT 2)) P9 (polar SP AN (/ HT 2)) ) (repeat (fix NU) (command ".ARC" "C" P5 SP P6 ".LINE" P6 P2 "" ".ARC" P2 "C" P3 "A" "-180" ".LINE" P4 P7 "" ".ARC" "C" P8 P7 P9) (setq SP (polar SP AN NX) P2 (polar P2 AN NX) P3 (polar P3 AN NX) P4 (polar P4 AN NX) P5 (polar P5 AN NX) P6 (polar P6 AN NX) P7 (polar P7 AN NX) P8 (polar P8 AN NX) P9 (polar P9 AN NX) ) ) (setq XT (distance SP EP)) (if (>= XT (/ HT 5)) (command ".ARC" "C" P5 SP P6 ".LINE" P6 P2 "" ".ARC" P2 "C" P3 "A" "-75") ) (setvar "OSMODE" OM) (setvar "CMDECHO" CE) (setvar "BLIPMODE" BM) (princ) );end