Skip to content

Commit 041e661

Browse files
committed
fix idx confusion
1 parent 675fab0 commit 041e661

File tree

2 files changed

+15
-10
lines changed

2 files changed

+15
-10
lines changed

geo/src/algorithm/relate/geomgraph/index/rstar_edge_set_intersector.rs

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ where
2626
let edge_0 = &mut edges[segment_0.edge_idx];
2727
segment_intersector.add_intersections_against_self(
2828
edge_0,
29-
segment_0.edge_idx,
30-
segment_1.edge_idx,
29+
segment_0.segment_idx,
30+
segment_1.segment_idx,
3131
);
3232
} else {
3333
// XXX: use get_many_mut when available.
@@ -42,9 +42,19 @@ where
4242
let edge_1 = &mut e1[mx - (mi + 1)];
4343

4444
if segment_0.edge_idx > segment_1.edge_idx {
45-
segment_intersector.add_intersections(edge_1, mx, edge_0, mi);
45+
segment_intersector.add_intersections(
46+
edge_1,
47+
segment_0.segment_idx,
48+
edge_0,
49+
segment_1.segment_idx,
50+
);
4651
} else {
47-
segment_intersector.add_intersections(edge_0, mi, edge_1, mx);
52+
segment_intersector.add_intersections(
53+
edge_0,
54+
segment_0.segment_idx,
55+
edge_1,
56+
segment_1.segment_idx,
57+
);
4858
}
4959
}
5060
}

geo/src/algorithm/relate/geomgraph/index/simple_edge_set_intersector.rs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,10 @@ impl<F: GeoFloat> EdgeSetIntersector<F> for SimpleEdgeSetIntersector {
5050
segment_intersector: &mut SegmentIntersector<F>,
5151
) {
5252
let edges = graph.edges_mut();
53-
let mut checks = 0;
5453
for i in 0..edges.len() {
5554
let (e0, e1) = edges.split_at_mut(i + 1);
5655
let (e0, edge0) = e0.split_at_mut(i);
57-
assert_eq!(edge0.len(), 1);
56+
debug_assert_eq!(edge0.len(), 1);
5857
let edge0 = &mut edge0[0];
5958

6059
if check_for_self_intersecting_edges {
@@ -63,12 +62,8 @@ impl<F: GeoFloat> EdgeSetIntersector<F> for SimpleEdgeSetIntersector {
6362

6463
for edge1 in e0.iter_mut().chain(e1) {
6564
self.compute_intersects(edge0, edge1, segment_intersector);
66-
checks += 1;
6765
}
6866
}
69-
70-
println!("checks: {}", checks);
71-
assert_eq!(checks, edges.len()*edges.len());
7267
}
7368

7469
fn compute_intersections_between_sets<'a>(

0 commit comments

Comments
 (0)