diff --git a/anabatic/src/AutoHorizontal.cpp b/anabatic/src/AutoHorizontal.cpp index 33ac1cbb..083250d1 100644 --- a/anabatic/src/AutoHorizontal.cpp +++ b/anabatic/src/AutoHorizontal.cpp @@ -861,25 +861,16 @@ namespace Anabatic { Session::dogleg( segment2 ); if (autoSource->isTerminal() and autoTarget->isTerminal()) { - segment1->setRpDistance( 1 ); - segment2->setRpDistance( 0 ); dlContact1->setFlags ( CntWeakTerminal ); dlContact2->setFlags ( CntWeakTerminal ); if (autoTarget->getGCell() == doglegGCell) dlContact1->migrateConstraintBox( autoTarget ); if (autoSource->getGCell() == doglegGCell) dlContact2->migrateConstraintBox( autoSource ); } else if (autoSource->isTerminal()) { - segment1->setRpDistance( 1 ); - segment2->setRpDistance( 2 ); - autoTarget->unsetFlags( CntWeakTerminal ); dlContact1->setFlags ( CntWeakTerminal ); if (autoTarget->getGCell() == doglegGCell) dlContact1->migrateConstraintBox( autoTarget ); } else if (autoTarget->isTerminal()) { - segment2->setRpDistance( 0 ); - segment1->setRpDistance( 1 ); - setRpDistance( 2 ); - unsetFlags( SegTargetTerminal ); setFlags( SegWeakTerminal1 ); autoSource->unsetFlags( CntWeakTerminal ); @@ -888,11 +879,6 @@ namespace Anabatic { } else if (isWeakTerminal()) { segment1->setFlags( SegWeakTerminal1 ); segment2->setFlags( SegWeakTerminal1 ); - segment1->setRpDistance( getRpDistance() ); - segment2->setRpDistance( getRpDistance() ); - } else { - segment1->setRpDistance( getRpDistance() ); - segment2->setRpDistance( getRpDistance() ); } // if (autoSource->isTerminal()) { @@ -943,7 +929,7 @@ namespace Anabatic { Interval dragConstraints = autoTarget->getNativeUConstraints(Flags::Horizontal); segment1->mergeUserConstraints( dragConstraints ); - cdebug_log(149,0) << "Perpandical has drag constraints: " << dragConstraints << endl; + cdebug_log(149,0) << "Perpandicular has drag constraints: " << dragConstraints << endl; } } diff --git a/anabatic/src/AutoVertical.cpp b/anabatic/src/AutoVertical.cpp index 014eff98..69dd551c 100644 --- a/anabatic/src/AutoVertical.cpp +++ b/anabatic/src/AutoVertical.cpp @@ -744,25 +744,16 @@ namespace Anabatic { Session::dogleg( segment2 ); if (autoSource->isTerminal() and autoTarget->isTerminal()) { - segment1->setRpDistance( 1 ); - segment2->setRpDistance( 0 ); dlContact1->setFlags ( CntWeakTerminal ); dlContact2->setFlags ( CntWeakTerminal ); if (autoTarget->getGCell() == doglegGCell) dlContact1->migrateConstraintBox( autoTarget ); if (autoSource->getGCell() == doglegGCell) dlContact2->migrateConstraintBox( autoSource ); } else if (autoSource->isTerminal()) { - segment1->setRpDistance( 1 ); - segment2->setRpDistance( 2 ); - autoTarget->unsetFlags( CntWeakTerminal ); dlContact1->setFlags ( CntWeakTerminal ); if (autoTarget->getGCell() == doglegGCell) dlContact1->migrateConstraintBox( autoTarget ); } else if (autoTarget->isTerminal()) { - segment2->setRpDistance( 0 ); - segment1->setRpDistance( 1 ); - setRpDistance( 2 ); - unsetFlags( SegTargetTerminal ); setFlags( SegWeakTerminal1 ); autoSource->unsetFlags( CntWeakTerminal ); @@ -771,11 +762,6 @@ namespace Anabatic { } else if (isWeakTerminal()) { segment1->setFlags( SegWeakTerminal1 ); segment2->setFlags( SegWeakTerminal1 ); - segment1->setRpDistance( getRpDistance() ); - segment2->setRpDistance( getRpDistance() ); - } else { - segment1->setRpDistance( getRpDistance() ); - segment2->setRpDistance( getRpDistance() ); } // if (isSourceTerminal()) { @@ -826,7 +812,7 @@ namespace Anabatic { Interval dragConstraints = autoTarget->getNativeUConstraints(Flags::Vertical); segment1->mergeUserConstraints( dragConstraints ); - cdebug_log(149,0) << "Perpandical has drag constraints: " << dragConstraints << endl; + cdebug_log(149,0) << "Perpandicular has drag constraints: " << dragConstraints << endl; } } diff --git a/anabatic/src/NetConstraints.cpp b/anabatic/src/NetConstraints.cpp index 97a31c2e..f78fbf2b 100644 --- a/anabatic/src/NetConstraints.cpp +++ b/anabatic/src/NetConstraints.cpp @@ -233,15 +233,22 @@ namespace Anabatic { cdebug_tabw(146,1); vector routingPads; - forEach ( Component*, icomponent, net->getComponents() ) { - Contact* contact = dynamic_cast( *icomponent ); + for ( Component* component : net->getComponents() ) { + Contact* contact = dynamic_cast( component ); if (contact) { AutoContact* autoContact = Session::lookup( contact ); if (autoContact) autoContact->restoreNativeConstraintBox(); } else { - RoutingPad* routingPad = dynamic_cast( *icomponent ); - if (routingPad) routingPads.push_back( routingPad ); + Segment* segment = dynamic_cast( component ); + if (segment) { + AutoSegment* autoSegment = Session::lookup( segment ); + if (autoSegment) + autoSegment->setRpDistance( 15 ); + } else { + RoutingPad* routingPad = dynamic_cast( component ); + if (routingPad) routingPads.push_back( routingPad ); + } } }