C3D-PLRECON · Trace prop lines for 2 parcels (read-only) done
Dump C-PROP-LINE geometry to find the 2 closed loops
C# payload
// Read-only: dump all C-PROP-LINE geometry (lines + polylines) so the 2 parcel loops can be traced.
var bt = (BlockTable)Tx.GetObject(Db.BlockTableId, OpenMode.ForRead);
var ms = (BlockTableRecord)Tx.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForRead);
foreach (ObjectId id in ms) {
var e = Tx.GetObject(id, OpenMode.ForRead) as Autodesk.AutoCAD.DatabaseServices.Entity;
if (e == null || e.Layer != "C-PROP-LINE") continue;
if (e is Line ln) Log($"LINE h={ln.Handle} ({ln.StartPoint.X:F2},{ln.StartPoint.Y:F2})->({ln.EndPoint.X:F2},{ln.EndPoint.Y:F2}) len={ln.Length:F2}");
else if (e is Polyline pl) {
Log($"PLINE h={pl.Handle} closed={pl.Closed} verts={pl.NumberOfVertices} len={pl.Length:F2}");
for (int i = 0; i < pl.NumberOfVertices; i++) { var p = pl.GetPoint2dAt(i); Log($" v{i}=({p.X:F2},{p.Y:F2})"); }
}
}
Log("Prop-line recon complete (read-only).");
Result
Log
PLINE h=20B8C closed=True verts=4 len=839.97 v0=(2166620.54,1330516.18) v1=(2166662.31,1330721.98) v2=(2166872.29,1330718.97) v3=(2166820.21,1330505.22) LINE h=20C07 (2166508.66,1330060.42)->(2166534.36,1330760.93) len=700.98 LINE h=20C0B (2166534.36,1330760.93)->(2166609.13,1330752.55) len=75.23 LINE h=20C37 (2166609.13,1330752.55)->(2166606.42,1330722.79) len=29.89 LINE h=20C3A (2166606.42,1330722.79)->(2166662.31,1330721.98) len=55.89 LINE h=20C3D (2166872.29,1330718.97)->(2166698.41,1330004.97) len=734.86 LINE h=20CAF (2166508.66,1330060.42)->(2166698.41,1330004.97) len=913.88 Prop-line recon complete (read-only).
Notes
What worked, what didn't, job-specific gotchas — flagged notes feed the recipes.
No notes yet.