(sizes, total)
| 156 | |
| 157 | @staticmethod |
| 158 | def _calc_k(sizes, total): |
| 159 | # sizes is a (n, 2) array of (rel_size, abs_size); this method finds |
| 160 | # the k factor such that sum(rel_size * k + abs_size) == total. |
| 161 | rel_sum, abs_sum = sizes.sum(0) |
| 162 | return (total - abs_sum) / rel_sum if rel_sum else 0 |
| 163 | |
| 164 | @staticmethod |
| 165 | def _calc_offsets(sizes, k): |