本文整理了Java中org.matsim.core.utils.collections.QuadTree.size
方法的一些代码示例,展示了QuadTree.size
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QuadTree.size
方法的具体详情如下:
包路径:org.matsim.core.utils.collections.QuadTree
类名称:QuadTree
方法名:size
[英]The number of entries in the tree
[中]树中的条目数
代码示例来源:origin: matsim-org/matsim
/**
* Tests that by serializing and de-serializing a QuadTree, all important attributes
* of the QuadTree are maintained. At the moment, this is essentially the size-attribute.
* @throws IOException
* @throws ClassNotFoundException
*/
@Test
public void testSerialization() throws IOException, ClassNotFoundException {
QuadTree<String> qt = getTestTree();
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
ObjectOutputStream out = new ObjectOutputStream(outStream);
out.writeObject(qt);
out.close();
ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
ObjectInputStream in = new ObjectInputStream(inStream);
QuadTree<String> qt2 = (QuadTree<String>)in.readObject();
in.close();
assertEquals(qt.size(), qt2.size());
valuesTester(qt2.size(), qt2.values());
}
代码示例来源:origin: matsim-org/matsim
/**
* Test putting values into a QuadTree using {@link QuadTree#put(double, double, Object)}.
*/
@Test
public void testPut() {
QuadTree<String> qt = new QuadTree<>(-50.0, -50.0, +150.0, +150.0);
assertEquals(0, qt.size());
qt.put(10.0, 10.0, "10.0, 10.0");
assertEquals(1, qt.size());
qt.put(15.0, 15.0, "15.0, 15.0");
assertEquals(2, qt.size());
qt.put(-15.0, 0.0, "-15.0, 0.0");
assertEquals(3, qt.size());
qt.put(20.0, 10.0, "20.0, 10.0");
assertEquals(4, qt.size());
qt.put(100.0, 0.0, "100.0, 0.0");
assertEquals(5, qt.size());
qt.put(15.0, 15.0, "15.0, 15.0"); // insert an object a second time, shouldn't be added
assertEquals(5, qt.size());
qt.put(15.0, 15.0, "15.0, 15.0 B"); // insert a second object at an existing place
assertEquals(6, qt.size());
}
代码示例来源:origin: matsim-org/matsim
log.info("Found " + this.facilityQuadTrees.get(mode).size() + " facilities where mode " + mode + " is allowed.");
log.info("Found " + this.facilityQuadTrees.get(this.allModes).size() + " facilities where all modes are allowed.");
代码示例来源:origin: matsim-org/matsim
log.info("Found " + this.linkQuadTrees.get(mode).size() + " links where mode " + mode + " is allowed.");
log.info("Found " + this.linkQuadTrees.get(this.allModes).size() + " links where all modes are allowed.");
代码示例来源:origin: matsim-org/matsim
/**
* Test {@link QuadTree#clear()}.
*/
@Test
public void testClear() {
QuadTree<String> qt = getTestTree();
int size = qt.size();
assertTrue(size > 0); // it makes no sense to test clear() on an empty tree
qt.clear();
assertEquals(0, qt.size());
valuesTester(0, qt.values());
}
代码示例来源:origin: matsim-org/matsim
/**
* Test {@link QuadTree#values()} that it returns the correct content.
*/
@Test
public void testValues() {
QuadTree<String> qt = getTestTree();
int size = qt.size();
assertEquals(6, size);
// generic test
valuesTester(qt.size(), qt.values());
// test that values() got updated after adding an object to the tree
qt.put(80.0, 80.0, "80.0, 80.0");
assertEquals(size + 1, qt.size());
valuesTester(qt.size(), qt.values());
// test that values() got updated after removing an object to the tree
assertTrue(qt.remove(80.0, 80.0, "80.0, 80.0"));
assertEquals(size, qt.size());
valuesTester(qt.size(), qt.values());
// and remove one more...
assertTrue(qt.remove(10.0, 10.0, "10.0, 10.0"));
assertEquals(size - 1, qt.size());
valuesTester(qt.size(), qt.values());
// test the iterator
Iterator<String> iter = qt.values().iterator();
iter.next();
try {
iter.remove();
fail("expected UnsupportedOperationException, got none.");
} catch (UnsupportedOperationException expected) {}
}
代码示例来源:origin: matsim-org/matsim
/**
* Tests that a once obtained values-collection is indeed a live view
* on the QuadTree, so when the QuadTree changes, the view is updated
* as well.
*/
@Test
public void testValues_isView() {
QuadTree<String> qt = getTestTree();
int size = qt.size();
Collection<String> values = qt.values();
valuesTester(qt.size(), values);
qt.put(80.0, 80.0, "80.0, 80.0");
assertEquals(size + 1, qt.size());
valuesTester(size + 1, values);
qt.put(75.0, 75.0, "75.0, 75.0");
assertEquals(size + 2, qt.size());
valuesTester(size + 2, values);
assertTrue(qt.remove(80.0, 80.0, "80.0, 80.0"));
assertEquals(size + 1, qt.size());
valuesTester(size + 1, values);
}
代码示例来源:origin: matsim-org/matsim
public void testRemove() {
QuadTree<String> qt = getTestTree();
int size = qt.size();
assertEquals(size-1, qt.size());
assertEquals(size-1, qt.size());
assertEquals(size-1, qt.size());
assertEquals(size-2, qt.size());
assertEquals("15.0, 15.0 B", qt.getClosest(15.0, 15.0)); // the other object should still be there...
assertEquals(size-1, qt.size());
assertEquals("15.0, 15.0", qt.getClosest(15.0, 15.0)); // the other object should still be there...
assertEquals(size-1, qt.size());
代码示例来源:origin: matsim-org/matsim
LOG.info("Done populating QuadTree. Number of nodes affected: " + clusteredNodes.size());
代码示例来源:origin: matsim-org/matsim
/**
* Test {@link QuadTree#execute(double, double, double, double, QuadTree.Executor)}.
*/
@Test
public void testExecute() {
QuadTree<String> qt = getTestTree();
TestExecutor executor = new TestExecutor();
int count = qt.execute(0.0, 0.0, 20.1, 20.1, executor);
assertEquals(4, count);
assertEquals(4, executor.objects.size());
executor = new TestExecutor();
count = qt.execute(0.0, 0.0, 20.0, 20.0, executor);
assertEquals(3, count);
assertEquals(3, executor.objects.size());
executor = new TestExecutor();
count = qt.execute(0.0, 0.0, 19.9, 19.9, executor);
assertEquals(3, count);
assertEquals(3, executor.objects.size());
executor = new TestExecutor();
count = qt.execute(null, executor);
assertEquals(qt.size(), count);
assertEquals(qt.size(), executor.objects.size());
}
内容来源于网络,如有侵权,请联系作者删除!