c3d-custom-subassemblies

Installation
SKILL.md

Custom Subassemblies Using .NET

Use this skill when creating custom subassembly components for corridors in Civil 3D. This skill is the API/mechanics reference (SATemplate lifecycle, targets, .atc, build/deploy). For a need→stock-file lookup index, worked DrawImplement recipes (median, daylight, marked-point join, conditional, SE-AOR), and the point/link/shape code catalog mined from Autodesk's 120 VB stock subassemblies, use c3d-subassembly-patterns.

Overview

Custom subassemblies can be written in any .NET language (C# or VB.NET). They define cross-sectional shapes that are placed along corridor baselines. The SubassemblyGeometryGenerateMode.UseDotNet mode enables compiled .NET assemblies to serve as subassembly geometry generators.

Naming Conventions

  • No spaces or special characters
  • PascalCase with uppercase first letter per word
  • Group by component type as prefix: LaneBasic, ShoulderExtended, CurbTypeA
  • For fixed-dimension variants, create separate subassemblies (e.g., CurbTypeA through CurbTypeE) rather than one with many parameters
Installs
3
GitHub Stars
4
First Seen
May 15, 2026