tiling: Fix rounding error causing overlap

This commit is contained in:
Victoria Brekenfeld 2023-10-26 15:10:32 +02:00
parent 1d799f4fa8
commit 33688e9bcf

View file

@ -289,8 +289,11 @@ impl Data {
.round() as i32; .round() as i32;
}); });
let sum: i32 = sizes.iter().sum(); let sum: i32 = sizes.iter().sum();
if sum < new_length {
*sizes.last_mut().unwrap() += new_length - sum; // fix rounding issues
if sum != new_length {
let diff = new_length - sum;
*sizes.last_mut().unwrap() += diff;
} }
*last_geometry = geo; *last_geometry = geo;
} }