Adjustments in AutoSegment::canReduce() and TrackSegment::canRealign().

* Change: In AutoSegment::canReduce(), allow reduction, when in channel
    mode, for bottom connected jumpers at depth 1. Forbidden otherwise
    as it may cause problems with the terminals (in OTC).
* Change: In TrackSegment::canRealign(), allow realignement of reduced
    segments. What really needs to be checked is that it do not have
    perpandiculars in reduced state.
This commit is contained in:
Jean-Paul Chaput 2022-11-03 10:36:44 +01:00
parent 15412317ec
commit ecda00e154
2 changed files with 3 additions and 2 deletions

View File

@ -1808,7 +1808,8 @@ namespace Anabatic {
return false;
}
if ((getDepth() == 1) and isSpinBottom()) return false;
if (not Session::getAnabatic()->isChannelMode()
and (getDepth() == 1) and isSpinBottom()) return false;
if ((flags & Flags::WithPerpands) and _reduceds) return false;
cdebug_log(159,0) << " source:" << source->isHTee() << "+" << source->isVTee() << endl;

View File

@ -623,7 +623,7 @@ namespace Katana {
bool TrackSegment::canRealign () const
{
if (isGlobal() or isNonPref() or isReduced()) return false;
if (isGlobal() or isNonPref() /*or isReduced()*/) return false;
for ( TrackElement* perpandicular : const_cast<TrackSegment*>(this)->getPerpandiculars() ) {
if (perpandicular->isReduced()) return false;
}