← Inbox

C3D-0480 · Join V-DWY into one polyline 260904 [C3D-0482] done

Polyline.JoinEntity merge remaining V-DWY polylines into one, arcs preserved. V-DWY only.

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

C# payload


var ms=(BlockTableRecord)Tx.GetObject(SymbolUtilityServices.GetBlockModelSpaceId(Db),OpenMode.ForWrite);
var pls=new System.Collections.Generic.List<ObjectId>();
foreach(ObjectId eid in ms){ var pl=Tx.GetObject(eid,OpenMode.ForRead) as Polyline; if(pl!=null&&pl.Layer=="V-DWY") pls.Add(eid); }
if(pls.Count<2){ Log("V-DWY already "+pls.Count+" poly"); return; }
var master=(Polyline)Tx.GetObject(pls[0],OpenMode.ForWrite);
int joined=0;
for(int i=1;i<pls.Count;i++){ var e=(Autodesk.AutoCAD.DatabaseServices.Entity)Tx.GetObject(pls[i],OpenMode.ForWrite); try{ master.JoinEntity(e); if(!e.IsErased) e.Erase(); joined++; }catch(System.Exception ex){ Log("join fail: "+ex.Message); } }
Log("V-DWY joined "+joined+" -> v="+master.NumberOfVertices+" closed="+master.Closed+" len="+master.Length.ToString("F1")+" h="+master.Handle);
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-0480 (0 entities touched).
Entities
Duration
371 ms
Civil 3D
25.0.0.0

Log

V-DWY joined 2 -> v=18 closed=True len=334.2 h=2106C

Notes

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

No notes yet.