diff --git a/src/layout/geometry/with_rtree.rs b/src/layout/geometry/with_rtree.rs index 0440714..45e5de7 100644 --- a/src/layout/geometry/with_rtree.rs +++ b/src/layout/geometry/with_rtree.rs @@ -29,7 +29,7 @@ pub struct GeometryWithRtree< BI: GetNodeIndex + Into + Copy, > { geometry: Geometry, - pub rtree: RTree>, + rtree: RTree>, weight_marker: PhantomData, dot_weight_marker: PhantomData, seg_weight_marker: PhantomData, @@ -210,6 +210,10 @@ impl< &self.geometry } + pub fn rtree(&self) -> &RTree> { + &self.rtree + } + pub fn graph(&self) -> &StableDiGraph { self.geometry.graph() } diff --git a/src/layout/layout.rs b/src/layout/layout.rs index 4eac187..831571d 100644 --- a/src/layout/layout.rs +++ b/src/layout/layout.rs @@ -748,7 +748,7 @@ impl Layout { pub fn nodes(&self) -> impl Iterator + '_ { self.geometry_with_rtree - .rtree + .rtree() .iter() .map(|wrapper| wrapper.data) } @@ -763,7 +763,7 @@ impl Layout { fn node_indices(&self) -> impl Iterator + '_ { self.geometry_with_rtree - .rtree + .rtree() .iter() .map(|wrapper| wrapper.data) } @@ -813,7 +813,7 @@ impl Layout { let shape = node.primitive(self).shape(); self.geometry_with_rtree - .rtree + .rtree() .locate_in_envelope_intersecting(&RTreeObject::envelope(&shape)) .filter(|wrapper| { let other_index = wrapper.data; @@ -833,7 +833,7 @@ impl Layout { let shape = node.primitive(self).shape(); self.geometry_with_rtree - .rtree + .rtree() .locate_in_envelope_intersecting(&RTreeObject::envelope(&shape)) .filter(|wrapper| { let other_index = wrapper.data;