bug fix
parent
06dc90a158
commit
faa7270267
|
@ -24,13 +24,19 @@ pub fn write_quad_tree(input: Slice2D, output: &mut BitVec<u8>) {
|
|||
input.get_slice2d((hmid..hlen, vmid..vlen)),
|
||||
];
|
||||
let mut buffer = BitVec::<u8>::new();
|
||||
for quadrant in quadrants {
|
||||
if let Some(v) = quadrant.get_all() {
|
||||
output.push(false);
|
||||
buffer.push(v);
|
||||
} else {
|
||||
output.push(true);
|
||||
write_quad_tree(quadrant, &mut buffer);
|
||||
if hlen == 2 || vlen == 2 {
|
||||
for quadrant in quadrants {
|
||||
buffer.push(quadrant.get((0, 0)));
|
||||
}
|
||||
} else {
|
||||
for quadrant in quadrants {
|
||||
if let Some(v) = quadrant.get_all() {
|
||||
output.push(false);
|
||||
buffer.push(v);
|
||||
} else {
|
||||
output.push(true);
|
||||
write_quad_tree(quadrant, &mut buffer);
|
||||
}
|
||||
}
|
||||
}
|
||||
output.extend_from_bitslice(&buffer);
|
||||
|
|
Loading…
Reference in New Issue