[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Uses horizontal skylines in accidental placement (issue 6489086)
From: |
address@hidden |
Subject: |
Re: Uses horizontal skylines in accidental placement (issue 6489086) |
Date: |
Fri, 7 Sep 2012 23:54:12 +0300 |
On 7 sept. 2012, at 10:11, address@hidden wrote:
> The output looks very nice, even with half-sharps, reverse flats, etc.
> The patch makes compilation take 6% longer (depending on accidental
> density).
>
> The reverse flats don't get any extra space around their stems, but I
> haven't find a case where they need it, because they are placed in the
> same order as regular flats so they do not nest.
>
> Maybe it would be cleaner to have a blanket rule that the skylines
> always enclose the 'spine' of the glyph, assuming the spine has
> x-coordinate zero, by merging a box of dimensions
> 0.4* X-extent() by Y-extent ()
> into the skylines.
Good call - that'll speed things up.
>
>
>
>
> http://codereview.appspot.com/6489086/diff/12001/lily/accidental.cc
> File lily/accidental.cc (right):
>
> http://codereview.appspot.com/6489086/diff/12001/lily/accidental.cc#newcode86
> lily/accidental.cc:86: * suicide, so it is not pure.
> Is this the book of Leviticus ? The completion of the concept is "...,
> but we use this function /before/ line-breaking"
>
I will see if I can make it more New-Testament sounding...I hope my old hebrew
school teachers aren't reading this thread.
> http://codereview.appspot.com/6489086/diff/12001/lily/accidental.cc#newcode101
> lily/accidental.cc:101: if (glyph_name == "accidentals.flat"
> Since this is such a special case, it would be nicer to encode the extra
> space around a flat's stem as a non-printing the glyph outline --- if we
> can interest anyone with sufficient MetaFont competence.
Your 0.4 suggestion above makes a lot of sense - I'll just do that for now.
>
> http://codereview.appspot.com/6489086/diff/12001/lily/accidental.cc#newcode110
> lily/accidental.cc:110: Real left = (*sky)[LEFT].max_height ();
> Doesn't matter much for the current flat symbol, but in general you
> don't want to merge in a box that goes this far left.
Ok.
>
> http://codereview.appspot.com/6489086/diff/12001/lily/accidental.cc#newcode111
> lily/accidental.cc:111: Real right = (*sky)[RIGHT].average_height () *
> 0.75;
> A fraction of max_height() is easier to visualize than average_height.
Ok.
>
> http://codereview.appspot.com/6489086/diff/12001/lily/accidental.cc#newcode113
> lily/accidental.cc:113: Real up = (*sky)[RIGHT].right ();
> Maybe just use extent(Y_AXIS)?
>
> http://codereview.appspot.com/6489086/diff/12001/lily/accidental.cc#newcode116
> lily/accidental.cc:116: Skyline_pair merge_with_me (boxes, Y_AXIS);
> Is it feasible to just merge with the right-hand skyline of the pair?
Yes - will do.
>
> http://codereview.appspot.com/6489086/
Re: Uses horizontal skylines in accidental placement (issue 6489086), k-ohara5a5a, 2012/09/28