AutoCAD Visual LISP / AutoLISP :: Get Output From MEASUREGEOM Command Back Into VL Program
Oct 17, 2011
Is it possible to get the output from the MEASUREGEOM command back into an VL program?If I use:(setq angle (command "MEASUREGEOM" "a" line1 line2 "x"),
the value of the angle is displayed on the screen but is not passed back into the program and the variable "angle" is not set.Is there a way that I can set this variable?
View 1 Replies
ADVERTISEMENT
Apr 15, 2013
I have an issue with 2013 that I loose command line output; as in no muttering or cmdecho but I do not have anything set to that way. My cmdecho is set to 1, and nomutt is set to 0.
If I opent textscr then I can see the out put, but nothing on the command line.
I have never seen this before but it just started withing the last week or so and it makes debugging a real difficult.
View 3 Replies
View Related
Apr 18, 2013
I wrote some LISP programs. I would like to use the output data generated by LISP program in Command arear of AutoCAD. I Heard we can dave the output data into .dat files.
View 9 Replies
View Related
Jan 9, 2013
I try to use the SSGET function, and it returnes a string.
How to access the data?
Which function to use?
View 8 Replies
View Related
Nov 21, 2010
I am currently writing a series of routines for setting the layers for text, leaders and dimension commands. The end goal is a system where any annotation command sets the correct layer for the duration of the command, then reverts back to the layer that was active before the command.
I have managed to complete all the code, and it appears to be working fine, I just have one question: I have used -layer "m" "Lay_name" etc... for all layer setting commands, rather than any code to see if the layer exists already. In my limited testing this seems to be suitable, nothing that exists on that layer seems to be affected.
I know how to write code to determine if the layer exists already and set the layer instead, but so far it seems unnecessary??
View 8 Replies
View Related
Nov 26, 2013
I found a lisp in the net to create a rectangle by marking objects in a draw.
But it would nice to get at the end of the lisp after creating the rectangle a output in the command line about the length and with of the created rectangle.
who can add the code for the length/width output?
(defun C:wer (/ AUSWAHL INDEX ELEM XYMIN XYMAX MINX MAXX MINY MAXY DATA A) (vl-load-com) (if(and(or (and (setq AUSWAHL (ssget "I")) (> (sslength AUSWAHL) 0)) (and (setq AUSWAHL (ssget)) (> (sslength AUSWAHL) 0)) ) (or(setq A (getreal "
Randabstand <0> : ")) (setq A 0.0) ) ) (progn (setq INDEX -1) (repeat
[code]........
View 7 Replies
View Related
Oct 11, 2012
I'm trying to write a lisp routine that, when I invoke the mleader command, osmode is set to "nearest" & orthomode is set off. I then would like the original settings to be returned.
attached is what I have written so far:-
View 4 Replies
View Related
Oct 3, 2012
When scrolling through the list of variables (accessed through the commands prompt -> Setvar ->?
->*)
that all variables pointing to a path show backslashes except for SAVEFILEPATH.
View 5 Replies
View Related
Dec 3, 2012
I had programmed Reactors in the past... it's been very long time. Need to renew my understanding?
View 2 Replies
View Related
Jun 13, 2013
I have a lisp program which will create a cover sheet for my electrical drawings by extracting data from the title block. Once this is done, I manually print the cover sheet.
What I would like is to create the cover sheet, have the lisp program pause, print the cover sheet, then when printing is done, quit the drawing file so the cover sheet does not remain.
I tried several approaches, but the lisp program finishes before the cover sheet prints.
View 1 Replies
View Related
Feb 28, 2012
Is there anyway to program variable names?
What I was thinking of was in a loop some times I need multiple sets of similar variables but am not sure how many sets I am going to need. I would like to be able to increment the variable names each time the loop runs.
View 2 Replies
View Related
Dec 10, 2013
I have this old lisp routine that I have been using for quite a while and it works and loads just fine, however I would like to open it to see/edit the code... when I open in Notepad however it opens with wierd symbols... How to get this back into normal text?
View 9 Replies
View Related
Oct 21, 2013
I have an AutoLISP program that hangs up for no apparent reason. I can run the program with an Alert in the loop. The program is a sheet generator, creating a border (insert with attributes), dimensions and MultiLeaders in Model Space, then a new Layout Tab is generated and the new elements are CHSPACEd into the new layout. An Alert temporarily halts the program once the task of a new Layout is created. In this form, the program works as designed. However, if I comment out the Alert, the program hangs up as if in an infinite loop. Also, hitting Escape does not cancel the AutoLISP, I must use Task Manager to end AutoCAD instead. My computer was recently upgraded to Win7 64-bit. I'm running 64-bit versions of software. (AutoCAD MAP 2011).
View 4 Replies
View Related
Oct 13, 2011
Have an AutoLisp program that inserts a block with attributes. Been using it forever. Yesterday I ran the program and somehow when the block is inserted, it skips the Y scaling factor. The program should insert a block at a point with a X scale of 19.2, Y scale of 19.2, Rotation at 0 and then four attribute values.
What is happening is the block is inserted at the correct point and X scaling factor, but the Y scaling factor goes in for the Rotation angle (19.2 degrees), the Rotation angle goes in as the first attribute and the remaining attributes are shifted over and the last attribute is missing.Line of code is:
(command "INSERT" "CNVTAG" inspt scl scl 0 text1 text2 text3 text4)
The command prompt displays:
Command: (command "INSERT" "CNVTAG" inspt scl scl 0 text1 text2 text3 text4)
INSERT Enter block name or [?] <NEWWHDBORD>: CNVTAG
Units: Inches Conversion: 1.0000
Specify insertion point or [Basepoint/Scale/Rotate]: Specify scale factor <1>:
19.20000000000000
Specify rotation angle <0>: 19.20000000000000
Enter attribute values
Conveyor number: 0 Conveyor Speed: 5315-BCS Motor Horsepower: 1.5hp Release
Mode: 45/90fpm
I looked at the system variables INSUNITS, INSUNITSDEFTARGET and INSUNITSDEFSOURCE AND THEY ARE ALL SET AT 0..Currently using AutoCAD 2010.
View 3 Replies
View Related
Jun 22, 2012
I have a routine that work fine, but I receive a nil at the end of command. How to fix that?
View 7 Replies
View Related
Oct 27, 2012
I need a program that simulate this DOS command: dir /on/b *.dwg >list.txt
it list all dwg files on current open dwg file folder and sort them and finally put them in a text file with list.txt name. something like thistype list.txt)
test1.dwg
test2.dwg
test100.dwg
test256.dwg
test1005.dwg
(sort alphabetically and logically) because of disabled DOS utility in my PC I need a pure lisp functions, I tried to wrote this program but I couldn't!!
(defun c:listMaker()
(vl-load-com)
(setq path (getvar "dwgprefix"))
(setq fn "list.txt")
[code]...
and also I need a append a string(='This Is EOF') in the last line of the "list.txt" file.
View 8 Replies
View Related
Apr 13, 2012
I am trying to get my original layer and lintype reinstated after the user is finished with the pline..I know Im suppose to use the while command but am now completely lost on which way to do this
(DEFUN c:TEST1 ()(if (not (tblsearch "LTYPE" "MYWC")) (command "-linetype" "LOAD" "MYWC" "C:/COUNTER.LIN" ""));SECOND PROGRAM...;CREATE CORESPONDING LAYER...(command "._Layer" "Make" "WC LEIDING" "Ltype" "Continuous" "" "Color" "211" "" "")(SETQ MYOLDCELTYPE (GETVAR "CELTYPE"))(SETVAR "CELTYPE" "MYWC")(while (PROGN(COMMAND "pline")(SETVAR "CELTYPE" MYOLDCELTYPE)))
View 5 Replies
View Related
Oct 24, 2013
I'm looking for a routine that I can choose to scale by 25.4 (Imperial to Metric) or .039370079 (Metric to Imperial).
We just got a CNC Machine that works with metric and people keep asking me to make changes in bothe formats.
I'm using CAD 2014.
View 3 Replies
View Related
Mar 19, 2013
have a simple lisp (no v.b.) program that changes the color of m-leader lines in acad 2010?
IV 2010 Suite
Digital Storm PC:
EVGA & Intel components
Win 7 Pro 64 bit
View 9 Replies
View Related
Jun 26, 2013
Is it possible to write a program for cross section by manual input of data like below. Objective is to draw a cross section with grid lines and labels of section data and datum value.
Program will ask for :
Datum value ?
Grid line spacing ?
Datas are :
Section Left
Chainage 5 Section value : 12.5
10 13.5
20 5
23.7 3
and so on.....
Section Right
Chainage 5 Section value : 8
10 13.5
20.5 15
25 3
30 14
and so on.....
View 3 Replies
View Related
Dec 28, 2013
I would like to write some sort of AutoLISP program to evenly space objects across a given distance. I have attached a .pdf file showing what exactly I mean.
I would like the program to enable me to either enter or measure (via the selection of two points) the "z" distance, to enter or measure the "y" distance, and to enter the number of objects, "n". I would then like the program to evenly space "n" objects across the "z" distance.
A program like this is, I have to be honest and say, way beyond my current capabilities.
Perhaps some initial guidance to get me going?
View 6 Replies
View Related
Oct 4, 2012
i am writing something that will draw consecutive lines with a rubberband to be used as a leader from a block's insertion point. this:
(WHILE
(SETQ LN (GETPOINT "
Select Next Point (ENTER to Finish) : "))
(COMMAND "LINE" (GETVAR "LASTPOINT") LN "")
)
works, but does not include the rubber band. i tried:
(WHILE
(SETQ LP (GETVAR "LASTPOINT"))
(SETQ LN (GETPOINT LP "
Select Next Point (ENTER to Finish) : "))
(COMMAND "LINE" LP LN "")
)
which includes the rubberband, but will not exit the loop. The last break source in VLIDE shows that
(GETPOINT LP "
Select Next Point (ENTER to Finish) : ") is casuing an error. Placing
(SETQ LP (GETVAR "LASTPOINT"))
outside the loop causes all lines to be drawn from the same point rather than the endpoint of the previous line.
View 9 Replies
View Related
May 22, 2013
We have a lisp routine that I co-authored ages ago and then haven't done much programming in about 7 years. I seem to have forgotten much of my language skills. This portion of the lisp routine was running fine in autocad 2005 which is what the computer had on it, and it doesn't run on autocad 2010.
I've narrowed it down to the while statement which is why you see it commented out, but that portion is necessary. My main question is was there a change in the language specifically the while statement between 2005 and 2010?
; GET LINES OVER 10" AND THROW OUT (if (= (cdr(assoc 0 outerinfo)) "LWPOLYLINE") (progn (setq remlenouter 0.0) (setq numseg (cdr(assoc 90 outerinfo))) (setq edd (member(assoc 10 outerinfo) outerinfo)) (setq n1 0) ;(while (< n1 (- (* numseg 4) 4)) ;(setq dist (distance (cdr(nth n1 edd)) (cdr(nth (+ n1 4) edd)))) ;(if (>= dist edmmax) (setq remlenouter (+ remlenouter dist))) ;(setq n1 (+ n1 4)) ;) ; end while (setq dist (distance (cdr(nth n1 edd)) (cdr(nth 0 edd)))) (if (>= dist edmmax) (setq remlenouter (+ remlenouter dist))) ) ; end progn ) ; END IF
View 9 Replies
View Related
Aug 26, 2013
I am using AutoCAD 2011. I have a lisp that I have created/modified.
What it does:
Allows me to Select a layer that I call out and change its color properties back to bylayer.
(i primarily use this when i am cleaning up my drawings, I turn them all to gray with another command i have then i run this one to find all the entities on that specified layer)
What i am trying to do:
I would like this command to do a loop. So say i type in a layer name that does not exist, instead of running through the rest of the command i want it to revert back to "specify layer name" until the correct name is entered for that layer.
Here is the lisp:
(defun cLL ()
(setq varLayer (getstring t "
Specify Layer Name: "))
(sssetfirst nil (ssget "X" (list (cons 8 varLayer))))
(command "change" "p" "" "p" "c" "bylayer" "")
(princ)
View 9 Replies
View Related
Jan 8, 2014
We have developed processes, standard operating procedures, work instructions (whatever you want to call it) for several tasks we do on a regular basis. More importantly, tasks that we don't do on a regular basis. On some processes, performing certain commands is a critical step in the quality of the product. I have also developed a lot of lisps to streamline these processes. Of course there are commands that just don't make sense to try and include into existing lisps.
The problem we're having though, is that people are not following the processes. I don't know if they think they are smarter than the process, or if they don't understand the process, or if they are just complacent.
One of the things that would really work to get everyone to follow the process, is to have my lisp routines check to see what the last entry at the command line was.
For example, if one of my lisps depended on the drawing be saved, well, instead of putting the save command in the lisp, sometimes it would be beneficial to check to see if the drawing was saved in the first place. Kudos to those who do follow the process, they do save the drawing, and then run the lisp. On rather large files, I would prefer not to save the drawing twice, back to back.
There are a lot more benefits to checking to see what the last user entry was, in a certain drawing.
View 9 Replies
View Related
Aug 8, 2012
I am new to DCL programming and am having an issue getting a button to recognize a command. As a simple first attempt, I am trying to create a dcl with a button called "draw test line" that will draw a line from 0,0 to 1,1. The lisp loads correctly and the "cancel" button works fine. However when the "draw test line" button is pressed, autocad locks up and the only solution is to restart. here is the dcl
testline : dialog {
label = "draw line test";
: column {
: boxed_column {
: button {
key = "but1";
label = "draw a line";
is_default = false;
[code]....
View 4 Replies
View Related
Nov 5, 2013
I've written a script that improves the default "ID" command, but it's not working.
I was able to redefine the "DI" command.
View 9 Replies
View Related
Jun 27, 2013
Trying to diable the spacebar = (return last command) function!
commandlinehide does te job in the working interface, but a space in scriptmode (in the filename e.g.) still repeats last command!
View 9 Replies
View Related
May 3, 2013
I'm trying to limit the activity inside a paper space's view port. Specifically text and dimension objects (our routines) as these layers inside the view port may be frozen.
How do I pragmatically get out of the view port back into paper space?
Command: _.PSPACECommand: cvportEnter new value for CVPORT <1>:Command: _.MSPACECommand: cvportEnter new value for CVPORT <2>: 1Cannot set CVPORT to that value.*Invalid*
View 3 Replies
View Related
Feb 7, 2012
I'm trying to create a macro for a toolbar button to open a third party program. Basically we want to open a custom .exe application from a button on the ACAD toolbar.
View 5 Replies
View Related
Nov 9, 2012
Is it possible to control the UCS without using the command line? I'd like to access it and control it with vlisp much the same way I can access DXF groups and manipulate insertions. Seems like it should be possible to play with it's definition inside the object model.
View 5 Replies
View Related