Menu

#1861 DynamicText attached to spacer rest not correctly aligned

Verified
nobody
Ugly
2015-07-17
2011-09-04
Anonymous
No

Originally created by: *anonymous

Originally created by: PhilEHol...@googlemail.com
Originally owned by: mts...@gmail.com

Reported by Xavier Scheuer:

Since Issue 620 is now fixed DynamicTextSpanner and Hairpin are now
correctly aligned when attached to spacer rests (e.g. in piano centered
dynamics).

It would be nice if DynamicText was also correctly aligned, which is
not the case now. 

Here is a minimal example showing the difference of horizontal
alignment between dynamics attached to notes and attached to spacer
rests (within a Dynamics context).

\score {
  <<
    \new PianoStaff <<
      \new Staff = "up" {
        \clef treble
        \relative c' {
          c4\p c c\mp c |
          c4\mf c c\f c |
          <<
            \repeat unfold 8 c4
            \new Dynamics = "dynamics" \with {
              alignBelowContext = "up"
            } {
              s4\p s s\mp s |
              s4\mf s s\f s
            }
          >>
        }
      }
      \new Staff = "down" {
        \clef bass
        \repeat unfold 16 c4
      }
    >>
  >>
}

1 Attachments

Related

Issues: #3299

Discussion

  • Google Importer

    Google Importer - 2011-11-09

    Originally posted by: michaeld...@earthlink.net

    I wonder if the issue revolves around centering dynamics on grobs with width (as in the former part of the example) and centering dynamics on spacers that have no width (as in the latter)?

     
  • Google Importer

    Google Importer - 2011-12-21

    Originally posted by: mts...@gmail.com

    Correctly centers dynamics in the Dynamics context.

    http://codereview.appspot.com/5498058

    Labels: Patch-new

     
  • Google Importer

    Google Importer - 2011-12-21

    Originally posted by: lilypond...@gmail.com

    Patchy the autobot says: LGTM.

    Labels: Patch-review

     
  • Google Importer

    Google Importer - 2011-12-22

    Originally posted by: ColinPKC...@gmail.com

    (No comment was entered for this change.)

    Labels: -Patch-review Patch-countdown
    Owner: mts...@gmail.com

     
  • Google Importer

    Google Importer - 2011-12-24

    Originally posted by: ColinPKC...@gmail.com

    Counted down to 20111224, please push

    Labels: -Patch-countdown Patch-push

     
  • Google Importer

    Google Importer - 2011-12-28

    Originally posted by: mts...@gmail.com

    Pushed as [r47236e0a7a5a75d5dd2be521c44102b20d8c76ce]

    Status: Fixed

     
  • Google Importer

    Google Importer - 2011-12-31

    Originally posted by: PhilEHol...@googlemail.com

    (No comment was entered for this change.)

    Labels: -Patch-push Fixed_2_15_24

     
  • Google Importer

    Google Importer - 2012-01-11

    Originally posted by: Elu...@gmail.com

    the dynamics in the Dynamics context look fine - but combined with the former dynamics directly attached to the notes I get the following errors (which were absent in 2.15.23):

    GNU LilyPond 2.15.24
    Processing `issue1861.ly'
    Parsing...
    Interpreting music...
    programming error: grob does not belong to a VerticalAlignment?
    continuing, cross fingers
    programming error: grob does not belong to a VerticalAlignment?
    continuing, cross fingers
    Preprocessing graphical objects...
    Finding the ideal number of pages...
    Fitting music on 1 page...
    Drawing systems...
    Layout output to `issue1861.ps'...
    Converting to `./issue1861.pdf'...
    Success: compilation successfully completed

     
  • Google Importer

    Google Importer - 2012-01-11

    Originally posted by: k-ohara5...@oco.net

    The error message did not appear with the commit that fixed this issue, but later with 70fd22c.  Commit 70fd22c was cleanup from the fix for issue 1846, so I'll note the error message there so we don't lose the information.

    So, this issue is fixed. 

    Status: Verified

     
  • Google Importer

    Google Importer - 2015-07-14

    Originally posted by: simon.al...@mail.de

    Greg reported that this is not fixed in fact. There are some inconsistencies in current behaviour, illustrated by the following example:

    \version "2.18.2" % same with 2.19.22

    \score {
      <<
        \new Staff \relative g' {
          << g1 s1\sfz^"1" >> % sfz attached to spacer too far left
          \revert Script.self-alignment-X
          << g1 s1\sfz^"2" >> % correct position after revert
        }
        \new Staff \relative g' {
          << g1\sfz^"3" s1 >> % sfz correct when attached to note instead
          << g1 s1\sfz^"4" >> % sfz too far left as in no. 1
          g1\sfz^"5" % sfz correct when no spacer involved
          << g1 s1\sfz^"6" >> % sfz attached to spacer now correct
        }
      >>
    }

    Could someone please test this example with 2.15.24, to see if there is a regression?
    Issue 3299 covers a similar topic.

    Labels: -Fixed_2_15_24
    Status: Accepted

     
  • Google Importer

    Google Importer - 2015-07-15

    Originally posted by: k-ohara5...@oco.net

    I cannot reproduce on either Windows nor Linux, so I asked for help on bug-lilypond to reduce it to the minimum example that we might trace.

    The original example remains fixed, and this new report seems to involve text scripts as an essential element, so let's have a new issue.

    Labels: fixed_2_15_24
    Status: Verified

     
  • Google Importer

    Google Importer - 2015-07-16

    Originally posted by: simon.al...@mail.de

    Where would the similarity be? I’d say that issue 3570 is about spacing of consecutive columns and this here is about alignment of simultaneous grobs.

     
  • Google Importer

    Google Importer - 2015-07-17

    Originally posted by: simon.al...@mail.de

    In fact, version 2.18.2 shows the bug as in comment #11, but I have been wrong in that it has been fixed again somewhere between versions 2.19.8 and .16. Thanks to whoever did that…
    (Should we add an additional label ‘fixed_2_19_xx’? I can’t tell exactly when)

     
  • Google Importer

    Google Importer - 2015-07-17

    Originally posted by: dak@gnu.org

    I'll do a bisection and see whether I can pinpoint it.  My guess is that it is sort of an accidental consequence of work from either Janek or myself.  Or maybe Keith.

     
  • Google Importer

    Google Importer - 2015-07-17

    Originally posted by: dak@gnu.org

    Janek is the one who fixed this.  Is this as expected?

    [r09412c25cce3fdffce7cefe491cb3849ece0ae3e] is the first [good] commit
    commit [r09412c25cce3fdffce7cefe491cb3849ece0ae3e]
    Author: Janek Warchoł <lemniskata.bernoullego@gmail.com>
    Date:   Sat Mar 30 00:11:28 2013 +0100

        Clean up DynamicText horizontal alignment.
       
        Until now, DynamicText alignment was messy, as there were 3 different
        callbacks involved - some of them interacting in a confusing way:
         - in define-grobs.scm, X-offset property was initialized to
           ly:self-alignment-interface::x-aligned-on-self,
         - Dynamic_engraver called set_center_parent on every DynamicText
           attached to a note, so that half a NoteHead width was always added
           to its X-offset (producing confusing results for example when
           user requested dynamics to be left-aligned),
         - DynamicTexts living in a Dynamics context used a completely
           different offset callback, which aligned them on NoteColumns.
       
        Since aligned_on_parent is now able to correctly align grobs
        with PaperColumn parents (issue 3254), we can use it for all
        DynamicTexts and have a single interface for the job.
       
        Expected changes in output: DynamicTexts in Dynamics context
        aligned to suspended noteheads may be placed up to 1/4 NoteHead
        width further to the right.  This shouldn't be a problem.

    :040000 040000 [r38a27adc238e97dc202923e87d75a7074c19688c] [r174d4ae439a343221e4c17ce01facee7e28bfc00] M    lily
    :040000 040000 [r6f9024af65d9bd279d1bf3423de22dc262aee908] [r80b24c0099842d727d6a76ed28d9f5fc75fd3d57] M    ly
    :040000 040000 [r8ef68b110e3449080678f7d13c97e7074c5f0f20] [rf1f2f44ff454c3568a4286e82a7c611ef97c66a0] M    scm

    Labels: fixed_2_19_10
    Cc: janek.li...@gmail.com

     
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.