AutoCAD Visual LISP / AutoLISP :: Create A Pop Up Menu Triggered By A Function Key?
Dec 29, 2011
I would like a small menu to pop up near the cursor like the middle mouse button menu, but based on some other function key or quick key shortcut.
View 2 Replies
ADVERTISEMENT
Oct 25, 2013
This seems absolutly silly.
(setq p1 (getpoint))
(setq p2 (getpoint))
(setq Dist (distance p1 p2))
Why does this not work?
I'm trying to build a command to replace AutoCAD's "DI" command, to give distance and delta x, y, and z values in decimal and imperial, and keep the angles in XY plane and out of XY plane.
View 9 Replies
View Related
May 7, 2013
simple example code how can i set my lisp function to radio button ?
i found simple dcl - lisp codes , there is possibility for calling simple cad commands , but this is different about call lisp with buttons
which code i have to change and how for set my lisp on radio buttons ..
here is the sample codes ...
SAMPLE1 : dialog { label = "Sample Dialog Box Routine - Part 1"; : column { : boxed_column { : button { key = "but1"; label = "Button 1";
[Code].....
View 3 Replies
View Related
Nov 27, 2012
I want to define en expiration date in registry, after that date the some LISP programs does not allow to run. I think that suitable commands are SetEnv and GetEnv.
define a ExpDt variable that contains Expiry Date as a string. And add some statements inside of the LISP program to call this variable and check it with today's date.
I should define once time in autocad:
(setenv "expdt" "130101"); YYMMDD date for validation period (2013.01.01)
and check this every time that a lisp program should be execeute:
(getenv "expdt") ; if today's date(with YYMMDD format) ">" expdt then lisp program doen not allow to run and should be halted.
for e.g. on 2013.02.28: "130228" > "130101" ==> so the lisp function should be halted and will not work!
(without any alert or message)
a sample list function: (how can implement on this lisp function?)
(defun c:3()
(setq w t)
(while w
(setq a (getpoint "
pick point:"))
(setq p1 (list (- (car a) 0.5)(- (cadr a) 0.5)))
(setq p2 (list (+(car a) 0.5)(+(cadr a) 0.5)))
(command "erase" "w" p1 p2 "")
(command "INSERT" "*3" a "" "" "0")
)
(if (= a nil)(setq w nil))
)
View 9 Replies
View Related
May 15, 2013
In the foreach function can you use math like (foreach pt1 (add 1) so that foreach one you pick it adds one the next one will be named pt2 then pt3 and so on.
View 6 Replies
View Related
Aug 17, 2012
The error below has appeared randomly when AutoCAD 2011 is started. There was not an error of this sort, but it suddenly appeared and some of the LISP routines will no longer work.
*Invalid attempt to access
a compiled function definition. You may want to define it using defun-q:
#<SUBR @000000003f5fda98 S:: STARTUP>
View 1 Replies
View Related
Jan 10, 2013
In asp I'd write:
arrFileName = Split(DrawingName, "_")
JobNumber = arrFileName(0)
DrawingTitle = arrFileName(1)
SheetNumber = arrFileName(2)
I'd like to do the same thing in lsp. I don't want to be limited to three fields so the split function is perfect.Is there an equivalent?
View 3 Replies
View Related
Jun 3, 2013
How to make a lisp command that will select all objects in the drawing?
View 3 Replies
View Related
Mar 13, 2012
I open the drawing without loading the function, when I modify an object with the reactors appears the following error message:
function definition: NAMEFUNCTION
You can avoid this annoying message without removing the persistent reactors?
View 3 Replies
View Related
Jun 25, 2013
I prepared a code to calculate number of days between two date.
I want to know how can I define negligible arguments for my lisp routins. It means if I omitted the arguments, lisp code can handle it without any errors ("; error: too few arguments")
In this case, my program defined as: (TotalDays 1st_date 2nd_date)
(TotalDays 1978 03 21 2013 06 25)
and I want to have flexibility: if I use this routine as (TotalDays 1978 03 21), the program should substitute today's date with second date.
I know if I put "nil" instead of date for 2nd_date, It will not be an error, because:
(if (and y2 m2 d2) (setq n2 (GetJDN y2 m2 d2))(setq n2 (fix (getvar "DATE"))))
but that's not my favourite!, how can I omitted 2nd_date completely? as (TotalDays 1978 03 21)
Here is my lisp
;|How to use:(TotalDays 1978 03 21 2013 06 25)|;;;;;By Abbas Aqdam(defun TotalDays ( y1 m1 d1 y2 m2 d2 / n1 n2)(setq n1 (GetJDN y1 m1 d1))(if (and y2 m2 d2) (setq n2 (GetJDN y2 m2 d2))(setq n2 (fix (getvar "DATE"))))(abs(- n1 n2)));;;;Leap years are included;;;;By Abbas Aqdam(defun GetJDN ( year month day / a y m J)(setq a (/(- 14 Month) 12))(setq y (-(+ year 4800) a))(setq m (-(+ Month (* 12 a)) 3))(setq J (-(+ day (/(+(* 153 m) 2)5) (* 365 y) (/ y 4) (/ y 400)) (/ y 100) 32045)))
View 9 Replies
View Related
Jan 10, 2012
I D/L a lisp file (setvars.lsp) that purports to give a list of system variables that match a short string entered in a dialog box.
Unfortunately, an error arises that says 'error : no function definition: STRNUM'
I've looked at the code and can't tell what the writer was hoping to achieve.
The specific section is as follows:
(if F1
(progn
(setq RL (read-line F1))
(while RL
(if (and (wcmatch (strcase RL) (strcase (strcat "*" DESCR1 "*")))
(wcmatch (strcase RL) (strcase (strcat "*" DESCR2 "*")))
[Code] .........
There is no other mention of STRNUM in the whole of the lisp.
There is an accompanying setvars.dat, wherein apparently, the writer compiled a data file of all the system variables in AutoCAD2008, each variable being followed by an '=' and then a description of the variable.
If necessary I can post the whole lisp and dat file, but was hoping to discover the intention from the above extract and therfore where I might work out an alternative to this line.
Looking to turn a string to a real? If so, why are there two 'arguments' following the 'function' STRNUM?
View 9 Replies
View Related
Jan 23, 2012
I was able to find/update a LISP program that returns the dynamic block to its original state, overriding the anonymous name and make the actual block name the effective name. I am in the process of manipulating the LISP program so I can select multiple blocks rather than one at a time.
(defun CYMEFFEC ()(vl-load-com) (setq obj (vlax-ename->vla-object (car (entsel "Select blocks: ")))) (vlax-put obj 'Name (vlax-get obj 'Effectivename)))
View 3 Replies
View Related
Jan 28, 2012
I would like to insert a block in a specific layout (eg. "LAYOUT13") using the function vla-insertblock
I have already searched the web and this newsgroup but have not found the solution.
View 3 Replies
View Related
Nov 15, 2013
I have a simple lisp function to add a scale axis to a drawing by calling a script, renamed the drawing by appending "withScale" to the file name, and then closing the file. I placed a call to the function in the acad.lsp file in the startup suite. The idea was to batch process all files by simply opening them. Upon open the startup acad.lsp file runs, which calls my lisp function, which in turn calls the scale script. It should then execute the renaming, saving, and closing commands. The problem is that it is calling the script fine and renaming the file, but it does not save the changes before closing. Here is the lisp function
(defun saveScale(); (command "-purge" "all" "" "n")(if (findfile "C:/Users/Russell/Desktop/TreeFiles/Automation/Scale&Key.scr")(command "_script" "C:/Users/Russell/Desktop/TreeFiles/Automation/Scale&Key.scr")); end if (command "_.zoom" "e") (command "_saveas" "2013" (strcat (getvar "dwgprefix") (vl-filename-base (getvar "dwgname")) "withScale.dwg")) (command "close") ) (saveScale)
Apparently you cannont run any lisp commands after calling a script, however the renaming still follows through.
I've attached the script file as well. (I couldn't attach .scr format so you may need to rename it).
View 9 Replies
View Related
Sep 16, 2013
I have a list function that asks for the user to pick points when it is run. It looks something like this (foo arg1 arg2) When invoked it asks the user to pick points and press enter when done It.
Instead of getting the points from the user i want to pass it a list of pre-defined points. The code cannot be changed so I must use it as is.Is this possible, if so how can it be done?
View 9 Replies
View Related
Mar 13, 2012
I've got a subroutine that gets the centroid of a closed polygon (lwpoly). It appears to fail if the polygon has any zero length line segments. I've added a trap that catches the error and "highlights" the offending polygon, but it stops there and does not return to the main function that called the subroutine. Is there a way to get back to the main function from the trap?
Here's the subroutine (original function by _gile (Autodesk LISP Forum 9-18-2006):
(defun return-centroid (lwpoly space / obj Region Centroid)
(setq *error* trap1)
(setq obj (vlax-ename->vla-object lwpoly))
(setq Region (vlax-invoke space 'addRegion (list obj)))
(setq Centroid (trans (vlax-get (car Region) 'Centroid) 1 0))
(vla-delete (car Region))
[code]....
View 2 Replies
View Related
Oct 28, 2011
I am looking for a function to print out the entire entity list of the selected entity...
so... walking down through the entity data... print out what it finds... any time it encounters an entity name... then do an entget and print that out too.
View 8 Replies
View Related
Jun 27, 2012
How can I get the position (POPn ) where a menu is, considering the other menus loaded (ACAD, Expres.. etc)
For example:
File Edit View Insert . .Express WIndow Help DOBLADO PCSMEN. .. and I need to know the position of DOBLADO.
View 7 Replies
View Related
Oct 30, 2013
I have tried to find information about this, but I am having a hard time. So i need to explain what I am doing.
I would like to be able to use commands stored in the cui menu file, initially this is done using our tablets, but our tablet drivers cannot work with windows 7 and autocad, nor can i get any that do, (i have tried over 20 different drivers).
So, instead of making a lisp function for every macro. I need to be able to use some of them.
Can I execute one of these macros using "MENUCMD" ? , I have all the information i need to do it but cannot figure it out menucmd does not seem to have an option to actually run the macro, and if it does It only seems to be able to do that with popup menus.
Currently i use the ribbon and add them in there, but want to know If i can do so just with lisp. and create my own on-screen tablet menu.
Here is an example of one of the macro's in the cui i need to use.
And here it is in the cui menufile:
UNDER-> <MacroGroup Name="User">
<MenuMacro UID="MMU_WT1[A-5]">
<Macro type="Any">
<Revision MajorVersion="17" MinorVersion="1" UserVersion="1" />
<ModifiedRev MajorVersion="17" MinorVersion="2" UserVersion="1" />
<Name xlate="true" UID="XLS_6804">WT1[A-5]</Name>
<Command>^C^CDTEXT C .125 0 </Command>
</Macro>
So.. that is my question how can i use that command via lisp..
View 9 Replies
View Related
Oct 7, 2011
I would like to use the following macro from the LDD 2004 Civil menu (yes, we are still using 2004!): ^C^C^C^P(cd_mnl)(zz_sdsk '(ad_xsutl 2));LDD. The macro is Zoom to Station from the Cross Section pulldown menu. How to use this in a LISP routine, or an equivalent LISP command? (The user won't be supplying the station number. The station number will be extracted from a selection set of objects with attribute blocks with equivalent station numbers.)
Each cross section has an attribute block associated with it, which lists all the details for that section, including station. The macro must be using that block (listed in a database, perhaps?) to find the station in the dwg.
View 4 Replies
View Related
Oct 24, 2013
I am upgrading from 2010 to 2013 and am having a problem with my image tile menu not showing my slides. The dialog box comes up but none of the slides can be viewed. I am using the macro $I=acadbja.GENPLAN1 $I=* Is there an updated command the super cedes this command?
View 1 Replies
View Related
Oct 24, 2006
During the creation of an Enterprise CUI, I somehow was left with Unresolved Menu groups, as shown in the attachment. Any thoughts on how these can be removed?
View 9 Replies
View Related
Sep 13, 2011
We have had custom toolbars for many years that included custom pop menus etc. Now that we are running cuix customizations how do I edit these customized pop menus? Do I need to rewrite this stuff in lisp, vba, .net, whatever?
View 1 Replies
View Related
Oct 8, 2013
I am trying to add an on and off checkmark via lisp to an item in a pull down menu.
It can be done with diesel but only on system variables.
In my case i can't use sysvars - only lisp.
I tried (menucmd ....) but I get nil.
View 4 Replies
View Related
Apr 7, 2012
I have some legacy menus that are quite large. I have tried to create a new workspace, and that seemed to work o.k.
UNTIL I used menuload to try to load the old menu. At the point all the defualt workspaces were wiped out somehow.
I would like to have access to both the default workspaces and then also by switching to a custom workspace, my legacy menus.
View 8 Replies
View Related
Jan 1, 2010
I read Robert Bell's document “Migrating from MNU to the CUI” (Autodesk University 2007) with interest. I have been using 2005 up until now and I am finally forcing myself to get to grips with 2010.
I managed to get it to work after much trial and error through the CUI transfer interface.My customizing makes use of a lot of swapping pull-down menus, which swap in and out based on current later setting.A typical command would be:
(MENUCMD "P15=RCASPOPS.mfireeqp") where RCASPOPS is my swapping menu loaded at POP15.
Then I would use (MENUCMD "P15=*") to force the “mfireeqp” area of the pull-down menu to display.Trouble is, when I CUIload RCASPOPS, it does not seem to recognize the various areas of the menu.Here is a part of that subsection of RCASPOPS:
***MFIREEQP
[FireProtEquipLayers]
[--]
[0]0;
[defpoints]defpoints;
[X-Refs]x----ref;
[code]...
Typically the whole of RCASPOPS is loaded but when I try to force it to display, the whole of it pops on the screen (well, the top of the file does anyway) and not just the subsection I want.
Is this a syntax issue with the newer AutoCad?Also notice that I use the -> and <- for fly-out sections of the menu - is there a syntax issue with this? I notice that the future support of drop down swapping menus is not guaranteed. What is the alternative?
View 7 Replies
View Related
Aug 26, 2008
I have made an extra CUI that is loaded as a partial CUI.
Now I want to add a context-sensitive shortcut menus like this: POP504, OBJECT_AEC_DOOR.
The problem is that this shortcut menu only shows up if I add the shortcut menu to the main CUI file. If I add it in some partial CUI it never shows.
Does shortcut menus only work from within the main CUI?
View 2 Replies
View Related
May 17, 2013
Switching from 2010 win xp to 2014 win 7. I need my specific user interface , and cant replicate it because of this issue :
I used to press context menu key on keybard to make edit menus pop up . In 2014 even though its same settings (show context menus and time sentive click) i ve lost this ability .
Either menus dont appear at all or they are replaced by the small command line context menu. I think this suggest new command line features are messing with right click options any variable i can turn off , or else to go back to normal.
View 1 Replies
View Related
Feb 15, 2013
I have a company .cuix menu that is loaded as a partial menu to the main acad.cuix file. I want to delete all the toolbars and pull down menus associated with it and leave the other stuff in place. This is in Autocad 2011 but should also translate to 2013. So far, I have tried opening the CUI menu, going to the company.cuix partial menu and deleting the toolbars. Then I hit save, then Apply. Toolbars disappear and pulldown menus go away. But when I reload AutoCAD they come back.
View 1 Replies
View Related
Jun 27, 2013
through the groups here I have found the redefine screenmenu command, but I cannot find how to get the screen menu up on the screen as it is not an option in the display options any longer.
View 4 Replies
View Related
Sep 18, 2001
I doubt there is since they aren't listed in the control keys list in the help file, but it doesn't hurt to ask. I'm trying to simulate the CTRL+PG UP/DN feature of Excel to switch between tabs. I'm might just have to 'up' and 'down' arrow keys.
View 8 Replies
View Related