diff --git a/src/drawing/drawing.rs b/src/drawing/drawing.rs index d06ffbc..0f9423d 100644 --- a/src/drawing/drawing.rs +++ b/src/drawing/drawing.rs @@ -78,9 +78,9 @@ pub struct Drawing { } impl Drawing { - pub fn new(rules: R) -> Self { + pub fn new(rules: R, layer_count: usize) -> Self { Self { - geometry_with_rtree: GeometryWithRtree::new(2), + geometry_with_rtree: GeometryWithRtree::new(layer_count), rules, } } diff --git a/src/dsn/design.rs b/src/dsn/design.rs index 6b041f3..b7714da 100644 --- a/src/dsn/design.rs +++ b/src/dsn/design.rs @@ -124,8 +124,11 @@ impl DsnDesign { } pub fn make_board(&self) -> Board { - let rules = DsnMesadata::from_pcb(&self.pcb); - let mut board = Board::new(Layout::new(Drawing::new(rules))); + let mesadata = DsnMesadata::from_pcb(&self.pcb); + let mut board = Board::new(Layout::new(Drawing::new( + mesadata, + self.pcb.structure.layer_vec.len(), + ))); // mapping of pin -> net prepared for adding pins let pin_nets = HashMap::::from_iter(