Jump to content

Change width factor on multiple block attributes?


Chris Wilkinson

Recommended Posts

Greetings,

 

I have a number of attributed dynamic blocks with multi vis states, that I wish to change from attribute text width factor 1, to 0.85, as per client specified requirement for the particular project. There are quite a number of different named blocks on each sheet, copies of each block, and quite a number of sheets involved.

 

Using BATTMAN or EATTEDIT I cannot select all attributes and change width factor in one go. It can only be done one at a time, a laborious task at best. GATTE appears not to be able to change width factor.

 

Is anyone aware of a method of selecting all attributed blocks in a sheet, then changing the attribute text width factor on all to 0.85 in one fell swoop? :roll:

 

Kind regards,

 

Chris Wilkinson, Brisbane, Australia

Link to comment
Share on other sites

no means of testing but have you tried modifying the base block using BEDIT then ATTSYNC or BATTMAN to resync all blocks. Note that this will not work as expected if you have moved any attributes away from their pre-defined positions.

Link to comment
Share on other sites

Do the attributes within all these blocks share the same Text Style ?

 

forget that, it will only work adequately on non-attributed text within the block.

Link to comment
Share on other sites

no means of testing but have you tried modifying the base block using BEDIT then ATTSYNC or BATTMAN to resync all blocks. Note that this will not work as expected if you have moved any attributes away from their pre-defined positions.

 

Since the drawings already contain all the blocks we need to use for the job I think I'll just have to change them in the drawing rather than at the source - if I changed the source ones, or made copies of those and changed the copies then thats gonna take possibly as much time as just changing them in the drawing - I also don't want to change the source ones, since we have a large number of projects on the go that use, or will use, those ones in original form as per our own visual standards for drafting.

 

Thanks for the suggestion - if it were a really big job it would make more sense, but its a mid-size job, and I'm hoping the PE won't notice an extra hour or two on the drafting bill... :roll:

 

Chris W, Brisbane, Australia

Link to comment
Share on other sites

Greetings,

 

I have a number of attributed dynamic blocks with multi vis states, that I wish to change from attribute text width factor 1, to 0.85, as per client specified requirement for the particular project. There are quite a number of different named blocks on each sheet, copies of each block, and quite a number of sheets involved.

 

Using BATTMAN or EATTEDIT I cannot select all attributes and change width factor in one go. It can only be done one at a time, a laborious task at best. GATTE appears not to be able to change width factor.

 

Is anyone aware of a method of selecting all attributed blocks in a sheet, then changing the attribute text width factor on all to 0.85 in one fell swoop? :roll:

 

Kind regards,

 

Chris Wilkinson, Brisbane, Australia

 

 

You can use a lisp routine for it..

 

I have a small one to change a bunch of blocks with attributes, but it doesn´t have the option for width...

 

But there is another bigger routine to change a bunch of different types of selected objects, including text, mtext, attributes and attdef...

 

you can use it and filter only one of those types and change only one or several properties at once, it's very easy to use cause it Dialog box based... I always use it in my office.. i hope you know to load lisp routines.

 

The small one is edat.lsp and the other one is DDchtext... usable loading the Dt.lsp and typing "dt" after loading it.

dt.zip

Edat.lsp

  • Like 1
Link to comment
Share on other sites

Since the drawings already contain all the blocks we need to use for the job I think I'll just have to change them in the drawing rather than at the source - if I changed the source ones, or made copies of those and changed the copies then thats gonna take possibly as much time as just changing them in the drawing - I also don't want to change the source ones, since we have a large number of projects on the go that use, or will use, those ones in original form as per our own visual standards for drafting.

 

Thanks for the suggestion - if it were a really big job it would make more sense, but its a mid-size job, and I'm hoping the PE won't notice an extra hour or two on the drafting bill... :roll:

 

Chris W, Brisbane, Australia

there's no need to touch the source ones, just change it in the drawing. BEDIT, select all attributes using QSELECT, change the width with the properties pallett and close BEDIT. ATTSYNC and all of those blocks will update. 30 seconds per block name, no more than 1 minute.
Link to comment
Share on other sites

You can use a lisp routine for it..

 

I have a small one to change a bunch of blocks with attributes, but it doesn´t have the option for width...

 

But there is another bigger routine to change a bunch of different types of selected objects, including text, mtext, attributes and attdef...

 

you can use it and filter only one of those types and change only one or several properties at once, it's very easy to use cause it Dialog box based... I always use it in my office.. i hope you know to load lisp routines.

 

The small one is edat.lsp and the other one is DDchtext... usable loading the Dt.lsp and typing "dt" after loading it.

 

 

Surfing on cadalyst I found a perfect routine for it... This one will let you edit all attributes belonging to all those selected blocks.. and change Angle, height, style, Text and width factor at once..

The best of it is that is a temporary change that you can revert by using attsync is you want to return the attributes to their original shapes...

 

Here it is

eat.lsp

  • Like 1
Link to comment
Share on other sites

Surfing on cadalyst I found a perfect routine for it... This one will let you edit all attributes belonging to all those selected blocks.. and change Angle, height, style, Text and width factor at once..

The best of it is that is a temporary change that you can revert by using attsync is you want to return the attributes to their original shapes...

 

Here it is

 

Excellent. Thats just the ticket.

 

Now if only I could find a lisp routine that could extend the ultra-short deadline and quadruple the pithy fee for the job... 8)

 

Kind regards,

 

Chris Wilkinson, Brisbane, Australia.

Link to comment
Share on other sites

Excellent. Thats just the ticket.

 

Now if only I could find a lisp routine that could extend the ultra-short deadline and quadruple the pithy fee for the job... 8)

 

Kind regards,

 

Chris Wilkinson, Brisbane, Australia.

 

I am working on that one...

Link to comment
Share on other sites

I am working on that one...

 

Let me know when its ready to test - I'll pay good money for that! :)

 

- job is a 13 level commercial tower refit - 1st prelim issue was on 1st September. The program is to be completed and refit done by end November...

 

:shock:

 

We'll get it done, but it ain't gonna be pretty...

 

Regards,

 

Chris Wilkinson.

Link to comment
Share on other sites

  • 3 years later...

Hello!

 

Would be possible to change only the selected attribute (in a block), instead of changing all the attributes?

 

Thanks!

Marcelo

Link to comment
Share on other sites

Hello!

 

Would be possible to change only the selected attribute (in a block), instead of changing all the attributes?

 

Thanks!

Marcelo

 

Is it just for one attribute in one Instance of a block? In that case obviously you don´t need a lisp... just dobleclick on the attribute and change the width using the editor...

 

In the case of one attribute in all instances of a block, it's better to redefine the block changing the width of that attribute before redefining.

Link to comment
Share on other sites

Hello gilsoto13.

It is for one attribute in all instances of a block, and I'm sure that it's better to change with lisp instead to edit the block. :)

Regards!

Link to comment
Share on other sites

  • 3 years later...

The "eat" lisp file has helped me alot these days. I was wondering is there a way to avoid the question what I wanna change and the value I want? and just change it automatically to 1? Also I wanted to select everything automatically i tried the code ssget"_a". But It doesn't really do anything as far as I know. any suggestions? :D

Link to comment
Share on other sites

Thanks Gilsoto works amazing :D it can't be added to an other lisp like acad2015.lsp? acad2015.lsp the font lisp does its work fine and the zoom command also only the third part "widthchanger" doesn't work. It works fine If I do it manually without acad2015.lsp

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...