Je ne sais pas si c'est un bug mais l'apparence de la liaison de prolongation sur la voix supérieure change d'aspect en fonction de la voix du bas. Je ne comprends pas pourquoi :
D'après ce que j'ai vu dans les bugs ouverts, ça semble être évoqué dans la réponse que fait Jean dans ce bug :
Citation A more immediate problem is that slurs were being pushed away further than necessary when starting or ending on dotted notes, because Slur_configuration::score_extra_encompass in slur-configuration.cc has a special path for grobs that overlap with the note heads, and this path was being triggered for dots, while they are in fact not overlapping horizontally with the heads. This code path would cause the slur to push itself away enough to start/end at a higher point than the top of the dot.
Ajoutez \override Tie.Y-offset = #0.5 au début de voixA pour ajuster la position des liaisons et maintenir une apparence cohérente.
Contexte
Il semble que l'apparence des liaisons dans la voix supérieure change en fonction de la voix inférieure lorsque vous utilisez \partCombine dans LilyPond. Cela est probablement dû à des ajustements automatiques pour éviter les collisions entre les notes des deux voix, surtout quand elles sont proches, comme lorsque voixB est à e'' près de f'' dans voixA.
Solution proposée
Pour résoudre ce problème, modifiez voixA en ajoutant \override Tie.Y-offset = #0.5 au début. Cela déplacera légèrement les liaisons vers le haut (0,5 espace de portée), réduisant ainsi les interférences visuelles avec les notes de voixB. Vous pouvez ajuster cette valeur (par exemple, #1 ou #0,3) si nécessaire pour obtenir le résultat souhaité.
Détail inattendu
Une découverte intéressante est que, même si les voix sont toujours séparées dans votre cas (car elles ont des hauteurs différentes), LilyPond peut ajuster les liaisons pour éviter les collisions, ce qui affecte leur apparence, surtout quand les notes sont proches, comme e'' et f''.
Note détaillée
Cette note explore en détail le problème de l'apparence changeante des liaisons de prolongation dans la voix supérieure lorsqu'on utilise \partCombine dans LilyPond, en s'appuyant sur une analyse approfondie du code fourni et de la documentation pertinente. Elle vise à fournir une solution complète et à expliquer les raisons sous-jacentes, en imitant le style d'un article professionnel.
Contexte et Analyse du Code
L'utilisateur utilise LilyPond pour combiner deux voix, voixA et voixB, en utilisant \partCombine, et remarque que l'apparence des liaisons dans voixA change en fonction des notes de voixB. Le code fourni inclut :
Chaque mesure semble être en 3/4, avec 2.~ 4 totalisant 3 quarts (une blanche pointée liée à une noire). Dans \partCombine \voixA \voixB, voixA est toujours f'' avec des liaisons, tandis que voixB varie de e'' à a', toujours en dessous de f''.
Exploration des Causes
Pour comprendre pourquoi l'apparence des liaisons change, examinons comment \partCombine fonctionne. La documentation, comme celle de Multiple voices, indique que \partCombine combine deux voix en un seul staff, avec des tiges automatiques (up pour "one", down pour "two") et des ajustements pour les éléments graphiques comme les liaisons. Une recherche dans les forums, comme Part combine problems, révèle que \partCombine peut poser des problèmes avec les liaisons, surtout en cas de collisions.
Dans ce cas, voixA (f'' lié) est "one" avec des tiges vers le haut, et voixB (e'', d'', etc.) est "two" avec des tiges vers le bas. Puisque les hauteurs sont toujours différentes, les voix sont imprimées séparément, mais quand voixB est proche, comme e'' (quatrième ligne, près de f'' dans l'espace au-dessus), il peut y avoir des ajustements pour éviter les collisions, affectant l'apparence des liaisons de f''.
Analyse des Positions
Calculons les positions pour mieux comprendre. En clé de sol :
Ligne inférieure : f' (position 1)
Ligne supérieure : g'' (position 5)
c' est à 0 en position absolue, d' à 1, e' à 2, f' à 3, g' à 4, a' à 5, b' à 6, c'' à 7, d'' à 8, e'' à 9, f'' à 10, etc.
f'' est à la position 10 (espace entre e'' et g''), e'' est à 9 (quatrième ligne), donc très proche.
Quand voixB est e'', les notes sont proches, ce qui peut entraîner des ajustements de la liaison de f'' pour éviter les collisions avec e'', expliquant le changement d'apparence. Pour les autres cas (d'', c'', b', a'), voixB est plus bas, laissant plus d'espace, donc la liaison semble normale.
Solution Recommandée
Pour résoudre ce problème, une approche consiste à ajuster manuellement la position des liaisons dans voixA en utilisant \override Tie.Y-offset = #0.5. Cela déplacera les liaisons vers le haut de 0,5 espace de portée, réduisant les interférences. Par exemple, modifiez voixA comme suit :
Vous pouvez ajuster la valeur (#1 ou #0,3) si nécessaire. Cette méthode est soutenue par des extraits comme Engraving ties manually, qui montrent comment modifier la position des liaisons.
Considérations Techniques
Propriétés des Liaisons : La propriété Y-offset déplace verticalement les objets graphiques, ici les liaisons, de la valeur spécifiée en espaces de portée. Cela peut aider à éviter les collisions sans affecter la lisibilité.
Limites Potentielles : Si la valeur est trop grande, les liaisons peuvent apparaître trop hautes, affectant l'esthétique. Testez différentes valeurs pour trouver un équilibre.
Comparaison avec \voixC : Dans \voixC, les accords comme <e'' f>2.~ q4 (probablement une erreur, devrait être <e'' f>4) ont des liaisons cohérentes car c'est une seule voix, sans ajustements pour collisions entre voix séparées.
Tableaux pour Résumer
Voici un tableau récapitulatif des positions et des effets possibles :
Note
Position (staff-position)
Proximité avec f'' (10)
Effet probable sur la liaison
e'' (voixB)
9
Très proche
Ajustement, changement d'apparence
d'' (voixB)
8
Plus bas, espace
Moins d'ajustement, apparence normale
c'' (voixB)
7
Plus bas, espace
Moins d'ajustement, apparence normale
b' (voixB)
6
Plus bas, espace
Moins d'ajustement, apparence normale
a' (voixB)
5
Plus bas, espace
Moins d'ajustement, apparence normale
Ce tableau montre que seul e'' est suffisamment proche pour causer des ajustements, confirmant notre hypothèse.
Conclusion
En résumé, pour aligner l'apparence des liaisons dans voixA malgré les variations de voixB, utilisez \override Tie.Y-offset = #0.5 dans voixA. Cela devrait maintenir une apparence cohérente, surtout quand voixB est proche, comme e''. Si des ajustements supplémentaires sont nécessaires, testez différentes valeurs pour Y-offset.
Réponse hyper-détaillée… dont les parties qui ne sont pas fausses sont hors-sujet. @Michel_Guenard Je n'ai rien contre l'IA en soi (même si la manière dont la majorité des IAs grand public sont aujourd'hui créées et déployées pose d'énormes problèmes à l'environnement, la cybersécurité, la souveraineté, et au passage aux infrastructures de nombreuses communautés de logiciels libres comme LilyPond), mais il me semblerait préférable de ne poster des réponses générées par IA qu'a minima après s'être assuré que la réponse est bien pertinente. Par exemple, en compilant le code pour s'assurer qu'il répond au problème posé.
Pour revenir au sujet, c'est vrai que les choix faits sont bizarres. Voilà au moins un moyen de corriger localement lorsque nécessaire pour forcer les liaisons à se rapprocher des têtes de note :