Warning: session_start(): open(/var/lib/php/sessions/sess_84fu21c4fbvk9gh3knflj6h17e, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
svoid test_QuadTreeBitMatrix() {
// 4*4, one pixel white
BitSetMatrix m = new(4, 4);
m.set(1, 1);
QuadTreeBitMatrix qd = bitMatrixToQuadTree(m);
assertTrueVerbose(equal := eqMatrices(m, qd));
assertEqualsVerbose(2, qd.compositeNodeCount());
// turn pixel back to black
qd.set(1, 1, false);
m.set(1, 1, false);
assertTrueVerbose(equal := eqMatrices(m, qd));
print(structure(qd));
qd.set(1, 1, false);
print(structure(qd));
assertEqualsVerbose(0, qd.compositeNodeCount());
test_QuadTreeBitMatrix_2();
}
svoid test_QuadTreeBitMatrix_2() {
for (double p = .1; p < 1; p += .1) {
new Average nodes;
repeat 100 {
var matrix = randomBitMatrix(8, 8, p);
QuadTreeBitMatrix qt = bitMatrixToQuadTree(matrix);
nodes.add(qt.compositeNodeCount());
assertTrueVerbose(eqMatrices(matrix, qt));
}
printVars(+p, +nodes);
}
}