| [ << Modifica delle impostazioni predefinite ] | [Top][Contents][Index] | [ Tabelle del manuale della notazione >> ] |
[ < Uso di spanner-interface ] | [ Up: Estensori ] | [ Visibilità degli oggetti > ] |
Uso di line-spanner-interface
Gli oggetti che supportano l’interfaccia line-spanner-interface comprendono:
-
DynamicTextSpanner -
Glissando -
TextSpanner -
TrillSpanner -
VoiceFollower
La routine responsabile del disegno di questi estensori è
ly:line-spanner::print. Essa determina la posizione esatta
delle due estremità e disegna una linea tra di esse, nello stile
richiesto. Le posizioni delle due estremità dell’estensore sono
calcolate al volo, ma è possibile sovrascrivere le loro coordinate
Y. Le proprietà da specificare sono annidate di due livelli nella
gerarchia della proprietà, ma la sintassi del comando \override
è piuttosto semplice:
e''2 \glissando b' \once \override Glissando.bound-details.left.Y = #3 \once \override Glissando.bound-details.right.Y = #-2 e''2 \glissando b'![]()
Le unità di misura della proprietà Y sono gli spazi rigo
(staff-space), con la linea centrale del rigo che è il
punto zero. Per il glissando, questo è il valore per Y alla
coordinata X che corrisponde al punto centrale della testa di ogni
nota, se si immagina che la linea si estenda fino a là.
Se Y non è impostato, il valore viene calcolato dalla posizione
verticale del punto di attacco corrispondente dell’estensore.
In caso di un’interruzione di linea, i valori per le estremità sono
specificati dalle sottoliste left-broken e right-broken
di bound-details. Per esempio:
\override Glissando.breakable = ##t \override Glissando.bound-details.right-broken.Y = #-3 c''1 \glissando \break f''1![]()
Altre proprietà delle sottoliste left e right della proprietà
bound-details possono essere modificate nello stesso modo di Y:
YQuesta imposta la coordinata Y dell’estremità, che si sposta di un certo numero di
staff-spacedalla linea centrale del rigo. Per impostazione predefinita, è il centro dell’oggetto a cui è associato, dunque un glissando punta al centro verticale della testa di nota.Nel caso di estensori orizzontali, come quelli del testo e del trillo, il suo valore è fisso su 0.
attach-dirQuesta determina dove la linea inizia e termina nella direzione X, relativa all’oggetto a cui è associato. Quindi un valore di
-1(oLEFT) fa sì che la linea inizi/termini sul lato sinistro della testa della nota a cui è attaccata.XQuesta è la coordinata X assoluta dell’estremità. Viene solitamente calcolata al volo e sovrascriverla produce solitamente un effetto poco utile.
stencilGli estensori della linea possono avere dei simboli all’inizio o alla fine, contenuti in questa sottoproprietà. Questa proprietà è per uso interno; si raccomanda di usare
textal suo posto.textQuesto è un testo markup che viene valutato per produrre lo stampo (stencil, in inglese). Viene usato per mettere cresc., tr e altro testo su estensori orizzontali.
\override TextSpanner.bound-details.left.text = \markup { \small \bold Rall. } \relative { c''2\startTextSpan b c a\stopTextSpan }
stencil-align-dir-ystencil-offsetSe non si imposta una di queste proprietà, lo stampo viene messo semplicemente all’estremità, centrato sulla linea, come definito nelle sottoproprietà
XeY. Impostandostencil-align-dir-yostencil-offsetil simbolo si sposterà verticalmente sul margine rispetto all’estremità della linea:\override TextSpanner.bound-details.left.stencil-align-dir-y = #-2 \override TextSpanner.bound-details.right.stencil-align-dir-y = #UP \override TextSpanner.bound-details.left.text = "ggg" \override TextSpanner.bound-details.right.text = "hhh" \relative { c'4^\startTextSpan c c c \stopTextSpan }
Nota bene che valori negativi spostano il testo in su, contrariamente a quanto si potrebbe pensare, perché un valore di
-1oDOWNfa sì che si allinei il margine inferiore del testo con la linea dell’estensore. Un valore di1oUPallinea il margine superiore del testo con la linea dell’estensore.arrowImpostando questa sottoproprietà su
#tviene generata la punta di una freccia a un’estremità della linea.paddingQuesta sottoproprietà regola lo spazio tra l’estremità della linea specificata e la fine reale. Senza padding, un glissando inizia e termina nel centro della testa di ogni nota.
La funzione musicale \endSpanners termina prematuramente l’estensore
che inizia nella nota immediatamente seguente. Viene terminato esattamente
dopo una nota o alla stanghetta seguente se to-barline è impostato
su vero e c’è una stanghetta prima della nota successiva.
\relative c'' { \endSpanners c2 \startTextSpan c2 c2 \endSpanners c2 \< c2 c2 }![]()
Quando si usa \endSpanners non è necessario chiudere
\startTextSpan con \stopTextSpan, né è necessario chiudere le
forcelle con \!.
Vedi anche
Guida al funzionamento interno: TextSpanner, Glissando, VoiceFollower, TrillSpanner, line-spanner-interface.
| [ << Modifica delle impostazioni predefinite ] | [Top][Contents][Index] | [ Tabelle del manuale della notazione >> ] |
[ < Uso di spanner-interface ] | [ Up: Estensori ] | [ Visibilità degli oggetti > ] |
![[image of music]](../67/lily-22c9e392.png)
![[image of music]](../46/lily-d5992396.png)
![[image of music]](../f9/lily-643968e7.png)