Hello,
I tried using TCL to delete some DboWire instances which matches a criteria.
However, after I delete it by DboPage function DeleteWire, the schematic seems to have some invisible error which will lead Capture quit unexpectedly under some operations.
To be specific, after processing code below, Ctrl+F to find * (all) will make Capture shutdowm. For complicated schematic may even directly shutdown during the code processing.
set lStatus [DboState]
set lNullObj NULL
set pPage [GetActivePage]
set lWiresToDel [list]
set lWireIter [$pPage NewWiresIter $lStatus]
set lWireInst [$lWireIter NextWire $lStatus]
while {$lWireInst!=$lNullObj} {
# screen out wire matched some criteria, then add to array for later delete
lappend lWiresToDel $lWireInst
set lWireInst [$lWireIter NextWire $lStatus]
}
foreach wire $lWiresToDel {
$pPage DeleteWire $wire
}
Since the actual Tcl script runs without page opened, SelectObject(x, y, boolvalue3) and Delete() function are not suit for my case.
So, what is the correct procedure to use DeleteWire(wire)?