Parametric Part Families
Preview
A parametric part family is one asset that can take many sizes. Instead of one GLB per length, width or roller pitch, the family carries:
- the base parts, each exactly once (for a roller conveyor: profile, roller, guide, strip),
- a short list of parameters with units and allowed values (for example width 420 / 620 / 840 mm, length 500–4320 mm),
- a small rule part that turns the parameter values into a variant: it duplicates, stretches, bends and positions the base parts and adds snap points, drives and transport surfaces.
When you change a value, realvirtual builds the new variant in a fraction of a second. This does not require SolidCraft, CONNECT or any CAD program. The family is a normal GLB file you can share.
Change parameters in the Editor
Section titled “Change parameters in the Editor”Open the family asset in the Editor and select the family node. The Inspector shows the ParametricComponent section with one row per parameter. Number fields use the parameter’s unit and range. Fixed sizes appear as a drop-down list, and switches appear as checkboxes.
- Change a value and confirm it (Enter or leave the field).
- The variant below the family is rebuilt. This is one undo step — Ctrl+Z brings the previous variant back.
- Reset returns all values to the defaults of the family.
- Save the asset. The values you saved are the variant every layout gets by default, without running any rules.
Change parameters per placement
Section titled “Change parameters per placement”In the Layout Planner, every placement of a family has its own values. Select a placed family and open the Inspector: the same parameter rows appear.

- A change rebuilds only this placement. The other placements of the same family keep their values.
- Placements with equal values share one variant, so ten identical conveyors cost as much as one.
- Every change is one undo step in the layout.
- While the simulation runs, parameters cannot change. A change you make then is shown as Applied when the simulation stops and takes effect at the next stop.
Edit quickly in the scene
Section titled “Edit quickly in the scene”You do not need the Inspector for a quick change.
- Hover a parametric family: a tooltip shows its name, family and the first values (for example L 3250 · B 2200 · H 1810 mm) and the hint Click to edit.
- Click the family: the tooltip is pinned and shows up to four parameters, each with a number field and a slider. Drag the slider — the geometry follows live while you drag. When you release, the change is committed as one undo step (Ctrl+Z undoes the whole drag). Esc while dragging discards the preview.
- Use Open in window for longer work. Each placement has its own window; several windows can stay open at the same time, and a window does not follow the selection.
Number fields and sliders:
- The slider snaps to the parameter’s step. Arrow keys move by one step, Shift+Arrow or Page Up / Page Down by the coarse slider step (10 steps if the family defines none), Home / End jump to the lowest and highest valid value.
- A value outside the range is marked red with the reason (for example max. 12000 mm) and is not applied. A value off the step grid is shown with the value it will become (→ 3250) before it is applied. Nothing is clamped silently.
- A changed value shows a dot and a reset button on its row. While a new variant is being built, the row shows a spinner; you can keep typing. Errors are shown on the row.
- Code fingerprint, cache and build statistics are under Advanced.
Families can add SliderStep, Group, Description and Advanced to a parameter to control the coarse step, grouping, help text and placement under Advanced.
Example: the Loading Gantry
Section titled “Example: the Loading Gantry”The Loading Gantry in the realvirtual library (Pallet Handling) is a parametric family with three parameters:
| Parameter | Meaning | Range | Default |
|---|---|---|---|
| L | Length — spacing of the posts along X | 2000–12000 mm, step 250 | 3000 |
| B | Track width — spacing of the rails along Y | 1600–4000 mm, step 100 | 2200 |
| H | Clearance under the gripper in the home pose | 1200–2500 mm, step 10 | 1810 |
The rule builds the posts, rails, racks, the bridge and the Z column from a handful of catalogue parts. It also adds the three servo axes X, Y and Z with travel limits that follow the dimensions, and a suction gripper (Grip) with a pick sensor. A value outside the range or off the step is corrected to the nearest allowed one when you confirm it (L = 3130 becomes 3250).

The project Development ships a ready-made demo, Demo Parametric Gantry: two gantries from the library with different values, each above a short pallet line.
- Open the demo in the Layout Planner.
- Select one gantry and change L, B or H in the Inspector (stop the simulation first). Only this placement changes.
- Duplicate a gantry (Ctrl+D) or place another one from the library. Equal values share one variant; the duplicate keeps the values.
- Press Play and drive the axes X, Y and Z through their target positions; the gripper follows the Z column.
Known limitation: the drag chains are drawn at the middle of the travel and do not stretch with the axis movement.
Create a family (preview)
Section titled “Create a family (preview)”Create a family through the realvirtual MCP tools. Typically, an AI agent uses Claude Code or another MCP client connected through CONNECT. The agent guide web_help("parametric") describes the full workflow:
- Model the base parts once in SolidCraft and bring them into the Editor with the SolidCraft live link — or import any CAD whose parts follow the same rules.
- Create an empty node for the family and move the base parts below it.
- Define the family with the tool
web_editor_parametric_define(node path, parameter list, rule code). This builds the first variant. - Try the extreme values with
web_editor_parametric_setand check every variant, then reset to the default and save.
In a layout, an agent changes the values of a placement with the command layout.setParams, run through web_execute, for example {"id": "<placement>", "values": "{\"BF\":620,\"ML\":3240}"}.
Hand a family on
Section titled “Hand a family on”A family is one GLB file: base parts, parameters, rules and the default variant. Share it like any other asset. A family that places other families inside it (for example a line that is built from conveyor modules) takes those along when you export it with Share; importing that file puts the inner families into your project library automatically.
Limits
Section titled “Limits”- Preview: no menu entry yet; families are created through the MCP tools.
- The base parts are not editable from the variant. To change a base part you need the original CAD design; keep the
.solidcraftfile next to the project. - A part can only be stretched across a plain section. Holes, chamfers or threads across the stretch plane cause the error stretch-plane-invalid; the previous variant stays.
- Every variant is checked against fixed budgets (number of parts, vertices, computing time). If a value combination exceeds one, you see an error and the previous variant stays.
- Snap points point along the main axes. On a curve of 30°, 45° or 60° the exit snap can only be approximated; 90° is exact.
- A shared link opened directly in the browser (without importing it) cannot show inner families yet; the outer family appears, the inner ones are reported as missing.
See also
Section titled “See also”- SolidCraft Live Link — model the base parts live in CAD
- Library and Catalogs — place assets in a layout
- Snap Points — connect modules