Left: | ||
Right: |
LEFT | RIGHT |
---|---|
(no file at all) | |
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) 1996--2011 Han-Wen Nienhuys <hanwen@xs4all.nl> | 4 Copyright (C) 1996--2011 Han-Wen Nienhuys <hanwen@xs4all.nl> |
5 Jan Nieuwenhuizen <janneke@gnu.org> | 5 Jan Nieuwenhuizen <janneke@gnu.org> |
6 | 6 |
7 TODO: This is way too hairy | 7 TODO: This is way too hairy |
8 | 8 |
9 TODO: fix naming. | 9 TODO: fix naming. |
10 | 10 |
(...skipping 832 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
843 if (is_invisible (me)) | 843 if (is_invisible (me)) |
844 attach = 0.0; | 844 attach = 0.0; |
845 else | 845 else |
846 attach = Note_head::stem_attachment_coordinate (f, X_AXIS); | 846 attach = Note_head::stem_attachment_coordinate (f, X_AXIS); |
847 | 847 |
848 Direction d = get_grob_direction (me); | 848 Direction d = get_grob_direction (me); |
849 Real real_attach = head_wid.linear_combination (d * attach); | 849 Real real_attach = head_wid.linear_combination (d * attach); |
850 Real r = real_attach; | 850 Real r = real_attach; |
851 | 851 |
852 /* If not centered: correct for stem thickness. */ | 852 /* If not centered: correct for stem thickness. */ |
853 if (attach) | 853 extract_grob_set (me, "note-heads", heads); |
Keith
2011/10/03 04:57:59
'f' already points to the first head; why not just
Bertrand Bordage
2011/10/03 08:52:27
... OK.
| |
854 SCM style = heads[0]->get_property ("style"); | |
855 if (attach && !scm_is_eq (style, ly_symbol2scm ("mensural")) | |
Keith
2011/10/03 04:57:59
To adjust the attach points, shouldn't you adjust
Bertrand Bordage
2011/10/03 08:52:27
Of course, but we only choose the position of the
Keith
2011/10/03 09:30:31
Right-aligned for up-stems, left-aligned for down-
Bertrand Bordage
2011/10/07 09:47:24
I meant: the stem is aligned to the right of the a
Keith
2011/10/07 17:56:08
Okay; I thought the centered case was excluded by
| |
856 && !scm_is_eq (style, ly_symbol2scm ("neomensural")) | |
857 && !scm_is_eq (style, ly_symbol2scm ("petrucci"))) | |
854 { | 858 { |
855 Real rule_thick = thickness (me); | 859 Real rule_thick = thickness (me); |
856 r += -d * rule_thick * 0.5; | 860 r += -d * rule_thick * 0.5; |
857 } | 861 } |
858 return scm_from_double (r); | 862 return scm_from_double (r); |
859 } | 863 } |
860 | 864 |
861 programming_error ("Weird stem."); | 865 programming_error ("Weird stem."); |
862 return scm_from_double (0.0); | 866 return scm_from_double (0.0); |
863 } | 867 } |
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1112 ideal_y_ = shortest_y_ = 0; | 1116 ideal_y_ = shortest_y_ = 0; |
1113 dir_ = CENTER; | 1117 dir_ = CENTER; |
1114 } | 1118 } |
1115 | 1119 |
1116 void | 1120 void |
1117 Stem_info::scale (Real x) | 1121 Stem_info::scale (Real x) |
1118 { | 1122 { |
1119 ideal_y_ *= x; | 1123 ideal_y_ *= x; |
1120 shortest_y_ *= x; | 1124 shortest_y_ *= x; |
1121 } | 1125 } |
LEFT | RIGHT |