Is ther a way to change sttioning text incrementally? For example, I have text (0+00) spaced every 100 ft. along the bottom of a profile grid. I want to be able to pick the first, have it change to 1+00, then the second, have it changed to 2+00, etc. I have looked for a lisp routine online, but have not found one. I am not very good at creating them myself, so can anyone help?
Solved! Go to Solution.
I am not sure I understand what you mean. I want to to pick text (0+00) already placed so that when I am finished, they read as follows:
0+00 1+00 2+00 3+00 ..... and so on, along the bottom of my profile grid. I have some routines that will increment changes, but they only produce the same result for each text (1+00 1+00 1+00), when I want the second and third and so on picks to change by 100 more then the last.
paste then type Next_Station in command line
(defun C:Next_Station (/ num cent)
(setq num (atoi (substr (vla-get-textstring (vlax-ename->vla-object (car (entsel "\nSelect Beginning Station: ")))) 1 1)))
(prompt "\nSelect Next Station: ")
(while (setq cent (vlax-ename->vla-object (car (entsel))))
(setq num (1+ num))
(vla-put-textstring cent (strcat (itoa num) (substr (vla-get-textstring cent) 2)))
(defun C:Next (/ Start TxtObject strt Next) (vl-load-com) (cond ((and (setq Start (car (entsel "\nSelect Beginning Station: "))) (eq (vla-get-ObjectName (setq TxtObject (vlax-ename->vla-object Start))) "AcDbText") (setq num (vla-get-textstring TxtObject)) (setq strt (itoa (+ (atoi (vl-string-subst "" "+" num)) 100))) (not (prompt "\nSelect Next Station: ")) (while (setq Next (car (entsel))) (and (eq (vla-get-ObjectName (setq TxtObject (vlax-ename->vla-object Next))) "AcDbText") (not (vla-put-textstring TxtObject (strcat (substr strt 1 (- (strlen strt) 2)) "+" (substr strt (1+ (- (strlen strt) 2)))))) (setq strt (itoa (+ (atoi strt) 100))) ) ) ) ) )(princ) )
Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register
Start with some of our most frequented solutions to get help installing your software.