← Inbox

C3D-260612-LAYERDUMP · Dump all layers + usage done

Read-only: every layer with color, linetype, lineweight, plot/off/frozen/locked flags, description, and how many entities use it across model space, all layouts and all block definitions.

Script file
C3D-260612-LAYERDUMP.cs
Target
260612 · model space
Author
claude
Approved
yes · reviewer
Timeout
180s

C# payload

// READ-ONLY: every layer with its full definition + how many entities reference it, so the
// UNUSED (empty) layers can be recreated in the target drawing - copy/paste only brings layers
// that carry geometry.
// Counts model space, every layout's paper space, and every block definition.
var lt = (LayerTable)Tx.GetObject(Db.LayerTableId, OpenMode.ForRead);
var used = new Dictionary<string,int>();

void Tally(BlockTableRecord btr) {
    foreach (ObjectId id in btr) {
        var e = Tx.GetObject(id, OpenMode.ForRead) as Autodesk.AutoCAD.DatabaseServices.Entity;
        if (e == null) continue;
        used[e.Layer] = used.ContainsKey(e.Layer) ? used[e.Layer]+1 : 1;
    }
}

var bt = (BlockTable)Tx.GetObject(Db.BlockTableId, OpenMode.ForRead);
foreach (ObjectId bid in bt) Tally((BlockTableRecord)Tx.GetObject(bid, OpenMode.ForRead));

int total = 0, empty = 0;
Log("### LAYER | color | linetype | lineweight | plot | off | frozen | locked | desc | entities");
foreach (ObjectId id in lt) {
    var l = (LayerTableRecord)Tx.GetObject(id, OpenMode.ForRead);
    total++;
    int n = used.ContainsKey(l.Name) ? used[l.Name] : 0;
    if (n == 0) empty++;
    var ltype = ((LinetypeTableRecord)Tx.GetObject(l.LinetypeObjectId, OpenMode.ForRead)).Name;
    Log(l.Name + "|" + l.Color.ColorIndex + "|" + ltype + "|" + (int)l.LineWeight + "|" +
        l.IsPlottable + "|" + l.IsOff + "|" + l.IsFrozen + "|" + l.IsLocked + "|" +
        (l.Description ?? "") + "|" + n);
}
Log("### " + total + " layers, " + empty + " with no entities");

Result

Status
success
Drawing file
C:\Users\sanja\OneDrive\_SurveyDisco\260613 - 5030 E Lake Pkwy, Stockbridge, GA 30281, USA\CSTORE WATER ABS-260612_SHEET.dwg
Message
Executed C3D-260612-LAYERDUMP (0 entities touched).
Entities
Duration
364 ms
Civil 3D
25.0.0.0

Log

### LAYER | color | linetype | lineweight | plot | off | frozen | locked | desc | entities
0|7|Continuous|-3|True|False|False|False||81
Defpoints|7|Continuous|-3|False|False|False|False||0
V-SSWR-PIPE|13|Continuous|-3|True|False|False|False||0
V-SSWR-MHOL|5|Continuous|-3|True|False|False|False||0
V-SSWR-TEXT|7|Continuous|-3|True|False|True|False||0
V-GREASE|30|Continuous|-3|True|False|True|False||8
V-STRM-STRC|3|Continuous|-3|True|False|False|False||8
V-STRM-TEXT|3|Continuous|-3|True|False|True|False||20
V-WATR-STRC|5|Continuous|-3|True|False|False|False||1
V-WATR-LINE|5|Continuous|-3|True|False|False|False||0
V-WATR-ALIGN|150|DASHED|-3|False|False|False|False||1
V-WATR-TEXT|7|Continuous|-3|True|False|True|False||0
V-ESMT-SSE20|6|DASHED|-3|True|False|True|False||0
SHEET|7|Continuous|-3|True|False|False|False||12
VIEWPORTS|7|Continuous|-3|True|False|False|False||2
SS-FRZ|7|Continuous|-3|True|False|True|False||58
SS-GREASE|30|Continuous|-3|True|False|False|False||4
SS-SSMH|5|Continuous|-3|True|False|False|False||0
SS-ESMT-SSE20|4|DASHED|-3|True|False|False|False||0
SS-V-ROAD-CURB|2|Continuous|-3|True|False|False|False||6
HORIZONTAL_AND_VERTICAL_CONTROL_POINT|7|Continuous|-3|True|False|False|False||0
HORIZONTAL_AND_VERTICAL_CONTROL_TEXT|7|Continuous|-3|True|False|False|False||0
PROJECT_BOUNDARY|7|Continuous|-3|True|False|False|False||0
PROJECT_BOUNDARY_TEXT|7|Continuous|-3|True|False|False|False||0
PROPERTY_LINE|7|Continuous|-3|True|False|False|False||0
LAND_LOT_LINE|7|Continuous|-3|True|False|False|False||0
LAND_LOT_LINE_TEXT|7|Continuous|-3|True|False|False|False||0
LOT_NUMBER_TEXT|7|Continuous|-3|True|False|False|False||0
ADDRESS_TEXT|7|Continuous|-3|True|False|False|False||0
ROAD_EDGE_OF_PAVEMENT|8|Continuous|-3|True|False|False|False||0
ROAD_RIGHT-OF-WAY|8|Continuous|-3|True|False|False|False||0
ROAD_RIGHT-OF-WAY_TEXT|8|Continuous|-3|True|False|False|False||0
ROAD_TEXT|8|Continuous|-3|True|False|False|False||1
SEWER_LINE|3|Continuous|-3|True|False|False|False||12
SEWER_LINE_TEXT|3|Continuous|-3|True|False|False|False||7
SEWER_LINE_EXISTING|3|Continuous|-3|True|False|False|False||0
SEWER_LINE_EXISTING_TEXT|3|Continuous|-3|True|False|False|False||0
SEWER_MANHOLE|3|Continuous|-3|True|False|False|False||10
SEWER_MANHOLE_TEXT|3|Continuous|-3|True|False|False|False||20
SEWER_MANHOLE_EXISTING|3|Continuous|-3|True|False|False|False||0
SEWER_MANHOLE_EXISTING_TEXT|3|Continuous|-3|True|False|False|False||0
SEWER_TAP|3|Continuous|-3|True|False|False|False||0
SEWER_TAP_TEXT|3|Continuous|-3|True|False|False|False||0
SEWER_END_OF_LINE|3|Continuous|-3|True|False|False|False||0
SEWER_END_OF_LINE_TEXT|3|Continuous|-3|True|False|False|False||0
SEWER_FORCE_MAIN|3|Continuous|-3|True|False|False|False||0
SEWER_FORCE_MAIN_TEXT|3|Continuous|-3|True|False|False|False||0
SEWER_EASEMENT|3|Continuous|-3|True|False|False|False||3
SEWER_EASEMENT_TEXT|3|Continuous|-3|True|False|False|False||1
WATER_LINE|5|Continuous|-3|True|False|False|False||6
WATER_LINE_TEXT|5|Continuous|-3|True|False|False|False||11
WATER_LINE_EXISTING|5|Continuous|-3|True|False|False|False||0
WATER_LINE_EXISTING_TEXT|5|Continuous|-3|True|False|False|False||0
WATER_VALVE|5|Continuous|-3|True|False|False|False||1
WATER_VALVE_TEXT|5|Continuous|-3|True|False|False|False||4
WATER_VALVE_EXISTING|5|Continuous|-3|True|False|False|False||0
WATER_VALVE_EXISTING_TEXT|5|Continuous|-3|True|False|False|False||0
WATER_METER|5|Continuous|-3|True|False|False|False||0
WATER_METER_TEXT|5|Continuous|-3|True|False|False|False||0
WATER_VAULT|5|Continuous|-3|True|False|False|False||2
WATER_VAULT_TEXT|5|Continuous|-3|True|False|False|False||4
WATER_SERVICE|5|Continuous|-3|True|False|False|False||6
WATER_SERVICE_TEXT|5|Continuous|-3|True|False|False|False||0
WATER_END_CAP|5|Continuous|-3|True|False|False|False||1
WATER_END_CAP_TEXT|5|Continuous|-3|True|False|False|False||0
WATER_EASEMENT|5|Continuous|-3|True|False|False|False||0
WATER_EASEMENT_TEXT|5|Continuous|-3|True|False|False|False||0
FIRE_HYDRANT|1|Continuous|-3|True|False|False|False||2
FIRE_HYDRANT_TEXT|1|Continuous|-3|True|False|False|False||3
FIRE_HYDRANT_EXISTING|1|Continuous|-3|True|False|False|False||0
FIRE_HYDRANT_EXISTING_TEXT|1|Continuous|-3|True|False|False|False||0
FIRE_HYDRANT_VALVE|1|Continuous|-3|True|False|False|False||2
FIRE_HYDRANT_VALVE_TEXT|1|Continuous|-3|True|False|False|False||0
FIRE_HYDRANT_VALVE_EXISTING|1|Continuous|-3|True|False|False|False||0
FIRE_HYDRANT_VALVE_EXISTING_TEXT|1|Continuous|-3|True|False|False|False||0
FIRE_HYDRANT_MANUFACTURER|1|Continuous|-3|True|False|False|False||0
FIRE_HYDRANT_MANUFACTURED_YEAR|1|Continuous|-3|True|False|False|False||0
FDC|1|Continuous|-3|True|False|False|False||0
UTILITY_EASEMENT|6|Continuous|-3|True|False|False|False||0
UTILITY_EASEMENT_TEXT|6|Continuous|-3|True|False|False|False||0
UTILITY_EASEMENT_EXISTING|6|Continuous|-3|True|False|False|False||0
UTILITY_EASEMENT_EXISTING_TEXT|6|Continuous|-3|True|False|False|False||0
CASING|4|Continuous|-3|True|False|False|False||0
CASING_TEXT|4|Continuous|-3|True|False|False|False||0
PUMP_STATION|4|Continuous|-3|True|False|False|False||0
PUMP_STATION_TEXT|4|Continuous|-3|True|False|False|False||0
WATER_QUALITY_CRITICAL_AREA|4|Continuous|-3|True|False|False|False||0
WETLAND_BOUNDARY|4|Continuous|-3|True|False|False|False||0
PDF_C-SSWR-PIPE|80|Continuous|-3|True|False|False|False||100
PDF_P-RW|6|Continuous|-3|True|False|False|False||1
PDF_PGRADE|252|Continuous|-3|True|False|True|False||408
PDF_C-DEMO|3|Continuous|-3|True|False|True|False||0
PDF_C-STRM-CNTR|252|Continuous|-3|True|False|False|False||25
PDF_2015_Flood_Map_DFIRM|5|Continuous|-3|True|False|True|False||3
PDF_V-BNDY|252|Continuous|-3|True|False|False|False||7
PDF_E GRAVEL|252|Continuous|-3|True|False|True|False||427
PDF_E CONCRETE|7|Continuous|-3|True|False|True|False||2
PDF_E WALL|252|Continuous|-3|True|False|True|False||2
PDF_E EDGE PVMT|252|Continuous|-3|True|False|True|False||2
PDF_V-BNDY-ANNO|252|Continuous|-3|True|False|False|False||324
PDF_E FENCE|252|Continuous|-3|True|False|True|False||5
PDF_V-ROAD-CURB|243|Continuous|-3|True|False|False|False||238
PDF_E IPF-SET|252|Continuous|-3|True|False|True|False||30
PDF_E POWER|252|Continuous|-3|True|False|True|False||23
PDF_V-POWR-OVHD|252|Continuous|-3|True|False|True|False||280
PDF_C-SIDEWLK-HTC|9|Continuous|-3|True|False|False|False||477
PDF_C-STRIPES|252|Continuous|-3|True|False|False|False||126
PDF_C-CURB-FACE|252|Continuous|-3|True|False|False|False||246
PDF_E STORM|7|Continuous|-3|True|False|False|False||7
PDF_V-WATR|252|Continuous|-3|True|False|False|False||137
PDF_C-ESMT-BLDG-SBAK|252|Continuous|-3|True|False|False|False||10
PDF_P-Setbacks|252|Continuous|-3|True|False|True|False||1
PDF_V-STRM-STRC-TEXT|7|Continuous|-3|True|False|False|False||13
PDF_TXT200|252|Continuous|-3|True|False|True|False||0
PDF_C-SIDEWALKS|7|Continuous|-3|True|False|False|False||6
PDF_INDEX_CONTOURS|252|Continuous|-3|True|False|True|False||1152
PDF_INTER_CONTOURS|252|Continuous|-3|True|False|True|False||5365
PDF_ESMT v2|7|Continuous|-3|True|False|False|False||8
PDF_C-BLDG-COLS|9|Continuous|-3|True|False|False|False||120
PDF_C-WATR-CNTR|5|Continuous|-3|True|False|False|False||45
PDF_C-WATR-STRC|251|Continuous|-3|True|False|False|False||16
PDF_C-WATR-ANNO|7|Continuous|-3|True|False|False|False||29
PDF_C-SSWR-PIPE-PATT|7|Continuous|-3|True|False|True|False||61
PDF_V-RIVR-EDGE|252|Continuous|-3|True|False|True|False||41
PDF_Level 3|243|Continuous|-3|True|False|True|False||2
PDF_V-SSWR|252|Continuous|-3|True|False|False|False||16
PDF_V-ESMT|252|Continuous|-3|True|False|False|False||3
PDF_C-ESMT-BLDG-SBAK-ANNO|7|Continuous|-3|True|False|False|False||0
PDF_C-SSWR-STRC-PATT|7|Continuous|-3|True|False|True|False||24
PDF_0-PIPE-SS-A|7|Continuous|-3|True|False|False|False||30
PDF_0-PIPE-STM B|7|Continuous|-3|True|False|True|False||32
PDF_0-PIPE-EX SS|9|Continuous|-3|True|False|True|False||1
PDF_0-PIPE-SS-A-T|7|Continuous|-3|True|False|False|False||73
PDF_SWM|252|Continuous|-3|True|False|True|False||14
PDF_V-STRM-GRAT|7|Continuous|-3|True|False|False|False||18
PDF_0-PIPE-STM C|7|Continuous|-3|True|False|True|False||42
PDF_SWM-TXT|7|Continuous|-3|True|False|True|False||0
PDF_V-SSWR-ANNO|7|Continuous|-3|True|False|False|False||8
PDF_E STORM TEXT|7|Continuous|-3|True|False|False|False||17
PDF_P-ESMT|7|Continuous|-3|True|False|False|False||1
PDF_0-PIPE-STM A|7|Continuous|-3|True|False|True|False||32
PDF_C-CONC|252|Continuous|-3|True|False|True|False||15
PDF_C-SIGNS|252|Continuous|-3|True|False|True|False||4
PDF_C-ANNO|252|Continuous|-3|True|False|False|False||13
PDF_V-ROAD-MRKG|243|Continuous|-3|True|False|False|False||61
PDF_0-ALIGN-SDL2-T|252|Continuous|-3|True|False|True|False||31
PDF_C-WATR-TEXT|7|Continuous|-3|True|False|False|False||7
PDF_C-SSWR-LATS|80|Continuous|-3|True|False|False|False||33
PDF_ae_title-36x24$SEAL|7|Continuous|-3|True|False|True|False||21
PDF_ae_title-36x24$SEAL2|5|Continuous|-3|True|False|True|False||59
PDF_ae_title-36x24$T-BD-LINE|7|Continuous|-3|True|False|True|False||3
PDF_ae_title-36x24$T-BD-INFO2|7|Continuous|-3|True|False|True|False||27
PDF_ae_title-36x24$T-BD-PROJ|7|Continuous|-3|True|False|True|False||12
PDF_ae_title-36x24$T-BD-PROJ2|7|Continuous|-3|True|False|True|False||19
PDF_ae_title-36x24$T-BD-INFO1|7|Continuous|-3|True|False|True|False||3
PDF_ae_title-36x24$T-BD-COPY|7|Continuous|-3|True|False|True|False||93
PDF_ae_title-36x24$T-BD-LOGO|7|Continuous|-3|True|False|True|False||12
PDF_ae_title-36x24$TITLE|252|Continuous|-3|True|False|True|False||30
PDF_ae_title-36x24$TBORDER|7|Continuous|-3|True|False|True|False||228
PDF_GENERAL-TEXT|7|Continuous|-3|True|False|False|False||2
PDF_NOTES|7|Continuous|-3|True|False|True|False||1
PDF_GRAPHIC_SCALE|7|Continuous|-3|True|False|True|False||69
PDF_REVISIONS|30|Continuous|-3|True|False|True|False||3
PDF_Text|7|Continuous|-3|True|False|False|False||200
PDF_IMPORT_ASBUILT|8|Continuous|-3|True|False|False|False||0
SS-5000-PTS|1|Continuous|-3|True|False|False|False||443
### 166 layers, 64 with no entities

Notes

What worked, what didn't, job-specific gotchas — flagged notes feed the recipes.

No notes yet.