AutoCAD 2013 :: Select Attributes Left To Right To Bypass Unique Attribute Handle Logarithm
Aug 14, 2013
I've got 1800 attributes that need to be numbered from 1 to 1800 from left to right.
I got a Lisp that can do that but the only thing is when I select it with selection window, he wil sort all atributes on their unique handle code. So I have the first 40 attributes going from left to right with groups of numbers at the wrong place like 1-10, 31-40, 21-30, 11-20 instead of 1-40.
This is because when you copy an attribute he wil place a new unique handle coded attribute and the copy contains the previous handle code.
But if I select them one by one from left to right and run my lisp it just works fine cause it seems it doesnt look at the handle code to place the numbers in that order.
So is there a way that I can select multiple attributes, like I'm selecting them one by one from left to right, so I can bypass this attribute handle code?
I have a block which includes some Multiple lines attributes.
Now I don't want them to be multiple lines any more.
How can I change them to single line attribute?
In the block editor, the "Multiple lines" in the properties palette is gray out. I have create single line attribute and replace the multiple line attributes one by one.
Why don't make the Multiple lines property editable? This problem is since Multiple line attribute first time introduced.
Interesting thing is single line attributes can easily changed to multiple line attributes through the properties palette!
I have a “PART” block with attributes tags “PARTMARK” and “SHEAREDFROM” inserted 5 to 10 times in 10 to 50 drawings.
The “PARTMARK” value is always a unique number entered in autocad.The “SHEAREDFROM” value is calculated in Excel and exported to a “SHEARED.txt” file.
In each “PART” block I need to replace the “SHEAREDFROM” value based on the unique “PARTMARK” value, using a script that uses (or incorporates) the values from the “SHEARED.txt” file.
So far the only solution I’ve come up with is having a unique value for the “SHEAREDFROM” and –attedit to change the values in a script. However if the script doesn’t encounter a "K20-1S" in the first drawing it errors out and doesn’t proceed to the next. Below is an example of my rudimentary script.
(command "-attedit" "n" "n" "PART" "SHEAREDFROM" "K20-1S" "K20-1S" "8-60x192") (command "-attedit" "n" "n" "PART" "SHEAREDFROM" "K20-2S" "K20-2S" "2-60x144") (command "-attedit" "n" "n" "PART" "SHEAREDFROM" "K20-3S" "K20-3S" "2-60x132") (command "-attedit" "n" "n" "PART" "SHEAREDFROM" "K20-4S" "K20-4S" "4-60x120") (command "-attedit" "n" "n" "PART" "SHEAREDFROM" "K20-5S" "K20-5S" "0.7-60x120")
I’m assuming I need LISP to do this, but my LISP skills are limited. I think I would need a setq for each unique shearedfrom value (setq K20-1S (“8-60x192”))? Then somehow search each drawing for the unique shearedfrom value to replace.?
Is is possible to get the block handle from an attribute reference? I get the attribute reference from a previously stored attribute collection. I did try attref.BlockId.Handle.Value.ToString(), but it gives a different value, not the block's id.
I have a list of blocks in a datagrid. When i double click a certain record it gets the objectid or handle.
Now i know how too highlight the object. But i don't want to highlight the entity but select it so i can change it's property's in the property pallet.
In the first screen shot you see the code i have. wicht highligts the record but the propperty pallet display no object selected.
But i want it to work like the next picture.
So the question is. When i know an entity's objectid or handle how do i select that entity programticly.
I cannot seem to paste into this one drawing that a client has issued to me. I can paste into all associated x-refs just fine, but the main drawing is the issue. Before we get into things I have tried all the most common things already.
- I have checked layeer Visibilties and unreconciled layers.
- I have run audit and have purged/scalelistedit all drawings
- I have done almost everything ><
To sum it up I think it is global variable of some sort.
I am trying to determine whether or not the following is a bug:
1. Begin creating a new block using the block editor. 2. Add an object (circle) for reference. 3. Add an attribute with the following properties: Constant, Visible, Value (i.e. "34"), Justify: "Middle-Center." Make the tag 4. Save the block, exit block editor. 5. Insert the block into model space.
At least on my system, the constant attribute always shows up left justified. If I explode the block after inserting it, the constant attribute shows correctly. In addition, the constant attribute seems to be left justified with the TAG label from the block definition itself.
I have a block with several attributes. One of the attributes is the result of mulitplying two or more of the other attributes together. I want this to be calculated automatically everytime one of the attribute values changes.
They need to stay within the same block (I think) for when i extract the data to a text file.
If its not possible with attributes, will fields be any better? (I know even less about those than I do attributes!)
I made a dynamic block (REINF_ID) with attributes that i will use to determine the reinforcement of structural walls on elevations. I inserted an attribute called LIGN1 which will be visible and the other attributes such as DIA(bar diameter)-SPC(rebar spacing)-POSITION(rebar position) will be invisible.
Now, in the block editor i want to insert 3 fields in the LIGN1(visible) attribute default value that will link to other attributes in the same block. example: LIGN1 default = 25M(DIAattribute) @(text) 300(SPCattribute) EF(POSITIONattribute). When i insert my block in a dwg and i decide to modify the DIAMETER(invisible attribute) from 25M to 30M for example, I want the value in the LIGN1 attribute to update to show the new DIAMETER.
When I regen, it does not modify the attribute (LIGN1) 25M to 30M, it keeps the default value of the attribute (25M).
I wrote this little piece of code (attached) that explode all the blocks in the current drawing.This is magical, compared with what we had to do in VBA.
This works perfectly but now I want to go deeper and managed blockreferences with attributes.Based on my code, I can determine if oBTR.HasAttributeDefinitions is true or false.
If the blockreference has attributes, I suppose I will have to use Explode instead of ExplodeToOwnerSpace.
My first question is, using explode, I need before to know in which space the blockreference is inserted (Model or any layout) so to insert the exploded entities correctly. So, is it possible from a blockreference to get its own SpaceId?
An another idea I had is to edit the blockreference (not the block definition) to replace attributes with text...
I am a little new to assigning attributes. My company had a block with two attributes that I need to alter. When the block is inserted, it asks a quantity. The other attribute is titled location. I am told if needed, all these quantities can be totaled per drawing. It has a title of "location". Two things: How to replicate this action? And is there a way to show all properties of a field for an attribute?
I have a drawing template (block) where the drawing number is displayed in two locations (attributes). The same value has to be entered in both attributes.
Is there any way of "echoing" the data from one attribute to other attributes (or text objects)?
I was given a customers title block but there are no defined attributes. I'm using AutoCad Electrical 2010. I have to double click on the title block and the edit block definition box pops up. I select the block to edit and click ok. I would like to use the enhanced attribute editor on these title blocks. Is there a way to define the attributes on this kind of title block using the enhanced attribute editor?
Working in Autocad 2011, PC version.My drawing has blocks that contain (1) visibible and editable attribute. Also contain (4) invisible and constant attributes. I need to update text information in the (4) invisible attributes. Using BATTMAN seemed the easiest way to do this, but when "Sync" ing the changes, the rotation angle/placement of the Visible attribute changes globally in the drawing.
(Many of the Visible attributes location were adjusted to prevent overlapping with other drawing lines.
How can I update text values of invisible attributes without rotating/adjusting the placement of my visible one?I've tried -attedit & attredef - neither of them did what I needed.
I have a drawing containing over 100 blocks with 8-10 attributes each. I want to align all the attribute text without rotating the associated blocks. I can select individual attributes by holding down the Ctrl key while I select each attribute. Then I can change the text angle in a pop-up dialog. Is there a quicker way to select all the attributes without having to click on each one? Remember that I do not want to rotate the whole block, just the attribute text.
I am currently dealing with a question for a project I am working on. I have a complex building, in which all rooms are described by a tag. The tag is a block which contains as attributes several kinds of information about that room (height, finishing, etc.). One attribute is the surface of the room, which is linked to a polyline by a field (if the polyline changes, the surface attribute changes consequently.
Now, basing on the fact that there is a correlation between my block containing the attributes and the polyline (the correlation is given by the surface field), I would like to select polylines in my drawing basing on specific values in my attributes block. Example: I want to select all the polylines which are linked to the blocks containing as an attribute the text "1.1.1.1.1", or the polylines linked to a block containing as an attribute the text "library".
This would save me loads of time to generate some specific drawings.
What order of operations do you use to include multiple attributes in a WBlock definition? I can't figure out to include all of attributes and have them in a specific order.
I'm missing the Center Pin, Ellipse, Feather Handle and the Focus Ring when I select the Iris Blur filter. The pointer is a tack symbol and am unable to change that.
I have a drawing with many block references on it and they have some attributes.
I know how to find the block reference witch the attribute value, and even change it but I don't know how to select it once I have the object ID of the block.
How can I do the selection without asking the user to select it?
I have some blocks that are associated with regions in my drawings. I want to select regions based on attributes in the associated blocks. Is that possible?
Is it possible to link my blocks to an external database and select the regions based on a field in the linked database?
I have blocks forming a column, and I need to allow the user to select the top block of the column but return the bottom left corner of bounding box of the bottom block in the column.
(DEFUN NXT-INSPNT (/ BLKLST CURENT CUROBJ IDX IPNT MCMD NENT SEL SS VENT) (PROMPT " >> Pick the Category HEADER to add note:") (SETQss nilss (SSGET ":E:S" (LIST (CONS 0 "INSERT"))) ) (IF ss (PROGN (SETQ sel (ENTGET (SSNAME ss 0)) iPnt (CDR (ASSOC 10 sel)) ) (princ iPNT) (setvar "attreq" 0) (VL-CMDF "-INSERT" "LEG-NOTE" "S" 1 iPnt 0 PAUSE)
[Code] ....
I'm not exactly sure where my code is failing but I get the following error.
Is there any way to track select backwards, a la FCP7, in Premiere? I've tried all the modifiers but no luck. I'm guessing 'no but feel free to fill out a feature request'..
I accidentally turned something on in Autocad, and I want it to go away, I have no idea what it's called or how to get it gone. It's akin to the "select other" window in Inventor when you select at the intersection of several objects.
Lisp program, by selecting on screen multiple block attribute and to change those selected (by picking) attributes to colour 252.
At the moment, I'm using a custom macro : ^C^C-ATTEDIT C;252;;
But if I've got a lot of attributes to change, it takes awhile to complete.
I know about BATTMAN but I do not want to change the block entities in that way. The reason I want to change the attributes to colour 252 is because here at this company we do existing drawing in colour 252 and any new equipment on its proper layer colours.
I would like to select blocks based on the layer of one or more attributes. The obvious method would be to isolate that layer and select the ones with attributes that display. But many of the values are empty!
I know this problem is really simple, but I just can't seem to get it to work. I should be able to left-click on a layer, hold in the shift key while left-clicking on a layer further down the list to select multiple layers. It doesn't work, I can't even get the (Alt-Left Click) command to work, allowing me to select individual layers.
Both these commands work in Image Ready and Flash just fine.
I have checked the keyboard settings, but I am not really sure what to look for - nothing seems out of the ordinary.