lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: another skyline issue


From: Joe Neeman
Subject: Re: another skyline issue
Date: Tue, 5 Dec 2006 13:55:57 +0200

On 12/4/06, Werner LEMBERG <address@hidden> wrote:

The input below demonstrates that the current skyline algorithm is not
optimal for rehearsal numbers.  I suggest the introduction of a new
grob property `weight' (which takes a float number as a parameter) to
influence the steepness of the slope.  Example:


weight = 0:          weight = -1          weight = 1


  ---          ---     ---          ---     ---          ---
     \        /            \ grob /            \        /
      \ grob /               ----               \      /
        ----                                     \grob/
                                                  ----

In case of rehearsal numbers, the weight would be (almost) infinity to
get

   ---      ---
      |    |
      |grob|
       ----


What do you think?  Does this makes sense?  Can it be implemented?

This makes some sense, but there are a couple of points. First, I don't think that the rehearsal mark slope should be almost infinite. In the first of your examples, it would cause the rehearsal mark to move all the way down to the staff where it would be hard to find quickly.

Also, it will be easier for implementation to make the "weight" just be the max-slope of the skylines. So weight zero is flat, weight is always positive and the walls tend to vertical as the weight tends to infinity.

Alternatively, I wonder whether we need a sloped skyline at all
towards the staff.

I prefer it, anyway. I would prefer that grobs take up extra space above the staff than that they are packed in tightly with little horizontal room between them. If I make the max-slope configurable, though, we can both have it the way we want :)

In fact, the easiest thing implementation-wise (and therefore the one that I'll do first) is to make max-slope configurable but on an axis-group by axis-group level as opposed to grob by grob.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]