Jeff_Clausen
Usenet Archive
- Joined
- Jul 24, 2003
- Messages
- 1
- Reaction score
- 0
I was using the following curve text lisp in R14. It does not function properly in 2004. All of my other routines work fine. (DEFUN CCWTXT (IF (> STOP STRT) (SETQ TANG (- STOP STRT)) (SETQ TANG (- (* 2 PI) (ABS (- STOP STRT))))) (NUMCHAR) (SETQ ANG (/ (ABS TANG) (- DL 1)) CNT 1 TX (SUBSTR D 1 1) SLOPE (/ (+ STRT (/ PI 2)) 0.0174533) P (POLAR A STRT R)) (REPEAT DL (COMMAND "text" "m" P H SLOPE TX) (SETQ STRT (+ STRT ANG) P (POLAR A STRT R) CNT (+ CNT 1) TX (SUBSTR D CNT 1) SLOPE (/ (+ STRT (/ PI 2)) 0.0174533)))
(PRINC))
(DEFUN CWTXT
(IF (> STRT STOP)
(SETQ TANG (- STRT STOP)) (SETQ TANG (- (* 2 PI) (ABS (- STRT STOP))))) (NUMCHAR) (SETQ ANG (/ (ABS TANG) (- DL 1)) CNT 1 TX (SUBSTR D 1 1) SLOPE (/ (- STRT (/ PI 2)) 0.0174533) P B) (REPEAT DL (COMMAND "text" "m" P H SLOPE TX) (SETQ STRT (- STRT ANG) P (POLAR A STRT R) CNT (+ CNT 1) TX (SUBSTR D CNT 1) SLOPE (/ (- STRT (/ PI 2)) 0.0174533)))
(PRINC))
(DEFUN NUMCHAR
(SETQ CARC (* (* 2 PI R) (/ (ABS TANG) (* PI 2))) QTY (FIX (/ CARC (* H 0.92)))) (IF (< QTY 1) (SETQ QTY 1)) (PROMPT "\n Arc will accommodate approx ") (PROMPT (ITOA QTY)) (PROMPT "characters ") (PROMPT (RTOS H 2 3)) (PROMPT "high, w/normal spacing.") (SETQ D (GETSTRING T "\n Enter text... ") DL (STRLEN D)) (IF (= DL 1) (SETQ DL 2)))
(DEFUN C:CURTXT
(SETVAR "cmdecho" 0)
(PROMPT "\n>>>> Function To Place Text Along A Curve <<<< ") (SETQ A (GETPOINT "\n Pick Radial Point of Text ") B (GETPOINT "\n Pick Middle of First Text Character ") C (GETPOINT "\n Pick middle of Last Text Character ") H (GETDIST "\n Enter Text Height..... ") R (DISTANCE A B) STRT (ANGLE A B) STOP (ANGLE A C)) (PROMPT "\n Characters may be written in either direction on a curve. ") (INITGET 1 "CW CCW") (SETQ Z (GETKWORD "\nType <CW> for Clockwise or <CCW> for Cntrclockwise: ")) (COND ((= Z "CW")(CWTXT)) ((= Z "CCW")(CCWTXT)))
(PRINC))
Thanks
(PRINC))
(DEFUN CWTXT
(IF (> STRT STOP)
(SETQ TANG (- STRT STOP)) (SETQ TANG (- (* 2 PI) (ABS (- STRT STOP))))) (NUMCHAR) (SETQ ANG (/ (ABS TANG) (- DL 1)) CNT 1 TX (SUBSTR D 1 1) SLOPE (/ (- STRT (/ PI 2)) 0.0174533) P B) (REPEAT DL (COMMAND "text" "m" P H SLOPE TX) (SETQ STRT (- STRT ANG) P (POLAR A STRT R) CNT (+ CNT 1) TX (SUBSTR D CNT 1) SLOPE (/ (- STRT (/ PI 2)) 0.0174533)))
(PRINC))
(DEFUN NUMCHAR
(SETQ CARC (* (* 2 PI R) (/ (ABS TANG) (* PI 2))) QTY (FIX (/ CARC (* H 0.92)))) (IF (< QTY 1) (SETQ QTY 1)) (PROMPT "\n Arc will accommodate approx ") (PROMPT (ITOA QTY)) (PROMPT "characters ") (PROMPT (RTOS H 2 3)) (PROMPT "high, w/normal spacing.") (SETQ D (GETSTRING T "\n Enter text... ") DL (STRLEN D)) (IF (= DL 1) (SETQ DL 2)))
(DEFUN C:CURTXT
(SETVAR "cmdecho" 0)
(PROMPT "\n>>>> Function To Place Text Along A Curve <<<< ") (SETQ A (GETPOINT "\n Pick Radial Point of Text ") B (GETPOINT "\n Pick Middle of First Text Character ") C (GETPOINT "\n Pick middle of Last Text Character ") H (GETDIST "\n Enter Text Height..... ") R (DISTANCE A B) STRT (ANGLE A B) STOP (ANGLE A C)) (PROMPT "\n Characters may be written in either direction on a curve. ") (INITGET 1 "CW CCW") (SETQ Z (GETKWORD "\nType <CW> for Clockwise or <CCW> for Cntrclockwise: ")) (COND ((= Z "CW")(CWTXT)) ((= Z "CCW")(CCWTXT)))
(PRINC))
Thanks