View Full Version : Tool Palette Block Scale Customization
certsenian
2009-06-11, 12:27 PM
I'm working in AutoCAD 2009. I've created some custom blocks that I've placed onto a new Tool Palette. I would like to have the ability to insert the blocks at a scale equal to the Annotation Scale (CANNOSCALE). Is this possible?
The only two options in the auxiliary scale are Dimscale and Plotscale. I know it is possible if the blocks are set to be annotative but my company has had nothing but problems with annotative anything in AutoCAD.
What I want is to have a block inserted at different scales in different drawings. It would be great if you could actually have a scale prompt when inserting a block from the Tool Palette.
jpaulsen
2009-06-12, 01:01 PM
We set ours to DIMSCALE and if I'm not mistaken when you change your annotation scale using using the status bar the dimscale changes too.
certsenian
2009-06-12, 06:53 PM
Thanks for the reply.
I've just realized that you can't change the DIMSCALE if you have an annotative dimension style. So... I've made the style not associative in the hope that the Annotation Scale drop down would work.
I've set the dimstyle to scale based on the layout and set the dimscale to 0. When I change the annotative scale drop down, the dimension scale remains at 0 and the dimensions don't change.
Am I missing something here?
jpaulsen
2009-06-12, 07:59 PM
I've set the dimstyle to scale based on the layout
I'm not sure what you mean by that but It may have something to do with your problem. When I make a new drawing using acad.dwt CANNOSCALE is set to 1 and DIMSCALE is set to 1. If I change the annotation scale to 1:50, either with the scale list on the status bar or using the CANNOSCALE command at the command prompt my DIMSCALE changes to 50.
As you noted, your current dimstyle cannot be annotative.
jpaulsen
2009-06-12, 08:04 PM
I found the setting for "Scale dimensions to layout". It sets DIMSCALE to 0.
I made a new drawing using acad.dwt. Checked the box to "Scale dimensions to layout" for the Standard dimstyle. I then changed the CANNOSCALE and the DIMSCALE changed along with it.
I am not sure why it doesn't work for you. I am using C3D 2009.
RobertB
2009-06-16, 07:36 PM
I found the setting for "Scale dimensions to layout". It sets DIMSCALE to 0.
I made a new drawing using acad.dwt. Checked the box to "Scale dimensions to layout" for the Standard dimstyle. I then changed the CANNOSCALE and the DIMSCALE changed along with it.
I am not sure why it doesn't work for you. I am using C3D 2009.What happens if you try it with an annotative dimension style?
jgratton
2010-03-17, 11:29 PM
This is similar to something I am trying to do. I have no problems placing dimensions, because that is something I can use annotative scales for. But not with dynamic blocks, as far as I know.
I have 4 of these running on tool palette buttons, each places a whole bunch of various things at the same time
^C^C(setq userr_1 300);-insert;block1;0,0;300;300;;zoom;e;-insert;*block2;0,0;1;0;(setvar "cannoscale""1:300");
For as long as the drafter keeps going, no problem, but if he closes and re-opens the drawing or works on another drawing the value stored in userr_1 is lost.
I don't want him to have to reselect it so can there be a way to stick some code at the beginning of each button that checks to make sure userr_1 has a value based on the value of the cannoscale?
Something like if userr_1 is invalid,
then read cannoscale
and if cannoscale is 1:300, then userr_1 is 300
or if cannoscale is 1:400, then userr_1 is 400
or if cannoscale is 1:500, then userr_1 is 500
or if cannoscale is 1:600, then userr_1 is 600
I think this is how it should be structured, but obviously I don't know how to write it.
RobertB
2010-03-18, 08:25 PM
...
^C^C(setq userr_1 300);-insert;block1;0,0;300;300;;zoom;e;-insert;*block2;0,0;1;0;(setvar "cannoscale""1:300");
For as long as the drafter keeps going, no problem, but if he closes and re-opens the drawing or works on another drawing the value stored in userr_1 is lost.Why aren't you using the current annotation scale directly instead of jumping thru these hoops?
^C^C._-Insert;Block1;0,0;(/ 1.0 (getvar 'CAnnoScaleValue));;;._Zoom;_extents;._-Insert;*Block2;0,0;(/ 1.0 (getvar 'CAnnoScaleValue));;
jgratton
2010-03-18, 09:06 PM
Why aren't you using the current annotation scale directly instead of jumping thru these hoops?
^C^C._-Insert;Block1;0,0;(/ 1.0 (getvar 'CAnnoScaleValue));;;._Zoom;_extents;._-Insert;*Block2;0,0;(/ 1.0 (getvar 'CAnnoScaleValue));;
Thanks I'll try it and let you know.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.