diff --git a/src/mesh.rs b/src/mesh.rs index 15ee092..dfb734a 100644 --- a/src/mesh.rs +++ b/src/mesh.rs @@ -34,7 +34,7 @@ pub enum VertexIndex { #[derive(Debug, Clone)] struct TriangulationWeight { vertex: VertexIndex, - layers: Vec, + rails: Vec, pos: Point, } @@ -71,14 +71,14 @@ impl Mesh { Index::FixedDot(fixed_dot) => { self.triangulation.add_vertex(TriangulationWeight { vertex: fixed_dot.into(), - layers: vec![], + rails: vec![], pos: center, })?; } Index::FixedBend(fixed_bend) => { self.triangulation.add_vertex(TriangulationWeight { vertex: fixed_bend.into(), - layers: vec![], + rails: vec![], pos: center, })?; } @@ -91,7 +91,7 @@ impl Mesh { Index::LooseBend(loose_bend) => { self.triangulation .weight_mut(layout.primitive(loose_bend).core().into()) - .layers + .rails .push(loose_bend.into()); } _ => (), @@ -148,7 +148,7 @@ impl<'a> visit::IntoNeighbors for &'a Mesh { iter::once(neighbor).chain( self.triangulation .weight(neighbor) - .layers + .rails .iter() .map(|index| VertexIndex::from(*index)), ) @@ -164,7 +164,7 @@ fn edges( from_vertices.extend( triangulation .weight(edge.source()) - .layers + .rails .iter() .map(|bend| VertexIndex::from(*bend)), ); @@ -173,7 +173,7 @@ fn edges( to_vertices.extend( triangulation .weight(edge.target()) - .layers + .rails .iter() .map(|bend| VertexIndex::from(*bend)), ); diff --git a/src/primitive.rs b/src/primitive.rs index 884a71b..a2fe421 100644 --- a/src/primitive.rs +++ b/src/primitive.rs @@ -12,7 +12,7 @@ use crate::graph::{ }; use crate::math::{self, Circle}; use crate::shape::{BendShape, DotShape, SegShape, Shape, ShapeTrait}; -use crate::traverser::OutwardLayerTraverser; +use crate::traverser::OutwardRailTraverser; #[enum_dispatch] pub trait GetGraph { @@ -50,14 +50,14 @@ pub trait GetOtherEnd>: GetEnds } } -pub trait TraverseOutward: GetFirstLayer { - fn traverse_outward(&self) -> OutwardLayerTraverser { - OutwardLayerTraverser::new(self.first_layer(), self.graph()) +pub trait TraverseOutward: GetFirstRail { + fn traverse_outward(&self) -> OutwardRailTraverser { + OutwardRailTraverser::new(self.first_rail(), self.graph()) } } -pub trait GetFirstLayer: GetGraph + GetNodeIndex { - fn first_layer(&self) -> Option { +pub trait GetFirstRail: GetGraph + GetNodeIndex { + fn first_rail(&self) -> Option { self.graph() .neighbors_directed(self.node_index(), Incoming) .filter(|ni| self.graph().find_edge(self.node_index(), *ni).is_some()) @@ -240,7 +240,7 @@ impl<'a> MakeShape for FixedDot<'a> { } impl<'a> TraverseOutward for FixedDot<'a> {} -impl<'a> GetFirstLayer for FixedDot<'a> {} +impl<'a> GetFirstRail for FixedDot<'a> {} pub type LooseDot<'a> = GenericPrimitive<'a, LooseDotWeight>; impl_primitive!(LooseDot, LooseDotWeight); @@ -406,7 +406,7 @@ impl<'a> GetEnds for FixedBend<'a> { impl<'a> GetOtherEnd for FixedBend<'a> {} impl<'a> TraverseOutward for FixedBend<'a> {} -impl<'a> GetFirstLayer for FixedBend<'a> {} +impl<'a> GetFirstRail for FixedBend<'a> {} impl<'a> GetCore for FixedBend<'a> {} // TODO: Fixed bends don't have cores actually. //impl<'a> GetInnerOuter for FixedBend<'a> {} @@ -416,11 +416,11 @@ impl_primitive!(LooseBend, LooseBendWeight); impl<'a> LooseBend<'a> { fn inner_radius(&self) -> f64 { let mut r = 0.0; - let mut layer = LooseBendIndex::new(self.index.node_index()); + let mut rail = LooseBendIndex::new(self.index.node_index()); - while let Some(inner) = self.primitive(layer).inner() { + while let Some(inner) = self.primitive(rail).inner() { r += self.primitive(inner).width(); - layer = inner; + rail = inner; } let core_circle = self diff --git a/src/tracer.rs b/src/tracer.rs index 7dcc11c..a323caf 100644 --- a/src/tracer.rs +++ b/src/tracer.rs @@ -5,7 +5,7 @@ use crate::{ graph::{FixedDotIndex, LooseBendIndex}, layout::Layout, mesh::{Mesh, VertexIndex}, - primitive::{GetFirstLayer, GetInnerOuter}, + primitive::{GetFirstRail, GetInnerOuter}, rules::Rules, }; @@ -106,8 +106,8 @@ impl<'a> Tracer<'a> { ) -> Result { let head = self.draw().segbend_around_dot(head, around.into(), width)?; - if let Some(first_layer) = self.layout.primitive(around).first_layer() { - self.layout.reattach_bend(first_layer, head.segbend.bend); + if let Some(first_rail) = self.layout.primitive(around).first_rail() { + self.layout.reattach_bend(first_rail, head.segbend.bend); self.update_outward(head.segbend.bend); } @@ -134,11 +134,11 @@ impl<'a> Tracer<'a> { } fn update_outward(&mut self, bend: LooseBendIndex) { - let mut layer = bend; + let mut rail = bend; - while let Some(outer) = self.layout.primitive(layer).outer() { + while let Some(outer) = self.layout.primitive(rail).outer() { self.draw().update_bow(bend); - layer = outer; + rail = outer; } } diff --git a/src/traverser.rs b/src/traverser.rs index 7939273..4825362 100644 --- a/src/traverser.rs +++ b/src/traverser.rs @@ -5,27 +5,27 @@ use crate::{ primitive::{GenericPrimitive, GetInnerOuter}, }; -pub struct OutwardLayerTraverser<'a> { - layer: Option, +pub struct OutwardRailTraverser<'a> { + rail: Option, graph: &'a StableDiGraph, } -impl<'a> OutwardLayerTraverser<'a> { +impl<'a> OutwardRailTraverser<'a> { pub fn new( - layer: Option, + rail: Option, graph: &'a StableDiGraph, ) -> Self { - Self { layer, graph } + Self { rail, graph } } } -impl<'a> Iterator for OutwardLayerTraverser<'a> { +impl<'a> Iterator for OutwardRailTraverser<'a> { type Item = LooseBendIndex; fn next(&mut self) -> Option { - self.layer.map(|layer| { - self.layer = GenericPrimitive::new(layer, self.graph).outer(); - layer + self.rail.map(|rail| { + self.rail = GenericPrimitive::new(rail, self.graph).outer(); + rail }) } }