NEW ROOTS DEVELOPMENT
HomeTool GuideVDC SurveyAdjoiners + GIS

Landscape Buffer Yard

Resolves the landscape buffer required along every edge of the subject parcel : adjoiners + zoning from the county's live GIS, each perimeter stretch attributed to the neighbor it faces, widths from your editable buffer-rule matrix, drawn as color-coded strips + tags + a summary table + CSV. Runs in plain AutoCAD as well as Civil 3D.

Command VDCBUFFERYARD VDCBUFFER · VDC Survey tab › Adjoiners + GIS panel
Resolves the landscape buffer required along every edge of the subject parcel: adjoiners + zoning from the county's live GIS, each perimeter stretch attributed to the neighbor it faces, widths from your editable buffer-rule matrix, drawn as color-coded strips + tags + a summary table + CSV. Runs in plain AutoCAD as well as Civil 3D.
VDCBUFFERYARD, subject perimeter classified by adjacent zoning, buffers from your rule matrix SUBJECT Zoning C-2 ADJ: R-1 (residential) ADJ: C-2 (commercial) street / ROW frontage TYPE C, 30' BUFFER (ADJ: R-1) TYPE A, 10' BUFFER (ADJ: C-2) STREET BUFFER, 10' LANDSCAPE BUFFER SUMMARY, PARCEL 25700000004 (ZONING C-2) DRAFT, user-configured criteria; verify against the governing ordinance. EDGE FRONTAGE ADJ. ZONING BUFFER WIDTH LENGTH 1 Adjoiner R-1 Type C 30 118 2 Adjoiner C-2 Type A 10 119 3 Street/ROW , Street buffer 10 241 4 Adjoiner PDD NO RULE, VERIFY , 96 CSV report beside the drawing carries the same rows + provenance headers. The widths come from YOUR matrix, not the county %APPDATA%\VDC\BufferYard\presets.json, one rule set per jurisdiction: subject zoning × adjacent zoning → class + width. Patterns: exact (MRD3), prefix (R*), catch-all (*); most specific wins. Zoning: Horry (separate layer) + Brunswick (on parcel) publish it; Georgetown / NC OneMap do not, only * rules can match there. Shipped matrix is a generic sample marked (verify), enter the governing ordinance before relying on a single width.

What it does

  • One pull answers the buffer question: subject + adjoiners with zoning from the county's live GIS (same profiles as VDCADJLABEL), each perimeter stretch attributed to the neighbor whose boundary runs within the edge tolerance (default 2 ft); no neighbor that close = street / ROW frontage.
  • Your rules decide: subject zoning × adjacent zoning → buffer class + width + planting note, from editable presets. Exact beats prefix-wildcard beats catch-all; ties break toward the adjacent side (the buffer protects the neighbor). An unpublished zoning code only matches *, never claimed by a wildcard.
  • Draws the answer: per edge, the boundary stretch + a dashed inward offset at the required width, color-coded per class; a TYPE B, 20' BUFFER (ADJ: R-1) tag at the midpoint; the summary table (you pick its corner once); CSV beside the DWG.
  • Nothing is guessed: an unmatched pair draws and reports NO RULE, VERIFY; the funnel prints adjoiners returned, perimeter footage, edges, and match counts even when zero buffers result.

Modes, seats & caveats

  • Run: re-pull, re-classify, redraw, the subject's previous strips and table are replaced in place (user-dragged table position kept). Clear: removes every strip, tag, and table the tool ever drew.
  • Plain AutoCAD: no Civil 3D API anywhere, the same DLL ships in VDC.Acad.bundle (the plain-AutoCAD toolset: adjoiners, Buffer Yard, Who Did It, drawing locks, parking / fire / ESC / flood QC, drawing + sheet QC, utilities) for seats without Civil 3D; Install.bat /ACAD puts a seat on that bundle.
  • GIS zoning lags reality: rezonings, annexations, overlays, and PUD conditions do not show; parcel lines are reference mapping, not survey. Planning-grade output.
  • Draft work product compared against user-configured criteria, not a compliance determination; every output path carries the notice. Review by a qualified professional required.
  • Settings at %APPDATA%\VDC\BufferYard\settings.json (env VDC_BUFFERYARD_SETTINGS); rules at presets.json beside it (env VDC_BUFFERYARD_PRESETS).

Dialog

Landscape Buffer Yard dialog
Landscape Buffer Yard, VDCBUFFERYARD

When to use it

  • Site planning: establishing perimeter landscape buffers before laying out parking and building envelopes.
  • Landscape plan QC: verifying the drawn buffers against the adjoining zoning as of today, not as of six months ago.
  • Rezoning exhibits: showing which edges trigger heavier buffers under a proposed use.

How to run it

  1. Edit the buffer matrix once per jurisdiction: open %APPDATA%\VDC\BufferYard\presets.json and enter the ordinance's classes and widths (the shipped sample documents the format; every sample value is marked (verify)).
  2. Run VDCBUFFERYARD - pick the county profile, the rule preset, and the outputs; click OK.
  3. Pick a point inside the subject parcel (or type its PIN).
  4. Pick the summary table's corner when prompted. Review the strips, tags, table, and CSV - every edge is listed, including edges where NO rule matched (marked 'verify').
  5. Re-run any time - the subject's previous strips and table are replaced in place. Clear removes everything the tool drew.

Options

  • County profile: which public GIS service supplies parcels + zoning - of the built-in counties Horry and Brunswick publish zoning; Georgetown and NC OneMap do not (only catch-all rules can match there). Any other county with a public ArcGIS parcel layer is added with the dialog's Add county... button (paste the layer address, map the fields from dropdowns, Test, Save). Map its zoning field or zoning layer there so the rule matrix has codes to match.
  • Rule preset: which BufferRuleSet from presets.json applies - one per jurisdiction. Patterns are comma-separated zoning tokens: exact (MRD3), prefix wildcard (R*), or catch-all (*); the most specific match wins, ties break toward the adjacent side.
  • Adjoiner search distance (ft): how far past the boundary the county query reaches (default 75 ft) - catches the across-the-road neighbors whose zoning may still drive a buffer.
  • Edge match tolerance (ft): how close an adjoiner's GIS boundary must run to claim a stretch of the subject's perimeter (default 2 ft - county boundaries are near- but not exactly coincident).
  • Street/ROW rule: on by default - perimeter stretches with no adjoiner within tolerance get the preset's street-buffer class/width; untick to leave them unbuffered (they still appear in the report).
  • Outputs: buffer strips (edge + dashed inward offset at the required width, color-coded per class), per-edge tags, the summary table, and the CSV are each individually toggleable.
  • Strip layer / text height / style: where the linework and tags land (default V-LNDS-BUFR, auto-created) and how the tags render.

Watch out for

  • The shipped preset is a SAMPLE. Until you enter the governing ordinance's actual matrix, every width is a placeholder marked (verify).
  • Zoning-less counties (Georgetown, NC OneMap) classify edges fine but can only match catch-all rules - the adjacent-zoning column comes back empty by design.
  • An edge pair that matches NO rule is drawn/reported as 'NO RULE - VERIFY' rather than guessed - check the matrix covers the district codes the county actually publishes.
  • GIS boundaries are reference mapping, not survey. The strips are planning-grade; final buffer limits belong on surveyed linework.
  • Network required - a county outage shows a short message and nothing is drawn from stale data.

Related: Adjoiner Labels · Adjoiner Parcels · Tree Table · Lot QC