mirror of https://codeberg.org/topola/topola.git
graph: Merge `FixedEnd` and `LooseEnd` into one `Adjacent`
This commit is contained in:
parent
d5acfaccb5
commit
62579d98ba
|
|
@ -167,8 +167,7 @@ impl_type!(LooseBendWeight, LooseBend, LooseBendIndex);
|
||||||
|
|
||||||
#[derive(Debug, EnumAsInner, Clone, Copy, PartialEq)]
|
#[derive(Debug, EnumAsInner, Clone, Copy, PartialEq)]
|
||||||
pub enum Label {
|
pub enum Label {
|
||||||
FixedEnd,
|
Adjacent,
|
||||||
LooseEnd,
|
|
||||||
Outer,
|
Outer,
|
||||||
Core,
|
Core,
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -98,9 +98,9 @@ impl Layout {
|
||||||
let seg = FixedSegIndex::new(self.graph.add_node(weight.into()));
|
let seg = FixedSegIndex::new(self.graph.add_node(weight.into()));
|
||||||
|
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(from.node_index(), seg.node_index(), Label::FixedEnd);
|
.add_edge(from.node_index(), seg.node_index(), Label::Adjacent);
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(seg.node_index(), to.node_index(), Label::FixedEnd);
|
.add_edge(seg.node_index(), to.node_index(), Label::Adjacent);
|
||||||
|
|
||||||
self.insert_into_rtree(seg.into());
|
self.insert_into_rtree(seg.into());
|
||||||
self.fail_and_remove_if_collides_except(seg.into(), &[])?;
|
self.fail_and_remove_if_collides_except(seg.into(), &[])?;
|
||||||
|
|
@ -132,9 +132,9 @@ impl Layout {
|
||||||
let seg = FixedSegIndex::new(self.graph.add_node(weight.into()));
|
let seg = FixedSegIndex::new(self.graph.add_node(weight.into()));
|
||||||
|
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(from.node_index(), seg.node_index(), Label::FixedEnd);
|
.add_edge(from.node_index(), seg.node_index(), Label::Adjacent);
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(seg.node_index(), to.node_index(), Label::LooseEnd);
|
.add_edge(seg.node_index(), to.node_index(), Label::Adjacent);
|
||||||
|
|
||||||
self.insert_into_rtree(seg.into());
|
self.insert_into_rtree(seg.into());
|
||||||
self.fail_and_remove_if_collides_except(seg.into(), &[])?;
|
self.fail_and_remove_if_collides_except(seg.into(), &[])?;
|
||||||
|
|
@ -166,9 +166,9 @@ impl Layout {
|
||||||
let seg = FixedSegIndex::new(self.graph.add_node(weight.into()));
|
let seg = FixedSegIndex::new(self.graph.add_node(weight.into()));
|
||||||
|
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(from.node_index(), seg.node_index(), Label::LooseEnd);
|
.add_edge(from.node_index(), seg.node_index(), Label::Adjacent);
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(seg.node_index(), to.node_index(), Label::LooseEnd);
|
.add_edge(seg.node_index(), to.node_index(), Label::Adjacent);
|
||||||
|
|
||||||
self.insert_into_rtree(seg.into());
|
self.insert_into_rtree(seg.into());
|
||||||
self.fail_and_remove_if_collides_except(seg.into(), &[])?;
|
self.fail_and_remove_if_collides_except(seg.into(), &[])?;
|
||||||
|
|
@ -235,9 +235,9 @@ impl Layout {
|
||||||
let bend = FixedBendIndex::new(self.graph.add_node(weight.into()));
|
let bend = FixedBendIndex::new(self.graph.add_node(weight.into()));
|
||||||
|
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(from.node_index(), bend.node_index(), Label::FixedEnd);
|
.add_edge(from.node_index(), bend.node_index(), Label::Adjacent);
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(bend.node_index(), to.node_index(), Label::FixedEnd);
|
.add_edge(bend.node_index(), to.node_index(), Label::Adjacent);
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(bend.node_index(), core.node_index(), Label::Core);
|
.add_edge(bend.node_index(), core.node_index(), Label::Core);
|
||||||
|
|
||||||
|
|
@ -274,9 +274,9 @@ impl Layout {
|
||||||
let bend = FixedBendIndex::new(self.graph.add_node(weight.into()));
|
let bend = FixedBendIndex::new(self.graph.add_node(weight.into()));
|
||||||
|
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(from.node_index(), bend.node_index(), Label::FixedEnd);
|
.add_edge(from.node_index(), bend.node_index(), Label::Adjacent);
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(bend.node_index(), to.node_index(), Label::FixedEnd);
|
.add_edge(bend.node_index(), to.node_index(), Label::Adjacent);
|
||||||
self.graph
|
self.graph
|
||||||
.add_edge(bend.node_index(), core.node_index(), Label::Core);
|
.add_edge(bend.node_index(), core.node_index(), Label::Core);
|
||||||
self.graph
|
self.graph
|
||||||
|
|
|
||||||
|
|
@ -79,7 +79,7 @@ impl<'a, W> GenericPrimitive<'a, W> {
|
||||||
self.graph
|
self.graph
|
||||||
.edge_weight(self.graph.find_edge(*ni, self.index.node_index()).unwrap())
|
.edge_weight(self.graph.find_edge(*ni, self.index.node_index()).unwrap())
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.is_fixed_end()
|
.is_adjacent()
|
||||||
})
|
})
|
||||||
.next()
|
.next()
|
||||||
}
|
}
|
||||||
|
|
@ -91,7 +91,7 @@ impl<'a, W> GenericPrimitive<'a, W> {
|
||||||
self.graph
|
self.graph
|
||||||
.edge_weight(self.graph.find_edge(self.index.node_index(), *ni).unwrap())
|
.edge_weight(self.graph.find_edge(self.index.node_index(), *ni).unwrap())
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.is_fixed_end()
|
.is_adjacent()
|
||||||
})
|
})
|
||||||
.next()
|
.next()
|
||||||
}
|
}
|
||||||
|
|
@ -145,7 +145,7 @@ impl<'a, W> Ends<FixedDotIndex, FixedDotIndex> for GenericPrimitive<'a, W> {
|
||||||
.0,
|
.0,
|
||||||
)
|
)
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.is_fixed_end()
|
.is_adjacent()
|
||||||
})
|
})
|
||||||
.filter(|ni| self.graph.node_weight(*ni).unwrap().is_fixed_dot())
|
.filter(|ni| self.graph.node_weight(*ni).unwrap().is_fixed_dot())
|
||||||
.map(|ni| FixedDotIndex::new(ni))
|
.map(|ni| FixedDotIndex::new(ni))
|
||||||
|
|
@ -201,7 +201,7 @@ impl<'a> FixedDot<'a> {
|
||||||
.0,
|
.0,
|
||||||
)
|
)
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.is_fixed_end()
|
.is_adjacent()
|
||||||
})
|
})
|
||||||
.filter(|ni| self.graph.node_weight(*ni).unwrap().is_fixed_bend())
|
.filter(|ni| self.graph.node_weight(*ni).unwrap().is_fixed_bend())
|
||||||
.map(|ni| FixedBendIndex::new(ni))
|
.map(|ni| FixedBendIndex::new(ni))
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue