Autor Thema: set Staff.whichBar  (Gelesen 1999 mal)

pdqbach

  • Member
set Staff.whichBar
« am: Donnerstag, 10. April 2014, 08:39 »
Liebe Experten,

ich versuche, in einem Takt mehr Noten als durch die Taktbezeichnung vorgesehen unterzubringen (Verzierungen).
Das hat auch schon mal geklappt, im unten angehängten Beispiel tut es aber nicht was es soll, sondern notiert nach dem d4 in T.3 wieder einen Taktstrich.
Was mache ich falsche??

Danke und HG

Pepe


\version "2.16.1"

\relative c'' {
  \clef treble
  \key d\major
   \tempo "2. La Cacia. Allegro"
  \time 6/8
  \partial 8
  d8 d4 a8 a4 g8
  \grace g8 fis4.~
  \set Staff.whichBar = ""
     fis16[ d32 e fis g a b cis]
  \unset Staff.whichBar
  \bar "|"
  d4 d8 d4 d8
}

fugenkomponist

  • Member
Re: set Staff.whichBar
« Antwort #1 am: Donnerstag, 10. April 2014, 09:19 »
Zwei Möglichkeiten: Du streckst die Notenwerte (hier z. B. alle 32-stel um 10/7), oder du sagst nach den 32-steln, dass du jetzt am Ende des Taktes bist. Im zweiten Fall muss aus irgendeinem Grund der Taktstrich trotzdem nochmal von Hand gesetzt werden und das Midi stimmt halt nicht so ganz ;)
\relative c'' {
  \clef treble
  \key d\major
  \tempo "2. La Cacia. Allegro"
  \time 6/8
  \partial 8
  d8 d4 a8 a4 g8
  \grace g8 fis4.~
  fis16[ d32*10/7 e fis g a b cis]
  d4 d8 d4 d8
}

\relative c'' {
  \clef treble
  \key d\major
  \tempo "2. La Cacia. Allegro"
  \time 6/8
  \partial 8
  d8 d4 a8 a4 g8
  \grace g8 fis4.~
  fis16[ d32 e fis g a b cis]
  \set Timing.measurePosition = #(ly:make-moment 6 8)
  \bar "|"
  d4 d8 d4 d8
}

pdqbach

  • Member
Re: set Staff.whichBar
« Antwort #2 am: Donnerstag, 10. April 2014, 09:54 »
Hi,

danke, klappt!!

Nur zum Lernen..:
Wie berechnest Du den Wert 10/7 ??

Und warum hat mein set Staff.whichBar nicht gefunkt??

LG

Pepe

fugenkomponist

  • Member
Re: set Staff.whichBar
« Antwort #3 am: Donnerstag, 10. April 2014, 10:24 »
Naja, in einem Takt sollen ja 6/8 sein. Die punktierte Viertel nimmt 3/8 weg, bleiben noch 3/8 oder 6/16. Das eine Sechzehntel noch weg, bleiben für die 7 verbleibenden 32-tel noch 5/16 oder 10/32. Die Noten sind also tatsächlich sogar langsamer zu spielen als notiert, nämlich eben um Faktor 10/7 ;)

whichBar kannte ich noch gar nicht, aber laut Notationsreferenz scheint ja „\bar“ nichts anderes zu sein als eine Abkürzung für „\set Timing.whichbar =“. Was hast du denn erwartet, was es tun soll?

pdqbach

  • Member
Re: set Staff.whichBar
« Antwort #4 am: Donnerstag, 10. April 2014, 11:04 »
kann es mathematisch nachvollziehen... (-:

WhichBar:
Ich dachte, dass man

\set Staff.whichBar = ""
     fis16[ d32 e fis g a b cis]
  \unset Staff.whichBar

zwischen \set und \unset beliebig viele Töne ohne Taktstrich packen kann, aber wahrscheinlich ist das Problem, dass es im Beispiel tatsäch zu WENIG Noten waren.

fugenkomponist

  • Member
Re: set Staff.whichBar
« Antwort #5 am: Donnerstag, 10. April 2014, 11:15 »
Ähm, für „beliebig viele Töne ohne Taktstrich“ eignet sich eher \cadenzaOn und \cadenzaOff, würde ich sagen. Die verbrauchen dann null Zeit. Aber was du ja hier willst, sind wie gesagt weniger Noten in gleicher Zeit, ja.