AutoCAD Dynamic Blocks :: Attribute Not Rotating And Stretch Parameter
Jul 21, 2011
I am very new to dynamic blocks. I am starting off learning the small stuff before I get to the larger more complex blocks to convert to dynamic.
I have a reference block I am trying to "master" all the functions we would like to see.
I have two major concerns.
1) Why can't I rotate this block (via rotate action) and have the attributes stay at angle zero? I thought I built the parameters and actions correct.
2) I haven't ran across anything that explains how to stretch 2 linear parameters at the same time with the same distance (ex: stretch both at .25, .5, .75)
I am trying to be able to have my outreach arm stretch horizontally and on angles of 5 / 10 / 15 degrees from the pole. I have been able to make the polar stretch for this and it works fine though what i am trying to do is have the luminaire height also stretch and move when the size of the outreach changes (i can make the linear dimension work the way i want though not the luminaire parameter) as when you add the paremter into the stretch action is only moves the top and leaves the bottom at the same location which is not giving me the correct height.
The block itself is alot more complicated then this I have stripped most of the parameters out to make it less confusing but the end result would allow the user to input the outreach angle, outreach length and luminaire height. I have attached drawing for your reference.
I need a rectangle block which on insertion prompts me for some data (name/tag/item number) and then displays it (this I can do). This is al pretty straightforward. But I also want to be able to fill in width and height and then have the block stretch to the correct size. So basically what I think I need is to have the value of a parameter refer to the value of an attribute. I've gotten it to work the other way around, where the attribute displays the size of one side of the rectangle (after stretching and regenerating), but I'd really like to have it working the other way.
is there a way to associate a stretch action with the length of an attribute value (i.e. # of characters in the string) or is this something left to vlisp?
I have a block which is a simple rectangle with a height and width attributes that when I edit, change or update the height and width attributes I want the rectangles height and width to change as well.
I know I can go backwards using fields and the attributes would show the stretched length and width but is it possible to go the other way?
What I'm trying to do is have a graphic scale with a set list of scales the user can pick from. This was easy using the Visibility Parameter.
However, I want to add a "custom" vis state where, once they select this option, the attributed definition box will pop up and give them the option to input whatever scale they are using.Check out the attached .dwg to see what I've done so far (I just have the attributes on the "custom" vis state).
I have successfully created a dynamic block. I can insert it into AutoCAD, and it behaves like I want, except for one thing.
I can select the block and change it by taking a grippoint and place it at another position. So my block is e.q. stretched, just like I wanted.
But then. When I want to use the ordinary STRETCH command of AutoCAD, I can only stretch the insertion point of the block, but not the grippoints. Is there a way to set a grippoint to be select edable by commands like STRETCH.
Is there a way to have the grip stay in the correct position when the distance multiplier is .5? It seems to "get ahead" of the original location.
In the attached block, when I stretch the block with the grip, the grip ends up off the end point. Both actions have a .5 multiplier, with the left side having a rotation of 180 - so both sides stretch equally in opposite directions.
Also, there are 3 views with parameters (width/depth). Is there a way to get the user to enter in the sizes without having to select the size on each view? Basically a table that has a 'user input' field so the size selected changes everything at one time.
I have a block of a circle and a line coming from the left and right side quadrant of the circle to a common point (see pic). I want to create a dynamic block using a Stretch and Rotate parameter. You select the block, the Rotate point (grip) shows at the end of the two lines. I can grab that grip and rotate both lines and circle by moving this point around the screen, but cannot Stretch this point to a new location at the same time. How can I have the Rotation end point follow the Stretch parameter?
We have specialized electrical schematic drawings on what is termed roll-drawings. These roll-drawings are simply 12" tall and variable width type drawings. We've had some as short as 24 inches and as long as 900 inches. As a result we use these section dimensions to distinguish circuit boundaries. It's not a real dimension, just a way to distinguish what circuit is located where. I've tried to recreate it using a block for improved automation as currently we just use a lisp routine that draws an arrow and lines. It looks like the screen capture of my block below. Is it possible to have the inside endpoints of the lines automatically stretch outwardly toward the arrows as the attribute Value changs?
How do I manipulate a height parameter all of the dynamic blocks in the drawing from one single field? Say a field located in the drawing properties or on the drawing itself.
For example: Multiple blocks of different walls of same height with other blocks of things on located on those walls, dependant on the wall height, all linked to and changed by a single field. Possibly a Wall Height field located in the custom tab of the drawing properties.
I can pickout each of the blocks and change them at the same time in properites menu because they all share the same parameter name. I would just like to have that height parameter of every block in the drawing, that has that specific parameter controled by a single field. Which I could enter a new height at anytime that would change every block in the drawing to that height.
I wish to create a dynamic block containing some attributes. These attributes are inside rectangles that can't be modified in length using linear parameters ; but the attribute has to be always in the middle of the rectangle. So, I draw a line inside the rectangle (in a hidden layer) and insert the attribute with center justification (not sure for the translation) that I place in the middle of this line ; then I put a coincidence constraint (not sure for the translation, but it's the first one) linking the middle of the line with the middle of the attribute.
But here's the problem : when stretching my rectangle, the insertion point of the attribute suddenly changes from "center" to "bottom left".
I am looking for a way to use the ATTIN/ATTOUT workflow to bring in data from an excel spreadsheet to drive the size of each of my block's instances. The block will be simple, a rectangle, with width and length parameters. For each entity in my excel/csv file these parameter values are spelled out. I know how to display these parameters in my attributes, but I don't know how, if I were to feed in these values, to drive the geometry. If there's a better way to take a list of width and length values to generate a series of blocks each with a rectangle containing its respective size.
I have the same block repeated multiple times in a drawing, and I want to delete the last attribute in all of the specific blocks. When I edit the block in block editor, the attributes do not show up. After I explode the block, there is no text. The attached image shows the properties of the block.
I've created a dynamic block with listed increments e.g. 36, 42, 48 inches width. The dynamic window block that comes with autocad has the same incremental stretch.
This block shows the tick marks as well as a the value in a dynamic input box. How can I have the value displayed in my custom dynamic block. All I have is the "tick" marks.
I have been working on a dynamic block that need to look like the attached jpg. Basically it needs to be able to stretch up to 50'-0" but in ten foot segments (part size limits) +/- an additional but in 1 foot increments.
I've got two blocks that will either array or stretch. But have not been able to get it to match the actual requirements. I have attached my current block attempt. Also as you can see from the jpg, the support posts usually alternate as well and I haven't figured that out yet either .
If you have a drawing open and the Tool Palette Architectural open click on the door. It has "tick marks" where you can stretch the doors opening to (24", 32"). I want to know how to add those "tick marks" to my blocks .
Attached is a block that I am using for Finish plans. Basically how it works is that it is suppose to be inserted and then stretched to indicate a finish change in the floor. When I insert it and stretch it, it works exactly as I want it, but when the scale is changed, the center tag resets to the original center before the block is stretched. I would like it to stay in the center relative to the line that is stretched.
Not sure if you understand, but if you are good with dynamic blocks. You will notice that the dot is annotative where as the line that stretchs is not. I cant have the line change because it will be stretched between two areas with different floor finishes and that will stay consistant. I want the block to adjust so that it is the same size on all the scales of the drawing.
Is it possible to make a dynamical block where the attribute is horizontal in combination of the alignment parameter (not rotate)? If I align to an arc the attribute need to stay at an horizontal position.
I have drawn a simple block that I want to stretch in two directions manually or from the properties palatte.
My block works fine once and then breaks down. Stretch the block in the 'Y' direction. Deselect the block. Stretch the block again and only the grip moves. Edit the block and close the block, the block resets.
if it's possible to link a rotation with a stretching action. I have a text (or an attribute) inside a box that can be stretched. But if the box becomes too small to hold the text horizontally, I would like that the text automatically rotate vertically without any other action that stretching the box. If that is possible, is it also possible that instead of a text, there's an attribute, and that it rotates according to the attribute's length ?
I created a dynamic block with a polar stretch. I insert the block, then have to select the grip to rotate/stretch it. Can it be inserted and then rotated/stretched all in one action? The insertion point is at one of the line and the polar stretch grip is at the other end.
Distance Type: Increment Dist Increment: 1 Dist Minimum: 1 Dist Maximum: is it possible to set the maximum distance to equal D1-2.5??
Both linear stretch D1 and D2 can be stretched independently. So D1 may be stretched to 100, and D2 may be stretched to 50, but what I am trying to do is ensure that D2 will never stretch beyond the distance of D1.
I was wondering if it is possible to use dynamic blocks to stretch a rectangle evenly, using only 1 point? I have attached a PDF of a rectangle with 2 lines coming out of each side (before & after picture). I want to use dynamic blocks to pick a point at the top right of the block, so that when I pull it out, the lines will extend, but stay attached to the rectangle. I also what the rectangle to stay in the center at all times.
I'd like to modify a dynamic door block I've created so that I can stretch by door leaf size OR structural opening size, but I'm not sure how to do this.
Incidentally, I think the block has some flaws:
- I think the 'center/flip point' is not exactly in the center! - The frame size should be 40mm, not 32mm - The packing zone should be 30mm, not 6.38mm!