Looks like i've asked too many questions... I'll try to prepare some draft and put it up to Rietveld.
cheers, Janek 2011/9/13 Janek Warchoł <janek.lilyp...@gmail.com>: > 2011/9/13 Han-Wen Nienhuys <hanw...@gmail.com>: >> 2011/9/12 Janek Warchoł <janek.lilyp...@gmail.com>: >>> i'm pretty confused about how note columns shift is measured (line 277 >>> and following in note-collision.cc). I tried modifying the values >>> there, but the results were quite unexpected; i tried to trace in what >>> unit is shift_amount measured but to no avail. Could you enlighten >>> me? >>> (my idea to fix 1546 is to include X-extent of the left note column in >>> shift_amount). >> >> see Note_collision_interface::calc_positioning_done (SCM smob); it's >> width of the notehead of clashgroup 0. > > i see something... is it line 387: wid = ... ? > I think the problem is precisely that we read the x-extent of > clashgroup 0 (the one in the structurally highest voice, i.e. in > voiceOne) which doesn't have to be the one that will end up on the > left. > Hmm... all this looks very complicated, and i think it qualifies for > a partial rewrite. > > I'd say that it should work like this: > get the colliding notecolumns (it's notecolumns that the code is > working on, isn't it?) > decide which goes on the left > calculate amount of shift > apply this shift (or a user-overridden one) > > Some more questions to clarify things: > how do i know which clashgroup (or whatever else is appropriate) ends > on the left? > How does shift work - does it only move the column on the right by the > shift_amount, or does it try to move both columns, each by half > shift_amount? > What is amount, amounts and tups? > What's a slice and what does it do here? > Is Note_collision_interface::calc_positioning_done the top-most > function? (i.e. the one that is called from outside - sort of main() - > and everything else in note-collision.cc is it's "descendant"?) > When a "full collision" occurs? > Is all ASCII-art correct? I don't see what "illustrations" on lines > 125 and 510 could mean. > > Sorry for noobish questions, but i'm reading this file for an hour and > still don't understand it. It's like a Gordian Knot to me. > > thanks, > Janek > _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel