How-to guide · how to add a stretch parameter to a dynamic block
How to add a stretch parameter to a dynamic block in AutoCAD
By Sumana Kumar · Published 22 Jun 2024 · Updated 31 Jan 2025
Stretching is the dynamic-block behaviour you will use most. It lets one block become any length — a table that grows from two-seater to ten, a cabinet run you drag to fit the wall, a door leaf you size to the opening — without ever drawing a second version. The mechanism is a Linear parameter that defines the direction and limits of the stretch, paired with a Stretch action that says which geometry follows the grip.
The care all goes into the stretch frame: the crossing window you draw to tell AutoCAD which vertices move and which lines simply lengthen. Frame it well and the block resizes cleanly; frame it carelessly and an edge tears off or a feature smears across the geometry. This guide walks through both the easy part and the part that needs attention.
We will also add increment limits so the block only snaps to sensible real-world sizes rather than any arbitrary length, which is what turns a rough resizable block into a professional one.
Step 1 — Open the block and plan the stretch direction
Run BEDIT and open the block. Before adding anything, decide which edge moves and which stays put. A table usually grows from one end while the other end stays anchored; a cabinet might grow from the right. The fixed end is where you will start the Linear parameter, and the moving end is where the grip will live.
Thinking this through first saves rework. If you start the parameter at the wrong end, the grip appears on the side you wanted to keep still, and stretching pushes the block away from its insertion point in a way that feels wrong every time you place it.
Step 2 — Add the Linear parameter
On the Parameters tab, click Linear. Click the fixed end first, then the moving end, then a point to set the dimension line offset. AutoCAD drops a parameter that looks like an aligned dimension with grips at both ends. By default both ends get a grip; you usually want only the moving end to be draggable.
Select the parameter, open Properties, and under Misc set the Number of Grips to 1. Now only the moving end has a custom grip, so the user can stretch one way from a stable anchor. Rename the parameter to something like Length while you are in Properties — clear names matter once a block has several parameters.
Step 3 — Add the Stretch action
Switch to the Actions tab and click Stretch. The prompts run in order: select the parameter (click the Linear one), select the parameter point to associate — pick the moving-end grip — then specify the stretch frame. Draw a crossing window around the part of the geometry that must move and lengthen. Vertices fully inside the frame translate; lines crossing the frame edge stretch.
Finally, select the objects to include in the action set; usually this is the same geometry your frame enclosed plus anything else that should travel with it. Close the action. A faint action marker appears near the parameter, which you can hide later.
Step 4 — Constrain it to real sizes with increments
A free stretch lets the block become any length, including silly ones like 1037 mm. To keep it honest, select the Linear parameter and in Properties set the Distance Type to Increment. Enter a distance increment (the step size), a minimum and a maximum. Now the grip snaps only to allowed lengths within the range.
Alternatively, set the Distance Type to List and type a fixed set of allowed values. List is ideal when the block should only ever be a handful of catalogue sizes; Increment is better when any value on a grid is acceptable. Either way the user can no longer drag the block to an impossible dimension.
Step 5 — Test the stretch carefully
Run BTESTBLOCK and drag the stretch grip. Watch the whole block, not just the edge you are pulling. The moving end should travel, the fixed end should hold still, and intermediate features should behave sensibly — a tabletop should lengthen while the far legs stay attached, not float. If a leg gets left behind, it was outside the action's selection set; if a leg smears, your stretch frame cut through it instead of fully enclosing or fully excluding it.
Close the test, fix the frame or the selection set, and test again. The increment snapping should also be obvious here — the grip should click to your allowed sizes rather than gliding freely.
Common stretch-frame pitfalls
The crossing window is where stretches go wrong. If a vertex you wanted to move sits just outside the frame, that corner stays put and the geometry distorts. If a feature you wanted to keep whole straddles the frame edge, it gets stretched and deformed. The fix is to zoom in and place the frame so every moving vertex is fully inside and every fixed feature is fully outside.
A second trap is forgetting that the stretch frame and the action's selection set are two different things. The frame decides how objects move; the selection set decides which objects the action touches at all. An object can be inside the frame yet excluded from the set, in which case it ignores the grip entirely. Keep both in mind and the resize will be clean.
Free download
Browse the full library — DWG & DXF, no signup.
Questions
Frequently asked
Why does only part of my block stretch?+
The geometry that did not move was either outside the stretch frame or not in the action's selection set. Re-open the Stretch action, redraw the crossing window to enclose the moving vertices, and make sure all the right objects are selected.
How do I stop the block stretching to silly lengths?+
Select the Linear parameter and set its Distance Type to Increment with a minimum, maximum and step, or to List with fixed allowed values. The grip will then snap only to sensible sizes.
Can I stretch in two directions from one block?+
Yes. Add a second Linear parameter on the other axis and a second Stretch action, or use two grips on one parameter. Each direction needs its own parameter-and-action pair.
Why does my block stretch the wrong way?+
The Linear parameter was drawn from the moving end to the fixed end. The grip lives at the parameter's second point, so start the parameter at the anchor and finish at the edge that should move.
Related downloads
Blocks for this guide
Popular blocks to download
Related categories
Related guides
How-to guide
How to Insert a DWG Block in BricsCAD
Insert a DWG block in BricsCAD — use the Blocks panel or INSERT command, fix unit scaling, place and rotate, then build a reusable BricsCAD library.
How-to guide
How to Insert a DWG Block in DraftSight
Insert a DWG block in DraftSight — use INSERTBLOCK or Design Resources, set units so it scales right, place it, and save it to a reusable library.
How-to guide
How to Insert a DXF in LibreCAD
Insert a DXF file in LibreCAD — why LibreCAD needs DXF not DWG, how to import or insert a block, fix the millimetre scaling, and place it cleanly on a layer.

