LEFT | RIGHT |
1 /* | 1 /* |
2 This file is part of LilyPond, the GNU music typesetter. | 2 This file is part of LilyPond, the GNU music typesetter. |
3 | 3 |
4 Copyright (C) 2009--2011 Joe Neeman <joeneeman@gmail.com> | 4 Copyright (C) 2009--2011 Joe Neeman <joeneeman@gmail.com> |
5 | 5 |
6 LilyPond is free software: you can redistribute it and/or modify | 6 LilyPond is free software: you can redistribute it and/or modify |
7 it under the terms of the GNU General Public License as published by | 7 it under the terms of the GNU General Public License as published by |
8 the Free Software Foundation, either version 3 of the License, or | 8 the Free Software Foundation, either version 3 of the License, or |
9 (at your option) any later version. | 9 (at your option) any later version. |
10 | 10 |
(...skipping 516 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
527 last_spaceable_line_translation = -solution_[spring_idx]; | 527 last_spaceable_line_translation = -solution_[spring_idx]; |
528 found_spaceable_staff = true; | 528 found_spaceable_staff = true; |
529 spring_idx++; | 529 spring_idx++; |
530 } | 530 } |
531 else | 531 else |
532 { | 532 { |
533 if (loose_lines.empty ()) | 533 if (loose_lines.empty ()) |
534 loose_lines.push_back (last_spaceable_line); | 534 loose_lines.push_back (last_spaceable_line); |
535 | 535 |
536 if (staff_idx) | 536 if (staff_idx) |
| 537 // NOTE: the way we do distances between loose lines (and ot
her lines too, actually) |
| 538 // is not the most accurate way possible: we only insert rod
s between adjacent |
| 539 // lines. To be more accurate, we could insert rods between
non-adjacent lines |
| 540 // using a scheme similar to the one in set_column_rods. |
537 loose_line_min_distances.push_back (min_offsets[staff_idx-1]
- min_offsets[staff_idx]); | 541 loose_line_min_distances.push_back (min_offsets[staff_idx-1]
- min_offsets[staff_idx]); |
538 else | 542 else |
539 { // this is the first line in a system | 543 { // this is the first line in a system |
540 Real min_dist = 0; | 544 Real min_dist = 0; |
541 if (loose_lines.back ()) | 545 if (loose_lines.back ()) |
542 // distance to the final line in the preceding system, | 546 // distance to the final line in the preceding system, |
543 // including 'system-system-spacing 'padding | 547 // including 'system-system-spacing 'padding |
544 min_dist = (Axis_group_interface::minimum_distance (loos
e_lines.back (), | 548 min_dist = (Axis_group_interface::minimum_distance (loos
e_lines.back (), |
545 staf
f, | 549 staf
f, |
546 Y_AX
IS) | 550 Y_AX
IS) |
(...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
904 { | 908 { |
905 if (Hara_kiri_group_spanner::has_interface (input[i])) | 909 if (Hara_kiri_group_spanner::has_interface (input[i])) |
906 Hara_kiri_group_spanner::consider_suicide (input[i]); | 910 Hara_kiri_group_spanner::consider_suicide (input[i]); |
907 | 911 |
908 if (input[i]->is_live ()) | 912 if (input[i]->is_live ()) |
909 output.push_back (input[i]); | 913 output.push_back (input[i]); |
910 } | 914 } |
911 | 915 |
912 return output; | 916 return output; |
913 } | 917 } |
LEFT | RIGHT |