Search the Community
Showing results for tags 'dimscale'.
-
Sorry if this thread has been posted before. Is it possible to have a lisp that when using “TM” in model space it changes to paper space and adjusts the Dimscale to 1 and Ltscale to 10. Then when using “TM” again it changes to model space but uses the same dimscale and ltscale that it was set at before changing to paper space?
-
Just need some help with a simple routine that I starting tweaking. Originally the routine was written to enter text and sized it based on the DIMSCALE. It also featured an option to type "A" after you typed DTEXT, to be able to add lines to the specific line of text selected. The problem I am having is I am getting an error: bad argument type: numberp: "0.08". I need it to where is doesnt look at DIMSCALE anymore just the standard 0.1295 spacing. See code below. (defun add-text () (setq exist_text (entget (car (entsel "\nPick last line of Text: ")))) (setq exist_just (cdr (assoc 72 exist_text))) (cond ((= exist_just 0) (setq just "") (setq ins_pt (cdr (assoc 10 exist_text)))) ((= exist_just 1) (setq just "c") (setq ins_pt (cdr (assoc 11 exist_text)))) ((= exist_just 2) (setq just "r") (setq ins_pt (cdr (assoc 11 exist_text)))) ((= exist_just 4) (setq just "m") (setq ins_pt (cdr (assoc 11 exist_text)))) ((not exist_just) (setq just "") (setq ins_pt (cdr (assoc 10 exist_text)))) ) (setq text_pt (polar ins_pt (* 3 (/ pi 2)) (* 5 (/ t_size 3)))) ) ; ; (defun c:dt () (setvar "cmdecho" 0) (setq t_size ".08") ; ; is text height = 0.0 for current style? ; if not, change height to 0.0 and save current height ; (setq ts (getvar "textstyle")) (setq style_info (tblsearch "style" ts)) (setq th (assoc '40 style_info)) (setq text_h (cdr th)) (if (/= text_h 0.0) (command "style" ts "" 0.0 "" "" "" "" "") ) ; ; change layer to predetermined text layer ; (setq c_layer (getvar "clayer")) (command "layer" "s" "TEXT" "") (princ) (setq just (getstring "\nJustification or <A>dd Text Under Existing Line of Text: ")) (if (or (= just "a") (= just "A")) (add-text) (setq text_pt (getpoint "\nInsertion Point of Text")) ) (princ "\nText:") (if (= just "") (command "dtext" text_pt t_size "0") (command "dtext" just text_pt t_size "0") ) ; ; return to original layer and text height values ; (command "layer" "s" c_layer "") (if (/= text_h 0.0) (command "style" ts "" text_h "" "" "" "" "") ) )
-
Hey guys, The other day I switched machines at work, I am now using Windows & (64bit) with AutoCAD 2012 (+ ProSteel). Since making the leap... I have noticed that there is something (my guess is that a LISP routine is the culprit) is altering my DIMSCALE sysvar... setting it to 1. So... I'm just wondering if you guys have any suggestions on how I might be able to identify which routine might be guilty... Is there a way to see/track which routines are responsible for setting SYSVARs? Is it possible that my current DWG is inheriting the DIMSCALE value from any other blocks I insert? Or something more obscure? I look forward to hearing back, thanks a lot for any help.
-
Why will this (getvar 'dimscale) not work on windows 7?
clint0577 posted a topic in AutoLISP, Visual LISP & DCL
This works just fine on the other computers but the 2 computers running windows 7 won't work. It's supposed to reat 1" = 20' when ran but it reads 1" = ' on the computers running 7 (defun c:dsc () (setq DS (rtos (getvar 'dimscale))) (setq dwg-SCALE (substr DS 1 (- (strlen DS) 5))) (SETQ DTE (STRCAT "1\" = " DWG-SCALE "'")) (if (and (not (eq (setq OldTxt "Scale") "") ) (not (eq (setq NewTxt dte) "") ) ) (if (setq ss (ssget "x" (list '(0 . "TEXT,MTEXT") (cons 1 OldTxt) (cons 410 (getvar 'ctab)) ) ) ) (repeat (setq in (sslength ss)) (setq en (entget (ssname ss (setq in (1- in))))) (entmod (subst (cons 1 Newtxt) (assoc 1 en) en)) ) ) ) ) -
Hi, I am using AutoCad 2010 Lt. When dimensioning parts the size of the dimension is very very small, i change the dimension style to Annotation and change the Annotation scale down the bottom right hand side then click linear dimension and it hasn't changed the size ? Sometimes it seems to work but most times it doesen't, is there a set procedure / sure fire way to change the dimension scale ? (even a way to save a type of dimension scale for all drawings or something like that). Most times lately i end up exporting a dxf and dimensioning it in another program. But it would be good to be able to do the lot in AutoCad.