On 4 mai 2012, at 01:23, Łukasz Czerwiński wrote:
On 4 May 2012 01:08, address@hidden <address@hidden> wrote:
On 4 mai 2012, at 00:37, Łukasz Czerwiński wrote:
Why? I don know the details of Lilypond's internals, but a "white-out" is a rather simple idea, isn't it?
Łukasz
What's hard is creating flexible blocking mechanisms for left-shifting objects. When collisions happen, there is no notion of elasticity - objects are not allowed to touch or they ignore each other. Here, we want something between - objects that can overlap but just by a little. We'd have to redo the spring and rod model at the core of LilyPond, which itself would a summer of lily (if not two or three!).
Cheers, MS
Aaah, I see... Thanks for the explanation. But as I understand, not everywhere springs and rods are used, e.g. beams collide with many objects and that's ok. If there is a place where I can read about springs and rods in Lilypond, just let me know instead of answering me.
Łukasz
There's a file you can read... lily/simple-spacer.cc
That is the long and short of the nuts and bolts. You can work backwards from the file to see where the functions in it are called (I believe that it's only in lily/constrained-breaking.cc).
Cheers, MS
|