C3D-0457 · Fix sidewalk: two closed pads 260904 error
Erase the defective single V-WALK polyline (21070) and redraw SW as two closed concrete pads (top 114-117, bottom 118-126), 0 crossings.
C# payload
var ms=(BlockTableRecord)Tx.GetObject(SymbolUtilityServices.GetBlockModelSpaceId(Db),OpenMode.ForWrite);
// remove the defective single V-WALK poly (handle 21070)
Handle h=new Handle(Convert.ToInt64("21070",16));
ObjectId badId; if(Db.TryGetObjectId(h,out badId) && !badId.IsNull){ var bad=(Entity)Tx.GetObject(badId,OpenMode.ForWrite); bad.Erase(); Log("erased old V-WALK 21070"); }
System.Action<System.Collections.Generic.List<Point2d>> draw=(vs)=>{ var pl=new Polyline(); for(int i=0;i<vs.Count;i++) pl.AddVertexAt(i,vs[i],0,0,0); pl.Closed=true; pl.Layer="V-WALK"; ms.AppendEntity(pl); Tx.AddNewlyCreatedDBObject(pl,true); Log("V-WALK pad verts="+pl.NumberOfVertices+" area="+pl.Area.ToString("F0")+" handle="+pl.Handle); };
var T=new System.Collections.Generic.List<Point2d>(); T.Add(new Point2d(2152762.652000,1430429.633000));
T.Add(new Point2d(2152767.313000,1430430.624000));
T.Add(new Point2d(2152767.638000,1430432.205000));
T.Add(new Point2d(2152761.833000,1430431.197000)); draw(T);
var B=new System.Collections.Generic.List<Point2d>(); B.Add(new Point2d(2152764.352000,1430377.380000));
B.Add(new Point2d(2152771.601000,1430378.564000));
B.Add(new Point2d(2152773.869000,1430379.486000));
B.Add(new Point2d(2152774.399000,1430380.974000));
B.Add(new Point2d(2152774.018000,1430384.485000));
B.Add(new Point2d(2152768.886000,1430385.319000));
B.Add(new Point2d(2152768.614000,1430383.895000));
B.Add(new Point2d(2152767.905000,1430383.186000));
B.Add(new Point2d(2152763.612000,1430382.313000)); draw(B);
Ed.Regen();
Result
Notes
What worked, what didn't, job-specific gotchas — flagged notes feed the recipes.
No notes yet.