Wednesday, October 5, 2011

Dynamic Block Tip: How to Maintain Attribute remain in the Middle Block

On the tip of this dynamic block, we make some elements of the picture and add attribute in the middle of the block. We need to add action to block this stretch, because we want to change the size of the block. The challenge is we need to keep the attribute remains in the middle of the block. There are two ways to do this: first we can let the attribute remains in the middle block to block and stretch the sides. Or the second way: we are to stretch to one side and at the same time move the attributes but still in the middle.

Let's try it. I use a simple dynamic block: room tag.
create attribute

Makes essentially the same attributes, we use ATTDEF.Untuk it easier later on, arrange for justification to the center.
One more thing: make sure the lock position is active. Some dynamic block action will not work if it is not set to lock.
 
Alternative one: stretch in both directions

This makes it fairly easy. You can change the parameters of the base location to the midpoint. Then add two stretch action on both sides.
If you are not familiar with the stretch action, can see the dynamic block tutorial to make this wall.

Alternative two: Add a stretch action and move


If you create a dynamic block that is quite complex, you may not want to stretch it in both directions. Suppose you want to create a table that also has an array of action. When the size of the table changes, you also want to change the number of seats. You can also see some other examples of dynamic blocks in AutoCAD e-book Best Practices

In this situation, it would be easier if we are to stretch in one direction only. To keep the attribute remains in the middle block, we add one more to move the action attribute.
Remember: an attribute to be moved half the distance from the block size changes. If kia stretch of 100, then the attribute must switch 50, to stay in the middle. To achieve this, select the move action. Change in the Properties palette is the distance value multiplier to 0.5.