0% found this document useful (0 votes)
1K views20 pages

Autodesk University - Dynamic Blocks

Dynamic Blocks are one of the most exciting new features in AutoCAD 2006. Using them means that you'll have to master some new skills. This class covers everything you need to know to create dynamic blocks.

Uploaded by

grzybol
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views20 pages

Autodesk University - Dynamic Blocks

Dynamic Blocks are one of the most exciting new features in AutoCAD 2006. Using them means that you'll have to master some new skills. This class covers everything you need to know to create dynamic blocks.

Uploaded by

grzybol
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

11/28/2005 - 10:00 am - 11:30 am Room:S.

Hemispheres (Salon I) (Dolphin)

Walt Disney World Swan and Dolphin Resort


Orlando, Florida

Go Dynamic: How to Create Dynamic Blocks in AutoCAD®


2006
David Cohn - Cyon Research Corp.

GD12-3 Dynamic Blocks is one of the most exciting new features in AutoCAD 2006, but while using them is
easy, creating them means that you'll have to master some new skills. This class covers everything
you need to know to use the new Block Definition Editor and Block Authoring palette to create
dynamic blocks whose size and appearance can vary when used in your drawings.

About the Speaker:


David has more than 20 years of hands-on experience with AutoCAD as a user, developer, author,
and consultant. He is the publisher and editor-in-chief of CADCAMNet and Engineering Automation
Report, the former senior editor of CADalyst magazine, a contributing editor to Desktop Engineering
magazine, and the author of more than a dozen books about AutoCAD. A licensed architect, David
was also one of the earliest AutoCAD third-party software developers, creating numerous AutoCAD
add-on programs. As an industry consultant, David has worked with many companies including
Autodesk. He teaches college-level AutoCAD courses and is always a popular presenter at Autodesk
University.
[email protected]
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

Introduction
In the past, if you needed several variations of an object—for example, both plan and elevation views of a plumbing fixture or a
door with different widths—you would have had to create multiple blocks. Dynamic blocks change all that. A dynamic block is an
intelligent block. A dynamic block reference can easily be modified in a drawing while you work. When you add a dynamic block
to your drawing, you can subsequently manipulate its geometry using custom grips or custom properties. This allows you to
adjust the block in-place as needed rather than searching for another block to insert or redefining the existing one.
For example, if you insert a door reference in a drawing, you might need to change the size of the door while you’re editing the
drawing. If the block is dynamic and defined to have an adjustable size, you can change the size of the door by dragging the
custom grip or specifying a different size in the Properties palette. Depending on how the dynamic door block was defined, you
might also be able to change the open angle of the door. The door block could also contain custom grips that let you change the
hinge point. Or you could create a dynamic conference table and chairs. When you change the length of the table, additional
chairs get added automatically.
Dynamic blocks:
• Can help you streamline block libraries by combining similar blocks into a single dynamic block capable of representing
several designs
• Can be edited without having to be exploded
• Can have multiple insertion points that can be cycled through when inserting the block (by pressing the CTRL key)
Creating Dynamic Blocks
You create dynamic blocks using a new environment in AutoCAD called the Block Editor. The Block Editor is a special authoring
environment for creating block definitions and adding dynamic behavior. You can use the Block Editor to create a block from
scratch, or you can add dynamic behavior to an existing block definition. You can also create geometry, just as you would in
AutoCAD’s normal drawing area. Most AutoCAD commands can be used in the Block Editor.
To make a block a dynamic block, you add parameters and actions. For a block to be
dynamic, it must have at least one parameter. You then add an action and associate the
action with the parameter. Parameters define custom properties for the dynamic block by
specifying positions, distances, and angles for the geometry in the block. Actions define how
the geometry of a dynamic block will move or change when the block reference is
manipulated in the drawing. When you add actions to the block, you must associate them
with parameters and usually with geometry.
When you add a parameter to a block definition, custom grips and properties are
automatically added to the block. You use these custom grips and properties to manipulate the block reference in the drawing.
Steps for Creating Dynamic Blocks
To create quality dynamic blocks so that you get the results you expect, you should do the following:
1. Plan the contents of the block before you create it. You should know what the block will look like and how it will be
used in the drawing. Decide which objects within the block will change or move when the dynamic block is manipulated
and how they will change. The order in which you create objects and add actions can make a difference.
2. Draw the geometry. You can draw new geometry in the drawing area or the Block Editor. You can also use geometry
that already exists in a drawing, or an existing block definition.
3. Understand how the block elements will work together. When you add an action to the block definition, you need
to associate the action with a parameter and a set of geometry. This creates a dependency. You need to understand
how these dependencies affect the geometry within the block.
4. Add parameters. Use the tools in the Block Editor to add parameters to the dynamic block definition, following the
prompts on the command line.
5. Add actions. Use the tools in the Block Editor to add the appropriate actions to the dynamic block definition, following
the prompts on the command line.
6. Define how the dynamic block reference will be manipulated. You can manipulate a dynamic block reference
through custom grips and custom properties. When you define a dynamic block definition, you define what grips are

2
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

displayed and how they edit the dynamic block reference. You also specify whether or not custom properties of the
block will be displayed in the Properties palette and whether or not these properties can be changed through the
palette or through custom grips.
7. Save the block and then try it in the drawing. After saving the block definition and exiting the Block Editor, insert the
dynamic block reference in your drawing and test the block’s functionality.
The Block Editor
The Block Editor is a special authoring environment for creating block definitions and adding dynamic behavior. It provides
special Authoring palettes for accessing block authoring tools, and a drawing area in which you can draw and edit geometry as
you would in AutoCAD’s main drawing area. To help you identify when you are working in the Block Editor, it displays with a
different background color than AutoCAD’s main drawing area, and you can specify this background color. The Block Editor also
displays a special toolbar that shows the name of the block definition currently being edited as well as tools to save the block
definition, add parameters and actions, define attributes, and manage the visibility states of objects in the block.

Things to remember when working in the Block Editor:


• You can select any parameter, grip, action, or geometric object in the Block Editor to view its properties in the
Properties palette.
• When you select an object in the Block Editor, the coordinate values shown in the Properties palette reflect the block
definition space.
• When you work in the Block Editor, the command line should be displayed, because it displays prompts for nearly all
aspects of creating a block.
• The origin of the UCS icon displayed in the Block Editor defines the base point for the block. The UCS command is
disabled in the Block Editor. You can change the base point for the block by moving the geometry relative to the origin
of the UCS icon, or by adding a base point parameter.
• You can open an existing 3D block definition in the Block Editor and assign parameters to the block. However, the
parameters will ignore any Z coordinate values in the block space. Block references cannot be edited along the Z-axis.
• Although you can create a dynamic block that contains solid objects and add actions to it, you can’t perform solid
editing commands (such as stretch a solid, move a hole within a solid, and so on) within a dynamic block reference.

3
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

Block Authoring Palettes


When you work in the Block Editor, AutoCAD displays three Block Authoring palettes. You can use the tools on
these palettes to add parameters and actions to your dynamic block definition.

Note that you can also customize these palettes, adding your own custom block authoring tools. However, in
order to preserve the default tools, you should create a new palette for your custom tools. You can change the
tool description, parameter type, associated actions, key point on the parameter to which the action is tied, and
the tool palette image. You cannot drag parameters and actions from the Block Editor onto any other tool palette.
Block Editor Toolbar
The Block Editor displays a special toolbar that shows the name of the block definition currently being edited as
well as tools for creating, modifying, and saving dynamic blocks.

Edit or Create Block Opens the Edit Block Definition dialog box, allowing you
Definition to select a block definition to be modified.
Save Block Definition Saves changes made to the current block definition

Save Block As Saves the block with a new name

Block Definition Name Displays the name of the current block

Authoring Palettes Toggles the Block Authoring Palettes on and off

Parameter Provides another method for adding a parameter (instead


of the Block Authoring palette)
Action Provides another method for adding an action (instead of
the Block Authoring palette)
Define Attribute Opens the Attribute Definition dialog box, allowing you to
add attributes to the block definition.
Update Parameter and Action Adjusts the display text size of parameters and actions
Text Size within the Block Editor so that they are legible.
Learn About Dynamic Blocks Opens the New Features Workshop dialog box and
displays the Dynamic Blocks topic.

4
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

Close Block Editor Closes the Block Editor. You will be prompted to save
changes if you haven’t already done so.
Visibility Mode Toggles the visibility of geometry (BVMODE).
0=only visible geometry in the current visibility state will
be seen.
1=all geometry in the current visibility state will be seen,
but invisible geometry will be gray.
Make Visible Makes selected geometry visible in the current visibility
state.
Make Invisible Makes selected geometry invisible in the current visibility
state.
Manage Visibility States Opens the Visibility States dialog box so you can manage
visibility states.
Visibility States Lets you select the current visibility state from a drop-
down list.

How Objects are Displayed in the Block Editor


Parameters, actions, and their relationships (dependencies) are displayed in different ways in the Block Editor.
You can specify settings for some of these elements.
Parameters
In the Block Editor, most parameters look like dimensions. If you create a value set (a range of values) for a
parameter, tick marks are shown at the locations of those values. You can also specify the parameter color,
parameter text and arrow size, parameter font, grip color, and control the display of tick marks for parameters.
When you use a visibility parameter in your block definition, you can specify which geometric objects are invisible
for a given visibility state.
Actions
An action displays its name and icon (a lightning bolt) in the Block Editor. You can specify the text size and color
for actions in the Block Editor.
Grips
You can specify the grip size and color for display in the Block Editor. This does not affect the size and color of
grips in a block reference in a drawing.
Dependencies
When you select a parameter, grip, or action in the Block Editor, its associated objects, or dependencies, are
highlighted. This is called dependency highlighting. You can turn dependency highlighting on or off.
Selected object in the Block Editor Objects that are dependency highlighted
Parameter Associated grips and actions
Grip Associated parameter and actions
Action Associated parameters, grips, and selection set
(geometry)

The Basics of Defining a Dynamic Block


You add dynamic elements to a block definition in the Block Editor. In addition to geometry, a dynamic block
generally includes one or more parameters and one or more actions.

5
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

Parameters define custom properties for the dynamic block by specifying things like position, distances and
angles for geometry in the block. They are identified on screen by a blue grip. When you add a parameter to a
dynamic block definition, grips are added to key points of the parameter. Key points are the parts of a parameter
that you use to manipulate the block reference. The shape of the grip varies based on the type of parameter, and
each type of parameter supports only certain types of actions. Properties of parameters can be set to specify
increments as well as minimum and maximum values. A lookup parameter is used to assign multiple sizes to a
specific block. A visibility parameter is used to assign multiple appearances to a block, such as font, side, or plan
views.
Parameter Type Grip Supported Actions Description
Move, Stretch Defines an X and Y location in the drawing. In the Block
Point Editor, looks like an ordinate dimension.
Move, Scale, Stretch, Shows the distance between two anchor points.
Linear Array Constrains grip movement along a preset angle. In the
Block Editor, looks like an aligned dimension.
Move, Scale, Stretch, Shows the distance between two anchor points and
Polar Polar Stretch, Array displays an angle value. In the Block Editor, looks like an
aligned dimension.
Move, Scale, Stretch, Shows the X and Y distances from the base point of the
Array parameter. In the Block Editor, displays as a pair of
XY
dimensions.
Rotate Defines an angle. In the Block Editor, displays as a circle.
Rotation
None (the action is Defines an X and Y location and an angle. An alignment
Alignment
implied and parameter always applies to the entire block and needs no
contained within the action associated with it. An alignment parameter allows
parameter) the block reference to automatically rotate around a point
to align with another object ion the drawing. An alignment
parameter affects the rotation property of the block
reference. In the Block Editor, looks like an alignment line.
Flip Flips objects. In the Block Editor, displays as a reflection
Flip line. Objects can be flipped about this reflection line.
Displays a value that shows if the block reference has
been flipped or not.
None (the action is Controls the visibility of objects in the block. A visibility
Visibility implied and parameter always applies to the entire block and needs no
contained within the action associated with it. In a drawing, you click the grip to
parameter) display a list of visibility states available for the block
reference. In the Block Editor, displays as text with an
associated grip.
Lookup Defines a custom property that you can specify or set to
Lookup evaluate a value from a list or table you define. It can be
associated with a single lookup grip. In the block
reference, you click the grip to display a list of available
values. In the Block Editor, displays as text with an
associated grip.
None Defines a base point for the dynamic block reference
Base Point relative to geometry in the block. Cannot be associated
with any actions, but can belong to an action’s selection
set. In the Block Editor, displays as a circle with
crosshairs.

6
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

Actions define how the geometry of a dynamic block reference will move or change when the custom properties of
a block reference are manipulated in a drawing. They are identified on screen by a lightning bolt. A dynamic block
usually contains at least one action.
In general, when you add an action to a dynamic block definition, you must associate the action with a parameter,
a key point on the parameter, and geometry. A key point is the point on a parameter that drives its associated
action when edited. The geometry associated with an action is called the selection set.
You can assign more than one action to the same parameter and geometry, but you should not assign two or
more of the same type of actions to the same key point on a parameter if both actions affect the same geometry.
Each type of action can be associated with specific parameters.
Action Type Parameter

Move Point, linear, polar, XY

Linear, polar, XY
Scale
Point, linear, polar, XY
Stretch
Polar
Polar Stretch
Rotation
Rotate
Flip
Flip
Linear, polar, XY
Array
Lookup
Lookup

Practical Examples
Use what you’ve learned to add dynamic action to some typical blocks.
Adding a Point Parameter
You can add point parameters to existing blocks so that they will have multiple insertion points. Then attach a
move action to each point parameter. To make this work properly, you should add a basepoint parameter (so that
when you move the block, the basepoint moves also).
1. Open the block in the Block Editor by doing one of the following:

• In the Standard toolbar, click the Block Editor button


• In the drawing, double-click on the block
• In the pull-down menu, click Tools > Block Editor
• At the command line, type BEDIT
2. When AutoCAD displays the Edit Block Definition dialog box, select
the block you want to modify and then click OK.
Note that you can also select the block you want to edit, right-click,
and then choose Block Editor from the shortcut menu.
3. On the Parameters tab of the Block Authoring Palette, click the Base
Point parameter. When AutoCAD prompts you to Specify
parameter location:, select the origin (0,0).

7
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

4. On the Parameters tab, click the Point parameter. When AutoCAD prompts you to Specify parameter
location or [Name/Label/Chain/Description/Palette]:, locate a new point (in this case, the
center of the table).
NOTE: Notice that when you place a parameter that requires an action, an exclamation symbol appears
adjacent to the parameter. This indicates that the parameter requires an associated action that has not yet
been attached. The base point parameter does not require an action, so no exclamation symbol appeared for
that parameter.
5. When AutoCAD prompts you to Specify label location:, click to position the label.
6. On the Actions tab, click the Move action. When AutoCAD prompts you to Select parameter:, select
the position parameter you just added (by clicking on the label).
7. When AutoCAD prompts you to Select objects:, select all of the objects (be sure to select the
position parameter you just added as well as the base point parameter you added in step 3).
8. When AutoCAD prompts you to Specify action location or
[Multiplier/Offset]:, click to position the action location.
9. On the Block Editor toolbar, click the Close Block Editor button. When
AutoCAD displays an alert box asking if you want to save the block
definition and update block references, click Yes.
Now test your block by inserting it into the current drawing. Press the CTRL key to cycle through the possible
insertion points. Insert the block and then click on one of the grips and try moving the block.
Adding a Stretch Parameter
You can add a stretch parameter to the block so that you can change the size of the table. First, add a linear
parameter. Then attach a stretch action to the linear parameter.
1. Open the Block Editor to edit the block from the previous example.
2. On the parameters tab, click the Linear parameter. When AutoCAD prompts you to Specify start
point or [Name/Chain/Description/Base/Palette/Value set]:, select the left side of the
table.
3. When AutoCAD prompts you to Specify endpoint:, select the right side of the table.
4. When AutoCAD prompts you to Specify label location:, click to place the parameter.
5. On the Actions tab, click the Stretch action. When AutoCAD prompts you to Select parameter:,
select the linear parameter you just added.
6. When AutoCAD prompts you to Specify parameter point to associate with action or
enter [sTart point/Second point] <Second>:, press ENTER.
7. When AutoCAD prompts you to Specify first corner of stretch frame or [CPolygon]:,
select the opposite corners of a crossing window so that the entire right side, top, and bottom edges of
the table are selected.
8. When AutoCAD prompts you to Select objects:, use a crossing window to select the right, top, and
bottom edges of the table.
9. When AutoCAD prompts you to Specify action location or [Multiplier/Offset]:, click to
position the action location.
10. Repeat steps 5 through 9 to add a stretch action attached to the grip at the other end of the linear
parameter. Then close the Block Editor and save the changes you made to the block.
Now test your block again. When you select the block, notice the new stretch grips. Click on one of the new grips
and try stretching the length of the table.

8
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

Set Incremental Distance Values for the Table Size


When you stretch the length of the table, notice that the table can take on any length. In reality, the table is
probably sold only in specific incremental lengths, so you need to revise the block to constrain the stretch
operation so that the table can only be stretched to specific lengths.
1. Open the Block Editor to edit the block from the previous example.
2. Select the linear parameter (labeled “Distance”), right-click, and select Properties from the shortcut menu.
3. In the Properties palette, set the following properties:
Dist type: Increment
Dist increment: 2’-0”
Dist minimum: 2’-6”
Dist maximum: 12’-6”
4. Close the Block Editor and save the changes you made to the block.
Now test your block again. When you stretch the block now, notice that the table
can only be stretched to a length that varies between 2’-6” and 12’-6”, in 2-foot
increments.
Adding an Array Parameter
In a dynamic block reference, an array action causes the associated objects to copy
and array in a rectangular pattern when the associated parameter is edited through
a grip or the Properties palette. In the case of the table block, if you included chairs as part of the table block
definition, you could then use an array action to add more chairs when the table is stretched.
In the Block Editor, four instances of a chair block have been added to the conference table. Before adding the
array action, you should modify the move and stretch actions to include the chair as part of the selection set for
those actions.
1. In the Block Editor, double-click on the move action. When AutoCAD prompts you to Select object
to add to action set or [Remove]:, select the four chairs, and then
press ENTER.
2. Double-click one of the stretch actions. When AutoCAD prompts you to
Specify first corner of stretch frame or [CPolygon]:, select
the opposite corners the stretch frame so that the chair added at that end is
now within the frame.
3. When AutoCAD prompts you to Select object to add to action set
or [Remove]:, select the chair at that end of the table, and then press
ENTER.
4. Repeat steps 1 through 3 for the other stretch action.
5. Then close the Block Editor and save the changes you made to the block.
Now test your block. Notice that when you move the block, the chairs move with the table, but if you stretch the
length of the table, the chairs may not behave properly. You’ll solve that by adding an array parameter.
6. In the Block Editor, on the Actions tab, click the Array action. When AutoCAD prompts you to Select
parameter:, select the linear parameter.
7. When AutoCAD prompts you to Select objects:, select the two chairs on either side of the table (but
not the ones on the ends), and then press ENTER.
8. When AutoCAD prompts Enter the distance between columns (|||):, specify a distance of
24-inches.

9
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

9. When AutoCAD prompts you to Specify action location:, click to position the action location.
10. Close the Block Editor and save the changes you made back to the block.
Now test your block again. Notice now when you stretch the block, additional chairs are automatically added or
removed as needed.

A Dynamic Door
For our next example, we’ll create a dynamic door block similar to the one included as a sample dynamic block in
the Architectural tool palette. Although it looks fairly simple at first glance, it’s a bit more complex to create.
The object is to create a block that can be any width from 2’-0” to 4’-0”, can fit into a wall of any thickness, can
have different hinge points, can swing either into or out from a room, and can appear with the door either open at
a 45°or 90° angle. Start by drawing a 3’-0” door showing both the 45°and 90° swing angle
conditions. Door jambs have also been created. You can either save this as a new block and
then edit it using the Block Editor, or create this geometry within the Block Editor.
Start by adding all of the necessary parameters:
1. In the Block Editor, add a base point parameter at the hinge location.
2. Add a flip parameter at the midpoint of the door opening. (Tip: Move the grip to a different
location.)
3. Add a flip parameter at the midpoint of the door jamb. (Tip: Move the grip to a different location.)
4. Add a linear parameter to the width of the door.
5. Select the linear parameter you just added, right-click, choose Grip Display from the shortcut menu, and
change the number of grips so that only one grip is displayed. Also set
the following properties:
Dist type: Increment
Dist increment: 2”
Dist minimum: 2’-0”
Dist maximum: 4’-0”
6. Add a linear parameter to the thickness of the wall and change the grip
display to show only one grip.
Now start adding the necessary actions. Start with the scale action to change
the radius of the door swing arcs:
1. On the Actions tab, select the Scale action. When prompted, select
the linear parameter defining the width of the door.
2. When prompted to select objects, select the two door swing arcs
(both the 45° and 90° swings) and the flip state at the midpoint of the
door width. Then specify a location for the action.

10
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

Next, add a stretch action for the 90° opening.


1. On the Actions tab, select the Stretch action. When
prompted, select the same linear parameter as
before.
2. When prompted to specify a parameter point to
associate with the action, press ENTER.
3. When prompted to specify the stretch frame,
indicate a small window around the end of the door
away from the hinge.
4. When prompted to select objects, select the door.
Then specify a location for the action.
5. Select the stretch action you just added. In the
Properties palette, change the Angle Offset value
to 90°. Change the Action Name to Stretch 90.
Repeat the previous 5 steps for the 45° angle door. When you change the properties for this stretch action,
change the Angle Offset value to 45° and change the Action Name to Stretch 45.
Next, add a stretch action for the width of the door opening:
1. On the Actions tab, select the Stretch action. When prompted, select the same linear parameter as
before.
2. When prompted to specify a parameter point to associate with the action, press ENTER.
3. When prompted to specify the stretch frame, indicate a small window around the jamb at the swing side
of the door.
4. When prompted to select objects, select just the jamb at the swing side of the door. Then specify a
location for the action.
Add a flip action to swap the hinge and latch sides of the door:
1. On the Actions tab, select the Flip action. When prompted, select the flip parameter (flip state) at the
midpoint of the door opening.
2. When prompted to select objects, select everything. Then specify a location for the action.
Next, add a stretch action to adjust the thickness of the wall:
1. On the Actions tab, select the Stretch action. When prompted, select the linear parameter for the wall
thickness.
2. When prompted to specify a parameter point to associate with the action, press ENTER.
3. When prompted to specify the stretch frame, indicate a window crossing the door jambs, with the ends of
the jambs away from the hinge point inside the crossing window.
4. When prompted to select objects, select just the two door jambs. Then specify a location for the action.
Next, add a scale action to adjust the flip axis so that it remains at the midpoint of the thickness of the wall
regardless of how thick the wall becomes:
1. On the Actions tab, select the Scale action. When prompted, select the same linear parameter for the wall
thickness.
2. When prompted to select objects, select just the flip action that will flip the door swing about the midpoint
of the wall thickness. Then specify a location for the action.
Finally, add a flip action to reverse the direction of the door swing:

11
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

1. On the Actions tab, select the Flip action. When prompted, select the flip parameter at the midpoint of the
wall thickness.
2. When prompted to select objects, select everything. Then specify a location for the action.
3. Close the Block Editor and save your changes.

Now you’re ready to test out your dynamic door block. Insert the door into a wall opening in your drawing. Try
adjusting the width of the door and the thickness of the wall to match those in your drawing. Click on the flip grips
to change the hinge position and reverse the swing of the door. When you are satisfied that everything works
correctly, you’re ready to modify the dynamic block so that you can select whether you want to view the door
opened at a 45° or 90° angle.
Adding Visibility States
You can use visibility states to make geometry visible or invisible in a dynamic block. One block can have any
number of visibility states.
Using visibility is a powerful way to create a block that has many different graphical representations. You can
easily change a block reference that has different visibility states without having to find a different one to insert in
your drawing.
In the case of the dynamic door block you just created, you can add visibility states to show the door open at
either a 45° or 90° angle.
To add visibility states to control the appearance of the block:
1. Open the dynamic door block in the Block Editor.
2. On the parameters tab of the Block Authoring palette, click the Visibility parameter. When AutoCAD
prompts you to Specify parameter location or [Name/Label/Description/Palette]:,
click to place the parameter.
3. On the Block Editor toolbar, click the Manage Visibility States button. AutoCAD displays the Visibility
States dialog box.
4. In the Visibility States dialog box, click Rename and change the
name of the default visibility state to Open 90°.
5. In the Visibility States dialog box, click New and create a new
visibility state called Open 45°. Then click OK to close the Visibility
States dialog box. Open 45° should be the current visibility state
(shown in the Visibility States pull-down on the Block Editor
toolbar).

12
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

6. On the Block Editor toolbar, click the Make Invisible button. When AutoCAD
prompts you to Select objects:, select the version of the door that is
open at a 90° angle as well as its associated door swing. Notice that the
objects you selected appear grayed out.
7. On the Block Editor toolbar, select Open 90° from the Visibility States pull-
down.
8. On the Block Editor toolbar, click the Make Invisible button. When AutoCAD
prompts you to Select objects:, select the version of the door that is
open at a 45° angle as well as its associated door swing.
9. Close the Block Editor and save your changes.
Test your dynamic block again. Notice the new grip that enables you to control the visibility of the door. You can
easily switch between a 45° door swing and a 90° door swing.
Using Lookup Tables to Assign Data to Dynamic Blocks
You can use a lookup table to define properties for and assign property values to a dynamic block. Using lookup
tables is a powerful way to associate parameter values for the dynamic block reference with other data that you
specify (for example, a part number). You can subsequently extract this data from block references in a drawing
just as you would extract block attribute data.
When completed, the lookup table assigns property values to the dynamic block reference based on how it is
manipulated in the drawing. Or, you can change how the block reference is displayed in the drawing by changing
the value of a lookup property of the block reference through a lookup grip or the Properties palette, a process
referred to as reverse lookup.
For this example, you will create a fluorescent light fixture. Open the Block Editor and create a 2’-0” x 4’-0” fixture
similar to the one shown below.

1. Add a linear parameter for the length and a second linear parameter for the width.
2. Change the number of grips displayed to 1 for both of the linear parameters.
3. Select the linear parameter for the length of the fixture. In the Properties
palette, under Property Labels, change the Distance label to Length.
4. Under Value Set, change the Dist Type to List. Then in the Dist Value List,
click the button. In the Add Distance Value dialog box, type each possible
length distance value (2’-0”, 4’-0”, and 8’-0”), clicking the Add button after
you enter each value, to add them to the list. When finished, click OK.
5. Repeat steps 3 and 4 for the width of the fixture, changing the label to Width
and entering width values of 1’-0”, 2’-0”, and 4’-0”.

13
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

NOTE: You can also enter the length and width values in the Properties palette. Simply use a comma to separate
each value in the list.
Now you’re ready to add the necessary actio5ns.
1. Add a Stretch action to the length parameter. (Tip: After you create it, in the Properties palette, change its
Action Name to Stretch Length.)
2. Add a Stretch action to the width parameter. (Tip: Change its Action Name to Stretch Width.)
You need to add Move actions to the circle so that when you stretch the length or width of the fixture, the circle
moves half the distance of the stretch action so that it remains centered. To do this, you’ll use a multiplier.
3. On the Actions tab, click Move. When prompted, select the Length parameter.
4. When prompted to specify the parameter point, press ENTER (to select the second point).
5. When prompted to select objects, select the circle.
6. When AutoCAD prompts you to Specify action location or [Multiplier/Offset]:, type M
and press ENTER.
7. When AutoCAD prompts you to Enter distance multiplier <1.0000>:, type .5 and press
ENTER. This will move the circle half the distance of the stretch action.
8. Specify the action location. After you place the action, use the Properties palette to change the Action
Name to Move Circle X.
9. Repeat steps 3 through 8 to add another Move action to adjust the location of the circle when you change
the width of the fixture. Then change its Action Name to Move Circle Y.

At this point, it’s a good idea to test your dynamic block to make sure it behaves as expected before you add the
Lookup capabilities.
Adding the Lookup Table
After you’ve drawn the geometry and added the appropriate parameters and actions required for the dynamic
block’s functionality, you are ready to add the lookup table to the block definition.
A blank lookup table is created when you add a lookup parameter to a dynamic block definition and then add a
lookup action and associate it with the lookup parameter.
The lookup table is displayed in the lookup table dialog box.
1. Open the light fixture block in the Block Editor.
2. On the Parameters tab, click the Lookup parameter
and specify the parameter location.
3. On the Actions tab, click the Lookup action. When
AutoCAD prompts you to Select parameter:,
click on the Lookup parameter you just added, and
then specify the action location.
As soon as you specify the action location, AutoCAD
displays the Property Lookup Table dialog box.

14
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

4. Click the Add Properties button to display the Add Parameter Properties
dialog box.
5. Under Property Type, make sure the Add Input Properties radio button is
selected. Then select both of the parameters and click OK. The Length
and Width properties are both added to the Property Lookup Table.
6. Under Input Properties, click in the first field in the Length column. Notice
that the drop-down list displays the length values you previously entered
when you set up the list values for the Length parameter. Select 2’-0”.
7. In the Width column, click in the cell. This drop-down list displays the width
values you previously defined. Select 1’-0”.

8. Each time you add a pair of length and width values, AutoCAD adds another line to the lookup table.
Repeat steps 6 and 7 to define the following eight possible fixture sizes:
2’ x 1’ 4’ x 1’ 8’ x 1’
2’ x 2’ 4’ x 2’ 8’ x 2’
4’ x 4’ 8’ x 4’
9. After you add all eight possible fixture sizes to the lookup table, add names to the Lookup Properties
column on the right side of the dialog box. Then click OK.

10. Select the Lookup parameter. In the Properties palette, change its Lookup Label to Size.

15
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

At this point, save your changes, close the Block Editor, and test your block. The block doesn’t behave any
differently than it did than before you added the lookup table. To complete the process, you need to enable
reverse lookup.
Enabling Reverse Lookup
When you enable reverse lookup, AutoCAD adds a lookup grip to the dynamic block reference. When you click
this grip, a drop-down list of the lookup values for that lookup property (in this case, the size) is displayed. When
you select a value from the list, the corresponding input property values are assigned to the block reference.
NOTE: To enable reverse lookup for a lookup property, each row in the lookup table must be unique. After you
add properties and values to the table, you can check for errors and empty cells by clicking the Audit button in the
Property Lookup Table dialog box. You can also use the shortcut menu options to insert, delete, or reorder rows.
If you leave a cell empty in the lookup properties column and the cell has an associated input property in the
same row, the lookup property will not allow for reverse lookup.
To enable reverse lookup:
1. Open the light fixture in the Block Editor.
2. Open the lookup table. (Tip: You can double-click on the lookup
action or select it and then click in the Lookup Table cell in the
Properties palette.)
3. In the Properties Lookup Table dialog box, at the bottom of the
Lookup Properties column, change the table from Read Only to
Allow Reverse Lookup. Then click OK.
Close the Block Editor, saving your changes, and test your dynamic block. Notice that now, when you select an
instance of the block in your drawing, AutoCAD displays a lookup grip.

Adding Additional Parameters


You can add additional parameters and include them as part of the lookup properties for your block. The
parameters in dynamic blocks can be included when you extract attributes. For example, you might want to
include a model number or cost for each possible light fixture size.
1. Open the light fixture in the Block Editor.
2. On the Parameters tab, add another Lookup parameter. In the Properties palette, change its Lookup
Label and Parameter Name to Model Number.
3. Open the lookup table. Click the Add Properties button.
4. In the Add Parameter Properties dialog box, under Property Type, select the Add Lookup Properties radio
button.
5. In the Parameter Properties list, select the Model Number parameter and then click OK. The Model
Number is added to the lookup table.

16
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

6. In the Property Lookup Table dialog box, in the new Model Number column, specify a model number for
each of the eight light fixtures. Leave the lookup property in the final row set to Read Only. Click OK.
Note that if you had enabled reverse lookup for the model number, AutoCAD would have added a second lookup
grip. You could then select the size of the light fixture either by selecting its size from the size lookup or by
selecting its model number from the model number lookup. By leaving the model number set to Read Only,
AutoCAD displays only the size lookup grip. But when you select a particular size, the model number associated
with that light fixture is assigned to that instance of the block as well.
As a final exercise, insert several instances of the light fixture block. Use the new lookup grip to change the size
of some of the light fixtures so that you have several instances of fixtures in a variety of sizes. Then use
AutoCAD’s Attribute Extraction wizard to create a table containing the Model Number, Size, and quantities of
each fixture.

Final Notes
By default, when you double-click on a block, AutoCAD opens the block in the Block Editor. If you don’t want the
block editor to open, you can lock it. To do so, change the value for the new BLOCKEDITLOCK system variable.
By default, BLOCKEDITLOCK has a value of 0 (open the Block Editor). If you change the BLOCKEDITLOCK
value to 1, when you double-click on a block, AutoCAD will open it using the REFEDIT command, to simply edit
the block definition in-place. (Note that if the block contains attributes, double-clicking the block reference opens
the Enhanced Attribute Editor.)
TIP: CAD Managers may want to lock the Block Editor so that users who shouldn’t or don’t have authority to
modify or update blocks don’t have access to the Block Editor. Of course, if they know about the
BLOCKEDITLOCK system variable, they could unlock the Block Editor.
Dynamic blocks offer a lot of flexibility to the way you can use blocks, but they are definitely more difficult to define
than the blocks you’re accustomed to using. You may not want or need to use dynamic blocks for every block, but
they will help you simplify your block libraries because they give you the option of creating a single block to
represent many usage scenarios.
Remember that when you start to create your own dynamic blocks, take things one step at a time. Plan out what
you need the block to do—how you want it to respond. After placing parameters and actions, test the behavior of
the block. Remember that multiple actions can be applied to the same parameter and that you can control the
way actions behave (such as constraining their angle or size increments). Keep in mind that the order in which
you do things can make a difference. With practice, you’ll soon be creating dynamic blocks with the best of them.
Go dynamic!

17
Go Dynamic – How to Create Dynamic Blocks in AutoCAD® 2006

Reference Materials
Like any new functionality in AutoCAD, dynamic blocks add a host of new commands and system variables,
which are summarized in the following tables.
Commands Associated with Dynamic Blocks
Command Purpose
BACTION Adds an action to a dynamic block definition
BACTIONSET Specifies the selection set of objects associated with an action in a dynamic block definition
BACTIONTOOL Adds an action to a dynamic block definition
BASSOCIATE Associates an action with a parameter in a dynamic block definition
BAUTHORPALETTE Opens the Block Authoring Palettes window in the Block Editor
BAUTHORPALETTECLOSE Closes the Block Authoring Palettes window in the Block Editor
BCLOSE Closes the Block Editor
BCYCLEORDER Changes the cycling order of grips for a dynamic block reference
BEDIT Opens the Edit Block Definition dialog box and then the Block Editor
BLOOKUPTABLE Displays or creates a lookup table for a dynamic block definition
BPARAMETER Adds a parameter with grips to a dynamic block definition
BSAVE Saves the current block definition
BSAVEAS Saves a copy of the current block definition under a new name
BVHIDE Makes objects invisible in the current visibility state or all visibility states in a dynamic block definition
BVSHOW Makes objects visible in the current visibility state or all visibility states in a dynamic block definition
BVSTATE Creates, sets, or deletes a visibility state in a dynamic bloc
RESETBLOCK Resets one or more dynamic block references to the default values of the block definition

System Variables Associated with Dynamic Blocks


System Variable Purpose
BACTIONCOLOR Sets the text color of actions in the Block Editor
DEPENDENCYHIGHLIGHT Controls whether or not dependent objects are dependency highlighted when a parameter, action, or grip
is selected in the Block Editor
BGRIPOBJCOLOR Sets the color of grips in the Block Editor
BGRIPOBJSIZE Sets the display size of custom grips in the Block Editor relative to the screen display
BLOCKEDITLOCK Disallows opening of the Block Editor and editing of dynamic block definitions
BLOCKEDITO Reflects whether or not the Block Editor is open
BPARAMETERCOLOR Sets the color of parameters in the Block Editor
BPARAMETERFONT Sets the font used for parameters and actions in the Block Editor
BPARAMETERSIZE Sets the size of parameter text and features in the Block Editor relative to the screen display
BVMODE Controls how objects that are made invisible for the current visibility state are displayed in the Block Edito
GRIPDYNCOLOR Controls the color of custom grips for dynamic blocks

18

You might also like