mirror of https://codeberg.org/topola/topola.git
geometry: move `Geometry` to a new module that is one level deeper
This commit is contained in:
parent
7f044f018f
commit
ca23d45673
|
|
@ -2,8 +2,8 @@ use enum_dispatch::enum_dispatch;
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
connectivity::{BandIndex, ComponentIndex},
|
connectivity::{BandIndex, ComponentIndex},
|
||||||
graph::GenericIndex,
|
graph::{GenericIndex, GetNodeIndex},
|
||||||
layout::{GetNodeIndex, Layout},
|
layout::Layout,
|
||||||
primitive::{GenericPrimitive, Primitive},
|
primitive::{GenericPrimitive, Primitive},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,8 @@ use geo::Point;
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
connectivity::{BandIndex, ComponentIndex},
|
connectivity::{BandIndex, ComponentIndex},
|
||||||
graph::GenericIndex,
|
graph::{GenericIndex, GetNodeIndex},
|
||||||
layout::{GetNodeIndex, Layout},
|
layout::Layout,
|
||||||
math::Circle,
|
math::Circle,
|
||||||
primitive::{GenericPrimitive, Primitive},
|
primitive::{GenericPrimitive, Primitive},
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ use crate::{
|
||||||
shape::{BendShape, DotShape, SegShape, Shape},
|
shape::{BendShape, DotShape, SegShape, Shape},
|
||||||
};
|
};
|
||||||
|
|
||||||
use super::{
|
use super::super::{
|
||||||
bend::{FixedBendIndex, FixedBendWeight, LooseBendIndex, LooseBendWeight},
|
bend::{FixedBendIndex, FixedBendWeight, LooseBendIndex, LooseBendWeight},
|
||||||
dot::{FixedDotIndex, FixedDotWeight, LooseDotIndex, LooseDotWeight},
|
dot::{FixedDotIndex, FixedDotWeight, LooseDotIndex, LooseDotWeight},
|
||||||
seg::{
|
seg::{
|
||||||
|
|
@ -107,18 +107,6 @@ macro_rules! impl_loose_weight {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
#[enum_dispatch(GetWidth, Retag<GeometryIndex>)]
|
|
||||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
|
||||||
pub enum GeometryWeight {
|
|
||||||
FixedDot(FixedDotWeight),
|
|
||||||
LooseDot(LooseDotWeight),
|
|
||||||
FixedSeg(FixedSegWeight),
|
|
||||||
LoneLooseSeg(LoneLooseSegWeight),
|
|
||||||
SeqLooseSeg(SeqLooseSegWeight),
|
|
||||||
FixedBend(FixedBendWeight),
|
|
||||||
LooseBend(LooseBendWeight),
|
|
||||||
}
|
|
||||||
|
|
||||||
#[enum_dispatch(GetNodeIndex, MakePrimitive)]
|
#[enum_dispatch(GetNodeIndex, MakePrimitive)]
|
||||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||||
pub enum GeometryIndex {
|
pub enum GeometryIndex {
|
||||||
|
|
@ -131,6 +119,18 @@ pub enum GeometryIndex {
|
||||||
LooseBend(LooseBendIndex),
|
LooseBend(LooseBendIndex),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[enum_dispatch(GetWidth, Retag<GeometryIndex>)]
|
||||||
|
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||||
|
pub enum GeometryWeight {
|
||||||
|
FixedDot(FixedDotWeight),
|
||||||
|
LooseDot(LooseDotWeight),
|
||||||
|
FixedSeg(FixedSegWeight),
|
||||||
|
LoneLooseSeg(LoneLooseSegWeight),
|
||||||
|
SeqLooseSeg(SeqLooseSegWeight),
|
||||||
|
FixedBend(FixedBendWeight),
|
||||||
|
LooseBend(LooseBendWeight),
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||||
pub enum GeometryLabel {
|
pub enum GeometryLabel {
|
||||||
Connection,
|
Connection,
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
#[macro_use]
|
||||||
|
mod geometry;
|
||||||
|
pub use geometry::*;
|
||||||
|
|
@ -1,9 +1,3 @@
|
||||||
#[macro_use]
|
|
||||||
pub mod geometry;
|
|
||||||
pub mod bend;
|
|
||||||
pub mod dot;
|
|
||||||
pub mod seg;
|
|
||||||
|
|
||||||
use contracts::{debug_ensures, debug_invariant};
|
use contracts::{debug_ensures, debug_invariant};
|
||||||
use enum_dispatch::enum_dispatch;
|
use enum_dispatch::enum_dispatch;
|
||||||
use geo::Point;
|
use geo::Point;
|
||||||
|
|
@ -43,8 +37,8 @@ use crate::segbend::Segbend;
|
||||||
use crate::shape::{Shape, ShapeTrait};
|
use crate::shape::{Shape, ShapeTrait};
|
||||||
use crate::wraparoundable::{GetWraparound, Wraparoundable, WraparoundableIndex};
|
use crate::wraparoundable::{GetWraparound, Wraparoundable, WraparoundableIndex};
|
||||||
|
|
||||||
use self::bend::BendWeight;
|
use super::bend::BendWeight;
|
||||||
use self::seg::SegWeight;
|
use super::seg::SegWeight;
|
||||||
|
|
||||||
pub type RTreeWrapper = GeomWithData<Shape, GeometryIndex>;
|
pub type RTreeWrapper = GeomWithData<Shape, GeometryIndex>;
|
||||||
|
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
#[macro_use]
|
||||||
|
pub mod geometry;
|
||||||
|
pub mod bend;
|
||||||
|
pub mod dot;
|
||||||
|
pub mod seg;
|
||||||
|
|
||||||
|
mod layout;
|
||||||
|
pub use layout::*;
|
||||||
|
|
@ -2,8 +2,8 @@ use enum_dispatch::enum_dispatch;
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
connectivity::{BandIndex, ComponentIndex},
|
connectivity::{BandIndex, ComponentIndex},
|
||||||
graph::GenericIndex,
|
graph::{GenericIndex, GetNodeIndex},
|
||||||
layout::{GetNodeIndex, Layout},
|
layout::Layout,
|
||||||
primitive::{GenericPrimitive, Primitive},
|
primitive::{GenericPrimitive, Primitive},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue