main: only color edge if nodes are immediately subsequent in path

This commit is contained in:
Mikolaj Wielgus 2023-12-22 23:36:24 +00:00
parent 95faf96030
commit 9a005c8ba3
1 changed files with 14 additions and 1 deletions

View File

@ -658,9 +658,22 @@ fn render_times(
let start_point = edge.source().primitive(layout).shape().center(); let start_point = edge.source().primitive(layout).shape().center();
let end_point = edge.target().primitive(layout).shape().center(); let end_point = edge.target().primitive(layout).shape().center();
let color = if path.contains(&edge.source()) && path.contains(&edge.target()) { /*let color = if path.contains(&edge.source()) && path.contains(&edge.target()) {
ColorU::new(250, 250, 0, 255) ColorU::new(250, 250, 0, 255)
} else { } else {
ColorU::new(125, 125, 125, 255)
};*/
let color = 'blk: {
if let (Some(source_pos), Some(target_pos)) = (
path.iter().position(|node| *node == edge.source()),
path.iter().position(|node| *node == edge.target()),
) {
if target_pos == source_pos + 1 {
break 'blk ColorU::new(250, 250, 0, 255);
}
}
ColorU::new(125, 125, 125, 255) ColorU::new(125, 125, 125, 255)
}; };