graph: Merge `FixedEnd` and `LooseEnd` into one `Adjacent`

This commit is contained in:
Mikolaj Wielgus 2023-10-23 01:55:28 +00:00
parent d5acfaccb5
commit 62579d98ba
3 changed files with 15 additions and 16 deletions

View File

@ -167,8 +167,7 @@ impl_type!(LooseBendWeight, LooseBend, LooseBendIndex);
#[derive(Debug, EnumAsInner, Clone, Copy, PartialEq)]
pub enum Label {
FixedEnd,
LooseEnd,
Adjacent,
Outer,
Core,
}

View File

@ -98,9 +98,9 @@ impl Layout {
let seg = FixedSegIndex::new(self.graph.add_node(weight.into()));
self.graph
.add_edge(from.node_index(), seg.node_index(), Label::FixedEnd);
.add_edge(from.node_index(), seg.node_index(), Label::Adjacent);
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.fail_and_remove_if_collides_except(seg.into(), &[])?;
@ -132,9 +132,9 @@ impl Layout {
let seg = FixedSegIndex::new(self.graph.add_node(weight.into()));
self.graph
.add_edge(from.node_index(), seg.node_index(), Label::FixedEnd);
.add_edge(from.node_index(), seg.node_index(), Label::Adjacent);
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.fail_and_remove_if_collides_except(seg.into(), &[])?;
@ -166,9 +166,9 @@ impl Layout {
let seg = FixedSegIndex::new(self.graph.add_node(weight.into()));
self.graph
.add_edge(from.node_index(), seg.node_index(), Label::LooseEnd);
.add_edge(from.node_index(), seg.node_index(), Label::Adjacent);
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.fail_and_remove_if_collides_except(seg.into(), &[])?;
@ -235,9 +235,9 @@ impl Layout {
let bend = FixedBendIndex::new(self.graph.add_node(weight.into()));
self.graph
.add_edge(from.node_index(), bend.node_index(), Label::FixedEnd);
.add_edge(from.node_index(), bend.node_index(), Label::Adjacent);
self.graph
.add_edge(bend.node_index(), to.node_index(), Label::FixedEnd);
.add_edge(bend.node_index(), to.node_index(), Label::Adjacent);
self.graph
.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()));
self.graph
.add_edge(from.node_index(), bend.node_index(), Label::FixedEnd);
.add_edge(from.node_index(), bend.node_index(), Label::Adjacent);
self.graph
.add_edge(bend.node_index(), to.node_index(), Label::FixedEnd);
.add_edge(bend.node_index(), to.node_index(), Label::Adjacent);
self.graph
.add_edge(bend.node_index(), core.node_index(), Label::Core);
self.graph

View File

@ -79,7 +79,7 @@ impl<'a, W> GenericPrimitive<'a, W> {
self.graph
.edge_weight(self.graph.find_edge(*ni, self.index.node_index()).unwrap())
.unwrap()
.is_fixed_end()
.is_adjacent()
})
.next()
}
@ -91,7 +91,7 @@ impl<'a, W> GenericPrimitive<'a, W> {
self.graph
.edge_weight(self.graph.find_edge(self.index.node_index(), *ni).unwrap())
.unwrap()
.is_fixed_end()
.is_adjacent()
})
.next()
}
@ -145,7 +145,7 @@ impl<'a, W> Ends<FixedDotIndex, FixedDotIndex> for GenericPrimitive<'a, W> {
.0,
)
.unwrap()
.is_fixed_end()
.is_adjacent()
})
.filter(|ni| self.graph.node_weight(*ni).unwrap().is_fixed_dot())
.map(|ni| FixedDotIndex::new(ni))
@ -201,7 +201,7 @@ impl<'a> FixedDot<'a> {
.0,
)
.unwrap()
.is_fixed_end()
.is_adjacent()
})
.filter(|ni| self.graph.node_weight(*ni).unwrap().is_fixed_bend())
.map(|ni| FixedBendIndex::new(ni))