I remember way back when, when you could create a line of text with a circular justification. The text would be justified to say a arc. We work with autocad 2012 and I was wondering if anyone knew how to do this with this version.
You would need to use an autolisp script to accomplish this in progeCAD. There are many to choose from here is one well known version:
Code: Select all
;From CADENCE Magazine Febuary, 1989
;Page 56
(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 accomodate 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:CIRTXT ()
(SETVAR "cmdecho" 0)
(PROMPT "\n>>>> Function To Place Text On A Circle <<<<")
(SETQ A (GETPOINT "\n Pick Center of Circular 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 the circle. ")
(INITGET 1 "CW CCW")
(SETQ Z (GETKWORD "\nType <CW> for Clockwise or <CCW> for CntrClockwise: "))
(COND
((= Z "CW")(CWTXT))
((= Z "CCW")(CCWTXT)))
(princ))
Save the AutoLISP program as a text file like "cirtext.lsp" and load using the APPLOAD command in progeCAD. This will define a new command CIRTXT for what you need.