Fix removing from tree

This commit is contained in:
Ansis Brammanis
2013-02-19 18:06:18 -05:00
parent bb47f44a1e
commit 8e6e860f87
2 changed files with 10 additions and 2 deletions
+2 -2
View File
@@ -12,8 +12,8 @@ iD.Tree = function(graph) {
function extentRectangle(extent) {
x = m * extent[0][0],
y = m * extent[0][1],
dx = m * extent[1][0] - x || 1,
dy = m * extent[1][1] - y || 1;
dx = m * extent[1][0] - x || 2,
dy = m * extent[1][1] - y || 2;
return new RTree.Rectangle(~~x, ~~y, ~~dx - 1, ~~dy - 1);
}
+8
View File
@@ -52,5 +52,13 @@ describe("iD.Tree", function() {
var g = tree.graph().replace(n1).replace(n2);
expect(tree.intersects(iD.geo.Extent([0, 0], [1.1, 1.1]), g)).to.eql([n1]);
});
it("doesn't include removed entities", function() {
var n1 = iD.Node({ id: 'n1', loc: [1, 1]});
var g = tree.graph().replace(n1);
expect(tree.intersects(iD.geo.Extent([0, 0], [2, 2]), g)).to.eql([n1]);
g = g.remove(n1);
expect(tree.intersects(iD.geo.Extent([0, 0], [2, 2]), g)).to.eql([]);
});
});
});