Le 28/04/2021 à 11:49, fremoin a écrit :
Bonjour,
La construction << \new Dynamics ... \new Staff...>> provoque une
erreur de
positionnement des numéros de mesure.
Exemple minimal :
%%%%%%%%%%
\version "2.23.2"
structure = { \tempo "Tempo 1" R1 \break \tempo "Tempo 2" R1 }
musique = \fixed c'' { c1 c1 }
<< %% Numéro de mesure décalé vers le haut
\new Dynamics \structure
\new Staff \musique
<< %% Numéro de mesure avec positionnement attendu
\new Staff \musique
\new Dynamics \structure
%%%%%%%%%%
Sur une pièce plus longue, cela se produit presque à chaque ligne... le
/presque/ me laissant également perplexe.
C'est une nouvelle manière plus recommandée ?
Cordialement,
Frédéric Moinard
Bonjour,
Ce qui se produit ici est que les numéros de mesure
vont se placer au dessus de la portée la plus haute.
Le contexte Dynamics est considéré comme une portée,
donc dès qu'il contient au moins un objet, les numéros
se décalent pour se positionner au-dessus de cet objet.
Lorsque vous créez le contexte Dynamics après le
contexte Staff dans le << >>, contrairement aux
apparences, il se place en-dessous de celui-ci.
Simplement, les indications de tempo sont toujours
déplacées vers la portée la plus haute quel que soit
le contexte dans lequel elles sont crées. Vous
pouvez le constater en ajoutant des nuances :
\version "2.23.3"
dynamics = \new Dynamics { \tempo "Tempo 1" s1\p\< \break \tempo
"Tempo 2" s1\f }
music = \new Staff \fixed c'' { c1 c1 }
<<
\dynamics
\music
<<
\music
\dynamics
Voici une astuce qui permet de rendre le contexte
Dynamics invisible du point de vue des numéros de
mesure tout en conservant l'ordre vertical des
contextes :
\version "2.23.2"
structure = { \tempo "Tempo 1" R1 \break \tempo "Tempo 2" R1 }
musique = \fixed c'' { c1 c1 }
<<
\new Dynamics \with {
\override VerticalAxisGroup.X-extent = #empty-interval
} \structure
\new Staff \musique
Cordialement,
Jean