Solves another case of flickery routes.
This commit is contained in:
parent
fe12ba23b0
commit
afe9157d65
@ -315,7 +315,7 @@ public:
|
|||||||
std::swap(resultNode.weight1, resultNode.weight2);
|
std::swap(resultNode.weight1, resultNode.weight2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(tmpDist < dist) {
|
if(tmpDist < dist && !DoubleEpsilonCompare(dist, tmpDist)) {
|
||||||
resultNode.Reset();
|
resultNode.Reset();
|
||||||
resultNode.edgeBasedNode = candidate.edgeBasedNode;
|
resultNode.edgeBasedNode = candidate.edgeBasedNode;
|
||||||
resultNode.nodeBasedEdgeNameID = candidate.nameID;
|
resultNode.nodeBasedEdgeNameID = candidate.nameID;
|
||||||
@ -346,6 +346,7 @@ public:
|
|||||||
resultNode.weight2 *= (1-ratio);
|
resultNode.weight2 *= (1-ratio);
|
||||||
// INFO("New weight1: " << resultNode.weight1 << ", new weight2: " << resultNode.weight2);
|
// INFO("New weight1: " << resultNode.weight1 << ", new weight2: " << resultNode.weight2);
|
||||||
}
|
}
|
||||||
|
// INFO("bidirected: " << (resultNode.isBidirected() ? "yes" : "no") << "\n--")
|
||||||
return foundNode;
|
return foundNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user