AutoCAD Visual LISP / AutoLISP :: Text Justification Alert Message Not Working
Aug 28, 2011
lsp.I could not able to find error.
(defun c:t5()
(setq entname (entget(car(entsel))))
(setq thjh (cdr (assoc 72 entname)))
(setq tvjv (cdr (assoc 73 entname)))
[Code]....
View 9 Replies
ADVERTISEMENT
Aug 7, 2013
Is it possible to include a hyperlink with an alert message. I'm not finding any information.
I already know about VLA-LAUNCHBROWSERDIALOG, but I'd rather not launch two dialogs if not absolutely necessary.
View 9 Replies
View Related
Jun 29, 2013
I'm new to the programming thing, and this one has me stumped. We have a problem with people accidently dragging xrefs. The simple solution would be to put all of the xrefs on a locked layer, but I was vetoed on this suggestion. I've been trying to figure out if I can write a lisp that will do one of the following: Give an alert if an xref is moved.Not allow an xref to be moved.Tell the user when they open a drawing that an xref is not at 0,0,0 insertion point.
View 1 Replies
View Related
Jul 30, 2012
Is there a way to have an alert box pop up at a certain point in the code which gives the user a chance to cancel the LISP program and not proceed any further?
View 9 Replies
View Related
Sep 9, 2013
Sometimes someone dimensions a floor plan and starts one direction and then "goes back " the other way over the top of the dimension they just placed, which causes the dimension lines to overlap, which in turn shows incorrect distances when viewing on paper. Any lisp routine that can alert you to the fact that there are overlapping dimension lines (not the extension lines) in a drawing by changing them to color White or something? I have pasted a routine that we use which changes all dimenions with "modified text" to color white. That way I can see if someone just typed in the dimension distance they wanted instead of what was actually there.
(defun c:dc (/ dim_length)
(setq ssmod (ssget "X" (list (cons 0 "Dimension")(cons 1 "~"))))
(if ssmod
(progn
(setq dim_length (sslength ssmod))
(command "Change" ssmod "" "P" "C" "w" "")
[Code] ......
View 9 Replies
View Related
Jun 19, 2012
I was interested in finding out if it's possible to write a LISP routine that would execute a pop-up dialog box say every 30 minutes. This is strictly for ergonomic reasons to remind the user to take a pre-determined break.
I am not an expert code writer by any means, but I imagine the routine would autoload and resetting the timer to 0 upon opening a particular drawing file. The LISP routine would then run in the background and run the (alert "") command when the timer reaches 30m 0s. When the user presses the OK button, the timer resets to 0 again.
View 9 Replies
View Related
Jun 27, 2012
I have the following code to delete all hatch in a drawing. At the end of the command there is a notice that all hatch have been eliminated.
However, the last message displayed is: "Hatch boundary associativity removed".
(defun c:deletehatch ( / d l )(vl-load-com) (setq d (vla-get-activedocument (vlax-get-acad-object))) (vlax-for a (vla-get-layers d)(if (eq :vlax-true (vla-get-lock a))(progn(vla-put-lock a :vlax-false)(setq l (cons a l)) ) ) ) (vlax-for b (vla-get-blocks d)(if (eq :vlax-false (vla-get-isxref b)) (vlax-for o b (if (wcmatch (vla-get-objectname o) "AcDbHatch")(vla-delete o)) ) ) ) (foreach a l (vla-put-lock a :vlax-true)) (vla-regen d acallviewports) (princ (strcat "All HATCH have been removed")) (princ))
View 4 Replies
View Related
May 25, 2012
I was wondering if there is a way to have a message such as the following show up when a lisp routine was loaded using "Load Application" in ACAD?
1) Load Application "ZAP"
2) lisp routine is successfully loaded and the message "Type ZAP at the command line to initiate ZAP routine"
View 1 Replies
View Related
May 28, 2013
I'm trying to include the Autodesk 360 SP1 in my 2014 deployment. Its working fine but it prompts for a restart and I'd rather not require user action to complete the install. (the users here restart frequently enough to deal with this anyway)
I have tried the following switches in the parameters section to no avail:
/s /qn
/s /v/qn
/s qn "REBOOT = ReallySupress"
/s /v/qn "REBOOT = ReallySupress"
View 1 Replies
View Related
Nov 15, 2012
I am trying to create a custom message box with variable width and height by passing width height title and list of text. I can get the routine to work if I use preset width and height, but would like to make the box adjustable.
Here is what I have so far -
;--dialog box--
MYmessage :dialog{
label="Custom message box";
:column {
:text {
key="MY_message_Title";
fixed_width_font=true;
[code].......
View 3 Replies
View Related
Nov 4, 2013
I am trying to customize my quick properties (acad.cuix), but i keep on receiving fatal error message. And when i click on quick properties it is all blank. Also, the Properties dialogue box is not working when i click on something, the properties do not appear on the Properties dialogue box. Attached is the error message.
View 3 Replies
View Related
Mar 22, 2012
By running this routine it returns the following error message:
ERROR: bad argument type: VLA-OBJECT 7
(defun _make_tblstyle (stlname / adoc acmcol tblstyle txh)
(setq adoc (vla-get-activedocument
(vlax-get-acad-object))
)
(setq acmcol (vla-getinterfaceobject
[Code] .......
View 3 Replies
View Related
Aug 2, 2012
I'm working with our new copy of AutoCAD 2013 and using the Visual LISP IDE to create code. I also have an AC2009 machine right next to me for other tasks. On the 2013 machine when I click the "Load Active Edit Window" button it switches to the console screen but there are no messages printed like:
$
; 37 forms loaded from #<editor "C:/LISP/My-Lisp.lsp">
_$
This of course is making it extremely difficult to debug. I have checked the environment settings and they are exactly the same on each machine. The AC2009 machine prints the messages but the AC2013 machine is just giving me a blank console screen.
View 1 Replies
View Related
Jun 15, 2012
I recently upgraded to a new PC.
We get a lot of files from customers where there are multiple drawing borders all in model space.
Sometimes as many as 150-200 borders in one file that we need to print for the shop floor.
Years ago, I wrote a LISP routine that prompts for printer settings (Fit or To scale, etc.) and then prompts for
2 corners of each border and then writes a script file and launches it to batch plot each drawing.
My thinking was that I had to manually pick each drawing anyway, this LISP routine saved me from having to issue the plot command over and over.
Anyway, since my PC upgrade, the LISP routine fails.
There is a line of code that answers the plot prompt for output device name where I have the same printer as always.
When the script runs up to that line, AutoCAD tells me that printer is "not found".
So then it keeps reading the rest of the script lines which answer other plot prompts and repeatedly says "device not found".
If I manually print, I can choose the same print settings in the dialog box that the script file has and it can "find" that same device.
Why I can print manually but the LISP/script file gives me a "not found" error.
BTW, when I upgraded my PC, I also upgraded AutoCAD from 2012 to 2013..
View 8 Replies
View Related
Mar 22, 2013
I upgrading all our lisp routines to 2013. I have a routing that modifies a block attribute. Then ENTMOD returns with the proper information. ENTUPD reurns the same enity name. The block never changes. The same routine woks in 2010.
View 1 Replies
View Related
Sep 4, 2013
One of our users has recently upgraded from AutoCAD 2005 to AutoCAD 2014. He has a LISP routine that will no longer work and I'm not sure why.
View 9 Replies
View Related
Aug 8, 2012
I know how to retrieve the entity information from the block, but can't figure out how to write the loop statement to loop, look for first attribute, assign to a variable, goto next attribute, assign to different variable, etc., etc...
In my research, most programs I've seen it execute the loop, assign to a variable, then print/put that data somewhere, loop again and utilize the same variable to print/put the next data somewhere.
I would like each attribute within a block to be assigned a separate variable.
View 7 Replies
View Related
Jul 25, 2012
The good news is that, if I were righting a routine that locks up AutoCAD, I'm finished. The bad news is that I'm not.
The code below is the portion of a routine where I have the user select 2 points and then pass those points to the Zoom command and the M2P osnap. The problem is that, when the Mid Between 2 Points osnap tries to use the first point, it returnns an "Invalid point" message, enters a loop and locks ACAD.
(defun C:ZC ()
(setq PointOne (getpoint "First point of M2P "))
(setq PointTwo (getpoint "Second point of M2P "))
[Code].....
View 2 Replies
View Related
Apr 30, 2012
Should SETENV/GETENV be writing/reading to and from the System Registry?
After installing ACAD 2013 as a trail this now seems to be the behaviour, only found it when GETENV calls started to fail. This has also affected previous versions installed on the same workstations.
View 3 Replies
View Related
Apr 29, 2012
I have a macro that i have been using in autocad 2012 for a simple copy & rotate command as follows
^C^C_select;auto;\_copy;p;;0,0;0,0;_move;p;;\_rotate;p;;\redraw
For some reason it now does not work in 2013 the macro exits after the copy part of the macro is finished & fails to let you rotate the copied object.
View 5 Replies
View Related
May 2, 2013
I'm trying to check for the existence of a drive using lisp, then if not found perform a task (represented in my below example by the alert)
(if (vl-file-directory-p "C: en") T)(alert "exists"))
I know it doesn't work because if I change the T to nil as demonstrated bellow I should invoke the opposite reaction from autocad but instead I get the exact same outcome which is an alert telling me the file exists?
(if (vl-file-directory-p "C: en") nil)(alert "exists"))
View 7 Replies
View Related
Jul 23, 2013
My code returns the error, but it still works.
(vl-load-com)
(setvar "cmdecho" 0)
(vlax-for ucs (vla-get-UserCoordinateSystems (vla-get-Activedocument (vlax-get-acad-object)))
(setq UCSList (cons (vla-get-Name ucs) UCSList)))
(setq FileName (vl-Filename-Base (getvar "Dwgname")))
(setq NewUCSList (vl-remove-if '(lambda (x) (vl-string-search FileName x)) UCSList))
(setq Listlength (length NewUCSList))
[code]....
View 4 Replies
View Related
Jul 29, 2013
I have various Button macros with the user input select in them, but in 2014 they dont seem to be working anymore.
they worked in 2013.
It just says invalid selection.
example
^C^CSelect;change;p;lt;phantom;;
View 6 Replies
View Related
Jun 21, 2012
I have two attributes "REVN" and "REVD" in a block "ATT" that I would like to change (globally preferably) to the following.
(1) Existing text to keyboard entry text.
(2) Colour from existing to 10
I am a bit lost in the (command "-attdef" .......)
(defun c:atc ()
(setq rev (getstring "Please enter review"))
(setq dat (getstring "please enter date"))
(command "-attdef" .."ATT".."REVN"....."c" "10")..)
(command "-attdef" .."ATT".."REVD"....."c" "10")..)
)
View 4 Replies
View Related
Oct 8, 2013
When I click on an object to retrieve it's extended data, the data keeps writing to the right, it does not return to the next line, when the text approaches the end of the screen. Very difficult to analyze information.
View 4 Replies
View Related
Mar 2, 2013
I want to know is there any formula/calculation for the width of text object before creation/insertion? At now I used approximated width size via a simple .
(Defun GetStrWidth (str H W) (fix (*(* H W) (strlen str))));;usage: (GetStrWidth "This is a Text." 2.5 0.8);;H: TextHeight; W: width factor.
I know that for the existed text in drawing I can use textbox command, but for the texts that has not been created, what can I do? Is there any formula/calculation depends on font name, text height and width factor?
View 9 Replies
View Related
Sep 12, 2012
We are using autocad 2012.
Is there a way to move all 3.5mm text to layer text3.5 and move all 5mm text to layer text5.
View 9 Replies
View Related
Oct 25, 2012
A program that prompts:"select objects:" then I can select some objects like as text, line, circle,... after that program find all texts in selected items and swap text
swap means: xxx/yyy ===> yyy/xxx ; "/" is a divisor
swap function for one text is here:
(defun c:swap ( / pos ent el txt)
(vl-load-com)
(if(null #div#)(setq #div# "/"))
(setq #div#
(if(=(setq tmp(getstring(strcat "
Divisor character: <"#div#"> ")))"")
#div# tmp
)
[Code]....
but I want a program to prompt me like this:
(prompt "Select objects:")(terpri)
(setq a (ssget '((0 . "TEXT"))))
and gets divisor char </>:
after that:
(setq n (sslength a))
(repeat n
....
)
repeats n times, n=number of texts in my selection
View 6 Replies
View Related
Oct 4, 2011
3rd party tool which didn't match our scaling needs the file is a fas so I have tried to reverse engineer the whole function using trial and error. The following code works perfect except we need multiple (x amount) lines of text I have at current the M txt function which mimics and is effective for today however we need all lines to be individual.
I’m playing round with a loop but how to achieve my need..He had a 3rd party tool which didn't match our scaling needs the file is a fas so I have tried to reverse engineer the whole function using trial and error.
The following code works perfect except we need multiple (x amount) lines of text I have at current the M txt function which mimics and is effective for today however we need all lines to be individual.
;Starting lisp program...(defun C:REDtext ();Creating Layers (if non existant)...(command "layer" "m" "TEKST-1.5mm" "lt" "continuous" "" "c" "1" "" "");Memorising previous layer...(setq MYOLDLAYER (getvar "clayer"));Setting requierd layer...(COMMAND "LAYER" "SET" "TEKST-1.5mm" "");Setting variable "MYHEIGHT" to "DIMSCALE" x 2...(setq myheight (* 2 (getvar "DIMSCALE" )));Requesting and storing usser defind point...(setq MYPOINT (getpoint "Start punt :")); Requesting and storing user defind text...(setq MYTEXT (getstring T "Nieuw tekst :"));Placing text...(command "text" MYPOINT MYHEIGHT "0" MYTEXT); Restoring previous layer...(setvar "clayer" MYOLDLAYER);Closing lisp program...)
View 1 Replies
View Related
Aug 1, 2013
this code is used to fix specific font but its problem that it will prompt you to select single text
i need to make it to select multiple text so it saves me a lot of time,
;;; Process Individual request
(defun cht_ProcessIndividual ()
(setq sslen (sslength sset))
(while (> sslen 0)
(setq temp (ssname sset (setq sslen (1- sslen))))
[Code]...
View 2 Replies
View Related
Aug 4, 2013
I have inside every text,Mtext contents different text style like Arial_1 , Arial_2.
How i can give all the contents inside one style ? the normal procedure i will enter inside text to enter editing mode and changing text format style one by one. I want it once.
I want to save my routing of entering every text to change its content text style.
(Notice:select all from outside without editing mode will not do the job)
View 2 Replies
View Related