Vertical Variation Model Line Group
Read target elevations from the Z coordinates of a Revit model line group placed directly in the project — no Civil 3D, no linked DWG. Ideal when the design intent is modelled entirely within Revit.
Model Line Group Method
The Model Line Group method reads the world Z coordinates of model line endpoints from a Revit Group placed in the project, and uses those Z values as the target elevation at each corridor station. No external files, no Civil 3D connection needed.
This approach is useful when the road geometry is sketched or designed directly in Revit using model lines — for example when a bridge deck profile is approximated with a few 3D line segments in a structural model.
Full Form Layout
Five zones. Row A is the full-width Instances Family groupBox. Row B splits: Model Line Group groupBox (65%, with comboBox1 listing Revit Groups) and Parameter Direction (35%). RUN button in Row E stands alone.
Prepare the Model Line Group in Revit
Draw model lines at the correct 3D elevation
In a 3D view, draw model lines along the bridge centreline. Each vertex must be at its correct world X, Y, Z position — the Z values define the target elevation at each station.
Create a Revit Group from the model lines
Select all the model lines → Modify → Create Group → give the group a descriptive name (e.g. BridgeProfile_ModelLines_v3). The group must exist in the project before opening the Vertical Variation form — comboBox1 scans for Groups on load.
Select the Corridor Family & Parameter
Instances Family — comboBox5
Lists all AutoBRIDGE_Corridor families in the project. Selecting auto-populates comboBox4 with all length instance parameters.
Parameter Name — comboBox4
Pick the length parameter to write to. Must be Instance with no formula.
Parameter Direction — Up / Down
Up = grows upward from base Z. Down = grows downward. Preview updates on toggle.
Select the Model Line Group & Run
Model Line Group — comboBox1
Select the Revit Group name from the dropdown. AutoBRIDGE reads the Z coordinates of all model line vertices in the group and uses them as the target elevation profile. Selecting a group immediately updates the preview — the blue line traces the model line Z profile.
Verify that the blue segmented line represents the correct shape. Then click RUN.
RUN Pipeline
Read nested instances from corridor family
Opens the family for editing and retrieves all nested adaptive instances.
Read current base Z of each instance
Gets world Z of each instance LocationPoint.
Extract Z values from the model line group
Reads the Z coordinate of each vertex of all model lines inside the selected Revit Group, interpolated to the station spacing of the corridor instances.
Compute |model line Z − base Z| per instance
Absolute difference always positive.
Write delta to the selected parameter
Single transaction on the family document.
Delete old forms and rebuild
CreateLoftForm for each solid then void subcategory.
Reload family into the Revit project
Updated geometry immediately visible. Preview redraws.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| comboBox1 (Group) is empty | No Revit Groups in the project | Create a group from the model lines: select → Modify → Create Group. |
| Preview shows flat line at zero | Model lines were drawn in a plan view at the level elevation | Redraw the model lines in a 3D view to set correct Z values, then re-group. |
| Geometry inverted after RUN | Wrong Up/Down direction | Toggle direction and re-run. |