← Inbox

C3D-0476 · Layer filter NO C on 260904 [C3D-0477] done

Add layer filter NO C matching all layers except C-*.

Script file
C3D-0476.cs
Target
260904 - 920 W Sandtown Rd SW.dwg · model space
Author
claude
Approved
yes · auto-auth
Timeout
60s

C# payload


var fc=Db.LayerFilters; var root=fc.Root;
var rm=new System.Collections.Generic.List<Autodesk.AutoCAD.LayerManager.LayerFilter>();
foreach(Autodesk.AutoCAD.LayerManager.LayerFilter f in root.NestedFilters) if(f.Name=="NO C") rm.Add(f);
foreach(var f in rm) root.NestedFilters.Remove(f);
var lf=new Autodesk.AutoCAD.LayerManager.LayerFilter();
lf.Name="NO C"; lf.FilterExpression="NAME==\"~C-*\"";
root.NestedFilters.Add(lf); Db.LayerFilters=fc;
var lt=(LayerTable)Tx.GetObject(Db.LayerTableId,OpenMode.ForRead);
int shown=0,cIn=0;
foreach(ObjectId id in lt){ var lr=(LayerTableRecord)Tx.GetObject(id,OpenMode.ForRead); if(lf.Filter(lr)){ shown++; if(lr.Name.StartsWith("C-")) cIn++; } }
Log("NO C set  shown="+shown+"  C-inFilter="+cIn);
Ed.Regen();

Result

Status
success
Drawing file
C:\Users\sanja\OneDrive\_SurveyDisco\260904 - 920 W Sandtown Rd SW, Marietta, GA 30064, USA\260904 - 920 W Sandtown Rd SW.dwg
Message
Executed C3D-0476 (0 entities touched).
Entities
Duration
469 ms
Civil 3D
25.0.0.0

Log

NO C set  shown=141  C-inFilter=0

Notes

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

No notes yet.