further fixes but forward/reverse edge weights are reversed
This commit is contained in:
@@ -152,30 +152,31 @@ struct PhantomNodes
|
||||
return source_phantom == target_phantom;
|
||||
}
|
||||
|
||||
bool ComputeForwardQueueOffset() const
|
||||
{
|
||||
if (source_phantom.forward_node_id == target_phantom.forward_node_id)
|
||||
{
|
||||
const int forward_queue_weight = source_phantom.GetForwardWeightPlusOffset();
|
||||
const int reverse_queue_weight = target_phantom.GetForwardWeightPlusOffset();
|
||||
const int weight_diff = (forward_queue_weight - reverse_queue_weight);
|
||||
SimpleLogger().Write(logDEBUG) << "fwd queue offset: " << std::max(0, weight_diff);
|
||||
return 0;//std::max(0, weight_diff);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
// bool ComputeForwardQueueOffset() const
|
||||
// {
|
||||
// if (source_phantom.forward_node_id == target_phantom.forward_node_id)
|
||||
// {
|
||||
// const int forward_queue_weight = source_phantom.GetForwardWeightPlusOffset();
|
||||
// const int reverse_queue_weight = target_phantom.GetForwardWeightPlusOffset();
|
||||
// const int weight_diff = (forward_queue_weight - reverse_queue_weight);
|
||||
// SimpleLogger().Write(logDEBUG) << "fwd queue offset: " << std::max(0, weight_diff);
|
||||
// return 0;//std::max(0, weight_diff);
|
||||
// }
|
||||
// return 0;
|
||||
// }
|
||||
|
||||
bool ComputeReverseQueueOffset() const
|
||||
{
|
||||
if (source_phantom.reverse_node_id == target_phantom.reverse_node_id)
|
||||
{
|
||||
const int forward_queue_weight = source_phantom.GetReverseWeightPlusOffset();
|
||||
const int reverse_queue_weight = target_phantom.GetReverseWeightPlusOffset();
|
||||
const int weight_diff = (forward_queue_weight - reverse_queue_weight);
|
||||
return 0;//std::max(0, weight_diff);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
// bool ComputeReverseQueueOffset() const
|
||||
// {
|
||||
// if (source_phantom.reverse_node_id == target_phantom.reverse_node_id)
|
||||
// {
|
||||
// const int forward_queue_weight = source_phantom.GetReverseWeightPlusOffset();
|
||||
// const int reverse_queue_weight = target_phantom.GetReverseWeightPlusOffset();
|
||||
// const int weight_diff = (forward_queue_weight - reverse_queue_weight);
|
||||
// SimpleLogger().Write(logDEBUG) << "rev queue offset: " << std::max(0, weight_diff);
|
||||
// return 0;//std::max(0, weight_diff);
|
||||
// }
|
||||
// return 0;
|
||||
// }
|
||||
};
|
||||
|
||||
inline std::ostream& operator<<(std::ostream &out, const PhantomNodes & pn)
|
||||
|
||||
@@ -691,13 +691,13 @@ public:
|
||||
) { //found a new minimum
|
||||
min_dist = current_perpendicular_distance;
|
||||
//TODO: use assignment c'tor in PhantomNode
|
||||
result_phantom_node.forward_node_id = current_edge.forward_edge_based_node_id;
|
||||
result_phantom_node.reverse_node_id = current_edge.reverse_edge_based_node_id;
|
||||
result_phantom_node.forward_node_id = current_edge.reverse_edge_based_node_id;
|
||||
result_phantom_node.reverse_node_id = current_edge.forward_edge_based_node_id;
|
||||
result_phantom_node.name_id = current_edge.name_id;
|
||||
result_phantom_node.forward_weight = current_edge.forward_weight;
|
||||
result_phantom_node.reverse_weight = current_edge.reverse_weight;
|
||||
result_phantom_node.forward_offset = current_edge.forward_offset;
|
||||
result_phantom_node.reverse_offset = current_edge.reverse_offset;
|
||||
result_phantom_node.forward_weight = current_edge.reverse_weight;
|
||||
result_phantom_node.reverse_weight = current_edge.forward_weight;
|
||||
result_phantom_node.forward_offset = current_edge.reverse_offset;
|
||||
result_phantom_node.reverse_offset = current_edge.forward_offset;
|
||||
result_phantom_node.packed_geometry_id = current_edge.packed_geometry_id;
|
||||
result_phantom_node.fwd_segment_position = current_edge.fwd_segment_position;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user