AutoCAD Visual LISP / AutoLISP :: How To Unlock Tool Palettes
Oct 11, 2006
I have a problem when creating new Tool Palettes..
As soon as I exit autocad after creating them and then re-open CAD the next day all the Tool Palettes have the locked icon in the bottom corner so I'm unable to add to them.. I've tried everything to unlock them...making sure the atc files aren't read only, unlocking all tool bars in menu customization etc but nothing works.....
I've inherited management of CAD standards. A third party developed the tool palette - mostly blocks, etc. but there are also icons to add whole series of layers to drawings. Click 'Architectural Layers' you add the architectural layers. Click 'Plumbing Layers' you add the plumbing layers. Since the original implementation, things have been changed.
How do I migrate my Custom Tool Palettes and Custom Toolbars from Civil 3D 2012 to Civil 3D 2014?
What files do I need to create or copy to transfer to 2014?
My Custom Tool Palette consists of Block Symbols, Border Sheets, Scales and Seals, Lisp Routines etc.
My Custom Toolbar is just a number of standard cad commands I've put together in my toolbar like Revision Cloud, Layer Isolate, Match Properties, Attach Image, etc.
Do I need to export out my cui file, do I need to create a Profile file, do I need to setup the same directory structure naming and copy my files into those same directory names?
Or is there some easy hidden Magic Button in Civil 3D that you click on and it does the rest?
I use the following lisp to control my window background colour,
;Setting window colour to crimson (uses OLE colour code system)...(vla-put-TextWinBackgrndColor(vla-get-display(vla-get-preferences(vlax-get-acad-object)))3937500)
However I would like to change the drafting tool tip background also using lisp, but I don’t know which vla-put-….. I need?
I added a couple of standard Autocad MAP tabs to a custom panel and in my custom workspace some of the button images don't show up. If I go to the Planning & Analysis workspace, the images are visible, but in the custom workspace, all I get are clouds with a question mark.
I attached two screen shots.
Civil3D 2014 SP1 Win 7 Professional - 64-bit HP Z400 Xeon W3550 @ 3.07Ghz 24GB of RAM Nvidia GeForce GTX 760
I am developing 'enterprise' tool palettes which i've put on a networked drive to which i have write permissions and the users have read-only permissions. Within these palettes, each palette has separators and Text titles to group the commands and these groups originally appeared on everyone's computer as i expected when i first made them available. But now when i add new commands to a palette on the networked drive, the new command appears on the correct palette, but at the bottom of the palette, on the user's computers.
I have made provisions for each user to create their own collection of palettes, which are saved on their own directory and, of course, they can do whatever they want with them. But i want to prevent them from re-organizing the enterprise palettes and more importantly, if i add a new command in palette "X" and locate it in group "y" of that palette, i want it to be in that location when the users view it.
Is there some way to make the enterprise palettes on their computers look like i arrange them?
I also note I could use excel but I have this thing where id like to have the lisp and AutoCAD run independent from other external programs.
I’m the CAD monkey at work and I’m given unbelievable autonomy to what I build (sometimes I confuse work with hobby) put all to one side. My functions often require toolbars with several buttons on them what I would like for one toolbar in particular is to make a most used function button. Better said a button at the beginning of my toolbar, which execute the most used button from within that entire toolbar.
The ideas so far is to add a write-line (append) function lisp for every button this would intern write a button codename/ reference example SNP for snap and SAV for save and so on. All easy I can do this.
What I’m having difficulty with is actually counting the instances of the most used button using lisp. At the moment I’m resorting to a vb.net program, which needs to be shelled first, to recalculate the whole list it works but is messy and quite patch worked. The highest instance would then be used to set a variable, which would be used as the command in the so-called “top 1 tool button”
I have created a new tool palette. The tool palette takes the blocs from a drawing.
Now I want to connect this to a catalog, so it can refresh from there. I should be able to export the tool palette with a right click but I only have the possibility to rename, new palette or delete.
I guess that once I have managed to export the catalog I can then easily import the tool palette in my colleagues computer. Also if it links to the same catalog we should be able to easily refresh it.
How to edit the string below so that it will ignore all layer names starting with "E-". I want to change all XREF layers in the current dwg. to 161 but ignore all XREFED layer names that start with E- such as E-lighting, E-power etc.
I am trying to use LISP to justify text using TJUST express tool. I have different layers I need to justify differently - current code causes the error "extra cdrs in dotted pair on input". Or a better way to do it???
(setq N 0 ctext nil) (repeat (sslength ss) ; begin loop (setq ctext (entget (ssname ss N))) (setq clayer (cdr (assoc 8 ctext))) (cond ((= clayer "LABELS") (setq flag "Start") );
We are working together whit another firm and we would like to share our tool pallets and lisp routines. The pallets and lisp files we would like to share are quite large so we would like to simply send them a USB stick whit all the files and a title "executable" program that automatically puts them on the right place and changes the appropriate information.
I used this snip it to add the path for network tool palettes. It works but it keeps adding the same search path every time i open a new session of AutoCAD. The list keeps getting longer with the same information. Say you want to make sure your users all have a certain tool palette.
It's been too long since I created one of these for Toolbars. I need a macro that will insert and explode a block. I just need the block's content, not the block itself. I can create a maco to explode a block with no path, but can't remember how to include the "*" in a file with a folder path to explode the block while its being inserted. Because of spaces in the file name, quotes (") must be around the path.
Is there a lisp that will allow me to do a continuous dimension, but will alternate the dimension position from low, high, low and high? If there is no lisp already created, how to create one?
See Continuous dimension attachment for example.
I work at a glass and glazing company and this is how we dimension mullion width and DLO. See typical window dimensioning attachment for window elevation with dimensions.
I have a list ("temp.dwg" "temp2.dwg") and would like to add the string "insert text here" into each item in the list resulting in ("insert text heretemp.dwg" "insert textheretemp2.dwg"). how would i go about doing that using LISP?
Is there a way to programatically set a visual style before a drawing actually opens?
We have some huge models and people seem to forget to change their visual styles back to 2D wireframe before saving and exiting drawings. Some models will crash on some workstations when trying to open in a rendered mode.
I found a lisp with a function that looked to set viewport visual styles. But it does not seem to be supported anymore. --> (vla-put-VisualStyle vport 1)
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.
Lisp that switches back on Selection Preview i.e. thickens and highlights lines when you hover over them?I don't know why, but they are always unticking the boxes.
Is it possible to execute a certain command based on multiple selections withinin a dcl? for example: two radio colums, one with selections A and B, and a second with selections 1 and 2. is it possible to program commands based on user selections from each column? ex: if A and 1- do a command. A 2- do a different command, etc...
I tried :
(action_tile "key1" "(setq A t") (action_tile "key2" "(setq B t")
I am trying to find a lisp that would get an attribute value (tag name = NBR_5) . I'm trying to run a simple routine that would let the user place the value from the titleblock attribute as text on a drawing. I see a ton of articles regarding getting attributes but I am not well versed in programming.
I'm trying to find acceptable point values to feed to the vlax-3d-point function for a vla-addmtext function. With vanilla lisp I just provide the point as x y = "7/32" "2-3/8". So I assumed that I could drop a 0 in for the z like: (VLAX-3D-POINT "7/32" "2-3/8" 0).
Then I thought I was going to be tricksy and try (vlax-3D-point (getpoint)) believing that I could pick the point and get what I need to feed the function, but yet again, no deal. The command line gave me:
node of #<variant 8197 ...>
Nothing I can use in my code. So how do I find the point in a format that vlax-3d-point will like?
I use Spell Check regularly and I always check the entire drawing. I would like to add to the Spell macro so that when I pick Spell from the toolbar it goes past the Check Spelling window and begins checking the entire drawing.
I believe I need to insert Alt S into my macro to select Start from the window to begin the check. Is there a character or series of characters that will represent Alt in a macro?
I upgraded from Autocad 2004 to 2012 recently and my lisp file doesnt work anymore.
what it's supposed to do is when looking at the layout tab that you want you can switch to the model space location of the same zoom as the layout tab without messing with the layout zoom.
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)
(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!!