On Sun, 2010-06-27 at 06:56 -0400, Boris Shingarov wrote:
> Hi Arno,
>
> Here are some design remarks about what I understood from my work on the
> breaker.  Hopefully a sum of a few [dozen?] of mails like this will
> together constitute something to transform into a chapter in the CG...
> >
> >> Thanks, I've reverted the patch in the meantime. However, the
> >> information that you see in annotate-spacing is actually computed after
> >> line-breaking,
> >
> > ok, so why can't it then be taken into account for page-breaking?
> The problem is that page-breaking does not come *after* page-breaking.
> Well, conceptually, it sort of does.  But the optimization of breaking
> is global over the product space of all line breaking possibilities by
> all page breaking possibilities.  It is done in the hope to get more
> optimal breaks.   The downside is that we are forced to use "height
> estimations" instead of real heights of things; otherwise we would need
> to do page layout for every possible break configuration, which would be
> prohibitively expensive.
>
> This was discussed on this list only a few weeks ago.  I think we are on
> our way to get rid of global page*line breaking.

Although I am happy to have an option to do full line-breaking before
page-breaking, I am very much against getting rid of the line and
page-breaking interaction. For example, if we did that then we would
have to scrap the new vertical layout since it relies on being able to
stretch the systems after the pages are determined. And while I have a
personal bias against scrapping the vertical layout (since I wrote it),
I do think that it is a big improvement over the previous layout
algorithm and I have heard comments to that effect on the lists too.
Also, the page-turn-breaker can't function without some interaction
between line- and page-breaking.

> > Since it more than doubles the computation time (often by far) there
> > must be something redundant, no?
> No, because the height used in page breaking, is not the actual height;
> it is just an estimate (often wrong).  This is what Joe means when he
> says, "...and they aren't actually correct to begin with".

Actually, in this case it was just stupidity on my part. I was including
into the height-estimate of each system _every_ RehearsalMark in the
whole score, whether it belonged to that staff or not.

Cheers,
Joe
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to