|
From: | mike |
Subject: | Re: Uses single algorithm for side-position spacing. (issue 6827072) |
Date: | Fri, 30 Nov 2012 10:37:48 +0100 |
On 30 nov. 2012, at 07:25, address@hidden wrote:'finger-chords.ly' is still in disagreement with its texidoc (therefore I'm OK w/ the simplification, but I'd like it in box-quarantine if possible. I'd like to separate the shifting algorithm from the class. This is part of an effort, in general, to simplify and clarify the distinction between positioning algorithms and classes that use these algorithms (this is what I was doing w/ interval-minefield.cc as well). Eventually, box-quarantine will be used for the ScriptColumn grob. You should at least put the filenames back to what they were, and adjust Ugh...this is a really nasty cyclic dependency. In the old algorithm, when Y side positioning was done, X extents weren't necessary because we just assumed that things had infinite X extents. Now with the skylines, both X and Y extents are necessary to build the skylines. The cyclic dependency is with beam directions. The triggering chain is something to the effect of: 1) note_head_x_shift 2) stem direction 3) beam direction 4) pure y coordinates of stems to figure out auto knees 5) pure internal minimum translations via align interface 6) lots of pure heights in the axis group interface 7) pure heights of fingerings depend on new skyline side positioning algorithm 8) this algorithm needs the width of a note_head whose stem is attached to the same beam in (3) above, so note_head_x_shift 9) stem direction of the stem attached to that note 10) beam direction The dependency seems breakable, but it'll require some mental gymnastics to figure out how. I'm on it. MS |
[Prev in Thread] | Current Thread | [Next in Thread] |