- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
;----------------------------------------------------------------------------
;CONVERT GRAD TO RADIAN
(DEFUN GTR (a)
(* PI (/ a 200.0))
)
;----------------------------------------------------------------------------
;CONVERT RADIAN TO GRAD
(DEFUN RTG (a)
(/ (* a 200.0) PI)
)
;----------------------------------------------------------------------------
;CONVERTS RECTANGULAR COORDINATES (X,Y) TO POLAR COORDINATES (r,@)
(DEFUN AZDS (DE DN)
(SETQ X (SQRT (+ (EXPT DE 2) (EXPT DN 2))))
(SETQ Y (ATAN (/ DN DE)))
)
;----------------------------------------------------------------------------
(DEFUN AAZZ (A)
(SETQ GH (* PI 2)
HG (/ PI 2)
X (+ (- GH A) HG)
X (IF (> X GH) (- X GH) X)
)
)
;----------------------------------------------------------------------------
;CONVERTS POLAR COORDINATES (r,@) TO RECTANGULAR COORDINATES (X,Y)
(DEFUN DALTA (BE HD)
(SETQ X (* (SIN BE) HD))
(SETQ Y (* (COS BE) HD))
)
;----------------------------------------------------------------------------
;AS POLAR FUNCTION
(DEFUN COO (PO BE HD)
(LIST (+ (* (SIN BE) HD) (NTH 0 PO))
(+ (* (COS BE) HD) (NTH 1 PO))
)
)
;----------------------------------------------------------------------------
(defun c:txt()
(setvar "AUNITS" 2)
(setvar "ANGBASE" (/ PI 2))
(setvar "ANGDIR" 1)
(setq h (getdist "\nEnter height of text:")
GH (* PI 2)
HG (/ PI 2)
HA (GTR 100.0)
VA (GTR 200.0)
ds1 (* 6.0 H)
ds2 (* 9.0 H)
ds3 (* 1.2 H)
dsV (* 3.0 H)
DSN (/ DSV 2.0)
VA0 (GTR 0.0)
bs (getpoint "\nEnter Base point for table:")
no (getint "\nEnter point no.:")
b (getpoint "\nEnter start point:")
lm 0.0
bs1 (COO bs ha ds1)
bs2 (COO bs ha (+ ds1 H H ds2))
bs3 (COO bs ha (+ ds2 (* 20 H) ds3))
)
(command "layer" "n" "table" "c" "7" "table"
"n" "line" "c" "1" "line"
"n" "no" "c" "3" "no" ""
)
(setq f (open "d:\\Coordinates XYZ.txt" "w"))
(while b
(setq st (COO bs va (* dsV lm))
st1 (COO bs1 va (* dsV lm))
st2 (COO bs2 va (* dsV lm))
st3 (COO bs3 va (* dsV lm))
BH (COO B VA0 DSN)
)
(command "layer" "s" "table" "")
(command "text" st h (rtG ha) no)
(command "text" st1 h (rtG ha) (rtos (car b) 2 3))
(command "text" st2 h (rtG ha) (rtos (cadr b) 2 3))
(command "text" st3 h (rtG ha) (rtos (caddr b) 2 3))
(write-line (strcat (rtos no 2 3) " " (rtos (car b) 2 3) " " (rtos (cadr b) 2 3) " " (rtos (caddr b) 2 3) ) f)
;;; (write-line (rtos (cadr b) 2 3) f)
;;; (write-line (rtos (caddr b) 2 3) f)
(command "layer" "s" "no" "")
(command "text" bH h (rtG ha) no)
(SEtq lm (+ lm 1)
NO (+ NO 1)
c (getpoint "\nEnter next point:")
)
(command "layer" "s" "line" "")
(command "pline" B "w" "0.0" "0.0" c "")
(setq b c)
)
(close f)
(command "layer" "s" "table" "")
(SETQ STL (COO ST (+ VA (/ HG 2)) (/ DSV 2)))
(SETQ STL1 (COO STL HA (* H 40)))
(COMMAND "LINE" STL STL1 "")
(COMMAND "ARRAY" STL "" "R" (FIX (+ 1 LM)) "" DSV)
)
(princ "\n < idtl > loaded:")
(princ)
Solved! Go to Solution.