Fusion Guide
advanced9 min read

Design-for-Change Patterns

Sketch, reference, feature-order and naming patterns that keep a parametric model stable when dimensions and requirements change.

Design-for-Change Patterns#

Overview#

A model is "robust" if you can change its inputs by a large amount and it rebuilds without errors, with its proportions still right. Robustness is designed, not accidental. This page lists patterns that experienced Fusion users apply, and the anti-patterns they replace.

The common theme: reference stable things, express intent explicitly, keep each feature simple, and order features from fundamental to cosmetic.

Where to find it#

These patterns use ordinary tools:

  • Sketch constraints and dimensions (Sketch palette, D for dimension).
  • Construction planes, axes and points (Solid > Construct).
  • Project/Include (Sketch > Project / Include > Project), linked sketch geometry.
  • Change Parameters (Modify).
  • Timeline grouping and renaming.

Step by step#

Pattern 1: anchor sketches to the origin#

  1. Start sketches with geometry constrained to the origin point or origin axes, not floating.
  2. Use symmetry about an origin axis for centered parts: draw a rectangle, add a Symmetry constraint (or center-rectangle), and dimension the overall size once.
  3. Result: changing size grows the part about the origin in a predictable way.

Pattern 2: fully constrain sketches#

  1. Aim for fully constrained (black) geometry. Under-constrained geometry can jump unpredictably when parameters change.
  2. Use constraints (horizontal, vertical, tangent, equal, concentric, symmetric) before dimensions; use fewer dimensions.
  3. Check with a test edit: change a key dimension and watch the sketch. Drag-test any blue (free) elements.

Pattern 3: reference origin planes and construction geometry, not faces#

  1. Instead of sketching on the top face of an extrude, create an Offset Plane from the origin plane at box_h.
  2. Sketch on that plane. The sketch no longer depends on a face that may split or vanish.
  3. Use this for features at heights, mid-planes and datums.

Sketching on faces is fine for quick work; for design-for-change, prefer datums for anything structural.

Pattern 4: skeleton (layout) sketch#

  1. Make an early sketch that contains only key points, centerlines and critical dimensions (hole spacing, overall envelope).
  2. Name it "Layout".
  3. Sketch features on other planes by projecting geometry from the layout.
  4. To change the design, edit the layout.

Pattern 5: parameters for intent#

  1. Create user parameters for all values of intent: wall thickness, clearance, hole size, count.
  2. Express relationships with equations (boss_od = screw_d * 2.5).
  3. Use the same parameter everywhere the value applies.

Pattern 6: simple features in sensible order#

  1. Order: base body, major cuts, bosses and ribs, patterns, then fillets and chamfers, then cosmetic details.
  2. Fillets last so edge changes upstream do not break them.
  3. Shell before adding internal features that should stay solid, or vice versa, deliberately.

Pattern 7: pattern, don't copy#

  1. Use Rectangular/Circular/Path patterns driven by a quantity parameter.
  2. Pattern the feature, not the body, when you want pattern features to remain parametric (the Pattern Type in the dialog can be Features, Faces, Bodies or Components).
  3. Use mirror about origin planes for symmetric parts. Build half, mirror last.

Pattern 8: select by rule, not by pick#

  1. For fillets and chamfers, select entire faces (all edges of a face) or use tangent-chain selection, rather than hand-picking a dozen edges.
  2. If you must pick edges, pick them in a way that survives changes (edges of a stable face).

Pattern 9: separate bodies for separate intent#

  1. Model parts in their own components.
  2. Use joints for assemblies rather than moving things manually.
  3. Share parameters via Derive or Configurations rather than duplicating numbers.

Pattern 10: name and group#

  1. Rename key sketches, features, planes, and parameters.
  2. Group timeline stages.
  3. Comment parameters.

Options reference#

PatternReplacesBenefit
Origin-anchored sketchesFloating sketchesPredictable growth
Fully constrained sketchesLoosely dragged sketchesNo jumping
Offset planesSketching on facesNo face-dependency breaks
Layout sketchScattered dimensionsOne place to edit
Intent parametersMagic numbersOne source of truth
Late filletsEarly filletsFewer broken references
Parametric patternManual copiesCount becomes a variable
Face-based selectionsEdge pickingSurvives edge changes
Naming and groupingDefault namesFaster debugging

Tips and pitfalls#

Tip: After building, stress-test: change each key parameter to roughly half and double its value. Anything that breaks is a fragility you can fix now.

Tip: Avoid projecting geometry from late-stage features into early-stage sketches. References should point backward in the timeline only.

Warning: Do not add dimensions to fix a sketch that is wrong in intent. Over-constraint errors or conflicting constraints signal a design error; read them.

Warning: Projected geometry creates dependency. If you project the edges of a face and later delete the face, the sketch breaks. Project from origin or construction geometry when possible.

Warning: Heavy dependence on sketch-on-face references and manual edge picking is the single largest cause of broken timelines when users change early dimensions.

Anti-patterns to avoid:

  • One enormous sketch with every profile. It rebuilds slowly and is hard to edit.
  • "Phantom" dimensions: driven dimensions in grey that nobody reviews.
  • Hard-coded numbers for related features (two holes both typed as 5.2 mm).
  • Using Move/Copy tool on bodies to fix position instead of constraining sketches.
  • Deleting and redrawing geometry instead of editing it; this orphans references.

Making changes safely#

  1. Save a version.
  2. Change a parameter, not geometry.
  3. If something breaks, undo and use the repair routine in Timeline errors.
  4. When a change needs new features early in history, roll back and insert, then check later features.

Worked example: a flange that survives a 40 percent size change#

Take a flange with outer diameter flange_od = 100 mm, bore bore_d = 30 mm, bolt_circle_d = 80 mm, bolt_d = 9 mm, n_bolts = 6, thickness flange_t = 12 mm.

Derive every relationship rather than typing it.

  • Edge margin of a bolt hole: edge = (flange_od - bolt_circle_d) / 2 - bolt_d / 2. At the nominal size this is 10 - 4.5 = 5.5 mm. A common minimum is 1 times the hole diameter (9 mm), which already fails at nominal. Make bolt_circle_d = flange_od - bolt_d - 2 * edge_min with edge_min = 4 mm so it follows the outer diameter: 100 - 9 - 8 = 83 mm (hole centers 41.5 mm from the axis, leaving 4 mm of rim).
  • Spacing between neighbor holes: chord = bolt_circle_d * sin(180 deg / n_bolts). With 83 mm and 6 holes the chord is 41.5 mm. With 12 holes it is 21.5 mm, more than the 9 mm hole plus a 9 mm web, 18 mm, so 12 is feasible; 14 holes give 18.5 mm, barely; 16 holes give 16.2 mm and the holes crowd each other. Add a driven check parameter chord_ok = chord - 2 * bolt_d and keep an eye on its sign.
  • Hub height: hub_h = flange_t * 1.5; keeps the boss proportional.

Fillets. The flange needs a 3 mm fillet at the hub. If flange_od drops to 60 mm, the hub-to-rim face is only about 10 mm wide, so a 3 mm fillet still fits. Use min(3 mm; face_w / 4) to cap it, where face_w is a parameter you compute from the geometry. Note that multiple arguments in Fusion expressions are separated with a semicolon, not a comma.

Stress test. Change flange_od from 100 to 60 mm, and bore_d from 30 to 50 mm. At 60 mm outer diameter bolt_circle_d becomes 43 mm, so a 45 mm bore would swallow the bolt circle. The ring between bore and hole is (bolt_circle_d - bore_d) / 2 - bolt_d / 2; at nominal it is (83 - 30) / 2 - 4.5 = 22 mm, but it must stay above edge_min. Either limit the bore with min(bore_d; bolt_circle_d - bolt_d - 2 * edge_min) or document the valid range in the parameter comment.

Choosing references#

Reference typeStabilityWhen it is acceptable
Origin planes and axesExcellentAlways
Sketch lines in an early layout sketchVery goodSkeleton designs
Construction planes offset from the originVery goodHeights, mid-planes
Faces of the first extrudeGoodSimple parts
Faces created by fillets, shells, patternsPoorAvoid for sketches and joints
Edges picked one by onePoorOnly for quick work

If a reference must point at a face, choose one created by the earliest feature and check it again after a large change.

Constraint and dimension habits#

  • Use constraints for geometry relationships (equal, symmetric, concentric) and dimensions for sizes. A circle's diameter driven by bolt_d and its position driven by a center constraint is more stable than three redundant dimensions.
  • Dimension from the origin or a datum, not between two arbitrary points; chain dimensions accumulate tolerance and break when one value changes.
  • When a sketch turns over-constrained, read the message and remove the conflicting constraint rather than adding a driven dimension to quiet it.
  • A fully constrained sketch is a goal, not a rule; a decorative spline may stay free, but note it.

Stress-test protocol#

  1. Save a version.
  2. For each key parameter, set it to 50 percent, 150 percent and 200 percent of nominal, one at a time. Record any red icon and the first failing feature.
  3. Vary pairs that interact (wall and fillet radius, bolt circle and outer diameter) together.
  4. For counts, test the minimum (2 or 3), a typical value and the maximum that physically fits.
  5. After the tests, put a limits table in the parameter comments so the next user knows the safe range.

Failure modes and fixes#

SymptomCauseFix
Sketch jumps to a different place after an editUnder-constrained, free sketch elementAdd constraints or dimensions from the origin
Pattern holes overlap at high countsNo spacing checkAdd chord_ok check parameter and a limit
Fillet fails at small sizesFixed radius larger than the faceCap with min()
Later feature breaks after an early editIt referenced a face of a fillet or shellRebuild it on a construction plane
Layout sketch edits do nothingFeatures were not projected from the layoutProject the layout geometry into feature sketches
Part is correct but the intent is unclearNo names or commentsRename and comment

Practice exercise#

Build the flange above and prove it works across a wide range.

  1. Create parameters: flange_od 100 mm, bore_d 30 mm, flange_t 12 mm, bolt_d 9 mm, edge_min 4 mm, n_bolts 6, and derived bolt_circle_d = flange_od - bolt_d - 2 * edge_min. Check the nominal value (100 - 9 - 8 = 83 mm).
  2. Sketch from the origin: center circles for the outer diameter and bore, and one bolt hole on the bolt circle with a construction line to the origin. Extrude with flange_t.
  3. Add the bolt holes by a circular pattern of the cut feature, Quantity n_bolts.
  4. Create an Offset Plane at flange_t and sketch a hub circle of diameter bore_d + 20 mm on it; extrude hub_h = flange_t * 1.5.
  5. Fillet the hub with a radius of min(3 mm; flange_t / 3). Name every feature and group the timeline.
  6. Stress test: flange_od 100 to 60 mm; bore_d 30 to 45 mm; n_bolts from 3 to 12. Compute the chord at each count and note the count at which neighbor holes get within 2 mm of each other.
  7. Fix anything fragile and write the safe ranges into the parameter comments.

Expected result: a flange that rebuilds without errors over the documented range, plus a table of tested limits.

  • Timeline errors
  • User parameters and equations
  • Best-practice modeling workflows

Sources

Checked against these Autodesk help topics (opens autodesk.com):

Related pages