Gang-offsets one source: an AutoCAD curve or a Civil 3D alignment, to a whole plan-section template in a single shot: up to 6 parallel copies per side, each row a distance + its own layer, fired out from a reusable template you build once.
Source centerline
Left offsets
Right offsets
ROW
C-PROP-ROW
Distance dimension
What it does, per source
- Template: Left and Right columns, up to 6 rows each, every row a distance + layer. A blank or zero distance turns the row off.
- Curves: polylines, lines, arcs, circles, splines offset directly via
GetOffsetCurves; the offset keeps the source type (arc→arc). - Alignments: offset to static polylines, the centerline is sampled (arcs/spirals densified into a fine polyline) and the alignment itself is left untouched.
- Multi-select: pick any number of sources; the whole template applies to each.
- Side is resolved per source from the curve's start direction; on a closed curve left/right reads as inside/outside.
Settings & options
- Distance mode (radio): From the original (each measured from source) or From the previous (distances stack; a disabled middle row contributes nothing and doesn't shift the stack).
- Copy Left → Right: mirrors the left column into the right for symmetric sections.
- Auto-create layers: each offset lands on its row's layer (created when missing unless toggled off); a blank layer leaves it on the source's layer.
- Template (both sides + mode + auto-create) persists to
settings.json; env varVDC_OFFSET_SETTINGS, default%APPDATA%\VDC\MultiOffset\settings.json. - Schema-tolerant load pads/truncates any row list to 6 per side; keep several sections by pointing the env var at different files.
Dialog

VDCOFFSETWhen to use it
- Building a road cross-section's parallel lines (EOP, ROW, sidewalk) in one step.
How to run it
- Run VDCOFFSET and select the curve or alignment.
- Enter the offsets per side, choosing Absolute or Cumulative distances and the layer per offset.
- Review the parallel copies created.
Options
- Absolute vs Cumulative: distances measured from the source, or added one to the next.
- Per-offset layer: each offset lands on its own layer.
Watch out for
- Offsetting an alignment produces static polylines - they do not update if the alignment changes.
- On a plain-AutoCAD seat an alignment in the selection is skipped with a note - everything else offsets normally.
Related: Place Hydrants · Station-Offset Table